@sitecore-content-sdk/core 1.3.0-canary.9 → 1.4.0-canary.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +7 -7
- package/dist/cjs/cache-client.js +55 -54
- package/dist/cjs/client/constants.js +7 -7
- package/dist/cjs/client/edge-proxy.js +24 -22
- package/dist/cjs/client/index.js +15 -15
- package/dist/cjs/client/models.js +2 -2
- package/dist/cjs/client/sitecore-client.js +421 -419
- package/dist/cjs/client/utils.js +47 -46
- package/dist/cjs/config/define-config.js +194 -193
- package/dist/cjs/config/index.js +7 -7
- package/dist/cjs/config/models.js +12 -11
- package/dist/cjs/config-cli/define-cli-config.js +23 -22
- package/dist/cjs/config-cli/index.js +7 -7
- package/dist/cjs/config-cli/models.js +8 -7
- package/dist/cjs/constants.js +49 -17
- package/dist/cjs/debug.js +48 -46
- package/dist/cjs/editing/codegen/index.js +14 -9
- package/dist/cjs/editing/codegen/preview.js +277 -193
- package/dist/cjs/editing/component-layout-service.js +62 -61
- package/dist/cjs/editing/design-library.js +183 -126
- package/dist/cjs/editing/editing-service.js +75 -74
- package/dist/cjs/editing/index.js +33 -27
- package/dist/cjs/editing/metadata.js +42 -42
- package/dist/cjs/editing/models.js +44 -38
- package/dist/cjs/editing/utils.js +108 -90
- package/dist/cjs/form/form.js +81 -78
- package/dist/cjs/form/index.js +7 -7
- package/dist/cjs/graphql-request-client.js +108 -107
- package/dist/cjs/i18n/dictionary-service.js +122 -121
- package/dist/cjs/i18n/index.js +7 -7
- package/dist/cjs/i18n/utils.js +16 -15
- package/dist/cjs/index.js +60 -60
- package/dist/cjs/layout/content-styles.js +72 -71
- package/dist/cjs/layout/index.js +24 -24
- package/dist/cjs/layout/layout-service.js +62 -57
- package/dist/cjs/layout/models.js +39 -34
- package/dist/cjs/layout/themes.js +76 -75
- package/dist/cjs/layout/utils.js +117 -110
- package/dist/cjs/media/index.js +38 -38
- package/dist/cjs/media/media-api.js +100 -96
- package/dist/cjs/models.js +2 -2
- package/dist/cjs/native-fetcher.js +194 -179
- package/dist/cjs/personalize/index.js +15 -15
- package/dist/cjs/personalize/layout-personalizer.js +98 -97
- package/dist/cjs/personalize/personalize-service.js +98 -94
- package/dist/cjs/personalize/utils.js +143 -136
- package/dist/cjs/retries.js +43 -42
- package/dist/cjs/site/error-pages-service.js +65 -64
- package/dist/cjs/site/index.js +26 -26
- package/dist/cjs/site/models.js +2 -2
- package/dist/cjs/site/redirects-service.js +94 -81
- package/dist/cjs/site/robots-service.js +66 -65
- package/dist/cjs/site/site-resolver.js +73 -72
- package/dist/cjs/site/siteinfo-service.js +84 -80
- package/dist/cjs/site/sitemap-xml-service.js +84 -83
- package/dist/cjs/site/sitepath-service.js +165 -164
- package/dist/cjs/site/utils.js +55 -47
- package/dist/cjs/sitecore-service-base.js +36 -36
- package/dist/cjs/tools/auth/flow.js +65 -64
- package/dist/cjs/tools/auth/index.js +5 -5
- package/dist/cjs/tools/auth/models.js +2 -2
- package/dist/cjs/tools/auth/tenant-store.js +38 -38
- package/dist/cjs/tools/codegen/component-generation.js +52 -50
- package/dist/cjs/tools/codegen/extract-files.js +105 -107
- package/dist/cjs/tools/codegen/import-map.js +401 -349
- package/dist/cjs/tools/codegen/utils.js +418 -418
- package/dist/cjs/tools/generate-map.js +2 -2
- package/dist/cjs/tools/generateMetadata.js +36 -35
- package/dist/cjs/tools/generateSites.js +59 -58
- package/dist/cjs/tools/index.js +75 -73
- package/dist/cjs/tools/scaffold.js +60 -59
- package/dist/cjs/tools/templating/components.js +96 -266
- package/dist/cjs/tools/templating/index.js +11 -14
- package/dist/cjs/tools/templating/plugins.js +80 -78
- package/dist/cjs/tools/templating/utils.js +67 -66
- package/dist/cjs/utils/ensurePath.js +20 -20
- package/dist/cjs/utils/env.js +28 -27
- package/dist/cjs/utils/globalCache.js +55 -0
- package/dist/cjs/utils/index.js +26 -21
- package/dist/cjs/utils/is-server.js +11 -10
- package/dist/cjs/utils/normalize-url.js +5 -5
- package/dist/cjs/utils/timeout-promise.js +31 -31
- package/dist/cjs/utils/utils.js +254 -229
- package/dist/esm/cache-client.js +51 -50
- package/dist/esm/client/constants.js +4 -4
- package/dist/esm/client/edge-proxy.js +19 -17
- package/dist/esm/client/index.js +5 -5
- package/dist/esm/client/models.js +1 -1
- package/dist/esm/client/sitecore-client.js +414 -412
- package/dist/esm/client/utils.js +43 -42
- package/dist/esm/config/define-config.js +188 -187
- package/dist/esm/config/index.js +2 -2
- package/dist/esm/config/models.js +9 -8
- package/dist/esm/config-cli/define-cli-config.js +19 -18
- package/dist/esm/config-cli/index.js +2 -2
- package/dist/esm/config-cli/models.js +5 -4
- package/dist/esm/constants.js +46 -14
- package/dist/esm/debug.js +41 -39
- package/dist/esm/editing/codegen/index.js +1 -1
- package/dist/esm/editing/codegen/preview.js +263 -185
- package/dist/esm/editing/component-layout-service.js +55 -54
- package/dist/esm/editing/design-library.js +171 -117
- package/dist/esm/editing/editing-service.js +68 -67
- package/dist/esm/editing/index.js +6 -5
- package/dist/esm/editing/metadata.js +39 -39
- package/dist/esm/editing/models.js +41 -35
- package/dist/esm/editing/utils.js +98 -80
- package/dist/esm/form/form.js +72 -69
- package/dist/esm/form/index.js +1 -1
- package/dist/esm/graphql-request-client.js +101 -100
- package/dist/esm/i18n/dictionary-service.js +115 -114
- package/dist/esm/i18n/index.js +2 -2
- package/dist/esm/i18n/utils.js +13 -12
- package/dist/esm/index.js +13 -13
- package/dist/esm/layout/content-styles.js +64 -63
- package/dist/esm/layout/index.js +6 -6
- package/dist/esm/layout/layout-service.js +55 -50
- package/dist/esm/layout/models.js +36 -31
- package/dist/esm/layout/themes.js +71 -70
- package/dist/esm/layout/utils.js +109 -102
- package/dist/esm/media/index.js +2 -2
- package/dist/esm/media/media-api.js +90 -86
- package/dist/esm/models.js +1 -1
- package/dist/esm/native-fetcher.js +187 -172
- package/dist/esm/personalize/index.js +3 -3
- package/dist/esm/personalize/layout-personalizer.js +93 -92
- package/dist/esm/personalize/personalize-service.js +91 -87
- package/dist/esm/personalize/utils.js +135 -128
- package/dist/esm/retries.js +39 -38
- package/dist/esm/site/error-pages-service.js +58 -57
- package/dist/esm/site/index.js +8 -8
- package/dist/esm/site/models.js +1 -1
- package/dist/esm/site/redirects-service.js +87 -74
- package/dist/esm/site/robots-service.js +59 -58
- package/dist/esm/site/site-resolver.js +69 -68
- package/dist/esm/site/siteinfo-service.js +77 -73
- package/dist/esm/site/sitemap-xml-service.js +77 -76
- package/dist/esm/site/sitepath-service.js +157 -156
- package/dist/esm/site/utils.js +49 -41
- package/dist/esm/sitecore-service-base.js +29 -29
- package/dist/esm/tools/auth/flow.js +62 -61
- package/dist/esm/tools/auth/index.js +1 -1
- package/dist/esm/tools/auth/models.js +1 -1
- package/dist/esm/tools/auth/tenant-store.js +35 -35
- package/dist/esm/tools/codegen/component-generation.js +44 -42
- package/dist/esm/tools/codegen/extract-files.js +99 -101
- package/dist/esm/tools/codegen/import-map.js +358 -306
- package/dist/esm/tools/codegen/utils.js +373 -373
- package/dist/esm/tools/generate-map.js +1 -1
- package/dist/esm/tools/generateMetadata.js +29 -28
- package/dist/esm/tools/generateSites.js +52 -51
- package/dist/esm/tools/index.js +28 -27
- package/dist/esm/tools/scaffold.js +52 -51
- package/dist/esm/tools/templating/components.js +59 -223
- package/dist/esm/tools/templating/index.js +3 -3
- package/dist/esm/tools/templating/plugins.js +72 -70
- package/dist/esm/tools/templating/utils.js +59 -58
- package/dist/esm/utils/ensurePath.js +13 -13
- package/dist/esm/utils/env.js +24 -23
- package/dist/esm/utils/globalCache.js +49 -0
- package/dist/esm/utils/index.js +4 -3
- package/dist/esm/utils/is-server.js +9 -8
- package/dist/esm/utils/normalize-url.js +1 -1
- package/dist/esm/utils/timeout-promise.js +28 -28
- package/dist/esm/utils/utils.js +238 -213
- package/package.json +73 -5
- package/types/cache-client.d.ts +68 -64
- package/types/cache-client.d.ts.map +1 -0
- package/types/client/constants.d.ts +5 -4
- package/types/client/constants.d.ts.map +1 -0
- package/types/client/edge-proxy.d.ts +18 -15
- package/types/client/edge-proxy.d.ts.map +1 -0
- package/types/client/index.d.ts +8 -7
- package/types/client/index.d.ts.map +1 -0
- package/types/client/models.d.ts +21 -19
- package/types/client/models.d.ts.map +1 -0
- package/types/client/sitecore-client.d.ts +338 -327
- package/types/client/sitecore-client.d.ts.map +1 -0
- package/types/client/utils.d.ts +15 -9
- package/types/client/utils.d.ts.map +1 -0
- package/types/config/define-config.d.ts +20 -18
- package/types/config/define-config.d.ts.map +1 -0
- package/types/config/index.d.ts +3 -2
- package/types/config/index.d.ts.map +1 -0
- package/types/config/models.d.ts +287 -268
- package/types/config/models.d.ts.map +1 -0
- package/types/config-cli/define-cli-config.d.ts +9 -7
- package/types/config-cli/define-cli-config.d.ts.map +1 -0
- package/types/config-cli/index.d.ts +3 -2
- package/types/config-cli/index.d.ts.map +1 -0
- package/types/config-cli/models.d.ts +6 -4
- package/types/config-cli/models.d.ts.map +1 -0
- package/types/constants.d.ts +44 -11
- package/types/constants.d.ts.map +1 -0
- package/types/debug.d.ts +35 -28
- package/types/debug.d.ts.map +1 -0
- package/types/editing/codegen/index.d.ts +2 -1
- package/types/editing/codegen/index.d.ts.map +1 -0
- package/types/editing/codegen/preview.d.ts +256 -195
- package/types/editing/codegen/preview.d.ts.map +1 -0
- package/types/editing/component-layout-service.d.ts +84 -80
- package/types/editing/component-layout-service.d.ts.map +1 -0
- package/types/editing/design-library.d.ts +111 -63
- package/types/editing/design-library.d.ts.map +1 -0
- package/types/editing/editing-service.d.ts +72 -62
- package/types/editing/editing-service.d.ts.map +1 -0
- package/types/editing/index.d.ts +7 -6
- package/types/editing/index.d.ts.map +1 -0
- package/types/editing/metadata.d.ts +8 -7
- package/types/editing/metadata.d.ts.map +1 -0
- package/types/editing/models.d.ts +103 -92
- package/types/editing/models.d.ts.map +1 -0
- package/types/editing/utils.d.ts +91 -74
- package/types/editing/utils.d.ts.map +1 -0
- package/types/form/form.d.ts +25 -21
- package/types/form/form.d.ts.map +1 -0
- package/types/form/index.d.ts +2 -1
- package/types/form/index.d.ts.map +1 -0
- package/types/graphql-request-client.d.ts +112 -105
- package/types/graphql-request-client.d.ts.map +1 -0
- package/types/i18n/dictionary-service.d.ts +135 -131
- package/types/i18n/dictionary-service.d.ts.map +1 -0
- package/types/i18n/index.d.ts +3 -2
- package/types/i18n/index.d.ts.map +1 -0
- package/types/i18n/utils.d.ts +9 -7
- package/types/i18n/utils.d.ts.map +1 -0
- package/types/index.d.ts +13 -12
- package/types/index.d.ts.map +1 -0
- package/types/layout/content-styles.d.ts +20 -18
- package/types/layout/content-styles.d.ts.map +1 -0
- package/types/layout/index.d.ts +6 -5
- package/types/layout/index.d.ts.map +1 -0
- package/types/layout/layout-service.d.ts +45 -35
- package/types/layout/layout-service.d.ts.map +1 -0
- package/types/layout/models.d.ts +174 -151
- package/types/layout/models.d.ts.map +1 -0
- package/types/layout/themes.d.ts +13 -11
- package/types/layout/themes.d.ts.map +1 -0
- package/types/layout/utils.d.ts +56 -41
- package/types/layout/utils.d.ts.map +1 -0
- package/types/media/index.d.ts +3 -2
- package/types/media/index.d.ts.map +1 -0
- package/types/media/media-api.d.ts +60 -55
- package/types/media/media-api.d.ts.map +1 -0
- package/types/models.d.ts +94 -84
- package/types/models.d.ts.map +1 -0
- package/types/native-fetcher.d.ts +124 -114
- package/types/native-fetcher.d.ts.map +1 -0
- package/types/personalize/index.d.ts +4 -3
- package/types/personalize/index.d.ts.map +1 -0
- package/types/personalize/layout-personalizer.d.ts +29 -27
- package/types/personalize/layout-personalizer.d.ts.map +1 -0
- package/types/personalize/personalize-service.d.ts +90 -80
- package/types/personalize/personalize-service.d.ts.map +1 -0
- package/types/personalize/utils.d.ts +78 -69
- package/types/personalize/utils.d.ts.map +1 -0
- package/types/retries.d.ts +26 -24
- package/types/retries.d.ts.map +1 -0
- package/types/site/error-pages-service.d.ts +64 -57
- package/types/site/error-pages-service.d.ts.map +1 -0
- package/types/site/index.d.ts +10 -9
- package/types/site/index.d.ts.map +1 -0
- package/types/site/models.d.ts +23 -18
- package/types/site/models.d.ts.map +1 -0
- package/types/site/redirects-service.d.ts +92 -69
- package/types/site/redirects-service.d.ts.map +1 -0
- package/types/site/robots-service.d.ts +57 -50
- package/types/site/robots-service.d.ts.map +1 -0
- package/types/site/site-resolver.d.ts +28 -26
- package/types/site/site-resolver.d.ts.map +1 -0
- package/types/site/siteinfo-service.d.ts +65 -52
- package/types/site/siteinfo-service.d.ts.map +1 -0
- package/types/site/sitemap-xml-service.d.ts +63 -56
- package/types/site/sitemap-xml-service.d.ts.map +1 -0
- package/types/site/sitepath-service.d.ts +137 -134
- package/types/site/sitepath-service.d.ts.map +1 -0
- package/types/site/utils.d.ts +41 -28
- package/types/site/utils.d.ts.map +1 -0
- package/types/sitecore-service-base.d.ts +31 -30
- package/types/sitecore-service-base.d.ts.map +1 -0
- package/types/tools/auth/flow.d.ts +29 -27
- package/types/tools/auth/flow.d.ts.map +1 -0
- package/types/tools/auth/index.d.ts +2 -1
- package/types/tools/auth/index.d.ts.map +1 -0
- package/types/tools/auth/models.d.ts +35 -33
- package/types/tools/auth/models.d.ts.map +1 -0
- package/types/tools/auth/tenant-store.d.ts +12 -11
- package/types/tools/auth/tenant-store.d.ts.map +1 -0
- package/types/tools/codegen/component-generation.d.ts +50 -47
- package/types/tools/codegen/component-generation.d.ts.map +1 -0
- package/types/tools/codegen/extract-files.d.ts +24 -22
- package/types/tools/codegen/extract-files.d.ts.map +1 -0
- package/types/tools/codegen/import-map.d.ts +103 -70
- package/types/tools/codegen/import-map.d.ts.map +1 -0
- package/types/tools/codegen/utils.d.ts +76 -75
- package/types/tools/codegen/utils.d.ts.map +1 -0
- package/types/tools/generate-map.d.ts +36 -26
- package/types/tools/generate-map.d.ts.map +1 -0
- package/types/tools/generateMetadata.d.ts +24 -22
- package/types/tools/generateMetadata.d.ts.map +1 -0
- package/types/tools/generateSites.d.ts +25 -22
- package/types/tools/generateSites.d.ts.map +1 -0
- package/types/tools/index.d.ts +22 -20
- package/types/tools/index.d.ts.map +1 -0
- package/types/tools/scaffold.d.ts +27 -25
- package/types/tools/scaffold.d.ts.map +1 -0
- package/types/tools/templating/components.d.ts +104 -103
- package/types/tools/templating/components.d.ts.map +1 -0
- package/types/tools/templating/index.d.ts +4 -3
- package/types/tools/templating/index.d.ts.map +1 -0
- package/types/tools/templating/plugins.d.ts +71 -67
- package/types/tools/templating/plugins.d.ts.map +1 -0
- package/types/tools/templating/utils.d.ts +42 -40
- package/types/tools/templating/utils.d.ts.map +1 -0
- package/types/utils/ensurePath.d.ts +7 -6
- package/types/utils/ensurePath.d.ts.map +1 -0
- package/types/utils/env.d.ts +9 -7
- package/types/utils/env.d.ts.map +1 -0
- package/types/utils/globalCache.d.ts +37 -0
- package/types/utils/globalCache.d.ts.map +1 -0
- package/types/utils/index.d.ts +5 -3
- package/types/utils/index.d.ts.map +1 -0
- package/types/utils/is-server.d.ts +8 -6
- package/types/utils/is-server.d.ts.map +1 -0
- package/types/utils/normalize-url.d.ts +2 -1
- package/types/utils/normalize-url.d.ts.map +1 -0
- package/types/utils/timeout-promise.d.ts +18 -17
- package/types/utils/timeout-promise.d.ts.map +1 -0
- package/types/utils/utils.d.ts +104 -79
- package/types/utils/utils.d.ts.map +1 -0
- package/client.js +0 -1
- package/codegen.js +0 -1
- package/config-cli.js +0 -1
- package/config.js +0 -1
- package/editing.js +0 -1
- package/i18n.js +0 -1
- package/layout.js +0 -1
- package/media.js +0 -1
- package/personalize.js +0 -1
- package/site.js +0 -1
- package/tools.js +0 -1
- package/utils.js +0 -1
|
@@ -1,39 +1,39 @@
|
|
|
1
|
-
import { execSync } from 'child_process';
|
|
2
|
-
const trackedScopes = [
|
|
3
|
-
'@sitecore',
|
|
4
|
-
'@sitecore-cloudsdk',
|
|
5
|
-
'@sitecore-feaas',
|
|
6
|
-
'@sitecore-content-sdk',
|
|
7
|
-
];
|
|
8
|
-
/**
|
|
9
|
-
* Get application metadata
|
|
10
|
-
* @param {boolean} allowWorkspaces - Whether to allow workspaces in the metadata generation.
|
|
11
|
-
* @returns {Metadata} The generated metadata.
|
|
12
|
-
*/
|
|
13
|
-
export function getMetadata(allowWorkspaces = false) {
|
|
14
|
-
const metadata = { packages: {} };
|
|
15
|
-
let queryResult = [];
|
|
16
|
-
try {
|
|
17
|
-
queryResult = JSON.parse(execSync(`npm query [name*=@sitecore] --workspaces ${allowWorkspaces}`).toString());
|
|
18
|
-
}
|
|
19
|
-
catch (error) {
|
|
20
|
-
console.error('Failed to retrieve sitecore packages using npm query', error);
|
|
21
|
-
return metadata;
|
|
22
|
-
}
|
|
23
|
-
metadata.packages = getPackagesFromQueryResult(queryResult);
|
|
24
|
-
return metadata;
|
|
25
|
-
}
|
|
26
|
-
/**
|
|
27
|
-
* Retrieve all packages of the tracked scopes with their exact versions
|
|
28
|
-
* @param {Package[]} scPackages list of packages
|
|
29
|
-
* @returns {Record<string, string>} an object with the packages with their exact versions
|
|
30
|
-
*/
|
|
31
|
-
function getPackagesFromQueryResult(scPackages) {
|
|
32
|
-
const packages = {};
|
|
33
|
-
scPackages.forEach((scPackage) => {
|
|
34
|
-
if (trackedScopes.some((trackedScope) => scPackage.name.startsWith(trackedScope))) {
|
|
35
|
-
packages[scPackage.name] = scPackage.version;
|
|
36
|
-
}
|
|
37
|
-
});
|
|
38
|
-
return packages;
|
|
39
|
-
}
|
|
1
|
+
import { execSync } from 'child_process';
|
|
2
|
+
const trackedScopes = [
|
|
3
|
+
'@sitecore',
|
|
4
|
+
'@sitecore-cloudsdk',
|
|
5
|
+
'@sitecore-feaas',
|
|
6
|
+
'@sitecore-content-sdk',
|
|
7
|
+
];
|
|
8
|
+
/**
|
|
9
|
+
* Get application metadata
|
|
10
|
+
* @param {boolean} allowWorkspaces - Whether to allow workspaces in the metadata generation.
|
|
11
|
+
* @returns {Metadata} The generated metadata.
|
|
12
|
+
*/
|
|
13
|
+
export function getMetadata(allowWorkspaces = false) {
|
|
14
|
+
const metadata = { packages: {} };
|
|
15
|
+
let queryResult = [];
|
|
16
|
+
try {
|
|
17
|
+
queryResult = JSON.parse(execSync(`npm query [name*=@sitecore] --workspaces ${allowWorkspaces}`).toString());
|
|
18
|
+
}
|
|
19
|
+
catch (error) {
|
|
20
|
+
console.error('Failed to retrieve sitecore packages using npm query', error);
|
|
21
|
+
return metadata;
|
|
22
|
+
}
|
|
23
|
+
metadata.packages = getPackagesFromQueryResult(queryResult);
|
|
24
|
+
return metadata;
|
|
25
|
+
}
|
|
26
|
+
/**
|
|
27
|
+
* Retrieve all packages of the tracked scopes with their exact versions
|
|
28
|
+
* @param {Package[]} scPackages list of packages
|
|
29
|
+
* @returns {Record<string, string>} an object with the packages with their exact versions
|
|
30
|
+
*/
|
|
31
|
+
function getPackagesFromQueryResult(scPackages) {
|
|
32
|
+
const packages = {};
|
|
33
|
+
scPackages.forEach((scPackage) => {
|
|
34
|
+
if (trackedScopes.some((trackedScope) => scPackage.name.startsWith(trackedScope))) {
|
|
35
|
+
packages[scPackage.name] = scPackage.version;
|
|
36
|
+
}
|
|
37
|
+
});
|
|
38
|
+
return packages;
|
|
39
|
+
}
|
|
@@ -1,35 +1,41 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Represents the Editing Layout variant.
|
|
3
|
-
* - shared - shared layout
|
|
4
|
-
* - final - final layout
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
LayoutKind["
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
*
|
|
14
|
-
* -
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
/**
|
|
30
|
-
|
|
31
|
-
*/
|
|
32
|
-
|
|
33
|
-
(
|
|
34
|
-
|
|
35
|
-
|
|
1
|
+
/**
|
|
2
|
+
* Represents the Editing Layout variant.
|
|
3
|
+
* - shared - shared layout
|
|
4
|
+
* - final - final layout
|
|
5
|
+
* @public
|
|
6
|
+
*/
|
|
7
|
+
export var LayoutKind;
|
|
8
|
+
(function (LayoutKind) {
|
|
9
|
+
LayoutKind["Final"] = "final";
|
|
10
|
+
LayoutKind["Shared"] = "shared";
|
|
11
|
+
})(LayoutKind || (LayoutKind = {}));
|
|
12
|
+
/**
|
|
13
|
+
* Represents the kind of metadata element.
|
|
14
|
+
* - open - starting chrome element
|
|
15
|
+
* - close - closing chrome element
|
|
16
|
+
* @internal
|
|
17
|
+
*/
|
|
18
|
+
export var MetadataKind;
|
|
19
|
+
(function (MetadataKind) {
|
|
20
|
+
MetadataKind["Open"] = "open";
|
|
21
|
+
MetadataKind["Close"] = "close";
|
|
22
|
+
})(MetadataKind || (MetadataKind = {}));
|
|
23
|
+
/**
|
|
24
|
+
* Represents the mode of the Design Library
|
|
25
|
+
* @public
|
|
26
|
+
*/
|
|
27
|
+
export var DesignLibraryMode;
|
|
28
|
+
(function (DesignLibraryMode) {
|
|
29
|
+
/** Normal mode */
|
|
30
|
+
DesignLibraryMode["Normal"] = "library";
|
|
31
|
+
/** Metadata mode */
|
|
32
|
+
DesignLibraryMode["Metadata"] = "library-metadata";
|
|
33
|
+
})(DesignLibraryMode || (DesignLibraryMode = {}));
|
|
34
|
+
/**
|
|
35
|
+
* Variant generation mode for Design Library
|
|
36
|
+
* @public
|
|
37
|
+
*/
|
|
38
|
+
export var DesignLibraryVariantGeneration;
|
|
39
|
+
(function (DesignLibraryVariantGeneration) {
|
|
40
|
+
DesignLibraryVariantGeneration["Variant"] = "variant";
|
|
41
|
+
})(DesignLibraryVariantGeneration || (DesignLibraryVariantGeneration = {}));
|
|
@@ -1,80 +1,98 @@
|
|
|
1
|
-
import isServer from '../utils/is-server';
|
|
2
|
-
/**
|
|
3
|
-
* Default value of uid for root placeholder when uid is not present.
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
*
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
*
|
|
31
|
-
*/
|
|
32
|
-
export
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
*
|
|
74
|
-
* @returns
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
1
|
+
import isServer from '../utils/is-server';
|
|
2
|
+
/**
|
|
3
|
+
* Default value of uid for root placeholder when uid is not present.
|
|
4
|
+
* @internal
|
|
5
|
+
*/
|
|
6
|
+
export const DEFAULT_PLACEHOLDER_UID = '00000000-0000-0000-0000-000000000000';
|
|
7
|
+
/**
|
|
8
|
+
* Query parameter for editing secret
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export const QUERY_PARAM_EDITING_SECRET = 'secret';
|
|
12
|
+
/**
|
|
13
|
+
* HTML returned for invalid or missing secret
|
|
14
|
+
* @internal
|
|
15
|
+
*/
|
|
16
|
+
export const INVALID_SECRET_HTML_MESSAGE = '<html><body>Missing or invalid secret</body></html>';
|
|
17
|
+
/**
|
|
18
|
+
* Key to identify whether the app is running in Sitecore Preview mode
|
|
19
|
+
* @internal
|
|
20
|
+
*/
|
|
21
|
+
export const PREVIEW_KEY = 'sc_preview';
|
|
22
|
+
/**
|
|
23
|
+
* ID to be used as a marker for a script rendered in XMC Pages
|
|
24
|
+
* Should identify app is in XM Cloud Pages editing mode
|
|
25
|
+
* @internal
|
|
26
|
+
*/
|
|
27
|
+
export const PAGES_EDITING_MARKER = 'jss-hrz-editing';
|
|
28
|
+
/**
|
|
29
|
+
* Default allowed origins for editing requests. This is used to enforce CORS, CSP headers.
|
|
30
|
+
* @internal
|
|
31
|
+
*/
|
|
32
|
+
export const EDITING_ALLOWED_ORIGINS = [
|
|
33
|
+
'https://pages.sitecorecloud.io',
|
|
34
|
+
'https://xmapps.sitecorecloud.io',
|
|
35
|
+
'https://designlibrary.sitecorecloud.io',
|
|
36
|
+
];
|
|
37
|
+
/**
|
|
38
|
+
* Copy of chrome rediscovery contract from Horizon (chrome-rediscovery.contract.ts)
|
|
39
|
+
*/
|
|
40
|
+
export const ChromeRediscoveryGlobalFunctionName = {
|
|
41
|
+
name: 'Sitecore.Horizon.ResetChromes',
|
|
42
|
+
};
|
|
43
|
+
/**
|
|
44
|
+
* Static utility class for Sitecore Pages Editor
|
|
45
|
+
* @public
|
|
46
|
+
*/
|
|
47
|
+
export class PagesEditor {
|
|
48
|
+
/**
|
|
49
|
+
* Determines whether the current execution context is within a Pages Editor.
|
|
50
|
+
* Pages Editor environment can be identified only in the browser
|
|
51
|
+
* @returns true if executing within a Pages Editor
|
|
52
|
+
*/
|
|
53
|
+
static isActive() {
|
|
54
|
+
if (isServer()) {
|
|
55
|
+
return false;
|
|
56
|
+
}
|
|
57
|
+
// Check for Chromes mode
|
|
58
|
+
const chromesCheck = window.location.search.indexOf('sc_headless_mode=edit') > -1;
|
|
59
|
+
// Content SDK will render a content-sdk-exclusive script element in Metadata mode to indicate edit mode in Pages
|
|
60
|
+
return chromesCheck || !!window.document.getElementById(PAGES_EDITING_MARKER);
|
|
61
|
+
}
|
|
62
|
+
static resetChromes() {
|
|
63
|
+
if (isServer()) {
|
|
64
|
+
return;
|
|
65
|
+
}
|
|
66
|
+
// Reset chromes in Pages
|
|
67
|
+
window[ChromeRediscoveryGlobalFunctionName.name] &&
|
|
68
|
+
window[ChromeRediscoveryGlobalFunctionName.name]();
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
/**
|
|
72
|
+
* Determines whether the current execution context is within a Sitecore editor.
|
|
73
|
+
* Sitecore Editor environment can be identified only in the browser
|
|
74
|
+
* @returns true if executing within a Sitecore editor
|
|
75
|
+
* @public
|
|
76
|
+
*/
|
|
77
|
+
export const isEditorActive = () => {
|
|
78
|
+
return PagesEditor.isActive();
|
|
79
|
+
};
|
|
80
|
+
/**
|
|
81
|
+
* Resets Sitecore editor "chromes"
|
|
82
|
+
* @public
|
|
83
|
+
*/
|
|
84
|
+
export const resetEditorChromes = () => {
|
|
85
|
+
if (PagesEditor.isActive()) {
|
|
86
|
+
PagesEditor.resetChromes();
|
|
87
|
+
}
|
|
88
|
+
};
|
|
89
|
+
/**
|
|
90
|
+
* Gets extra Content SDK clientData scripts to render in XMC Pages in addition to clientData from Pages itself
|
|
91
|
+
* @returns {Record} collection of clientData
|
|
92
|
+
* @internal
|
|
93
|
+
*/
|
|
94
|
+
export const getContentSdkPagesClientData = () => {
|
|
95
|
+
const clientData = {};
|
|
96
|
+
clientData[PAGES_EDITING_MARKER] = {};
|
|
97
|
+
return clientData;
|
|
98
|
+
};
|
package/dist/esm/form/form.js
CHANGED
|
@@ -1,69 +1,72 @@
|
|
|
1
|
-
import { form } from '@sitecore-cloudsdk/events/browser';
|
|
2
|
-
import { getEdgeProxyFormsUrl } from '../client';
|
|
3
|
-
import debug from '../debug';
|
|
4
|
-
/**
|
|
5
|
-
* Fetches the form markup from the Sitecore Edge service and renders it in the component's template.
|
|
6
|
-
* @param {string} contextId - The unique identifier of the current context
|
|
7
|
-
* @param {string} formId - The unique identifier of the form
|
|
8
|
-
* @param {string} [edgeUrl] - The URL of the Sitecore Edge Platform
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
*
|
|
37
|
-
*
|
|
38
|
-
*
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
*
|
|
59
|
-
*
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
1
|
+
import { form } from '@sitecore-cloudsdk/events/browser';
|
|
2
|
+
import { getEdgeProxyFormsUrl } from '../client';
|
|
3
|
+
import debug from '../debug';
|
|
4
|
+
/**
|
|
5
|
+
* Fetches the form markup from the Sitecore Edge service and renders it in the component's template.
|
|
6
|
+
* @param {string} contextId - The unique identifier of the current context
|
|
7
|
+
* @param {string} formId - The unique identifier of the form
|
|
8
|
+
* @param {string} [edgeUrl] - The URL of the Sitecore Edge Platform
|
|
9
|
+
* @internal
|
|
10
|
+
*/
|
|
11
|
+
export const loadForm = async (contextId, formId, edgeUrl) => {
|
|
12
|
+
if (!contextId) {
|
|
13
|
+
debug.form('Form was not able to render since context id was not provided');
|
|
14
|
+
return '';
|
|
15
|
+
}
|
|
16
|
+
const url = getEdgeProxyFormsUrl(contextId, formId, edgeUrl);
|
|
17
|
+
try {
|
|
18
|
+
debug.form(`Fetching form data from ${url}`);
|
|
19
|
+
const rsp = await fetch(url, {
|
|
20
|
+
method: 'GET',
|
|
21
|
+
cache: 'no-cache',
|
|
22
|
+
});
|
|
23
|
+
if (rsp.status !== 200) {
|
|
24
|
+
throw new Error('Failed to fetch form data');
|
|
25
|
+
}
|
|
26
|
+
const content = await rsp.text();
|
|
27
|
+
debug.form(`Form data fetch response: ${content}`);
|
|
28
|
+
return content;
|
|
29
|
+
}
|
|
30
|
+
catch (error) {
|
|
31
|
+
debug.form(`Form '${formId}' was not able to render`, error);
|
|
32
|
+
throw error;
|
|
33
|
+
}
|
|
34
|
+
};
|
|
35
|
+
/**
|
|
36
|
+
* When you set the innerHTML property of an element, the browser does not execute any <script> tags included in the HTML string
|
|
37
|
+
* This method ensures that any <script> elements within the loaded HTML are executed.
|
|
38
|
+
* It re-creates the script elements and appends the to the component's template, then removes old script elements to avoid duplication.
|
|
39
|
+
* @param {HTMLElement} rootElement - The root element to execute script elements within
|
|
40
|
+
* @internal
|
|
41
|
+
*/
|
|
42
|
+
export const executeScriptElements = (rootElement) => {
|
|
43
|
+
const scriptElements = rootElement.querySelectorAll('script');
|
|
44
|
+
if (!scriptElements) {
|
|
45
|
+
return;
|
|
46
|
+
}
|
|
47
|
+
Array.from(scriptElements).forEach((scriptElement) => {
|
|
48
|
+
var _a;
|
|
49
|
+
const clonedElement = document.createElement('script');
|
|
50
|
+
Array.from(scriptElement.attributes).forEach((attribute) => {
|
|
51
|
+
clonedElement.setAttribute(attribute.name, attribute.value);
|
|
52
|
+
});
|
|
53
|
+
clonedElement.text = scriptElement.text;
|
|
54
|
+
(_a = scriptElement === null || scriptElement === void 0 ? void 0 : scriptElement.parentNode) === null || _a === void 0 ? void 0 : _a.replaceChild(clonedElement, scriptElement);
|
|
55
|
+
});
|
|
56
|
+
};
|
|
57
|
+
/**
|
|
58
|
+
* Subscribes to the Form event and then sends data to CloudSDK.
|
|
59
|
+
* This listener captures interactions such as form views or submissions
|
|
60
|
+
* @param {HTMLElement} formElement - The form element to subscribe to events on
|
|
61
|
+
* @param {string} [componentId] - The unique identifier of the component
|
|
62
|
+
* @internal
|
|
63
|
+
*/
|
|
64
|
+
export const subscribeToFormSubmitEvent = (formElement, componentId) => {
|
|
65
|
+
formElement.addEventListener('form:engage', ((e) => {
|
|
66
|
+
const { formId, name } = e.detail;
|
|
67
|
+
if (formId && name) {
|
|
68
|
+
debug.form('Sending form event', formId, name);
|
|
69
|
+
form(formId, name, (componentId === null || componentId === void 0 ? void 0 : componentId.replace(/-/g, '')) || '');
|
|
70
|
+
}
|
|
71
|
+
}));
|
|
72
|
+
};
|
package/dist/esm/form/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export { executeScriptElements, loadForm, subscribeToFormSubmitEvent } from './form';
|
|
1
|
+
export { executeScriptElements, loadForm, subscribeToFormSubmitEvent } from './form';
|