@salesforce/b2c-tooling-sdk 1.24.2 → 2.1.0
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/data/content-schemas/componenttype.json +0 -30
- package/data/scapi-snippets/campaign-promotions.js +40 -0
- package/data/scapi-snippets/code-version-inspect.js +31 -0
- package/data/scapi-snippets/create-product.js +108 -0
- package/data/scapi-snippets/failed-job-triage.js +37 -0
- package/data/scapi-snippets/job-execution-inspect.js +52 -0
- package/data/scapi-snippets/job-execution-review.js +46 -0
- package/data/scapi-snippets/manifest.json +220 -0
- package/data/scapi-snippets/site-cartridge-inspect.js +27 -0
- package/data/tooling/index.json +83 -119
- package/dist/esm/auth/index.d.ts +2 -2
- package/dist/esm/auth/index.js +1 -1
- package/dist/esm/auth/index.js.map +1 -1
- package/dist/esm/auth/oauth-implicit.d.ts +1 -0
- package/dist/esm/auth/oauth-implicit.js +1 -0
- package/dist/esm/auth/oauth-implicit.js.map +1 -1
- package/dist/esm/auth/oauth-jwt.d.ts +18 -4
- package/dist/esm/auth/oauth-jwt.js +67 -17
- package/dist/esm/auth/oauth-jwt.js.map +1 -1
- package/dist/esm/auth/oauth-pkce-fallback.d.ts +1 -0
- package/dist/esm/auth/oauth-pkce-fallback.js +1 -0
- package/dist/esm/auth/oauth-pkce-fallback.js.map +1 -1
- package/dist/esm/auth/oauth-pkce.d.ts +1 -0
- package/dist/esm/auth/oauth-pkce.js +1 -0
- package/dist/esm/auth/oauth-pkce.js.map +1 -1
- package/dist/esm/auth/oauth.d.ts +55 -6
- package/dist/esm/auth/oauth.js +139 -21
- package/dist/esm/auth/oauth.js.map +1 -1
- package/dist/esm/auth/resolve.d.ts +37 -0
- package/dist/esm/auth/resolve.js +48 -0
- package/dist/esm/auth/resolve.js.map +1 -1
- package/dist/esm/auth/types.d.ts +44 -0
- package/dist/esm/auth/types.js.map +1 -1
- package/dist/esm/cli/base-command.d.ts +9 -0
- package/dist/esm/cli/base-command.js +31 -0
- package/dist/esm/cli/base-command.js.map +1 -1
- package/dist/esm/cli/bm-command.d.ts +15 -0
- package/dist/esm/cli/bm-command.js +25 -0
- package/dist/esm/cli/bm-command.js.map +1 -0
- package/dist/esm/cli/code-command.d.ts +14 -0
- package/dist/esm/cli/code-command.js +22 -0
- package/dist/esm/cli/code-command.js.map +1 -0
- package/dist/esm/cli/config.js +10 -1
- package/dist/esm/cli/config.js.map +1 -1
- package/dist/esm/cli/index.d.ts +5 -1
- package/dist/esm/cli/index.js +7 -1
- package/dist/esm/cli/index.js.map +1 -1
- package/dist/esm/cli/instance-command.d.ts +45 -0
- package/dist/esm/cli/instance-command.js +66 -1
- package/dist/esm/cli/instance-command.js.map +1 -1
- package/dist/esm/cli/job-command.d.ts +37 -16
- package/dist/esm/cli/job-command.js +73 -23
- package/dist/esm/cli/job-command.js.map +1 -1
- package/dist/esm/cli/mrt-command.d.ts +154 -9
- package/dist/esm/cli/mrt-command.js +299 -16
- package/dist/esm/cli/mrt-command.js.map +1 -1
- package/dist/esm/cli/oauth-command.d.ts +1 -1
- package/dist/esm/cli/oauth-command.js +2 -0
- package/dist/esm/cli/oauth-command.js.map +1 -1
- package/dist/esm/cli/webdav-command.d.ts +2 -0
- package/dist/esm/cli/webdav-command.js +1 -0
- package/dist/esm/cli/webdav-command.js.map +1 -1
- package/dist/esm/clients/cdn-zones.js +2 -5
- package/dist/esm/clients/cdn-zones.js.map +1 -1
- package/dist/esm/clients/cip.d.ts +12 -3
- package/dist/esm/clients/cip.js +85 -30
- package/dist/esm/clients/cip.js.map +1 -1
- package/dist/esm/clients/custom-apis.js +2 -5
- package/dist/esm/clients/custom-apis.js.map +1 -1
- package/dist/esm/clients/dual-backend-factory.d.ts +70 -0
- package/dist/esm/clients/dual-backend-factory.js +48 -0
- package/dist/esm/clients/dual-backend-factory.js.map +1 -0
- package/dist/esm/clients/error-utils.d.ts +62 -0
- package/dist/esm/clients/error-utils.js +98 -0
- package/dist/esm/clients/error-utils.js.map +1 -1
- package/dist/esm/clients/granular-replications.js +2 -5
- package/dist/esm/clients/granular-replications.js.map +1 -1
- package/dist/esm/clients/index.d.ts +30 -3
- package/dist/esm/clients/index.js +25 -2
- package/dist/esm/clients/index.js.map +1 -1
- package/dist/esm/clients/metrics.js +2 -5
- package/dist/esm/clients/metrics.js.map +1 -1
- package/dist/esm/clients/middleware-registry.d.ts +4 -2
- package/dist/esm/clients/middleware-registry.js +3 -1
- package/dist/esm/clients/middleware-registry.js.map +1 -1
- package/dist/esm/clients/middleware.d.ts +39 -0
- package/dist/esm/clients/middleware.js +126 -25
- package/dist/esm/clients/middleware.js.map +1 -1
- package/dist/esm/clients/mrt-b2c.js +3 -0
- package/dist/esm/clients/mrt-b2c.js.map +1 -1
- package/dist/esm/clients/mrt.d.ts +27 -10
- package/dist/esm/clients/mrt.generated.d.ts +77 -0
- package/dist/esm/clients/mrt.js +68 -0
- package/dist/esm/clients/mrt.js.map +1 -1
- package/dist/esm/clients/preferences.js +2 -5
- package/dist/esm/clients/preferences.js.map +1 -1
- package/dist/esm/clients/scapi-backend-utils.d.ts +163 -0
- package/dist/esm/clients/scapi-backend-utils.js +180 -0
- package/dist/esm/clients/scapi-backend-utils.js.map +1 -0
- package/dist/esm/clients/scapi-catalogs.d.ts +12 -0
- package/dist/esm/clients/scapi-catalogs.generated.d.ts +104 -0
- package/dist/esm/clients/scapi-catalogs.generated.js +6 -0
- package/dist/esm/clients/scapi-catalogs.generated.js.map +1 -0
- package/dist/esm/clients/scapi-catalogs.js +14 -0
- package/dist/esm/clients/scapi-catalogs.js.map +1 -0
- package/dist/esm/clients/scapi-client-factory.d.ts +81 -0
- package/dist/esm/clients/scapi-client-factory.js +84 -0
- package/dist/esm/clients/scapi-client-factory.js.map +1 -0
- package/dist/esm/clients/scapi-fallback-backend.d.ts +34 -0
- package/dist/esm/clients/scapi-fallback-backend.js +132 -0
- package/dist/esm/clients/scapi-fallback-backend.js.map +1 -0
- package/dist/esm/clients/scapi-jobs.d.ts +32 -0
- package/dist/esm/clients/scapi-jobs.generated.d.ts +535 -0
- package/dist/esm/clients/scapi-jobs.generated.js +6 -0
- package/dist/esm/clients/scapi-jobs.generated.js.map +1 -0
- package/dist/esm/clients/scapi-jobs.js +24 -0
- package/dist/esm/clients/scapi-jobs.js.map +1 -0
- package/dist/esm/clients/scapi-merchant-roles.d.ts +19 -0
- package/dist/esm/clients/scapi-merchant-roles.generated.d.ts +726 -0
- package/dist/esm/clients/scapi-merchant-roles.generated.js +6 -0
- package/dist/esm/clients/scapi-merchant-roles.generated.js.map +1 -0
- package/dist/esm/clients/scapi-merchant-roles.js +12 -0
- package/dist/esm/clients/scapi-merchant-roles.js.map +1 -0
- package/dist/esm/clients/scapi-merchant-users.d.ts +19 -0
- package/dist/esm/clients/scapi-merchant-users.generated.d.ts +300 -0
- package/dist/esm/clients/scapi-merchant-users.generated.js +6 -0
- package/dist/esm/clients/scapi-merchant-users.generated.js.map +1 -0
- package/dist/esm/clients/scapi-merchant-users.js +12 -0
- package/dist/esm/clients/scapi-merchant-users.js.map +1 -0
- package/dist/esm/clients/scapi-schemas.js +2 -5
- package/dist/esm/clients/scapi-schemas.js.map +1 -1
- package/dist/esm/clients/scapi-scope-tier.d.ts +78 -0
- package/dist/esm/clients/scapi-scope-tier.js +113 -0
- package/dist/esm/clients/scapi-scope-tier.js.map +1 -0
- package/dist/esm/clients/scapi-scripts.d.ts +17 -0
- package/dist/esm/clients/scapi-scripts.generated.d.ts +392 -0
- package/dist/esm/clients/scapi-scripts.generated.js +6 -0
- package/dist/esm/clients/scapi-scripts.generated.js.map +1 -0
- package/dist/esm/clients/scapi-scripts.js +12 -0
- package/dist/esm/clients/scapi-scripts.js.map +1 -0
- package/dist/esm/clients/scapi-sites.d.ts +26 -0
- package/dist/esm/clients/scapi-sites.generated.d.ts +500 -0
- package/dist/esm/clients/scapi-sites.generated.js +6 -0
- package/dist/esm/clients/scapi-sites.generated.js.map +1 -0
- package/dist/esm/clients/scapi-sites.js +25 -0
- package/dist/esm/clients/scapi-sites.js.map +1 -0
- package/dist/esm/clients/slas-shopper.d.ts +19 -0
- package/dist/esm/clients/slas-shopper.generated.d.ts +165 -0
- package/dist/esm/clients/slas-shopper.generated.js +6 -0
- package/dist/esm/clients/slas-shopper.generated.js.map +1 -0
- package/dist/esm/clients/slas-shopper.js +35 -0
- package/dist/esm/clients/slas-shopper.js.map +1 -0
- package/dist/esm/clients/storefront-deployments.d.ts +57 -0
- package/dist/esm/clients/storefront-deployments.generated.d.ts +558 -0
- package/dist/esm/clients/storefront-deployments.generated.js +6 -0
- package/dist/esm/clients/storefront-deployments.generated.js.map +1 -0
- package/dist/esm/clients/storefront-deployments.js +24 -0
- package/dist/esm/clients/storefront-deployments.js.map +1 -0
- package/dist/esm/clients/storefront-environments.d.ts +56 -0
- package/dist/esm/clients/storefront-environments.generated.d.ts +208 -0
- package/dist/esm/clients/storefront-environments.generated.js +6 -0
- package/dist/esm/clients/storefront-environments.generated.js.map +1 -0
- package/dist/esm/clients/storefront-environments.js +24 -0
- package/dist/esm/clients/storefront-environments.js.map +1 -0
- package/dist/esm/clients/webdav.js +4 -1
- package/dist/esm/clients/webdav.js.map +1 -1
- package/dist/esm/compat/dispatcher.d.ts +49 -0
- package/dist/esm/compat/dispatcher.js +124 -0
- package/dist/esm/compat/dispatcher.js.map +1 -0
- package/dist/esm/compat/index.d.ts +10 -0
- package/dist/esm/compat/index.js +15 -0
- package/dist/esm/compat/index.js.map +1 -0
- package/dist/esm/compat/jobs-backend.d.ts +31 -0
- package/dist/esm/compat/jobs-backend.js +76 -0
- package/dist/esm/compat/jobs-backend.js.map +1 -0
- package/dist/esm/config/dw-json.d.ts +4 -0
- package/dist/esm/config/dw-json.js.map +1 -1
- package/dist/esm/config/index.d.ts +1 -1
- package/dist/esm/config/index.js.map +1 -1
- package/dist/esm/config/mapping.d.ts +2 -5
- package/dist/esm/config/mapping.js +25 -1
- package/dist/esm/config/mapping.js.map +1 -1
- package/dist/esm/config/resolved-config.d.ts +2 -2
- package/dist/esm/config/resolved-config.js.map +1 -1
- package/dist/esm/config/resolver.js +12 -0
- package/dist/esm/config/resolver.js.map +1 -1
- package/dist/esm/config/sources/env-source.d.ts +10 -1
- package/dist/esm/config/sources/env-source.js +46 -1
- package/dist/esm/config/sources/env-source.js.map +1 -1
- package/dist/esm/config/types.d.ts +22 -3
- package/dist/esm/docs/search.js +2 -25
- package/dist/esm/docs/search.js.map +1 -1
- package/dist/esm/guidance/catalog.d.ts +37 -0
- package/dist/esm/guidance/catalog.js +282 -0
- package/dist/esm/guidance/catalog.js.map +1 -0
- package/dist/esm/guidance/index.d.ts +8 -0
- package/dist/esm/guidance/index.js +14 -0
- package/dist/esm/guidance/index.js.map +1 -0
- package/dist/esm/guidance/markdown.d.ts +10 -0
- package/dist/esm/guidance/markdown.js +52 -0
- package/dist/esm/guidance/markdown.js.map +1 -0
- package/dist/esm/guidance/types.d.ts +96 -0
- package/dist/esm/guidance/types.js +17 -0
- package/dist/esm/guidance/types.js.map +1 -0
- package/dist/esm/index.d.ts +14 -5
- package/dist/esm/index.js +14 -2
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/instance/index.d.ts +96 -2
- package/dist/esm/instance/index.js +98 -5
- package/dist/esm/instance/index.js.map +1 -1
- package/dist/esm/operations/bm-roles/backend.d.ts +4 -0
- package/dist/esm/operations/bm-roles/backend.js +11 -0
- package/dist/esm/operations/bm-roles/backend.js.map +1 -0
- package/dist/esm/operations/bm-roles/index.d.ts +6 -0
- package/dist/esm/operations/bm-roles/index.js +4 -0
- package/dist/esm/operations/bm-roles/index.js.map +1 -1
- package/dist/esm/operations/bm-roles/ocapi-backend.d.ts +17 -0
- package/dist/esm/operations/bm-roles/ocapi-backend.js +151 -0
- package/dist/esm/operations/bm-roles/ocapi-backend.js.map +1 -0
- package/dist/esm/operations/bm-roles/roles.js +13 -17
- package/dist/esm/operations/bm-roles/roles.js.map +1 -1
- package/dist/esm/operations/bm-roles/scapi-backend.d.ts +27 -0
- package/dist/esm/operations/bm-roles/scapi-backend.js +138 -0
- package/dist/esm/operations/bm-roles/scapi-backend.js.map +1 -0
- package/dist/esm/operations/bm-roles/types.d.ts +49 -0
- package/dist/esm/operations/bm-roles/types.js +2 -0
- package/dist/esm/operations/bm-roles/types.js.map +1 -0
- package/dist/esm/operations/bm-users/backend.d.ts +4 -0
- package/dist/esm/operations/bm-users/backend.js +11 -0
- package/dist/esm/operations/bm-users/backend.js.map +1 -0
- package/dist/esm/operations/bm-users/index.d.ts +11 -3
- package/dist/esm/operations/bm-users/index.js +9 -3
- package/dist/esm/operations/bm-users/index.js.map +1 -1
- package/dist/esm/operations/bm-users/ocapi-backend.d.ts +13 -0
- package/dist/esm/operations/bm-users/ocapi-backend.js +92 -0
- package/dist/esm/operations/bm-users/ocapi-backend.js.map +1 -0
- package/dist/esm/operations/bm-users/scapi-backend.d.ts +23 -0
- package/dist/esm/operations/bm-users/scapi-backend.js +199 -0
- package/dist/esm/operations/bm-users/scapi-backend.js.map +1 -0
- package/dist/esm/operations/bm-users/types.d.ts +99 -0
- package/dist/esm/operations/bm-users/types.js +2 -0
- package/dist/esm/operations/bm-users/types.js.map +1 -0
- package/dist/esm/operations/bm-users/users.d.ts +4 -3
- package/dist/esm/operations/bm-users/users.js +23 -19
- package/dist/esm/operations/bm-users/users.js.map +1 -1
- package/dist/esm/operations/cap/install.js +23 -45
- package/dist/esm/operations/cap/install.js.map +1 -1
- package/dist/esm/operations/cap/list.js +4 -8
- package/dist/esm/operations/cap/list.js.map +1 -1
- package/dist/esm/operations/cap/uninstall.js +17 -37
- package/dist/esm/operations/cap/uninstall.js.map +1 -1
- package/dist/esm/operations/catalogs/catalogs-backend.d.ts +4 -0
- package/dist/esm/operations/catalogs/catalogs-backend.js +16 -0
- package/dist/esm/operations/catalogs/catalogs-backend.js.map +1 -0
- package/dist/esm/operations/catalogs/catalogs-types.d.ts +14 -0
- package/dist/esm/operations/catalogs/catalogs-types.js +2 -0
- package/dist/esm/operations/catalogs/catalogs-types.js.map +1 -0
- package/dist/esm/operations/catalogs/index.d.ts +7 -0
- package/dist/esm/operations/catalogs/index.js +10 -0
- package/dist/esm/operations/catalogs/index.js.map +1 -0
- package/dist/esm/operations/catalogs/ocapi-catalogs-backend.d.ts +8 -0
- package/dist/esm/operations/catalogs/ocapi-catalogs-backend.js +36 -0
- package/dist/esm/operations/catalogs/ocapi-catalogs-backend.js.map +1 -0
- package/dist/esm/operations/catalogs/scapi-catalogs-backend.d.ts +15 -0
- package/dist/esm/operations/catalogs/scapi-catalogs-backend.js +42 -0
- package/dist/esm/operations/catalogs/scapi-catalogs-backend.js.map +1 -0
- package/dist/esm/operations/cip/index.js +10 -2
- package/dist/esm/operations/cip/index.js.map +1 -1
- package/dist/esm/operations/cip/reports.js +19 -3
- package/dist/esm/operations/cip/reports.js.map +1 -1
- package/dist/esm/operations/cip/types.d.ts +8 -4
- package/dist/esm/operations/code/deploy.d.ts +3 -0
- package/dist/esm/operations/code/deploy.js +9 -3
- package/dist/esm/operations/code/deploy.js.map +1 -1
- package/dist/esm/operations/code/download.d.ts +3 -0
- package/dist/esm/operations/code/download.js +5 -5
- package/dist/esm/operations/code/download.js.map +1 -1
- package/dist/esm/operations/code/index.d.ts +7 -1
- package/dist/esm/operations/code/index.js +5 -1
- package/dist/esm/operations/code/index.js.map +1 -1
- package/dist/esm/operations/code/ocapi-scripts-backend.d.ts +12 -0
- package/dist/esm/operations/code/ocapi-scripts-backend.js +40 -0
- package/dist/esm/operations/code/ocapi-scripts-backend.js.map +1 -0
- package/dist/esm/operations/code/scapi-scripts-backend.d.ts +22 -0
- package/dist/esm/operations/code/scapi-scripts-backend.js +94 -0
- package/dist/esm/operations/code/scapi-scripts-backend.js.map +1 -0
- package/dist/esm/operations/code/scripts-backend.d.ts +17 -0
- package/dist/esm/operations/code/scripts-backend.js +40 -0
- package/dist/esm/operations/code/scripts-backend.js.map +1 -0
- package/dist/esm/operations/code/scripts-types.d.ts +43 -0
- package/dist/esm/operations/code/scripts-types.js +2 -0
- package/dist/esm/operations/code/scripts-types.js.map +1 -0
- package/dist/esm/operations/code/upload-files.d.ts +6 -0
- package/dist/esm/operations/code/upload-files.js +58 -7
- package/dist/esm/operations/code/upload-files.js.map +1 -1
- package/dist/esm/operations/code/versions.d.ts +0 -20
- package/dist/esm/operations/code/versions.js +16 -51
- package/dist/esm/operations/code/versions.js.map +1 -1
- package/dist/esm/operations/code/watch.d.ts +3 -0
- package/dist/esm/operations/code/watch.js +3 -2
- package/dist/esm/operations/code/watch.js.map +1 -1
- package/dist/esm/operations/jobs/discover.d.ts +1 -1
- package/dist/esm/operations/jobs/discover.js +51 -21
- package/dist/esm/operations/jobs/discover.js.map +1 -1
- package/dist/esm/operations/jobs/index.d.ts +14 -57
- package/dist/esm/operations/jobs/index.js +15 -59
- package/dist/esm/operations/jobs/index.js.map +1 -1
- package/dist/esm/operations/jobs/ocapi-mapping.d.ts +34 -0
- package/dist/esm/operations/jobs/ocapi-mapping.js +100 -0
- package/dist/esm/operations/jobs/ocapi-mapping.js.map +1 -0
- package/dist/esm/operations/jobs/run-system-job.d.ts +81 -0
- package/dist/esm/operations/jobs/run-system-job.js +137 -0
- package/dist/esm/operations/jobs/run-system-job.js.map +1 -0
- package/dist/esm/operations/jobs/run.js +16 -4
- package/dist/esm/operations/jobs/run.js.map +1 -1
- package/dist/esm/operations/jobs/scapi-ops.d.ts +61 -0
- package/dist/esm/operations/jobs/scapi-ops.js +214 -0
- package/dist/esm/operations/jobs/scapi-ops.js.map +1 -0
- package/dist/esm/operations/jobs/site-archive.d.ts +7 -0
- package/dist/esm/operations/jobs/site-archive.js +28 -66
- package/dist/esm/operations/jobs/site-archive.js.map +1 -1
- package/dist/esm/operations/jobs/types.d.ts +46 -0
- package/dist/esm/operations/jobs/types.js +2 -0
- package/dist/esm/operations/jobs/types.js.map +1 -0
- package/dist/esm/operations/jobs/wait-canonical.d.ts +28 -0
- package/dist/esm/operations/jobs/wait-canonical.js +48 -0
- package/dist/esm/operations/jobs/wait-canonical.js.map +1 -0
- package/dist/esm/operations/mrt/bundle.d.ts +164 -2
- package/dist/esm/operations/mrt/bundle.js +315 -9
- package/dist/esm/operations/mrt/bundle.js.map +1 -1
- package/dist/esm/operations/mrt/deployment.d.ts +248 -0
- package/dist/esm/operations/mrt/deployment.js +252 -0
- package/dist/esm/operations/mrt/deployment.js.map +1 -1
- package/dist/esm/operations/mrt/env-var.d.ts +135 -0
- package/dist/esm/operations/mrt/env-var.js +203 -0
- package/dist/esm/operations/mrt/env-var.js.map +1 -1
- package/dist/esm/operations/mrt/index.d.ts +10 -8
- package/dist/esm/operations/mrt/index.js +6 -4
- package/dist/esm/operations/mrt/index.js.map +1 -1
- package/dist/esm/operations/mrt/mrt-backend.d.ts +117 -0
- package/dist/esm/operations/mrt/mrt-backend.js +84 -0
- package/dist/esm/operations/mrt/mrt-backend.js.map +1 -0
- package/dist/esm/operations/mrt/push.d.ts +285 -1
- package/dist/esm/operations/mrt/push.js +382 -1
- package/dist/esm/operations/mrt/push.js.map +1 -1
- package/dist/esm/operations/sites/cartridges.d.ts +10 -8
- package/dist/esm/operations/sites/cartridges.js +35 -67
- package/dist/esm/operations/sites/cartridges.js.map +1 -1
- package/dist/esm/operations/sites/index.d.ts +10 -6
- package/dist/esm/operations/sites/index.js +9 -6
- package/dist/esm/operations/sites/index.js.map +1 -1
- package/dist/esm/operations/sites/ocapi-sites-backend.d.ts +20 -0
- package/dist/esm/operations/sites/ocapi-sites-backend.js +98 -0
- package/dist/esm/operations/sites/ocapi-sites-backend.js.map +1 -0
- package/dist/esm/operations/sites/scapi-sites-backend.d.ts +33 -0
- package/dist/esm/operations/sites/scapi-sites-backend.js +166 -0
- package/dist/esm/operations/sites/scapi-sites-backend.js.map +1 -0
- package/dist/esm/operations/sites/sites-backend.d.ts +9 -0
- package/dist/esm/operations/sites/sites-backend.js +16 -0
- package/dist/esm/operations/sites/sites-backend.js.map +1 -0
- package/dist/esm/operations/sites/sites-scopes.d.ts +2 -0
- package/dist/esm/operations/sites/sites-scopes.js +16 -0
- package/dist/esm/operations/sites/sites-scopes.js.map +1 -0
- package/dist/esm/operations/sites/sites-types.d.ts +50 -0
- package/dist/esm/operations/sites/sites-types.js +2 -0
- package/dist/esm/operations/sites/sites-types.js.map +1 -0
- package/dist/esm/safety/safety-guard.d.ts +1 -0
- package/dist/esm/safety/safety-guard.js +2 -1
- package/dist/esm/safety/safety-guard.js.map +1 -1
- package/dist/esm/safety/safety-middleware.d.ts +7 -3
- package/dist/esm/safety/safety-middleware.js +13 -9
- package/dist/esm/safety/safety-middleware.js.map +1 -1
- package/dist/esm/safety/types.d.ts +2 -2
- package/dist/esm/scaffold/sources.js +6 -9
- package/dist/esm/scaffold/sources.js.map +1 -1
- package/dist/esm/scapi/auth-primitives.d.ts +3 -0
- package/dist/esm/scapi/auth-primitives.js +104 -0
- package/dist/esm/scapi/auth-primitives.js.map +1 -0
- package/dist/esm/scapi/authentication.d.ts +30 -0
- package/dist/esm/scapi/authentication.js +136 -0
- package/dist/esm/scapi/authentication.js.map +1 -0
- package/dist/esm/scapi/catalog.d.ts +29 -0
- package/dist/esm/scapi/catalog.js +81 -0
- package/dist/esm/scapi/catalog.js.map +1 -0
- package/dist/esm/scapi/index.d.ts +12 -0
- package/dist/esm/scapi/index.js +13 -0
- package/dist/esm/scapi/index.js.map +1 -0
- package/dist/esm/scapi/request.d.ts +28 -0
- package/dist/esm/scapi/request.js +273 -0
- package/dist/esm/scapi/request.js.map +1 -0
- package/dist/esm/scapi/runtime.d.ts +27 -0
- package/dist/esm/scapi/runtime.js +161 -0
- package/dist/esm/scapi/runtime.js.map +1 -0
- package/dist/esm/scapi/snippets.d.ts +22 -0
- package/dist/esm/scapi/snippets.js +140 -0
- package/dist/esm/scapi/snippets.js.map +1 -0
- package/dist/esm/scapi/worker-source.d.ts +2 -0
- package/dist/esm/scapi/worker-source.js +101 -0
- package/dist/esm/scapi/worker-source.js.map +1 -0
- package/dist/esm/search/ranking.d.ts +12 -0
- package/dist/esm/search/ranking.js +28 -0
- package/dist/esm/search/ranking.js.map +1 -0
- package/dist/esm/skills/sources.d.ts +2 -2
- package/dist/esm/skills/sources.js +18 -2
- package/dist/esm/skills/sources.js.map +1 -1
- package/dist/esm/skills/types.d.ts +1 -1
- package/dist/esm/slas/token.js +33 -94
- package/dist/esm/slas/token.js.map +1 -1
- package/dist/esm/slas/types.d.ts +5 -0
- package/dist/esm/test-utils/config-isolation.js +2 -2
- package/dist/esm/test-utils/config-isolation.js.map +1 -1
- package/node_modules/@salesforce/b2c-api-schemas/README.md +23 -0
- package/node_modules/@salesforce/b2c-api-schemas/manifest.json +576 -0
- package/node_modules/@salesforce/b2c-api-schemas/package.json +15 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/cdn/zones/v1.json +11490 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/orders/v1.json +3589 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-baskets/v1.json +6544 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-baskets/v2.json +7148 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-orders/v1.json +4411 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/checkout/shopper-payments/v1.json +643 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/cors/v1.json +295 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/preferences/v1.json +2036 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/shopper-configurations/v1.json +327 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/configuration/timeouts/v1.json +234 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/custom-object/custom-objects/v1.json +1542 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/custom-object/shopper-custom-objects/v1.json +405 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/customer/customers/v1.json +2531 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/customer/shopper-customers/v1.json +7944 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/custom-apis/v1.json +292 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/object-definitions/v1.json +2537 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/scapi-schemas/v1.json +517 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/dx/scripts/v1.json +589 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/experience/experiences/v1.json +3600 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/experience/shopper-experience/v1.json +2319 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/intelligence/analytics/v1.json +658 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/availability/v1.json +2649 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/impex/v1.json +6615 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/inventory/reservation/v1.json +2103 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/merchant/roles/v1.json +1760 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/merchant/users/v1.json +640 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/observability/metrics/v1.json +1263 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/operation/jobs/v1.json +1259 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/operation/replications/v1.json +760 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/assignments/v1.json +1047 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/campaigns/v1.json +1929 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/coupons/v1.json +1542 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/gift-certificates/v1.json +1093 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/promotions/v1.json +1324 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/shopper-gift-certificates/v1.json +325 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/shopper-promotions/v1.json +631 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/pricing/source-code-groups/v1.json +1036 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/catalogs/v1.json +5175 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/inventory-lists/v1.json +866 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/price-books/v1.json +747 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/products/v1.json +5076 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-availability/v1.json +509 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-delivery-estimates/v1.json +517 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/product/shopper-products/v1.json +2961 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/search/shopper-search/v1.json +1889 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/auth/v1.json +7014 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/auth-admin/v1.json +1898 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/consents/v1.json +622 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-agents/v1.json +192 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-consents/v1.json +913 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/shopper/shopper-context/v1.json +630 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/site/seo/v1.json +223 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/site/shopper-seo/v1.json +423 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/site/sites/v1.json +1088 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/store/shopper-stores/v1.json +798 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/store/store-redirect-mappings/v1.json +607 -0
- package/node_modules/@salesforce/b2c-api-schemas/scapi/store/stores/v1.json +1418 -0
- package/package.json +24 -3
- package/specs/dx-scripts-v1.yaml +409 -0
- package/specs/merchant-roles-v1.yaml +1085 -0
- package/specs/merchant-users-v1.yaml +398 -0
- package/specs/mrt-api-v1.json +105 -0
- package/specs/operations-jobs-v1.yaml +793 -0
- package/specs/product-catalogs-v1.yaml +111 -0
- package/specs/site-sites-v1.yaml +667 -0
- package/specs/slas-shopper-v1.yaml +83 -0
- package/specs/storefront-deployments-v1.yaml +630 -0
- package/specs/storefront-environments-v1.yaml +272 -0
|
@@ -7,13 +7,13 @@
|
|
|
7
7
|
* Site cartridge path operations for B2C Commerce instances.
|
|
8
8
|
*
|
|
9
9
|
* Provides functions for managing the ordered list of active cartridges
|
|
10
|
-
* on a site via
|
|
11
|
-
* import/export when
|
|
10
|
+
* on a site via SCAPI with temporary OCAPI fallback, plus site archive
|
|
11
|
+
* import/export when neither direct API is available.
|
|
12
12
|
*/
|
|
13
13
|
import JSZip from 'jszip';
|
|
14
|
-
import { getApiErrorMessage } from '../../clients/error-utils.js';
|
|
15
14
|
import { getLogger } from '../../logging/logger.js';
|
|
16
15
|
import { siteArchiveImport, siteArchiveExportToBuffer } from '../jobs/site-archive.js';
|
|
16
|
+
import { createSitesBackend } from './sites-backend.js';
|
|
17
17
|
/** The special site ID for Business Manager. */
|
|
18
18
|
export const BM_SITE_ID = 'Sites-Site';
|
|
19
19
|
/**
|
|
@@ -30,7 +30,8 @@ function toResult(siteId, cartridges) {
|
|
|
30
30
|
/**
|
|
31
31
|
* Gets the cartridge path for a site.
|
|
32
32
|
*
|
|
33
|
-
* Uses
|
|
33
|
+
* Uses the configured Sites backend to read the cartridge path. Auto mode
|
|
34
|
+
* prefers SCAPI and temporarily falls back to OCAPI.
|
|
34
35
|
* Works for all sites including Business Manager (Sites-Site).
|
|
35
36
|
*
|
|
36
37
|
* @param instance - B2C instance to query
|
|
@@ -47,22 +48,20 @@ function toResult(siteId, cartridges) {
|
|
|
47
48
|
* ```
|
|
48
49
|
*/
|
|
49
50
|
export async function getCartridgePath(instance, siteId) {
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
});
|
|
51
|
+
try {
|
|
52
|
+
const cartridges = await createSitesBackend({ instance }).getCartridgePath(siteId);
|
|
53
|
+
return toResult(siteId, cartridges);
|
|
54
|
+
}
|
|
55
|
+
catch (error) {
|
|
56
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
57
|
+
throw new Error(`Failed to get cartridge path for site "${siteId}": ${message}`, { cause: error });
|
|
57
58
|
}
|
|
58
|
-
const site = data;
|
|
59
|
-
return toResult(siteId, site.cartridges ?? '');
|
|
60
59
|
}
|
|
61
60
|
/**
|
|
62
61
|
* Adds a cartridge to a site's cartridge path.
|
|
63
62
|
*
|
|
64
|
-
* For regular sites,
|
|
65
|
-
*
|
|
63
|
+
* For regular sites, uses the SCAPI-first Sites backend and falls back to site
|
|
64
|
+
* archive import if neither direct backend is available.
|
|
66
65
|
* For Business Manager (Sites-Site), always uses site archive import.
|
|
67
66
|
*
|
|
68
67
|
* @param instance - B2C instance
|
|
@@ -91,27 +90,19 @@ export async function addCartridge(instance, siteId, options, updateOptions) {
|
|
|
91
90
|
logger.debug({ siteId }, 'Business Manager site — using site archive import for cartridge add');
|
|
92
91
|
return addCartridgeViaImport(instance, siteId, options, updateOptions);
|
|
93
92
|
}
|
|
94
|
-
|
|
93
|
+
const backend = createSitesBackend({ instance });
|
|
95
94
|
try {
|
|
96
|
-
|
|
97
|
-
params: { path: { site_id: siteId } },
|
|
98
|
-
body: options,
|
|
99
|
-
});
|
|
100
|
-
if (error) {
|
|
101
|
-
throw new OcapiError(getApiErrorMessage(error, response), response.status);
|
|
102
|
-
}
|
|
103
|
-
const result = data;
|
|
104
|
-
return toResult(siteId, result.cartridges ?? '');
|
|
95
|
+
return toResult(siteId, await backend.addCartridge(siteId, options.name, options.position, options.target));
|
|
105
96
|
}
|
|
106
|
-
catch (
|
|
107
|
-
return handleFallback(instance, siteId, 'add',
|
|
97
|
+
catch (backendError) {
|
|
98
|
+
return handleFallback(instance, siteId, 'add', backendError, () => addCartridgeViaImport(instance, siteId, options, updateOptions));
|
|
108
99
|
}
|
|
109
100
|
}
|
|
110
101
|
/**
|
|
111
102
|
* Removes a cartridge from a site's cartridge path.
|
|
112
103
|
*
|
|
113
|
-
* For regular sites,
|
|
114
|
-
*
|
|
104
|
+
* For regular sites, uses the SCAPI-first Sites backend and falls back to site
|
|
105
|
+
* archive import if neither direct backend is available.
|
|
115
106
|
* For Business Manager (Sites-Site), always uses site archive import.
|
|
116
107
|
*
|
|
117
108
|
* @param instance - B2C instance
|
|
@@ -130,25 +121,19 @@ export async function removeCartridge(instance, siteId, cartridgeName, updateOpt
|
|
|
130
121
|
logger.debug({ siteId }, 'Business Manager site — using site archive import for cartridge remove');
|
|
131
122
|
return removeCartridgeViaImport(instance, siteId, cartridgeName, updateOptions);
|
|
132
123
|
}
|
|
124
|
+
const backend = createSitesBackend({ instance });
|
|
133
125
|
try {
|
|
134
|
-
|
|
135
|
-
params: { path: { site_id: siteId, cartridge_name: cartridgeName } },
|
|
136
|
-
});
|
|
137
|
-
if (error) {
|
|
138
|
-
throw new OcapiError(getApiErrorMessage(error, response), response.status);
|
|
139
|
-
}
|
|
140
|
-
const result = data;
|
|
141
|
-
return toResult(siteId, result.cartridges ?? '');
|
|
126
|
+
return toResult(siteId, await backend.removeCartridge(siteId, cartridgeName));
|
|
142
127
|
}
|
|
143
|
-
catch (
|
|
144
|
-
return handleFallback(instance, siteId, 'remove',
|
|
128
|
+
catch (backendError) {
|
|
129
|
+
return handleFallback(instance, siteId, 'remove', backendError, () => removeCartridgeViaImport(instance, siteId, cartridgeName, updateOptions));
|
|
145
130
|
}
|
|
146
131
|
}
|
|
147
132
|
/**
|
|
148
133
|
* Replaces the entire cartridge path for a site.
|
|
149
134
|
*
|
|
150
|
-
* For regular sites,
|
|
151
|
-
*
|
|
135
|
+
* For regular sites, uses the SCAPI-first Sites backend and falls back to site
|
|
136
|
+
* archive import if neither direct backend is available.
|
|
152
137
|
* For Business Manager (Sites-Site), always uses site archive import.
|
|
153
138
|
*
|
|
154
139
|
* @param instance - B2C instance
|
|
@@ -167,39 +152,21 @@ export async function setCartridgePath(instance, siteId, cartridges, updateOptio
|
|
|
167
152
|
logger.debug({ siteId }, 'Business Manager site — using site archive import for cartridge set');
|
|
168
153
|
return setCartridgePathViaImport(instance, siteId, cartridges, updateOptions);
|
|
169
154
|
}
|
|
155
|
+
const backend = createSitesBackend({ instance });
|
|
170
156
|
try {
|
|
171
|
-
|
|
172
|
-
params: { path: { site_id: siteId } },
|
|
173
|
-
body: { cartridges },
|
|
174
|
-
});
|
|
175
|
-
if (error) {
|
|
176
|
-
throw new OcapiError(getApiErrorMessage(error, response), response.status);
|
|
177
|
-
}
|
|
178
|
-
const result = data;
|
|
179
|
-
return toResult(siteId, result.cartridges ?? '');
|
|
157
|
+
return toResult(siteId, await backend.setCartridgePath(siteId, cartridges));
|
|
180
158
|
}
|
|
181
|
-
catch (
|
|
182
|
-
return handleFallback(instance, siteId, 'set',
|
|
183
|
-
}
|
|
184
|
-
}
|
|
185
|
-
// ---------------------------------------------------------------------------
|
|
186
|
-
// Internal: OCAPI error wrapper
|
|
187
|
-
// ---------------------------------------------------------------------------
|
|
188
|
-
class OcapiError extends Error {
|
|
189
|
-
statusCode;
|
|
190
|
-
constructor(message, statusCode) {
|
|
191
|
-
super(message);
|
|
192
|
-
this.name = 'OcapiError';
|
|
193
|
-
this.statusCode = statusCode;
|
|
159
|
+
catch (backendError) {
|
|
160
|
+
return handleFallback(instance, siteId, 'set', backendError, () => setCartridgePathViaImport(instance, siteId, cartridges, updateOptions));
|
|
194
161
|
}
|
|
195
162
|
}
|
|
196
163
|
// ---------------------------------------------------------------------------
|
|
197
164
|
// Internal: Fallback handler
|
|
198
165
|
// ---------------------------------------------------------------------------
|
|
199
|
-
async function handleFallback(instance, siteId, operation,
|
|
166
|
+
async function handleFallback(instance, siteId, operation, backendError, fallbackFn) {
|
|
200
167
|
const logger = getLogger();
|
|
201
|
-
const
|
|
202
|
-
logger.warn({ siteId, operation, error:
|
|
168
|
+
const backendMessage = backendError instanceof Error ? backendError.message : String(backendError);
|
|
169
|
+
logger.warn({ siteId, operation, error: backendMessage }, `Direct API ${operation} failed, trying site archive import fallback`);
|
|
203
170
|
try {
|
|
204
171
|
return await fallbackFn();
|
|
205
172
|
}
|
|
@@ -208,10 +175,11 @@ async function handleFallback(instance, siteId, operation, ocapiError, fallbackF
|
|
|
208
175
|
throw new Error([
|
|
209
176
|
`Failed to ${operation} cartridge path for site "${siteId}".`,
|
|
210
177
|
'',
|
|
211
|
-
`OCAPI direct update failed: ${
|
|
178
|
+
`SCAPI/OCAPI direct update failed: ${backendMessage}`,
|
|
212
179
|
`Site archive import fallback also failed: ${importMessage}`,
|
|
213
180
|
'',
|
|
214
181
|
'To fix, configure one of:',
|
|
182
|
+
' • SCAPI Sites API: Grant sfcc.sites.rw',
|
|
215
183
|
' • OCAPI Data API: Grant POST/PUT/DELETE on /sites/*/cartridges',
|
|
216
184
|
' • Site import: Grant job execution permissions for sfcc-site-archive-import and WebDAV write access to Impex/',
|
|
217
185
|
'',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cartridges.js","sourceRoot":"","sources":["../../../../src/operations/sites/cartridges.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"cartridges.js","sourceRoot":"","sources":["../../../../src/operations/sites/cartridges.ts"],"names":[],"mappings":"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"}
|
|
@@ -2,10 +2,9 @@
|
|
|
2
2
|
* Site operations for B2C Commerce instances.
|
|
3
3
|
*
|
|
4
4
|
* This module provides functions for managing site cartridge paths
|
|
5
|
-
* on B2C Commerce instances. Operations
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
* import/export mechanism.
|
|
5
|
+
* on B2C Commerce instances. Operations use SCAPI first, with temporary
|
|
6
|
+
* OCAPI and site-archive fallbacks. Business Manager (Sites-Site) is
|
|
7
|
+
* supported via the import/export mechanism.
|
|
9
8
|
*
|
|
10
9
|
* ## Cartridge Path Functions
|
|
11
10
|
*
|
|
@@ -36,11 +35,16 @@
|
|
|
36
35
|
*
|
|
37
36
|
* ## Authentication
|
|
38
37
|
*
|
|
39
|
-
* Cartridge path operations require OAuth authentication. For
|
|
40
|
-
* grant POST/PUT/DELETE on `/sites/∗/cartridges`. For import/export fallback,
|
|
38
|
+
* Cartridge path operations require OAuth authentication. For SCAPI direct updates,
|
|
39
|
+
* grant `sfcc.sites.rw`; for OCAPI grant POST/PUT/DELETE on `/sites/∗/cartridges`. For import/export fallback,
|
|
41
40
|
* grant job execution permissions and WebDAV write access.
|
|
42
41
|
*
|
|
43
42
|
* @module operations/sites
|
|
44
43
|
*/
|
|
45
44
|
export { getCartridgePath, addCartridge, removeCartridge, setCartridgePath, BM_SITE_ID } from './cartridges.js';
|
|
46
45
|
export type { CartridgePathResult, AddCartridgeOptions, CartridgePosition, CartridgeUpdateOptions, } from './cartridges.js';
|
|
46
|
+
export { createSitesBackend } from './sites-backend.js';
|
|
47
|
+
export type { SitesBackendConfig } from './sites-backend.js';
|
|
48
|
+
export { ScapiSitesBackend } from './scapi-sites-backend.js';
|
|
49
|
+
export { OcapiSitesBackend } from './ocapi-sites-backend.js';
|
|
50
|
+
export type { SitesBackend, SiteInfo, ListSitesOptions } from './sites-types.js';
|
|
@@ -7,10 +7,9 @@
|
|
|
7
7
|
* Site operations for B2C Commerce instances.
|
|
8
8
|
*
|
|
9
9
|
* This module provides functions for managing site cartridge paths
|
|
10
|
-
* on B2C Commerce instances. Operations
|
|
11
|
-
*
|
|
12
|
-
*
|
|
13
|
-
* import/export mechanism.
|
|
10
|
+
* on B2C Commerce instances. Operations use SCAPI first, with temporary
|
|
11
|
+
* OCAPI and site-archive fallbacks. Business Manager (Sites-Site) is
|
|
12
|
+
* supported via the import/export mechanism.
|
|
14
13
|
*
|
|
15
14
|
* ## Cartridge Path Functions
|
|
16
15
|
*
|
|
@@ -41,11 +40,15 @@
|
|
|
41
40
|
*
|
|
42
41
|
* ## Authentication
|
|
43
42
|
*
|
|
44
|
-
* Cartridge path operations require OAuth authentication. For
|
|
45
|
-
* grant POST/PUT/DELETE on `/sites/∗/cartridges`. For import/export fallback,
|
|
43
|
+
* Cartridge path operations require OAuth authentication. For SCAPI direct updates,
|
|
44
|
+
* grant `sfcc.sites.rw`; for OCAPI grant POST/PUT/DELETE on `/sites/∗/cartridges`. For import/export fallback,
|
|
46
45
|
* grant job execution permissions and WebDAV write access.
|
|
47
46
|
*
|
|
48
47
|
* @module operations/sites
|
|
49
48
|
*/
|
|
50
49
|
export { getCartridgePath, addCartridge, removeCartridge, setCartridgePath, BM_SITE_ID } from './cartridges.js';
|
|
50
|
+
// Site read operations (list/get) — SCAPI with OCAPI fallback
|
|
51
|
+
export { createSitesBackend } from './sites-backend.js';
|
|
52
|
+
export { ScapiSitesBackend } from './scapi-sites-backend.js';
|
|
53
|
+
export { OcapiSitesBackend } from './ocapi-sites-backend.js';
|
|
51
54
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/operations/sites/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/operations/sites/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA0CG;AACH,OAAO,EAAC,gBAAgB,EAAE,YAAY,EAAE,eAAe,EAAE,gBAAgB,EAAE,UAAU,EAAC,MAAM,iBAAiB,CAAC;AAS9G,8DAA8D;AAC9D,OAAO,EAAC,kBAAkB,EAAC,MAAM,oBAAoB,CAAC;AAEtD,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAC,iBAAiB,EAAC,MAAM,0BAA0B,CAAC"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import type { B2CInstance } from '../../instance/index.js';
|
|
2
|
+
import type { SitesBackend, SiteInfo, ListSitesOptions } from './sites-types.js';
|
|
3
|
+
import type { CartridgePosition } from './sites-types.js';
|
|
4
|
+
/**
|
|
5
|
+
* OCAPI Sites backend (legacy/fallback). Reads sites and per-site detail via
|
|
6
|
+
* the OCAPI Data API `/sites` resource.
|
|
7
|
+
*/
|
|
8
|
+
export declare class OcapiSitesBackend implements SitesBackend {
|
|
9
|
+
private instance;
|
|
10
|
+
readonly name: "ocapi";
|
|
11
|
+
constructor(instance: B2CInstance);
|
|
12
|
+
listSites(options?: ListSitesOptions): Promise<SiteInfo[]>;
|
|
13
|
+
private fetchSitePage;
|
|
14
|
+
private fetchSitePageWithTotal;
|
|
15
|
+
getSite(siteId: string): Promise<SiteInfo>;
|
|
16
|
+
getCartridgePath(siteId: string): Promise<string>;
|
|
17
|
+
setCartridgePath(siteId: string, cartridges: string): Promise<string>;
|
|
18
|
+
addCartridge(siteId: string, name: string, position: CartridgePosition, target?: string): Promise<string>;
|
|
19
|
+
removeCartridge(siteId: string, name: string): Promise<string>;
|
|
20
|
+
}
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
import { throwOcapiError } from '../../clients/error-utils.js';
|
|
2
|
+
import { SCAPI_SITES_READ_AND_RW_SCOPES } from './sites-scopes.js';
|
|
3
|
+
function mapOcapiSite(ocapi) {
|
|
4
|
+
return {
|
|
5
|
+
id: ocapi.id ?? '',
|
|
6
|
+
displayName: ocapi.display_name?.default ?? ocapi.id ?? '',
|
|
7
|
+
storefrontStatus: ocapi.storefront_status,
|
|
8
|
+
cartridges: ocapi.cartridges,
|
|
9
|
+
_raw: ocapi,
|
|
10
|
+
};
|
|
11
|
+
}
|
|
12
|
+
/**
|
|
13
|
+
* OCAPI Sites backend (legacy/fallback). Reads sites and per-site detail via
|
|
14
|
+
* the OCAPI Data API `/sites` resource.
|
|
15
|
+
*/
|
|
16
|
+
export class OcapiSitesBackend {
|
|
17
|
+
instance;
|
|
18
|
+
name = 'ocapi';
|
|
19
|
+
constructor(instance) {
|
|
20
|
+
this.instance = instance;
|
|
21
|
+
}
|
|
22
|
+
async listSites(options = {}) {
|
|
23
|
+
// When the caller bounds the result (start/count), honor it as a single
|
|
24
|
+
// page. Otherwise page through the whole collection so callers that need
|
|
25
|
+
// *all* sites (export-unit discovery, CAP feature listing) don't silently
|
|
26
|
+
// truncate at the OCAPI default page size.
|
|
27
|
+
if (options.start !== undefined || options.count !== undefined) {
|
|
28
|
+
return this.fetchSitePage(options.start, options.count);
|
|
29
|
+
}
|
|
30
|
+
const all = [];
|
|
31
|
+
const pageSize = 200;
|
|
32
|
+
let start = 0;
|
|
33
|
+
for (;;) {
|
|
34
|
+
const { sites, total } = await this.fetchSitePageWithTotal(start, pageSize);
|
|
35
|
+
all.push(...sites);
|
|
36
|
+
start += pageSize;
|
|
37
|
+
if (sites.length === 0 || start >= total)
|
|
38
|
+
break;
|
|
39
|
+
}
|
|
40
|
+
return all;
|
|
41
|
+
}
|
|
42
|
+
async fetchSitePage(start, count) {
|
|
43
|
+
return (await this.fetchSitePageWithTotal(start, count)).sites;
|
|
44
|
+
}
|
|
45
|
+
async fetchSitePageWithTotal(start, count) {
|
|
46
|
+
const { data, error, response } = await this.instance.ocapi.GET('/sites', {
|
|
47
|
+
params: { query: { start, count, select: '(**)' } },
|
|
48
|
+
});
|
|
49
|
+
if (error || !data) {
|
|
50
|
+
throwOcapiError(error, response, 'Failed to list sites', SCAPI_SITES_READ_AND_RW_SCOPES);
|
|
51
|
+
}
|
|
52
|
+
const body = data;
|
|
53
|
+
const sites = (body.data ?? []).map(mapOcapiSite);
|
|
54
|
+
return { sites, total: body.total ?? (start ?? 0) + sites.length };
|
|
55
|
+
}
|
|
56
|
+
async getSite(siteId) {
|
|
57
|
+
const { data, error, response } = await this.instance.ocapi.GET('/sites/{site_id}', {
|
|
58
|
+
params: { path: { site_id: siteId } },
|
|
59
|
+
});
|
|
60
|
+
if (error || !data) {
|
|
61
|
+
throwOcapiError(error, response, `Failed to get site ${siteId}`, SCAPI_SITES_READ_AND_RW_SCOPES);
|
|
62
|
+
}
|
|
63
|
+
return mapOcapiSite(data);
|
|
64
|
+
}
|
|
65
|
+
async getCartridgePath(siteId) {
|
|
66
|
+
return (await this.getSite(siteId)).cartridges ?? '';
|
|
67
|
+
}
|
|
68
|
+
async setCartridgePath(siteId, cartridges) {
|
|
69
|
+
const { data, error, response } = await this.instance.ocapi.PUT('/sites/{site_id}/cartridges', {
|
|
70
|
+
params: { path: { site_id: siteId } },
|
|
71
|
+
body: { cartridges },
|
|
72
|
+
});
|
|
73
|
+
if (error || !data) {
|
|
74
|
+
throwOcapiError(error, response, `Failed to set cartridge path for site ${siteId}`, SCAPI_SITES_READ_AND_RW_SCOPES);
|
|
75
|
+
}
|
|
76
|
+
return data.cartridges ?? cartridges;
|
|
77
|
+
}
|
|
78
|
+
async addCartridge(siteId, name, position, target) {
|
|
79
|
+
const { data, error, response } = await this.instance.ocapi.POST('/sites/{site_id}/cartridges', {
|
|
80
|
+
params: { path: { site_id: siteId } },
|
|
81
|
+
body: { name, position, target },
|
|
82
|
+
});
|
|
83
|
+
if (error || !data) {
|
|
84
|
+
throwOcapiError(error, response, `Failed to add cartridge ${name} to site ${siteId}`, SCAPI_SITES_READ_AND_RW_SCOPES);
|
|
85
|
+
}
|
|
86
|
+
return data.cartridges ?? '';
|
|
87
|
+
}
|
|
88
|
+
async removeCartridge(siteId, name) {
|
|
89
|
+
const { data, error, response } = await this.instance.ocapi.DELETE('/sites/{site_id}/cartridges/{cartridge_name}', {
|
|
90
|
+
params: { path: { site_id: siteId, cartridge_name: name } },
|
|
91
|
+
});
|
|
92
|
+
if (error || !data) {
|
|
93
|
+
throwOcapiError(error, response, `Failed to remove cartridge ${name} from site ${siteId}`, SCAPI_SITES_READ_AND_RW_SCOPES);
|
|
94
|
+
}
|
|
95
|
+
return data.cartridges ?? '';
|
|
96
|
+
}
|
|
97
|
+
}
|
|
98
|
+
//# sourceMappingURL=ocapi-sites-backend.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ocapi-sites-backend.js","sourceRoot":"","sources":["../../../../src/operations/sites/ocapi-sites-backend.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
import type { AuthStrategy } from '../../auth/types.js';
|
|
2
|
+
import type { SitesBackend, SiteInfo, ListSitesOptions, CartridgePosition } from './sites-types.js';
|
|
3
|
+
export interface ScapiSitesBackendConfig {
|
|
4
|
+
shortCode: string;
|
|
5
|
+
tenantId: string;
|
|
6
|
+
auth: AuthStrategy;
|
|
7
|
+
/** Unused by Sites; accepted for compatibility with the dual-backend factory. */
|
|
8
|
+
instance?: unknown;
|
|
9
|
+
}
|
|
10
|
+
/**
|
|
11
|
+
* SCAPI Sites backend. Reads sites and manages custom cartridge paths via the
|
|
12
|
+
* `site/sites/v1` Admin API.
|
|
13
|
+
*/
|
|
14
|
+
export declare class ScapiSitesBackend implements SitesBackend {
|
|
15
|
+
readonly name: "scapi";
|
|
16
|
+
private organizationId;
|
|
17
|
+
private client;
|
|
18
|
+
constructor(config: ScapiSitesBackendConfig);
|
|
19
|
+
listSites(options?: ListSitesOptions): Promise<SiteInfo[]>;
|
|
20
|
+
/**
|
|
21
|
+
* Fetches the requested window of sites, paginating across 50-item SCAPI
|
|
22
|
+
* pages. `start` is the offset into the full result set; `count` bounds how
|
|
23
|
+
* many are returned (unbounded when omitted).
|
|
24
|
+
*/
|
|
25
|
+
private fetchSitePage;
|
|
26
|
+
/** Maps sites, fetching per-site detail (bounded concurrency) for sparse items. */
|
|
27
|
+
private enrichSites;
|
|
28
|
+
getSite(siteId: string): Promise<SiteInfo>;
|
|
29
|
+
getCartridgePath(siteId: string): Promise<string>;
|
|
30
|
+
setCartridgePath(siteId: string, cartridges: string): Promise<string>;
|
|
31
|
+
addCartridge(siteId: string, name: string, position: CartridgePosition, target?: string): Promise<string>;
|
|
32
|
+
removeCartridge(siteId: string, name: string): Promise<string>;
|
|
33
|
+
}
|
|
@@ -0,0 +1,166 @@
|
|
|
1
|
+
import { createScapiSitesClient, toOrganizationId, } from '../../clients/scapi-sites.js';
|
|
2
|
+
import { SCOPE_MODE_HEADER } from '../../clients/middleware.js';
|
|
3
|
+
import { createScapiRequestError } from '../../clients/scapi-backend-utils.js';
|
|
4
|
+
const READ_HEADERS = { [SCOPE_MODE_HEADER]: 'read' };
|
|
5
|
+
const WRITE_HEADERS = { [SCOPE_MODE_HEADER]: 'write' };
|
|
6
|
+
/** SCAPI `getSites` caps `limit` at 50 (spec `site-sites-v1.yaml`). */
|
|
7
|
+
const SCAPI_SITES_MAX_PAGE = 50;
|
|
8
|
+
/** Concurrency for per-site detail enrichment; bounds rate-limit pressure. */
|
|
9
|
+
const ENRICH_CONCURRENCY = 5;
|
|
10
|
+
function defaultLocaleValue(map) {
|
|
11
|
+
if (!map)
|
|
12
|
+
return undefined;
|
|
13
|
+
return map.default ?? Object.values(map)[0];
|
|
14
|
+
}
|
|
15
|
+
function mapScapiSite(scapi) {
|
|
16
|
+
return {
|
|
17
|
+
id: scapi.id,
|
|
18
|
+
displayName: defaultLocaleValue(scapi.displayName) ?? scapi.id,
|
|
19
|
+
storefrontStatus: scapi.storefrontStatus,
|
|
20
|
+
cartridges: scapi.cartridges,
|
|
21
|
+
_raw: scapi,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* SCAPI Sites backend. Reads sites and manages custom cartridge paths via the
|
|
26
|
+
* `site/sites/v1` Admin API.
|
|
27
|
+
*/
|
|
28
|
+
export class ScapiSitesBackend {
|
|
29
|
+
name = 'scapi';
|
|
30
|
+
organizationId;
|
|
31
|
+
client;
|
|
32
|
+
constructor(config) {
|
|
33
|
+
this.organizationId = toOrganizationId(config.tenantId);
|
|
34
|
+
const clientConfig = { shortCode: config.shortCode, tenantId: config.tenantId };
|
|
35
|
+
this.client = createScapiSitesClient(clientConfig, config.auth);
|
|
36
|
+
}
|
|
37
|
+
async listSites(options = {}) {
|
|
38
|
+
// Page through `getSites` on the server (limit capped at 50) rather than
|
|
39
|
+
// relying on the default single 25-item page — otherwise instances with
|
|
40
|
+
// more than 25 sites silently lose the rest. The caller's start/count map
|
|
41
|
+
// to SCAPI offset/limit.
|
|
42
|
+
const rawSites = await this.fetchSitePage(options);
|
|
43
|
+
// `getSites` returns items that carry only the id (display name, storefront
|
|
44
|
+
// status, and cartridges live on the per-site detail endpoint). Enrich any
|
|
45
|
+
// sparse item via `getSite`, with bounded concurrency to limit rate-limit
|
|
46
|
+
// pressure. Items that already arrive rich (future-proofing if the platform
|
|
47
|
+
// starts populating list fields) are mapped directly with no extra call.
|
|
48
|
+
return this.enrichSites(rawSites);
|
|
49
|
+
}
|
|
50
|
+
/**
|
|
51
|
+
* Fetches the requested window of sites, paginating across 50-item SCAPI
|
|
52
|
+
* pages. `start` is the offset into the full result set; `count` bounds how
|
|
53
|
+
* many are returned (unbounded when omitted).
|
|
54
|
+
*/
|
|
55
|
+
async fetchSitePage(options) {
|
|
56
|
+
const startOffset = options.start ?? 0;
|
|
57
|
+
const target = options.count; // undefined → all remaining
|
|
58
|
+
const collected = [];
|
|
59
|
+
let offset = startOffset;
|
|
60
|
+
while (true) {
|
|
61
|
+
const remaining = target === undefined ? SCAPI_SITES_MAX_PAGE : target - collected.length;
|
|
62
|
+
if (remaining <= 0)
|
|
63
|
+
break;
|
|
64
|
+
const limit = Math.min(SCAPI_SITES_MAX_PAGE, remaining);
|
|
65
|
+
const { data, error, response } = await this.client.GET('/organizations/{organizationId}/sites', {
|
|
66
|
+
params: { path: { organizationId: this.organizationId }, query: { limit, offset } },
|
|
67
|
+
headers: READ_HEADERS,
|
|
68
|
+
});
|
|
69
|
+
if (error || !data) {
|
|
70
|
+
throw createScapiRequestError(error, response, 'Failed to list sites');
|
|
71
|
+
}
|
|
72
|
+
const page = data;
|
|
73
|
+
const items = page.data ?? [];
|
|
74
|
+
collected.push(...items);
|
|
75
|
+
offset += items.length;
|
|
76
|
+
// Stop when the server has no more items, or we've reached the reported
|
|
77
|
+
// total, or the page came back short (defensive against a missing total).
|
|
78
|
+
const total = page.total ?? startOffset + collected.length;
|
|
79
|
+
if (items.length === 0 || offset >= total)
|
|
80
|
+
break;
|
|
81
|
+
}
|
|
82
|
+
return collected;
|
|
83
|
+
}
|
|
84
|
+
/** Maps sites, fetching per-site detail (bounded concurrency) for sparse items. */
|
|
85
|
+
async enrichSites(sites) {
|
|
86
|
+
const results = [];
|
|
87
|
+
for (let i = 0; i < sites.length; i += ENRICH_CONCURRENCY) {
|
|
88
|
+
const batch = sites.slice(i, i + ENRICH_CONCURRENCY);
|
|
89
|
+
const mapped = await Promise.all(batch.map((site) => {
|
|
90
|
+
// If the list item is already rich, avoid the extra detail call.
|
|
91
|
+
if (site.displayName !== undefined || site.storefrontStatus !== undefined) {
|
|
92
|
+
return Promise.resolve(mapScapiSite(site));
|
|
93
|
+
}
|
|
94
|
+
return site.id ? this.getSite(site.id) : Promise.resolve(mapScapiSite(site));
|
|
95
|
+
}));
|
|
96
|
+
results.push(...mapped);
|
|
97
|
+
}
|
|
98
|
+
return results;
|
|
99
|
+
}
|
|
100
|
+
async getSite(siteId) {
|
|
101
|
+
const { data, error, response } = await this.client.GET('/organizations/{organizationId}/sites/{siteId}', {
|
|
102
|
+
params: { path: { organizationId: this.organizationId, siteId } },
|
|
103
|
+
headers: READ_HEADERS,
|
|
104
|
+
});
|
|
105
|
+
if (error || !data) {
|
|
106
|
+
throw createScapiRequestError(error, response, `Failed to get site ${siteId}`);
|
|
107
|
+
}
|
|
108
|
+
return mapScapiSite(data);
|
|
109
|
+
}
|
|
110
|
+
async getCartridgePath(siteId) {
|
|
111
|
+
const { data, error, response } = await this.client.GET('/organizations/{organizationId}/sites/{siteId}/custom-cartridges', {
|
|
112
|
+
params: { path: { organizationId: this.organizationId, siteId } },
|
|
113
|
+
headers: READ_HEADERS,
|
|
114
|
+
});
|
|
115
|
+
if (error || !data) {
|
|
116
|
+
throw createScapiRequestError(error, response, `Failed to get cartridge path for site ${siteId}`);
|
|
117
|
+
}
|
|
118
|
+
return data.customCartridges;
|
|
119
|
+
}
|
|
120
|
+
async setCartridgePath(siteId, cartridges) {
|
|
121
|
+
const { data, error, response } = await this.client.PUT('/organizations/{organizationId}/sites/{siteId}/custom-cartridges', {
|
|
122
|
+
params: { path: { organizationId: this.organizationId, siteId } },
|
|
123
|
+
headers: WRITE_HEADERS,
|
|
124
|
+
body: { customCartridges: cartridges },
|
|
125
|
+
});
|
|
126
|
+
if (error || !data) {
|
|
127
|
+
throw createScapiRequestError(error, response, `Failed to set cartridge path for site ${siteId}`);
|
|
128
|
+
}
|
|
129
|
+
return data.customCartridges;
|
|
130
|
+
}
|
|
131
|
+
async addCartridge(siteId, name, position, target) {
|
|
132
|
+
const current = await this.getCartridgePath(siteId);
|
|
133
|
+
const cartridges = current ? current.split(':') : [];
|
|
134
|
+
if (cartridges.includes(name)) {
|
|
135
|
+
throw new Error(`Cartridge "${name}" already exists in the cartridge path for site "${siteId}"`);
|
|
136
|
+
}
|
|
137
|
+
insertCartridge(cartridges, name, position, target);
|
|
138
|
+
return this.setCartridgePath(siteId, cartridges.join(':'));
|
|
139
|
+
}
|
|
140
|
+
async removeCartridge(siteId, name) {
|
|
141
|
+
const current = await this.getCartridgePath(siteId);
|
|
142
|
+
const cartridges = current ? current.split(':') : [];
|
|
143
|
+
const index = cartridges.indexOf(name);
|
|
144
|
+
if (index < 0)
|
|
145
|
+
throw new Error(`Cartridge "${name}" not found in the cartridge path for site "${siteId}"`);
|
|
146
|
+
cartridges.splice(index, 1);
|
|
147
|
+
return this.setCartridgePath(siteId, cartridges.join(':'));
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
function insertCartridge(cartridges, name, position, target) {
|
|
151
|
+
if (position === 'first') {
|
|
152
|
+
cartridges.unshift(name);
|
|
153
|
+
return;
|
|
154
|
+
}
|
|
155
|
+
if (position === 'last') {
|
|
156
|
+
cartridges.push(name);
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
if (!target)
|
|
160
|
+
throw new Error(`Target cartridge is required for position "${position}"`);
|
|
161
|
+
const targetIndex = cartridges.indexOf(target);
|
|
162
|
+
if (targetIndex < 0)
|
|
163
|
+
throw new Error(`Target cartridge "${target}" not found in cartridge path`);
|
|
164
|
+
cartridges.splice(position === 'before' ? targetIndex : targetIndex + 1, 0, name);
|
|
165
|
+
}
|
|
166
|
+
//# sourceMappingURL=scapi-sites-backend.js.map
|