@sitecore-content-sdk/core 1.5.0 → 2.0.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 (337) hide show
  1. package/LICENSE.txt +202 -202
  2. package/dist/cjs/constants.js +7 -21
  3. package/dist/cjs/debug.js +14 -18
  4. package/dist/cjs/graphql-request-client.js +10 -5
  5. package/dist/cjs/index.js +3 -7
  6. package/dist/cjs/native-fetcher.js +1 -1
  7. package/dist/cjs/{utils → tools}/ensurePath.js +1 -0
  8. package/dist/cjs/{media/index.js → tools/index-node.js} +27 -3
  9. package/dist/cjs/tools/index.js +28 -72
  10. package/dist/cjs/tools/{generateMetadata.js → metadata/generateMetadata.js} +2 -2
  11. package/dist/cjs/tools/metadata/index.js +5 -0
  12. package/dist/cjs/{editing → tools/metadata}/metadata.js +1 -6
  13. package/dist/cjs/tools/normalize-env-value.js +22 -0
  14. package/dist/cjs/{utils → tools}/normalize-url.js +6 -0
  15. package/dist/cjs/tools/resolve-edge-url.js +95 -0
  16. package/dist/cjs/{utils → tools}/utils.js +6 -64
  17. package/dist/esm/constants.js +6 -20
  18. package/dist/esm/debug.js +13 -17
  19. package/dist/esm/graphql-request-client.js +10 -5
  20. package/dist/esm/index.js +1 -6
  21. package/dist/esm/native-fetcher.js +1 -1
  22. package/dist/esm/{utils → tools}/ensurePath.js +1 -0
  23. package/dist/esm/tools/index-node.js +22 -0
  24. package/dist/esm/tools/index.js +6 -28
  25. package/dist/esm/tools/{generateMetadata.js → metadata/generateMetadata.js} +2 -2
  26. package/dist/esm/tools/metadata/index.js +1 -0
  27. package/dist/esm/{editing → tools/metadata}/metadata.js +1 -6
  28. package/dist/esm/tools/normalize-env-value.js +19 -0
  29. package/dist/esm/tools/normalize-url.js +7 -0
  30. package/dist/esm/tools/resolve-edge-url.js +89 -0
  31. package/dist/esm/{utils → tools}/utils.js +5 -61
  32. package/node-tools.d.ts +1 -0
  33. package/package.json +98 -163
  34. package/types/constants.d.ts +6 -17
  35. package/types/constants.d.ts.map +1 -1
  36. package/types/debug.d.ts +13 -13
  37. package/types/debug.d.ts.map +1 -1
  38. package/types/graphql-request-client.d.ts +8 -2
  39. package/types/graphql-request-client.d.ts.map +1 -1
  40. package/types/index.d.ts +3 -6
  41. package/types/index.d.ts.map +1 -1
  42. package/types/models.d.ts +0 -31
  43. package/types/models.d.ts.map +1 -1
  44. package/types/{utils → tools}/ensurePath.d.ts +1 -0
  45. package/types/tools/ensurePath.d.ts.map +1 -0
  46. package/types/{utils → tools}/globalCache.d.ts.map +1 -1
  47. package/types/tools/index-node.d.ts +14 -0
  48. package/types/tools/index-node.d.ts.map +1 -0
  49. package/types/tools/index.d.ts +5 -21
  50. package/types/tools/index.d.ts.map +1 -1
  51. package/types/tools/is-server.d.ts.map +1 -0
  52. package/types/tools/metadata/generateMetadata.d.ts.map +1 -0
  53. package/types/tools/metadata/index.d.ts +3 -0
  54. package/types/tools/metadata/index.d.ts.map +1 -0
  55. package/types/{editing → tools/metadata}/metadata.d.ts +9 -1
  56. package/types/tools/metadata/metadata.d.ts.map +1 -0
  57. package/types/tools/normalize-env-value.d.ts +10 -0
  58. package/types/tools/normalize-env-value.d.ts.map +1 -0
  59. package/types/tools/normalize-url.d.ts +8 -0
  60. package/types/tools/normalize-url.d.ts.map +1 -0
  61. package/types/tools/resolve-edge-url.d.ts +52 -0
  62. package/types/tools/resolve-edge-url.d.ts.map +1 -0
  63. package/types/{utils → tools}/timeout-promise.d.ts.map +1 -1
  64. package/types/{utils → tools}/utils.d.ts +6 -26
  65. package/types/tools/utils.d.ts.map +1 -0
  66. package/client.d.ts +0 -1
  67. package/codegen.d.ts +0 -1
  68. package/config-cli.d.ts +0 -1
  69. package/config.d.ts +0 -1
  70. package/dist/cjs/client/constants.js +0 -7
  71. package/dist/cjs/client/edge-proxy.js +0 -24
  72. package/dist/cjs/client/index.js +0 -15
  73. package/dist/cjs/client/models.js +0 -2
  74. package/dist/cjs/client/sitecore-client.js +0 -424
  75. package/dist/cjs/client/utils.js +0 -51
  76. package/dist/cjs/config/define-config.js +0 -195
  77. package/dist/cjs/config/index.js +0 -7
  78. package/dist/cjs/config/models.js +0 -12
  79. package/dist/cjs/config-cli/define-cli-config.js +0 -23
  80. package/dist/cjs/config-cli/index.js +0 -7
  81. package/dist/cjs/config-cli/models.js +0 -8
  82. package/dist/cjs/editing/codegen/index.js +0 -15
  83. package/dist/cjs/editing/codegen/preview.js +0 -306
  84. package/dist/cjs/editing/component-layout-service.js +0 -63
  85. package/dist/cjs/editing/design-library.js +0 -190
  86. package/dist/cjs/editing/editing-service.js +0 -81
  87. package/dist/cjs/editing/index.js +0 -34
  88. package/dist/cjs/editing/models.js +0 -44
  89. package/dist/cjs/editing/utils.js +0 -108
  90. package/dist/cjs/form/form.js +0 -81
  91. package/dist/cjs/form/index.js +0 -7
  92. package/dist/cjs/i18n/dictionary-service.js +0 -144
  93. package/dist/cjs/i18n/index.js +0 -7
  94. package/dist/cjs/i18n/utils.js +0 -16
  95. package/dist/cjs/layout/content-styles.js +0 -72
  96. package/dist/cjs/layout/index.js +0 -24
  97. package/dist/cjs/layout/layout-service.js +0 -68
  98. package/dist/cjs/layout/models.js +0 -39
  99. package/dist/cjs/layout/themes.js +0 -76
  100. package/dist/cjs/layout/utils.js +0 -117
  101. package/dist/cjs/media/media-api.js +0 -100
  102. package/dist/cjs/personalize/index.js +0 -15
  103. package/dist/cjs/personalize/layout-personalizer.js +0 -98
  104. package/dist/cjs/personalize/personalize-service.js +0 -109
  105. package/dist/cjs/personalize/utils.js +0 -143
  106. package/dist/cjs/site/error-pages-service.js +0 -82
  107. package/dist/cjs/site/index.js +0 -26
  108. package/dist/cjs/site/models.js +0 -2
  109. package/dist/cjs/site/redirects-service.js +0 -108
  110. package/dist/cjs/site/robots-service.js +0 -74
  111. package/dist/cjs/site/site-resolver.js +0 -73
  112. package/dist/cjs/site/siteinfo-service.js +0 -94
  113. package/dist/cjs/site/sitemap-xml-service.js +0 -92
  114. package/dist/cjs/site/sitepath-service.js +0 -201
  115. package/dist/cjs/site/utils.js +0 -55
  116. package/dist/cjs/sitecore-service-base.js +0 -36
  117. package/dist/cjs/tools/codegen/component-generation.js +0 -52
  118. package/dist/cjs/tools/codegen/extract-files.js +0 -105
  119. package/dist/cjs/tools/codegen/import-map.js +0 -411
  120. package/dist/cjs/tools/codegen/utils.js +0 -418
  121. package/dist/cjs/tools/generate-map.js +0 -2
  122. package/dist/cjs/tools/generateSites.js +0 -59
  123. package/dist/cjs/tools/scaffold.js +0 -62
  124. package/dist/cjs/tools/templating/components.js +0 -96
  125. package/dist/cjs/tools/templating/index.js +0 -11
  126. package/dist/cjs/tools/templating/plugins.js +0 -80
  127. package/dist/cjs/tools/templating/utils.js +0 -67
  128. package/dist/cjs/utils/env.js +0 -28
  129. package/dist/cjs/utils/index.js +0 -26
  130. package/dist/esm/client/constants.js +0 -4
  131. package/dist/esm/client/edge-proxy.js +0 -19
  132. package/dist/esm/client/index.js +0 -5
  133. package/dist/esm/client/models.js +0 -1
  134. package/dist/esm/client/sitecore-client.js +0 -417
  135. package/dist/esm/client/utils.js +0 -47
  136. package/dist/esm/config/define-config.js +0 -189
  137. package/dist/esm/config/index.js +0 -2
  138. package/dist/esm/config/models.js +0 -9
  139. package/dist/esm/config-cli/define-cli-config.js +0 -19
  140. package/dist/esm/config-cli/index.js +0 -2
  141. package/dist/esm/config-cli/models.js +0 -5
  142. package/dist/esm/editing/codegen/index.js +0 -1
  143. package/dist/esm/editing/codegen/preview.js +0 -288
  144. package/dist/esm/editing/component-layout-service.js +0 -56
  145. package/dist/esm/editing/design-library.js +0 -178
  146. package/dist/esm/editing/editing-service.js +0 -74
  147. package/dist/esm/editing/index.js +0 -6
  148. package/dist/esm/editing/models.js +0 -41
  149. package/dist/esm/editing/utils.js +0 -98
  150. package/dist/esm/form/form.js +0 -72
  151. package/dist/esm/form/index.js +0 -1
  152. package/dist/esm/i18n/dictionary-service.js +0 -137
  153. package/dist/esm/i18n/index.js +0 -2
  154. package/dist/esm/i18n/utils.js +0 -13
  155. package/dist/esm/layout/content-styles.js +0 -64
  156. package/dist/esm/layout/index.js +0 -6
  157. package/dist/esm/layout/layout-service.js +0 -61
  158. package/dist/esm/layout/models.js +0 -36
  159. package/dist/esm/layout/themes.js +0 -71
  160. package/dist/esm/layout/utils.js +0 -109
  161. package/dist/esm/media/index.js +0 -2
  162. package/dist/esm/media/media-api.js +0 -90
  163. package/dist/esm/personalize/index.js +0 -3
  164. package/dist/esm/personalize/layout-personalizer.js +0 -93
  165. package/dist/esm/personalize/personalize-service.js +0 -102
  166. package/dist/esm/personalize/utils.js +0 -135
  167. package/dist/esm/site/error-pages-service.js +0 -75
  168. package/dist/esm/site/index.js +0 -8
  169. package/dist/esm/site/models.js +0 -1
  170. package/dist/esm/site/redirects-service.js +0 -101
  171. package/dist/esm/site/robots-service.js +0 -67
  172. package/dist/esm/site/site-resolver.js +0 -69
  173. package/dist/esm/site/siteinfo-service.js +0 -87
  174. package/dist/esm/site/sitemap-xml-service.js +0 -85
  175. package/dist/esm/site/sitepath-service.js +0 -193
  176. package/dist/esm/site/utils.js +0 -49
  177. package/dist/esm/sitecore-service-base.js +0 -29
  178. package/dist/esm/tools/codegen/component-generation.js +0 -44
  179. package/dist/esm/tools/codegen/extract-files.js +0 -99
  180. package/dist/esm/tools/codegen/import-map.js +0 -368
  181. package/dist/esm/tools/codegen/utils.js +0 -373
  182. package/dist/esm/tools/generate-map.js +0 -1
  183. package/dist/esm/tools/generateSites.js +0 -52
  184. package/dist/esm/tools/scaffold.js +0 -54
  185. package/dist/esm/tools/templating/components.js +0 -59
  186. package/dist/esm/tools/templating/index.js +0 -3
  187. package/dist/esm/tools/templating/plugins.js +0 -72
  188. package/dist/esm/tools/templating/utils.js +0 -59
  189. package/dist/esm/utils/env.js +0 -24
  190. package/dist/esm/utils/index.js +0 -4
  191. package/dist/esm/utils/normalize-url.js +0 -1
  192. package/editing.d.ts +0 -1
  193. package/i18n.d.ts +0 -1
  194. package/layout.d.ts +0 -1
  195. package/media.d.ts +0 -1
  196. package/personalize.d.ts +0 -1
  197. package/site.d.ts +0 -1
  198. package/types/client/constants.d.ts +0 -5
  199. package/types/client/constants.d.ts.map +0 -1
  200. package/types/client/edge-proxy.d.ts +0 -18
  201. package/types/client/edge-proxy.d.ts.map +0 -1
  202. package/types/client/index.d.ts +0 -8
  203. package/types/client/index.d.ts.map +0 -1
  204. package/types/client/models.d.ts +0 -21
  205. package/types/client/models.d.ts.map +0 -1
  206. package/types/client/sitecore-client.d.ts +0 -338
  207. package/types/client/sitecore-client.d.ts.map +0 -1
  208. package/types/client/utils.d.ts +0 -15
  209. package/types/client/utils.d.ts.map +0 -1
  210. package/types/config/define-config.d.ts +0 -20
  211. package/types/config/define-config.d.ts.map +0 -1
  212. package/types/config/index.d.ts +0 -3
  213. package/types/config/index.d.ts.map +0 -1
  214. package/types/config/models.d.ts +0 -287
  215. package/types/config/models.d.ts.map +0 -1
  216. package/types/config-cli/define-cli-config.d.ts +0 -9
  217. package/types/config-cli/define-cli-config.d.ts.map +0 -1
  218. package/types/config-cli/index.d.ts +0 -3
  219. package/types/config-cli/index.d.ts.map +0 -1
  220. package/types/config-cli/models.d.ts +0 -6
  221. package/types/config-cli/models.d.ts.map +0 -1
  222. package/types/editing/codegen/index.d.ts +0 -2
  223. package/types/editing/codegen/index.d.ts.map +0 -1
  224. package/types/editing/codegen/preview.d.ts +0 -289
  225. package/types/editing/codegen/preview.d.ts.map +0 -1
  226. package/types/editing/component-layout-service.d.ts +0 -84
  227. package/types/editing/component-layout-service.d.ts.map +0 -1
  228. package/types/editing/design-library.d.ts +0 -118
  229. package/types/editing/design-library.d.ts.map +0 -1
  230. package/types/editing/editing-service.d.ts +0 -72
  231. package/types/editing/editing-service.d.ts.map +0 -1
  232. package/types/editing/index.d.ts +0 -7
  233. package/types/editing/index.d.ts.map +0 -1
  234. package/types/editing/metadata.d.ts.map +0 -1
  235. package/types/editing/models.d.ts +0 -103
  236. package/types/editing/models.d.ts.map +0 -1
  237. package/types/editing/utils.d.ts +0 -91
  238. package/types/editing/utils.d.ts.map +0 -1
  239. package/types/form/form.d.ts +0 -25
  240. package/types/form/form.d.ts.map +0 -1
  241. package/types/form/index.d.ts +0 -2
  242. package/types/form/index.d.ts.map +0 -1
  243. package/types/i18n/dictionary-service.d.ts +0 -135
  244. package/types/i18n/dictionary-service.d.ts.map +0 -1
  245. package/types/i18n/index.d.ts +0 -3
  246. package/types/i18n/index.d.ts.map +0 -1
  247. package/types/i18n/utils.d.ts +0 -9
  248. package/types/i18n/utils.d.ts.map +0 -1
  249. package/types/layout/content-styles.d.ts +0 -20
  250. package/types/layout/content-styles.d.ts.map +0 -1
  251. package/types/layout/index.d.ts +0 -6
  252. package/types/layout/index.d.ts.map +0 -1
  253. package/types/layout/layout-service.d.ts +0 -45
  254. package/types/layout/layout-service.d.ts.map +0 -1
  255. package/types/layout/models.d.ts +0 -174
  256. package/types/layout/models.d.ts.map +0 -1
  257. package/types/layout/themes.d.ts +0 -13
  258. package/types/layout/themes.d.ts.map +0 -1
  259. package/types/layout/utils.d.ts +0 -56
  260. package/types/layout/utils.d.ts.map +0 -1
  261. package/types/media/index.d.ts +0 -3
  262. package/types/media/index.d.ts.map +0 -1
  263. package/types/media/media-api.d.ts +0 -60
  264. package/types/media/media-api.d.ts.map +0 -1
  265. package/types/personalize/index.d.ts +0 -4
  266. package/types/personalize/index.d.ts.map +0 -1
  267. package/types/personalize/layout-personalizer.d.ts +0 -29
  268. package/types/personalize/layout-personalizer.d.ts.map +0 -1
  269. package/types/personalize/personalize-service.d.ts +0 -90
  270. package/types/personalize/personalize-service.d.ts.map +0 -1
  271. package/types/personalize/utils.d.ts +0 -78
  272. package/types/personalize/utils.d.ts.map +0 -1
  273. package/types/site/error-pages-service.d.ts +0 -64
  274. package/types/site/error-pages-service.d.ts.map +0 -1
  275. package/types/site/index.d.ts +0 -10
  276. package/types/site/index.d.ts.map +0 -1
  277. package/types/site/models.d.ts +0 -23
  278. package/types/site/models.d.ts.map +0 -1
  279. package/types/site/redirects-service.d.ts +0 -92
  280. package/types/site/redirects-service.d.ts.map +0 -1
  281. package/types/site/robots-service.d.ts +0 -57
  282. package/types/site/robots-service.d.ts.map +0 -1
  283. package/types/site/site-resolver.d.ts +0 -28
  284. package/types/site/site-resolver.d.ts.map +0 -1
  285. package/types/site/siteinfo-service.d.ts +0 -65
  286. package/types/site/siteinfo-service.d.ts.map +0 -1
  287. package/types/site/sitemap-xml-service.d.ts +0 -63
  288. package/types/site/sitemap-xml-service.d.ts.map +0 -1
  289. package/types/site/sitepath-service.d.ts +0 -137
  290. package/types/site/sitepath-service.d.ts.map +0 -1
  291. package/types/site/utils.d.ts +0 -41
  292. package/types/site/utils.d.ts.map +0 -1
  293. package/types/sitecore-service-base.d.ts +0 -31
  294. package/types/sitecore-service-base.d.ts.map +0 -1
  295. package/types/tools/codegen/component-generation.d.ts +0 -50
  296. package/types/tools/codegen/component-generation.d.ts.map +0 -1
  297. package/types/tools/codegen/extract-files.d.ts +0 -24
  298. package/types/tools/codegen/extract-files.d.ts.map +0 -1
  299. package/types/tools/codegen/import-map.d.ts +0 -102
  300. package/types/tools/codegen/import-map.d.ts.map +0 -1
  301. package/types/tools/codegen/utils.d.ts +0 -76
  302. package/types/tools/codegen/utils.d.ts.map +0 -1
  303. package/types/tools/generate-map.d.ts +0 -36
  304. package/types/tools/generate-map.d.ts.map +0 -1
  305. package/types/tools/generateMetadata.d.ts.map +0 -1
  306. package/types/tools/generateSites.d.ts +0 -25
  307. package/types/tools/generateSites.d.ts.map +0 -1
  308. package/types/tools/scaffold.d.ts +0 -27
  309. package/types/tools/scaffold.d.ts.map +0 -1
  310. package/types/tools/templating/components.d.ts +0 -104
  311. package/types/tools/templating/components.d.ts.map +0 -1
  312. package/types/tools/templating/index.d.ts +0 -4
  313. package/types/tools/templating/index.d.ts.map +0 -1
  314. package/types/tools/templating/plugins.d.ts +0 -71
  315. package/types/tools/templating/plugins.d.ts.map +0 -1
  316. package/types/tools/templating/utils.d.ts +0 -42
  317. package/types/tools/templating/utils.d.ts.map +0 -1
  318. package/types/utils/ensurePath.d.ts.map +0 -1
  319. package/types/utils/env.d.ts +0 -9
  320. package/types/utils/env.d.ts.map +0 -1
  321. package/types/utils/index.d.ts +0 -5
  322. package/types/utils/index.d.ts.map +0 -1
  323. package/types/utils/is-server.d.ts.map +0 -1
  324. package/types/utils/normalize-url.d.ts +0 -2
  325. package/types/utils/normalize-url.d.ts.map +0 -1
  326. package/types/utils/utils.d.ts.map +0 -1
  327. package/utils.d.ts +0 -1
  328. /package/dist/cjs/{utils → tools}/globalCache.js +0 -0
  329. /package/dist/cjs/{utils → tools}/is-server.js +0 -0
  330. /package/dist/cjs/{utils → tools}/timeout-promise.js +0 -0
  331. /package/dist/esm/{utils → tools}/globalCache.js +0 -0
  332. /package/dist/esm/{utils → tools}/is-server.js +0 -0
  333. /package/dist/esm/{utils → tools}/timeout-promise.js +0 -0
  334. /package/types/{utils → tools}/globalCache.d.ts +0 -0
  335. /package/types/{utils → tools}/is-server.d.ts +0 -0
  336. /package/types/tools/{generateMetadata.d.ts → metadata/generateMetadata.d.ts} +0 -0
  337. /package/types/{utils → tools}/timeout-promise.d.ts +0 -0
@@ -1,81 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.EditingService = exports.query = void 0;
7
- const debug_1 = __importDefault(require("../debug"));
8
- const models_1 = require("./models");
9
- /**
10
- * GraphQL query for fetching editing data.
11
- */
12
- exports.query = `
13
- query EditingQuery($itemId: String!, $language: String!, $version: String) {
14
- item(path: $itemId, language: $language, version: $version) {
15
- rendered
16
- }
17
- }
18
- `;
19
- /**
20
- * Service for fetching editing data from Sitecore using the Sitecore's GraphQL API.
21
- * Expected to be used in XMCloud Pages preview (editing) Metadata Edit Mode.
22
- * @public
23
- */
24
- class EditingService {
25
- /**
26
- * Fetch layout data using the Sitecore GraphQL endpoint.
27
- * @param {EditingServiceConfig} serviceConfig configuration
28
- */
29
- constructor(serviceConfig) {
30
- this.serviceConfig = serviceConfig;
31
- this.graphQLClient = this.getGraphQLClient();
32
- }
33
- /**
34
- * Fetches editing data. Provides the layout data and dictionary phrases
35
- * @param {object} variables - The parameters for fetching editing data.
36
- * @param {string} variables.itemId - The item id (path) to fetch layout data for.
37
- * @param {string} variables.language - The language to fetch layout data for.
38
- * @param {string} variables.mode - The editing mode to fetch layout data for.
39
- * @param {string} [variables.version] - The version of the item (optional).
40
- * @param {LayoutKind} [variables.layoutKind] - The final or shared layout variant.
41
- * @param {FetchOptions} [fetchOptions] Options to override graphQL client details like retries and fetch implementation
42
- * @returns {Promise} The layout data and dictionary phrases.
43
- */
44
- async fetchEditingData({ itemId, language, version, layoutKind = models_1.LayoutKind.Final, mode }, fetchOptions) {
45
- var _a;
46
- debug_1.default.editing('fetching editing data for %s %s %s %s', itemId, language, version, layoutKind);
47
- if (!language) {
48
- throw new RangeError('The language must be a non-empty string');
49
- }
50
- const editModeHeader = mode === 'edit' ? 'true' : 'false';
51
- const editingData = await this.graphQLClient.request(exports.query, {
52
- itemId,
53
- version,
54
- language,
55
- }, Object.assign(Object.assign({}, fetchOptions), { headers: {
56
- sc_layoutKind: layoutKind,
57
- sc_editMode: editModeHeader,
58
- } }));
59
- return {
60
- layoutData: ((_a = editingData === null || editingData === void 0 ? void 0 : editingData.item) === null || _a === void 0 ? void 0 : _a.rendered) || {
61
- sitecore: {
62
- context: { pageEditing: true, language },
63
- route: null,
64
- },
65
- },
66
- };
67
- }
68
- /**
69
- * Gets a GraphQL client that can make requests to the API.
70
- * @returns {GraphQLClient} implementation
71
- */
72
- getGraphQLClient() {
73
- if (!this.serviceConfig.clientFactory) {
74
- throw new Error('clientFactory needs to be provided when initializing GraphQL client.');
75
- }
76
- return this.serviceConfig.clientFactory({
77
- debugger: debug_1.default.editing,
78
- });
79
- }
80
- }
81
- exports.EditingService = EditingService;
@@ -1,34 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.updateComponent = exports.COMPONENT_PREVIEW_CACHE_KEY_PREFIX = exports.COMPONENT_UPDATE_CACHE_KEY_PREFIX = exports.postToDesignLibrary = exports.isDesignLibraryMode = exports.getDesignLibraryScriptLink = exports.getDesignLibraryStatusEvent = exports.DesignLibraryStatus = exports.addComponentUpdateHandler = exports.DesignLibraryMode = exports.MetadataKind = exports.LayoutKind = exports.DesignLibraryVariantGeneration = exports.ComponentLayoutService = exports.PREVIEW_KEY = exports.PAGES_EDITING_MARKER = exports.INVALID_SECRET_HTML_MESSAGE = exports.QUERY_PARAM_EDITING_SECRET = exports.EDITING_ALLOWED_ORIGINS = exports.getContentSdkPagesClientData = exports.resetEditorChromes = exports.isEditorActive = exports.PagesEditor = exports.DEFAULT_PLACEHOLDER_UID = exports.EditingService = void 0;
4
- var editing_service_1 = require("./editing-service");
5
- Object.defineProperty(exports, "EditingService", { enumerable: true, get: function () { return editing_service_1.EditingService; } });
6
- var utils_1 = require("./utils");
7
- Object.defineProperty(exports, "DEFAULT_PLACEHOLDER_UID", { enumerable: true, get: function () { return utils_1.DEFAULT_PLACEHOLDER_UID; } });
8
- Object.defineProperty(exports, "PagesEditor", { enumerable: true, get: function () { return utils_1.PagesEditor; } });
9
- Object.defineProperty(exports, "isEditorActive", { enumerable: true, get: function () { return utils_1.isEditorActive; } });
10
- Object.defineProperty(exports, "resetEditorChromes", { enumerable: true, get: function () { return utils_1.resetEditorChromes; } });
11
- Object.defineProperty(exports, "getContentSdkPagesClientData", { enumerable: true, get: function () { return utils_1.getContentSdkPagesClientData; } });
12
- Object.defineProperty(exports, "EDITING_ALLOWED_ORIGINS", { enumerable: true, get: function () { return utils_1.EDITING_ALLOWED_ORIGINS; } });
13
- Object.defineProperty(exports, "QUERY_PARAM_EDITING_SECRET", { enumerable: true, get: function () { return utils_1.QUERY_PARAM_EDITING_SECRET; } });
14
- Object.defineProperty(exports, "INVALID_SECRET_HTML_MESSAGE", { enumerable: true, get: function () { return utils_1.INVALID_SECRET_HTML_MESSAGE; } });
15
- Object.defineProperty(exports, "PAGES_EDITING_MARKER", { enumerable: true, get: function () { return utils_1.PAGES_EDITING_MARKER; } });
16
- Object.defineProperty(exports, "PREVIEW_KEY", { enumerable: true, get: function () { return utils_1.PREVIEW_KEY; } });
17
- var component_layout_service_1 = require("./component-layout-service");
18
- Object.defineProperty(exports, "ComponentLayoutService", { enumerable: true, get: function () { return component_layout_service_1.ComponentLayoutService; } });
19
- var models_1 = require("./models");
20
- Object.defineProperty(exports, "DesignLibraryVariantGeneration", { enumerable: true, get: function () { return models_1.DesignLibraryVariantGeneration; } });
21
- var models_2 = require("./models");
22
- Object.defineProperty(exports, "LayoutKind", { enumerable: true, get: function () { return models_2.LayoutKind; } });
23
- Object.defineProperty(exports, "MetadataKind", { enumerable: true, get: function () { return models_2.MetadataKind; } });
24
- Object.defineProperty(exports, "DesignLibraryMode", { enumerable: true, get: function () { return models_2.DesignLibraryMode; } });
25
- var design_library_1 = require("./design-library");
26
- Object.defineProperty(exports, "addComponentUpdateHandler", { enumerable: true, get: function () { return design_library_1.addComponentUpdateHandler; } });
27
- Object.defineProperty(exports, "DesignLibraryStatus", { enumerable: true, get: function () { return design_library_1.DesignLibraryStatus; } });
28
- Object.defineProperty(exports, "getDesignLibraryStatusEvent", { enumerable: true, get: function () { return design_library_1.getDesignLibraryStatusEvent; } });
29
- Object.defineProperty(exports, "getDesignLibraryScriptLink", { enumerable: true, get: function () { return design_library_1.getDesignLibraryScriptLink; } });
30
- Object.defineProperty(exports, "isDesignLibraryMode", { enumerable: true, get: function () { return design_library_1.isDesignLibraryMode; } });
31
- Object.defineProperty(exports, "postToDesignLibrary", { enumerable: true, get: function () { return design_library_1.postToDesignLibrary; } });
32
- Object.defineProperty(exports, "COMPONENT_UPDATE_CACHE_KEY_PREFIX", { enumerable: true, get: function () { return design_library_1.COMPONENT_UPDATE_CACHE_KEY_PREFIX; } });
33
- Object.defineProperty(exports, "COMPONENT_PREVIEW_CACHE_KEY_PREFIX", { enumerable: true, get: function () { return design_library_1.COMPONENT_PREVIEW_CACHE_KEY_PREFIX; } });
34
- Object.defineProperty(exports, "updateComponent", { enumerable: true, get: function () { return design_library_1.updateComponent; } });
@@ -1,44 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.DesignLibraryVariantGeneration = exports.DesignLibraryMode = exports.MetadataKind = exports.LayoutKind = void 0;
4
- /**
5
- * Represents the Editing Layout variant.
6
- * - shared - shared layout
7
- * - final - final layout
8
- * @public
9
- */
10
- var LayoutKind;
11
- (function (LayoutKind) {
12
- LayoutKind["Final"] = "final";
13
- LayoutKind["Shared"] = "shared";
14
- })(LayoutKind || (exports.LayoutKind = LayoutKind = {}));
15
- /**
16
- * Represents the kind of metadata element.
17
- * - open - starting chrome element
18
- * - close - closing chrome element
19
- * @internal
20
- */
21
- var MetadataKind;
22
- (function (MetadataKind) {
23
- MetadataKind["Open"] = "open";
24
- MetadataKind["Close"] = "close";
25
- })(MetadataKind || (exports.MetadataKind = MetadataKind = {}));
26
- /**
27
- * Represents the mode of the Design Library
28
- * @public
29
- */
30
- var DesignLibraryMode;
31
- (function (DesignLibraryMode) {
32
- /** Normal mode */
33
- DesignLibraryMode["Normal"] = "library";
34
- /** Metadata mode */
35
- DesignLibraryMode["Metadata"] = "library-metadata";
36
- })(DesignLibraryMode || (exports.DesignLibraryMode = DesignLibraryMode = {}));
37
- /**
38
- * Variant generation mode for Design Library
39
- * @public
40
- */
41
- var DesignLibraryVariantGeneration;
42
- (function (DesignLibraryVariantGeneration) {
43
- DesignLibraryVariantGeneration["Variant"] = "variant";
44
- })(DesignLibraryVariantGeneration || (exports.DesignLibraryVariantGeneration = DesignLibraryVariantGeneration = {}));
@@ -1,108 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.getContentSdkPagesClientData = exports.resetEditorChromes = exports.isEditorActive = exports.PagesEditor = exports.ChromeRediscoveryGlobalFunctionName = exports.EDITING_ALLOWED_ORIGINS = exports.PAGES_EDITING_MARKER = exports.PREVIEW_KEY = exports.INVALID_SECRET_HTML_MESSAGE = exports.QUERY_PARAM_EDITING_SECRET = exports.DEFAULT_PLACEHOLDER_UID = void 0;
7
- const is_server_1 = __importDefault(require("../utils/is-server"));
8
- /**
9
- * Default value of uid for root placeholder when uid is not present.
10
- * @internal
11
- */
12
- exports.DEFAULT_PLACEHOLDER_UID = '00000000-0000-0000-0000-000000000000';
13
- /**
14
- * Query parameter for editing secret
15
- * @internal
16
- */
17
- exports.QUERY_PARAM_EDITING_SECRET = 'secret';
18
- /**
19
- * HTML returned for invalid or missing secret
20
- * @internal
21
- */
22
- exports.INVALID_SECRET_HTML_MESSAGE = '<html><body>Missing or invalid secret</body></html>';
23
- /**
24
- * Key to identify whether the app is running in Sitecore Preview mode
25
- * @internal
26
- */
27
- exports.PREVIEW_KEY = 'sc_preview';
28
- /**
29
- * ID to be used as a marker for a script rendered in XMC Pages
30
- * Should identify app is in XM Cloud Pages editing mode
31
- * @internal
32
- */
33
- exports.PAGES_EDITING_MARKER = 'jss-hrz-editing';
34
- /**
35
- * Default allowed origins for editing requests. This is used to enforce CORS, CSP headers.
36
- * @internal
37
- */
38
- exports.EDITING_ALLOWED_ORIGINS = [
39
- 'https://pages.sitecorecloud.io',
40
- 'https://xmapps.sitecorecloud.io',
41
- 'https://designlibrary.sitecorecloud.io',
42
- ];
43
- /**
44
- * Copy of chrome rediscovery contract from Horizon (chrome-rediscovery.contract.ts)
45
- */
46
- exports.ChromeRediscoveryGlobalFunctionName = {
47
- name: 'Sitecore.Horizon.ResetChromes',
48
- };
49
- /**
50
- * Static utility class for Sitecore Pages Editor
51
- * @public
52
- */
53
- class PagesEditor {
54
- /**
55
- * Determines whether the current execution context is within a Pages Editor.
56
- * Pages Editor environment can be identified only in the browser
57
- * @returns true if executing within a Pages Editor
58
- */
59
- static isActive() {
60
- if ((0, is_server_1.default)()) {
61
- return false;
62
- }
63
- // Check for Chromes mode
64
- const chromesCheck = window.location.search.indexOf('sc_headless_mode=edit') > -1;
65
- // Content SDK will render a content-sdk-exclusive script element in Metadata mode to indicate edit mode in Pages
66
- return chromesCheck || !!window.document.getElementById(exports.PAGES_EDITING_MARKER);
67
- }
68
- static resetChromes() {
69
- if ((0, is_server_1.default)()) {
70
- return;
71
- }
72
- // Reset chromes in Pages
73
- window[exports.ChromeRediscoveryGlobalFunctionName.name] &&
74
- window[exports.ChromeRediscoveryGlobalFunctionName.name]();
75
- }
76
- }
77
- exports.PagesEditor = PagesEditor;
78
- /**
79
- * Determines whether the current execution context is within a Sitecore editor.
80
- * Sitecore Editor environment can be identified only in the browser
81
- * @returns true if executing within a Sitecore editor
82
- * @public
83
- */
84
- const isEditorActive = () => {
85
- return PagesEditor.isActive();
86
- };
87
- exports.isEditorActive = isEditorActive;
88
- /**
89
- * Resets Sitecore editor "chromes"
90
- * @public
91
- */
92
- const resetEditorChromes = () => {
93
- if (PagesEditor.isActive()) {
94
- PagesEditor.resetChromes();
95
- }
96
- };
97
- exports.resetEditorChromes = resetEditorChromes;
98
- /**
99
- * Gets extra Content SDK clientData scripts to render in XMC Pages in addition to clientData from Pages itself
100
- * @returns {Record} collection of clientData
101
- * @internal
102
- */
103
- const getContentSdkPagesClientData = () => {
104
- const clientData = {};
105
- clientData[exports.PAGES_EDITING_MARKER] = {};
106
- return clientData;
107
- };
108
- exports.getContentSdkPagesClientData = getContentSdkPagesClientData;
@@ -1,81 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.subscribeToFormSubmitEvent = exports.executeScriptElements = exports.loadForm = void 0;
7
- const browser_1 = require("@sitecore-cloudsdk/events/browser");
8
- const client_1 = require("../client");
9
- const debug_1 = __importDefault(require("../debug"));
10
- /**
11
- * Fetches the form markup from the Sitecore Edge service and renders it in the component's template.
12
- * @param {string} contextId - The unique identifier of the current context
13
- * @param {string} formId - The unique identifier of the form
14
- * @param {string} [edgeUrl] - The URL of the Sitecore Edge Platform
15
- * @internal
16
- */
17
- const loadForm = async (contextId, formId, edgeUrl) => {
18
- if (!contextId) {
19
- debug_1.default.form('Form was not able to render since context id was not provided');
20
- return '';
21
- }
22
- const url = (0, client_1.getEdgeProxyFormsUrl)(contextId, formId, edgeUrl);
23
- try {
24
- debug_1.default.form(`Fetching form data from ${url}`);
25
- const rsp = await fetch(url, {
26
- method: 'GET',
27
- cache: 'no-cache',
28
- });
29
- if (rsp.status !== 200) {
30
- throw new Error('Failed to fetch form data');
31
- }
32
- const content = await rsp.text();
33
- debug_1.default.form(`Form data fetch response: ${content}`);
34
- return content;
35
- }
36
- catch (error) {
37
- debug_1.default.form(`Form '${formId}' was not able to render`, error);
38
- throw error;
39
- }
40
- };
41
- exports.loadForm = loadForm;
42
- /**
43
- * When you set the innerHTML property of an element, the browser does not execute any <script> tags included in the HTML string
44
- * This method ensures that any <script> elements within the loaded HTML are executed.
45
- * It re-creates the script elements and appends the to the component's template, then removes old script elements to avoid duplication.
46
- * @param {HTMLElement} rootElement - The root element to execute script elements within
47
- * @internal
48
- */
49
- const executeScriptElements = (rootElement) => {
50
- const scriptElements = rootElement.querySelectorAll('script');
51
- if (!scriptElements) {
52
- return;
53
- }
54
- Array.from(scriptElements).forEach((scriptElement) => {
55
- var _a;
56
- const clonedElement = document.createElement('script');
57
- Array.from(scriptElement.attributes).forEach((attribute) => {
58
- clonedElement.setAttribute(attribute.name, attribute.value);
59
- });
60
- clonedElement.text = scriptElement.text;
61
- (_a = scriptElement === null || scriptElement === void 0 ? void 0 : scriptElement.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(clonedElement, scriptElement);
62
- });
63
- };
64
- exports.executeScriptElements = executeScriptElements;
65
- /**
66
- * Subscribes to the Form event and then sends data to CloudSDK.
67
- * This listener captures interactions such as form views or submissions
68
- * @param {HTMLElement} formElement - The form element to subscribe to events on
69
- * @param {string} [componentId] - The unique identifier of the component
70
- * @internal
71
- */
72
- const subscribeToFormSubmitEvent = (formElement, componentId) => {
73
- formElement.addEventListener('form:engage', ((e) => {
74
- const { formId, name } = e.detail;
75
- if (formId && name) {
76
- debug_1.default.form('Sending form event', formId, name);
77
- (0, browser_1.form)(formId, name, (componentId === null || componentId === void 0 ? void 0 : componentId.replace(/-/g, '')) || '');
78
- }
79
- }));
80
- };
81
- exports.subscribeToFormSubmitEvent = subscribeToFormSubmitEvent;
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.subscribeToFormSubmitEvent = exports.loadForm = exports.executeScriptElements = void 0;
4
- var form_1 = require("./form");
5
- Object.defineProperty(exports, "executeScriptElements", { enumerable: true, get: function () { return form_1.executeScriptElements; } });
6
- Object.defineProperty(exports, "loadForm", { enumerable: true, get: function () { return form_1.loadForm; } });
7
- Object.defineProperty(exports, "subscribeToFormSubmitEvent", { enumerable: true, get: function () { return form_1.subscribeToFormSubmitEvent; } });
@@ -1,144 +0,0 @@
1
- "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
- Object.defineProperty(exports, "__esModule", { value: true });
6
- exports.DictionaryService = exports.queryError = void 0;
7
- const cache_client_1 = require("../cache-client");
8
- const constants_1 = require("../client/constants");
9
- const debug_1 = __importDefault(require("../debug"));
10
- /** @private */
11
- exports.queryError = 'Valid value for rootItemId not provided and failed to auto-resolve app root item.';
12
- /** @default */
13
- const siteQuery = /* GraphQL */ `
14
- query DictionarySiteQuery(
15
- $siteName: String!
16
- $language: String!
17
- $pageSize: Int = 500
18
- $after: String
19
- ) {
20
- site {
21
- siteInfo(site: $siteName) {
22
- dictionary(language: $language, first: $pageSize, after: $after) {
23
- pageInfo {
24
- endCursor
25
- hasNext
26
- }
27
- results {
28
- key
29
- value
30
- }
31
- }
32
- }
33
- }
34
- }
35
- `;
36
- /**
37
- * Service that fetch dictionary data using Sitecore's GraphQL API.
38
- * @augments DictionaryServiceBase
39
- * @mixes SearchQueryService<DictionaryQueryResult>
40
- * @public
41
- */
42
- class DictionaryService {
43
- /**
44
- * Creates an instance of graphQL dictionary service with the provided options
45
- * @param {DictionaryService} options instance
46
- */
47
- constructor(options) {
48
- this.options = options;
49
- this.cache = this.getCacheClient();
50
- this.graphQLClient = this.getGraphQLClient();
51
- }
52
- /**
53
- * Fetches dictionary data for internalization. Uses search query by default
54
- * @param {string} language the language to fetch
55
- * @param {string} site site name to fetch data for.
56
- * @param {FetchOptions} [fetchOptions] Options to override graphQL client details like retries and fetch implementation
57
- * @returns {Promise<DictionaryPhrases>} dictionary phrases
58
- * @throws {Error} if the app root was not found for the specified site and language.
59
- */
60
- async fetchDictionaryData(language, site, fetchOptions) {
61
- var _a, _b;
62
- const cacheKey = site + language;
63
- const cachedValue = this.getCacheValue(cacheKey);
64
- if (cachedValue) {
65
- debug_1.default.dictionary('using cached dictionary data for %s %s', language, site);
66
- return cachedValue;
67
- }
68
- const phrases = {};
69
- debug_1.default.dictionary('fetching dictionary data for %s %s', language, site);
70
- let results = [];
71
- let hasNext = true;
72
- let after = '';
73
- if (!site) {
74
- throw new RangeError(constants_1.siteNameError);
75
- }
76
- if (!language) {
77
- throw new RangeError(constants_1.languageError);
78
- }
79
- while (hasNext) {
80
- const fetchResponse = await this.graphQLClient.request(siteQuery, {
81
- siteName: site,
82
- language,
83
- pageSize: this.options.pageSize,
84
- after,
85
- }, fetchOptions);
86
- if ((_b = (_a = fetchResponse === null || fetchResponse === void 0 ? void 0 : fetchResponse.site) === null || _a === void 0 ? void 0 : _a.siteInfo) === null || _b === void 0 ? void 0 : _b.dictionary) {
87
- results = results.concat(fetchResponse.site.siteInfo.dictionary.results);
88
- after = fetchResponse.site.siteInfo.dictionary.pageInfo.endCursor;
89
- hasNext = fetchResponse.site.siteInfo.dictionary.pageInfo.hasNext;
90
- }
91
- else {
92
- hasNext = false;
93
- }
94
- }
95
- results.forEach((item) => (phrases[item.key] = item.value));
96
- this.setCacheValue(cacheKey, phrases);
97
- return phrases;
98
- }
99
- /**
100
- * Caches a @see DictionaryPhrases value for the specified cache key.
101
- * @param {string} key The cache key.
102
- * @param {DictionaryPhrases} value The value to cache.
103
- * @returns The value added to the cache.
104
- * @mixes CacheClient<DictionaryPhrases>
105
- */
106
- setCacheValue(key, value) {
107
- return this.cache.setCacheValue(key, value);
108
- }
109
- /**
110
- * Retrieves a @see DictionaryPhrases value from the cache.
111
- * @param {string} key The cache key.
112
- * @returns The @see DictionaryPhrases value, or null if the specified key is not found in the cache.
113
- */
114
- getCacheValue(key) {
115
- return this.cache.getCacheValue(key);
116
- }
117
- /**
118
- * Gets a cache client that can cache data. Uses memory-cache as the default
119
- * library for caching (@see MemoryCacheClient). Override this method if you
120
- * want to use something else.
121
- * @returns {CacheClient} implementation
122
- */
123
- getCacheClient() {
124
- return new cache_client_1.MemoryCacheClient(this.options);
125
- }
126
- /**
127
- * Gets a GraphQL client that can make requests to the API. Uses graphql-request as the default
128
- * library for fetching graphql data (@see GraphQLRequestClient). Override this method if you
129
- * want to use something else.
130
- * @returns {GraphQLClient} implementation
131
- */
132
- getGraphQLClient() {
133
- var _a, _b;
134
- if (!this.options.clientFactory) {
135
- throw new Error('clientFactory needs to be provided when initializing GraphQL client.');
136
- }
137
- return this.options.clientFactory({
138
- debugger: debug_1.default.dictionary,
139
- retries: (_a = this.options.retries) === null || _a === void 0 ? void 0 : _a.count,
140
- retryStrategy: (_b = this.options.retries) === null || _b === void 0 ? void 0 : _b.retryStrategy,
141
- });
142
- }
143
- }
144
- exports.DictionaryService = DictionaryService;
@@ -1,7 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLocaleRewrite = exports.DictionaryService = void 0;
4
- var dictionary_service_1 = require("./dictionary-service");
5
- Object.defineProperty(exports, "DictionaryService", { enumerable: true, get: function () { return dictionary_service_1.DictionaryService; } });
6
- var utils_1 = require("./utils");
7
- Object.defineProperty(exports, "getLocaleRewrite", { enumerable: true, get: function () { return utils_1.getLocaleRewrite; } });
@@ -1,16 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getLocaleRewrite = getLocaleRewrite;
4
- /**
5
- * Get a locale rewrite path for given pathname
6
- * @param {string} pathname the pathname
7
- * @param {string} locale the site data to include in the rewrite
8
- * @returns {string} the rewrite path
9
- * @public
10
- */
11
- function getLocaleRewrite(pathname, locale) {
12
- if (pathname === '/')
13
- return `/${locale}`;
14
- const path = pathname.startsWith('/') ? pathname : '/' + pathname;
15
- return `/${locale}${path}`;
16
- }
@@ -1,72 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.traverseComponent = exports.traverseField = exports.traversePlaceholder = exports.getContentStylesheetUrl = exports.getContentStylesheetLink = void 0;
4
- const constants_1 = require("../constants");
5
- const normalize_url_1 = require("../utils/normalize-url");
6
- /**
7
- * Regular expression to check if the content styles are used in the field value
8
- */
9
- const CLASS_REGEXP = /class=".*(\bck-content\b).*"/g;
10
- /**
11
- * Get the content styles link to be loaded from the Sitecore Edge Platform
12
- * @param {LayoutServiceData} layoutData Layout service data
13
- * @param {string} sitecoreEdgeContextId Sitecore Edge Context ID
14
- * @param {string} [sitecoreEdgeUrl] Sitecore Edge Platform URL. Default is https://edge-platform.sitecorecloud.io
15
- * @returns {HTMLLink | null} content styles link, null if no styles are used in layout
16
- * @public
17
- */
18
- const getContentStylesheetLink = (layoutData, sitecoreEdgeContextId, sitecoreEdgeUrl = constants_1.SITECORE_EDGE_URL_DEFAULT) => {
19
- if (!layoutData.sitecore.route)
20
- return null;
21
- const config = { loadStyles: false };
22
- (0, exports.traverseComponent)(layoutData.sitecore.route, config);
23
- if (!config.loadStyles)
24
- return null;
25
- return {
26
- href: (0, exports.getContentStylesheetUrl)(sitecoreEdgeContextId, sitecoreEdgeUrl),
27
- rel: 'stylesheet',
28
- };
29
- };
30
- exports.getContentStylesheetLink = getContentStylesheetLink;
31
- const getContentStylesheetUrl = (sitecoreEdgeContextId, sitecoreEdgeUrl = constants_1.SITECORE_EDGE_URL_DEFAULT) => `${(0, normalize_url_1.normalizeUrl)(sitecoreEdgeUrl)}/v1/files/pages/styles/content-styles.css?sitecoreContextId=${sitecoreEdgeContextId}`;
32
- exports.getContentStylesheetUrl = getContentStylesheetUrl;
33
- const traversePlaceholder = (components, config) => {
34
- if (config.loadStyles)
35
- return;
36
- components.forEach((component) => {
37
- (0, exports.traverseComponent)(component, config);
38
- });
39
- };
40
- exports.traversePlaceholder = traversePlaceholder;
41
- const traverseField = (field, config) => {
42
- if (!field || typeof field !== 'object' || config.loadStyles)
43
- return;
44
- if ('value' in field && typeof field.value === 'string') {
45
- config.loadStyles = CLASS_REGEXP.test(field.value);
46
- }
47
- else if ('fields' in field) {
48
- Object.values(field.fields).forEach((field) => {
49
- (0, exports.traverseField)(field, config);
50
- });
51
- }
52
- else if (Array.isArray(field)) {
53
- field.forEach((field) => {
54
- (0, exports.traverseField)(field, config);
55
- });
56
- }
57
- };
58
- exports.traverseField = traverseField;
59
- const traverseComponent = (component, config) => {
60
- if (config.loadStyles)
61
- return;
62
- if ('fields' in component && component.fields) {
63
- Object.values(component.fields).forEach((field) => {
64
- (0, exports.traverseField)(field, config);
65
- });
66
- }
67
- const placeholders = component.placeholders || {};
68
- Object.keys(placeholders).forEach((placeholder) => {
69
- (0, exports.traversePlaceholder)(placeholders[placeholder], config);
70
- });
71
- };
72
- exports.traverseComponent = traverseComponent;
@@ -1,24 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getDesignLibraryStylesheetLinks = exports.GRAPHQL_LAYOUT_QUERY_NAME = exports.LayoutService = exports.getContentStylesheetLink = exports.EMPTY_DATE_FIELD_VALUE = exports.getDynamicPlaceholderPattern = exports.isDynamicPlaceholder = exports.isFieldValueEmpty = exports.getChildPlaceholder = exports.getFieldValue = exports.EDITING_COMPONENT_ID = exports.EDITING_COMPONENT_PLACEHOLDER = exports.RenderingType = exports.EditMode = exports.LayoutServicePageState = void 0;
4
- // layout
5
- var models_1 = require("./models");
6
- Object.defineProperty(exports, "LayoutServicePageState", { enumerable: true, get: function () { return models_1.LayoutServicePageState; } });
7
- Object.defineProperty(exports, "EditMode", { enumerable: true, get: function () { return models_1.EditMode; } });
8
- Object.defineProperty(exports, "RenderingType", { enumerable: true, get: function () { return models_1.RenderingType; } });
9
- Object.defineProperty(exports, "EDITING_COMPONENT_PLACEHOLDER", { enumerable: true, get: function () { return models_1.EDITING_COMPONENT_PLACEHOLDER; } });
10
- Object.defineProperty(exports, "EDITING_COMPONENT_ID", { enumerable: true, get: function () { return models_1.EDITING_COMPONENT_ID; } });
11
- var utils_1 = require("./utils");
12
- Object.defineProperty(exports, "getFieldValue", { enumerable: true, get: function () { return utils_1.getFieldValue; } });
13
- Object.defineProperty(exports, "getChildPlaceholder", { enumerable: true, get: function () { return utils_1.getChildPlaceholder; } });
14
- Object.defineProperty(exports, "isFieldValueEmpty", { enumerable: true, get: function () { return utils_1.isFieldValueEmpty; } });
15
- Object.defineProperty(exports, "isDynamicPlaceholder", { enumerable: true, get: function () { return utils_1.isDynamicPlaceholder; } });
16
- Object.defineProperty(exports, "getDynamicPlaceholderPattern", { enumerable: true, get: function () { return utils_1.getDynamicPlaceholderPattern; } });
17
- Object.defineProperty(exports, "EMPTY_DATE_FIELD_VALUE", { enumerable: true, get: function () { return utils_1.EMPTY_DATE_FIELD_VALUE; } });
18
- var content_styles_1 = require("./content-styles");
19
- Object.defineProperty(exports, "getContentStylesheetLink", { enumerable: true, get: function () { return content_styles_1.getContentStylesheetLink; } });
20
- var layout_service_1 = require("./layout-service");
21
- Object.defineProperty(exports, "LayoutService", { enumerable: true, get: function () { return layout_service_1.LayoutService; } });
22
- Object.defineProperty(exports, "GRAPHQL_LAYOUT_QUERY_NAME", { enumerable: true, get: function () { return layout_service_1.GRAPHQL_LAYOUT_QUERY_NAME; } });
23
- var themes_1 = require("./themes");
24
- Object.defineProperty(exports, "getDesignLibraryStylesheetLinks", { enumerable: true, get: function () { return themes_1.getDesignLibraryStylesheetLinks; } });