@salesforce/b2c-tooling-sdk 0.3.0 → 0.4.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/README.md +180 -13
- package/data/scaffolds/cartridge/files/.project.ejs +17 -0
- package/data/scaffolds/cartridge/files/cartridge/cartridge.properties.ejs +4 -0
- package/data/scaffolds/cartridge/files/cartridge/controllers/Example.js.ejs +19 -0
- package/data/scaffolds/cartridge/files/cartridge/models/example.js.ejs +14 -0
- package/data/scaffolds/cartridge/files/cartridge/scripts/helpers/exampleHelpers.js.ejs +18 -0
- package/data/scaffolds/cartridge/files/cartridge/static/default/css/example.css +6 -0
- package/data/scaffolds/cartridge/files/cartridge/templates/default/example/show.isml.ejs +11 -0
- package/data/scaffolds/cartridge/scaffold.json +88 -0
- package/data/scaffolds/controller/files/controller.js.ejs +134 -0
- package/data/scaffolds/controller/files/template.isml.ejs +22 -0
- package/data/scaffolds/controller/scaffold.json +64 -0
- package/data/scaffolds/custom-api/files/api.json.ejs +11 -0
- package/data/scaffolds/custom-api/files/schema.yaml.ejs +188 -0
- package/data/scaffolds/custom-api/files/script.js.ejs +95 -0
- package/data/scaffolds/custom-api/scaffold.json +65 -0
- package/data/scaffolds/hook/files/hook.js.ejs +99 -0
- package/data/scaffolds/hook/files/hooks-entry.json.ejs +6 -0
- package/data/scaffolds/hook/scaffold.json +60 -0
- package/data/scaffolds/job-step/files/step-chunk.js.ejs +136 -0
- package/data/scaffolds/job-step/files/step-task.js.ejs +47 -0
- package/data/scaffolds/job-step/files/steptypes-entry.json.ejs +41 -0
- package/data/scaffolds/job-step/scaffold.json +64 -0
- package/data/scaffolds/page-designer-component/files/component.isml.ejs +23 -0
- package/data/scaffolds/page-designer-component/files/component.js.ejs +35 -0
- package/data/scaffolds/page-designer-component/files/component.json.ejs +50 -0
- package/data/scaffolds/page-designer-component/scaffold.json +66 -0
- package/data/scaffolds/service/files/service-http.js.ejs +245 -0
- package/data/scaffolds/service/files/service-sftp.js.ejs +371 -0
- package/data/scaffolds/service/files/service-soap.js.ejs +230 -0
- package/data/scaffolds/service/scaffold.json +83 -0
- package/data/script-api/dw.extensions.payments.SalesforcePaymentsMgr.md +48 -0
- package/data/script-api/dw.system.Request.md +5 -0
- package/data/script-api/dw.web.Cookie.md +108 -31
- package/data/script-api/index.json +2 -2
- package/data/script-api/index.md +1 -1
- package/dist/cjs/auth/oauth-implicit.d.ts +1 -0
- package/dist/cjs/auth/oauth-implicit.js +8 -3
- package/dist/cjs/auth/oauth-implicit.js.map +1 -1
- package/dist/cjs/auth/oauth.d.ts +1 -0
- package/dist/cjs/auth/oauth.js +8 -3
- package/dist/cjs/auth/oauth.js.map +1 -1
- package/dist/cjs/auth/types.d.ts +5 -0
- package/dist/cjs/auth/types.js.map +1 -1
- package/dist/cjs/cli/am-command.d.ts +74 -0
- package/dist/cjs/cli/am-command.js +189 -0
- package/dist/cjs/cli/am-command.js.map +1 -0
- package/dist/cjs/cli/base-command.d.ts +38 -0
- package/dist/cjs/cli/base-command.js +142 -0
- package/dist/cjs/cli/base-command.js.map +1 -1
- package/dist/cjs/cli/config.d.ts +9 -0
- package/dist/cjs/cli/config.js +19 -2
- package/dist/cjs/cli/config.js.map +1 -1
- package/dist/cjs/cli/index.d.ts +1 -0
- package/dist/cjs/cli/index.js +1 -0
- package/dist/cjs/cli/index.js.map +1 -1
- package/dist/cjs/cli/instance-command.d.ts +1 -0
- package/dist/cjs/cli/oauth-command.d.ts +21 -1
- package/dist/cjs/cli/oauth-command.js +52 -7
- package/dist/cjs/cli/oauth-command.js.map +1 -1
- package/dist/cjs/cli/ods-command.d.ts +5 -1
- package/dist/cjs/cli/ods-command.js +10 -4
- package/dist/cjs/cli/ods-command.js.map +1 -1
- package/dist/cjs/cli/webdav-command.d.ts +1 -0
- package/dist/cjs/clients/am-api.d.ts +491 -0
- package/dist/cjs/clients/am-api.js +944 -0
- package/dist/cjs/clients/am-api.js.map +1 -0
- package/dist/cjs/clients/am-apiclients-api.generated.d.ts +803 -0
- package/dist/cjs/clients/am-apiclients-api.generated.js +6 -0
- package/dist/cjs/clients/am-apiclients-api.generated.js.map +1 -0
- package/dist/cjs/clients/am-roles-api.generated.d.ts +298 -0
- package/dist/cjs/clients/am-roles-api.generated.js +6 -0
- package/dist/cjs/clients/am-roles-api.generated.js.map +1 -0
- package/dist/cjs/clients/am-users-api.generated.d.ts +891 -0
- package/dist/cjs/clients/am-users-api.generated.js +6 -0
- package/dist/cjs/clients/am-users-api.generated.js.map +1 -0
- package/dist/cjs/clients/index.d.ts +4 -2
- package/dist/cjs/clients/index.js +2 -1
- package/dist/cjs/clients/index.js.map +1 -1
- package/dist/cjs/clients/middleware-registry.d.ts +1 -1
- package/dist/cjs/clients/middleware-registry.js.map +1 -1
- package/dist/cjs/clients/middleware.d.ts +49 -2
- package/dist/cjs/clients/middleware.js +214 -2
- package/dist/cjs/clients/middleware.js.map +1 -1
- package/dist/cjs/clients/mrt.js +5 -1
- package/dist/cjs/clients/mrt.js.map +1 -1
- package/dist/cjs/config/dw-json.d.ts +104 -33
- package/dist/cjs/config/dw-json.js +167 -2
- package/dist/cjs/config/dw-json.js.map +1 -1
- package/dist/cjs/config/index.d.ts +6 -4
- package/dist/cjs/config/index.js +6 -2
- package/dist/cjs/config/index.js.map +1 -1
- package/dist/cjs/config/instance-manager.d.ts +97 -0
- package/dist/cjs/config/instance-manager.js +166 -0
- package/dist/cjs/config/instance-manager.js.map +1 -0
- package/dist/cjs/config/mapping.d.ts +63 -5
- package/dist/cjs/config/mapping.js +165 -20
- package/dist/cjs/config/mapping.js.map +1 -1
- package/dist/cjs/config/sources/dw-json-source.d.ts +17 -1
- package/dist/cjs/config/sources/dw-json-source.js +70 -3
- package/dist/cjs/config/sources/dw-json-source.js.map +1 -1
- package/dist/cjs/config/sources/package-json-source.js +6 -3
- package/dist/cjs/config/sources/package-json-source.js.map +1 -1
- package/dist/cjs/config/types.d.ts +72 -0
- package/dist/cjs/defaults.d.ts +6 -0
- package/dist/cjs/defaults.js +6 -0
- package/dist/cjs/defaults.js.map +1 -1
- package/dist/cjs/i18n/index.js +3 -0
- package/dist/cjs/i18n/index.js.map +1 -1
- package/dist/cjs/index.d.ts +8 -4
- package/dist/cjs/index.js +9 -3
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/logging/logger.js +13 -1
- package/dist/cjs/logging/logger.js.map +1 -1
- package/dist/cjs/operations/content/asset-query.d.ts +22 -0
- package/dist/cjs/operations/content/asset-query.js +77 -0
- package/dist/cjs/operations/content/asset-query.js.map +1 -0
- package/dist/cjs/operations/content/export.d.ts +57 -0
- package/dist/cjs/operations/content/export.js +224 -0
- package/dist/cjs/operations/content/export.js.map +1 -0
- package/dist/cjs/operations/content/index.d.ts +43 -0
- package/dist/cjs/operations/content/index.js +48 -0
- package/dist/cjs/operations/content/index.js.map +1 -0
- package/dist/cjs/operations/content/library.d.ts +137 -0
- package/dist/cjs/operations/content/library.js +392 -0
- package/dist/cjs/operations/content/library.js.map +1 -0
- package/dist/cjs/operations/content/types.d.ts +144 -0
- package/dist/cjs/operations/content/types.js +7 -0
- package/dist/cjs/operations/content/types.js.map +1 -0
- package/dist/cjs/operations/mrt/b2c-config.js +19 -4
- package/dist/cjs/operations/mrt/b2c-config.js.map +1 -1
- package/dist/cjs/operations/mrt/index.d.ts +2 -0
- package/dist/cjs/operations/mrt/index.js +2 -0
- package/dist/cjs/operations/mrt/index.js.map +1 -1
- package/dist/cjs/operations/mrt/tail-logs.d.ts +130 -0
- package/dist/cjs/operations/mrt/tail-logs.js +223 -0
- package/dist/cjs/operations/mrt/tail-logs.js.map +1 -0
- package/dist/cjs/operations/ods/index.d.ts +2 -0
- package/dist/cjs/operations/ods/index.js +1 -0
- package/dist/cjs/operations/ods/index.js.map +1 -1
- package/dist/cjs/operations/ods/wait-for-sandbox.d.ts +64 -0
- package/dist/cjs/operations/ods/wait-for-sandbox.js +114 -0
- package/dist/cjs/operations/ods/wait-for-sandbox.js.map +1 -0
- package/dist/cjs/operations/orgs/index.d.ts +74 -0
- package/dist/cjs/operations/orgs/index.js +33 -0
- package/dist/cjs/operations/orgs/index.js.map +1 -0
- package/dist/cjs/operations/roles/index.d.ts +43 -0
- package/dist/cjs/operations/roles/index.js +48 -0
- package/dist/cjs/operations/roles/index.js.map +1 -0
- package/dist/cjs/operations/users/index.d.ts +143 -0
- package/dist/cjs/operations/users/index.js +141 -0
- package/dist/cjs/operations/users/index.js.map +1 -0
- package/dist/cjs/scaffold/engine.d.ts +68 -0
- package/dist/cjs/scaffold/engine.js +149 -0
- package/dist/cjs/scaffold/engine.js.map +1 -0
- package/dist/cjs/scaffold/executor.d.ts +36 -0
- package/dist/cjs/scaffold/executor.js +285 -0
- package/dist/cjs/scaffold/executor.js.map +1 -0
- package/dist/cjs/scaffold/index.d.ts +74 -0
- package/dist/cjs/scaffold/index.js +23 -0
- package/dist/cjs/scaffold/index.js.map +1 -0
- package/dist/cjs/scaffold/merge.d.ts +56 -0
- package/dist/cjs/scaffold/merge.js +183 -0
- package/dist/cjs/scaffold/merge.js.map +1 -0
- package/dist/cjs/scaffold/parameter-resolver.d.ts +86 -0
- package/dist/cjs/scaffold/parameter-resolver.js +179 -0
- package/dist/cjs/scaffold/parameter-resolver.js.map +1 -0
- package/dist/cjs/scaffold/registry.d.ts +45 -0
- package/dist/cjs/scaffold/registry.js +219 -0
- package/dist/cjs/scaffold/registry.js.map +1 -0
- package/dist/cjs/scaffold/sources.d.ts +45 -0
- package/dist/cjs/scaffold/sources.js +113 -0
- package/dist/cjs/scaffold/sources.js.map +1 -0
- package/dist/cjs/scaffold/types.d.ts +280 -0
- package/dist/cjs/scaffold/types.js +14 -0
- package/dist/cjs/scaffold/types.js.map +1 -0
- package/dist/cjs/scaffold/validation.d.ts +81 -0
- package/dist/cjs/scaffold/validation.js +250 -0
- package/dist/cjs/scaffold/validation.js.map +1 -0
- package/dist/cjs/scaffold/validators.d.ts +33 -0
- package/dist/cjs/scaffold/validators.js +334 -0
- package/dist/cjs/scaffold/validators.js.map +1 -0
- package/dist/cjs/telemetry/index.d.ts +26 -0
- package/dist/cjs/telemetry/index.js +32 -0
- package/dist/cjs/telemetry/index.js.map +1 -0
- package/dist/cjs/telemetry/telemetry.d.ts +90 -0
- package/dist/cjs/telemetry/telemetry.js +283 -0
- package/dist/cjs/telemetry/telemetry.js.map +1 -0
- package/dist/cjs/telemetry/types.d.ts +62 -0
- package/dist/cjs/telemetry/types.js +7 -0
- package/dist/cjs/telemetry/types.js.map +1 -0
- package/dist/esm/auth/oauth-implicit.d.ts +1 -0
- package/dist/esm/auth/oauth-implicit.js +8 -3
- package/dist/esm/auth/oauth-implicit.js.map +1 -1
- package/dist/esm/auth/oauth.d.ts +1 -0
- package/dist/esm/auth/oauth.js +8 -3
- package/dist/esm/auth/oauth.js.map +1 -1
- package/dist/esm/auth/types.d.ts +5 -0
- package/dist/esm/auth/types.js.map +1 -1
- package/dist/esm/cli/am-command.d.ts +74 -0
- package/dist/esm/cli/am-command.js +196 -0
- package/dist/esm/cli/am-command.js.map +1 -0
- package/dist/esm/cli/base-command.d.ts +38 -0
- package/dist/esm/cli/base-command.js +142 -0
- package/dist/esm/cli/base-command.js.map +1 -1
- package/dist/esm/cli/config.d.ts +9 -0
- package/dist/esm/cli/config.js +19 -2
- package/dist/esm/cli/config.js.map +1 -1
- package/dist/esm/cli/index.d.ts +1 -0
- package/dist/esm/cli/index.js +1 -0
- package/dist/esm/cli/index.js.map +1 -1
- package/dist/esm/cli/instance-command.d.ts +1 -0
- package/dist/esm/cli/oauth-command.d.ts +21 -1
- package/dist/esm/cli/oauth-command.js +52 -7
- package/dist/esm/cli/oauth-command.js.map +1 -1
- package/dist/esm/cli/ods-command.d.ts +5 -1
- package/dist/esm/cli/ods-command.js +10 -4
- package/dist/esm/cli/ods-command.js.map +1 -1
- package/dist/esm/cli/webdav-command.d.ts +1 -0
- package/dist/esm/clients/am-api.d.ts +491 -0
- package/dist/esm/clients/am-api.js +944 -0
- package/dist/esm/clients/am-api.js.map +1 -0
- package/dist/esm/clients/am-apiclients-api.generated.d.ts +803 -0
- package/dist/esm/clients/am-apiclients-api.generated.js +6 -0
- package/dist/esm/clients/am-apiclients-api.generated.js.map +1 -0
- package/dist/esm/clients/am-roles-api.generated.d.ts +298 -0
- package/dist/esm/clients/am-roles-api.generated.js +6 -0
- package/dist/esm/clients/am-roles-api.generated.js.map +1 -0
- package/dist/esm/clients/am-users-api.generated.d.ts +891 -0
- package/dist/esm/clients/am-users-api.generated.js +6 -0
- package/dist/esm/clients/am-users-api.generated.js.map +1 -0
- package/dist/esm/clients/index.d.ts +4 -2
- package/dist/esm/clients/index.js +2 -1
- package/dist/esm/clients/index.js.map +1 -1
- package/dist/esm/clients/middleware-registry.d.ts +1 -1
- package/dist/esm/clients/middleware-registry.js.map +1 -1
- package/dist/esm/clients/middleware.d.ts +49 -2
- package/dist/esm/clients/middleware.js +214 -2
- package/dist/esm/clients/middleware.js.map +1 -1
- package/dist/esm/clients/mrt.js +5 -1
- package/dist/esm/clients/mrt.js.map +1 -1
- package/dist/esm/config/dw-json.d.ts +104 -33
- package/dist/esm/config/dw-json.js +167 -2
- package/dist/esm/config/dw-json.js.map +1 -1
- package/dist/esm/config/index.d.ts +6 -4
- package/dist/esm/config/index.js +6 -2
- package/dist/esm/config/index.js.map +1 -1
- package/dist/esm/config/instance-manager.d.ts +97 -0
- package/dist/esm/config/instance-manager.js +166 -0
- package/dist/esm/config/instance-manager.js.map +1 -0
- package/dist/esm/config/mapping.d.ts +63 -5
- package/dist/esm/config/mapping.js +165 -20
- package/dist/esm/config/mapping.js.map +1 -1
- package/dist/esm/config/sources/dw-json-source.d.ts +17 -1
- package/dist/esm/config/sources/dw-json-source.js +70 -3
- package/dist/esm/config/sources/dw-json-source.js.map +1 -1
- package/dist/esm/config/sources/package-json-source.js +6 -3
- package/dist/esm/config/sources/package-json-source.js.map +1 -1
- package/dist/esm/config/types.d.ts +72 -0
- package/dist/esm/defaults.d.ts +6 -0
- package/dist/esm/defaults.js +6 -0
- package/dist/esm/defaults.js.map +1 -1
- package/dist/esm/i18n/index.js +3 -0
- package/dist/esm/i18n/index.js.map +1 -1
- package/dist/esm/index.d.ts +8 -4
- package/dist/esm/index.js +9 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/logging/logger.js +13 -1
- package/dist/esm/logging/logger.js.map +1 -1
- package/dist/esm/operations/content/asset-query.d.ts +22 -0
- package/dist/esm/operations/content/asset-query.js +77 -0
- package/dist/esm/operations/content/asset-query.js.map +1 -0
- package/dist/esm/operations/content/export.d.ts +57 -0
- package/dist/esm/operations/content/export.js +224 -0
- package/dist/esm/operations/content/export.js.map +1 -0
- package/dist/esm/operations/content/index.d.ts +43 -0
- package/dist/esm/operations/content/index.js +48 -0
- package/dist/esm/operations/content/index.js.map +1 -0
- package/dist/esm/operations/content/library.d.ts +137 -0
- package/dist/esm/operations/content/library.js +392 -0
- package/dist/esm/operations/content/library.js.map +1 -0
- package/dist/esm/operations/content/types.d.ts +144 -0
- package/dist/esm/operations/content/types.js +7 -0
- package/dist/esm/operations/content/types.js.map +1 -0
- package/dist/esm/operations/mrt/b2c-config.js +19 -4
- package/dist/esm/operations/mrt/b2c-config.js.map +1 -1
- package/dist/esm/operations/mrt/index.d.ts +2 -0
- package/dist/esm/operations/mrt/index.js +2 -0
- package/dist/esm/operations/mrt/index.js.map +1 -1
- package/dist/esm/operations/mrt/tail-logs.d.ts +130 -0
- package/dist/esm/operations/mrt/tail-logs.js +223 -0
- package/dist/esm/operations/mrt/tail-logs.js.map +1 -0
- package/dist/esm/operations/ods/index.d.ts +2 -0
- package/dist/esm/operations/ods/index.js +1 -0
- package/dist/esm/operations/ods/index.js.map +1 -1
- package/dist/esm/operations/ods/wait-for-sandbox.d.ts +64 -0
- package/dist/esm/operations/ods/wait-for-sandbox.js +114 -0
- package/dist/esm/operations/ods/wait-for-sandbox.js.map +1 -0
- package/dist/esm/operations/orgs/index.d.ts +74 -0
- package/dist/esm/operations/orgs/index.js +33 -0
- package/dist/esm/operations/orgs/index.js.map +1 -0
- package/dist/esm/operations/roles/index.d.ts +43 -0
- package/dist/esm/operations/roles/index.js +48 -0
- package/dist/esm/operations/roles/index.js.map +1 -0
- package/dist/esm/operations/users/index.d.ts +143 -0
- package/dist/esm/operations/users/index.js +141 -0
- package/dist/esm/operations/users/index.js.map +1 -0
- package/dist/esm/scaffold/engine.d.ts +68 -0
- package/dist/esm/scaffold/engine.js +149 -0
- package/dist/esm/scaffold/engine.js.map +1 -0
- package/dist/esm/scaffold/executor.d.ts +36 -0
- package/dist/esm/scaffold/executor.js +285 -0
- package/dist/esm/scaffold/executor.js.map +1 -0
- package/dist/esm/scaffold/index.d.ts +74 -0
- package/dist/esm/scaffold/index.js +23 -0
- package/dist/esm/scaffold/index.js.map +1 -0
- package/dist/esm/scaffold/merge.d.ts +56 -0
- package/dist/esm/scaffold/merge.js +183 -0
- package/dist/esm/scaffold/merge.js.map +1 -0
- package/dist/esm/scaffold/parameter-resolver.d.ts +86 -0
- package/dist/esm/scaffold/parameter-resolver.js +179 -0
- package/dist/esm/scaffold/parameter-resolver.js.map +1 -0
- package/dist/esm/scaffold/registry.d.ts +45 -0
- package/dist/esm/scaffold/registry.js +219 -0
- package/dist/esm/scaffold/registry.js.map +1 -0
- package/dist/esm/scaffold/sources.d.ts +45 -0
- package/dist/esm/scaffold/sources.js +113 -0
- package/dist/esm/scaffold/sources.js.map +1 -0
- package/dist/esm/scaffold/types.d.ts +280 -0
- package/dist/esm/scaffold/types.js +14 -0
- package/dist/esm/scaffold/types.js.map +1 -0
- package/dist/esm/scaffold/validation.d.ts +81 -0
- package/dist/esm/scaffold/validation.js +250 -0
- package/dist/esm/scaffold/validation.js.map +1 -0
- package/dist/esm/scaffold/validators.d.ts +33 -0
- package/dist/esm/scaffold/validators.js +334 -0
- package/dist/esm/scaffold/validators.js.map +1 -0
- package/dist/esm/telemetry/index.d.ts +26 -0
- package/dist/esm/telemetry/index.js +32 -0
- package/dist/esm/telemetry/index.js.map +1 -0
- package/dist/esm/telemetry/telemetry.d.ts +90 -0
- package/dist/esm/telemetry/telemetry.js +283 -0
- package/dist/esm/telemetry/telemetry.js.map +1 -0
- package/dist/esm/telemetry/types.d.ts +62 -0
- package/dist/esm/telemetry/types.js +7 -0
- package/dist/esm/telemetry/types.js.map +1 -0
- package/package.json +86 -17
- package/specs/am-apiclients-api-v1.yaml +965 -0
- package/specs/am-roles-api-v1.yaml +316 -0
- package/specs/am-users-api-v1.yaml +1102 -0
package/dist/cjs/index.js
CHANGED
|
@@ -13,7 +13,7 @@ export { BasicAuthStrategy, OAuthStrategy, ImplicitOAuthStrategy, ApiKeyStrategy
|
|
|
13
13
|
// Context Layer - Instance
|
|
14
14
|
export { B2CInstance } from './instance/index.js';
|
|
15
15
|
// Clients
|
|
16
|
-
export { WebDavClient, createOcapiClient, createAuthMiddleware, createExtraParamsMiddleware, createSlasClient, createOdsClient, createCustomApisClient, createCdnZonesClient, toOrganizationId, toTenantId, buildTenantScope, getApiErrorMessage, ORGANIZATION_ID_PREFIX, SCAPI_TENANT_SCOPE_PREFIX, CUSTOM_APIS_DEFAULT_SCOPES, CDN_ZONES_READ_SCOPES, CDN_ZONES_RW_SCOPES, } from './clients/index.js';
|
|
16
|
+
export { WebDavClient, createOcapiClient, createAuthMiddleware, createExtraParamsMiddleware, createSlasClient, createOdsClient, createCustomApisClient, createAccountManagerUsersClient, createAccountManagerRolesClient, createAccountManagerApiClientsClient, createAccountManagerOrgsClient, createCdnZonesClient, toOrganizationId, toTenantId, buildTenantScope, getApiErrorMessage, isValidRoleTenantFilter, ORGANIZATION_ID_PREFIX, ROLE_TENANT_FILTER_PATTERN, SCAPI_TENANT_SCOPE_PREFIX, CUSTOM_APIS_DEFAULT_SCOPES, CDN_ZONES_READ_SCOPES, CDN_ZONES_RW_SCOPES, } from './clients/index.js';
|
|
17
17
|
// Operations - Code
|
|
18
18
|
export { findCartridges, listCodeVersions, getActiveCodeVersion, activateCodeVersion, reloadCodeVersion, deleteCodeVersion, createCodeVersion, findAndDeployCartridges, uploadCartridges, deleteCartridges, watchCartridges, } from './operations/code/index.js';
|
|
19
19
|
// Operations - Jobs
|
|
@@ -21,9 +21,15 @@ export { executeJob, getJobExecution, waitForJob, searchJobExecutions, findRunni
|
|
|
21
21
|
// Docs - Documentation search
|
|
22
22
|
export { searchDocs, readDoc, readDocByQuery, listDocs, loadSearchIndex, listSchemas, readSchema, readSchemaByQuery, searchSchemas, downloadDocs, } from './docs/index.js';
|
|
23
23
|
// Operations - ODS
|
|
24
|
-
export { isUuid, isFriendlySandboxId, parseFriendlySandboxId, resolveSandboxId, SandboxNotFoundError, } from './operations/ods/index.js';
|
|
24
|
+
export { isUuid, isFriendlySandboxId, parseFriendlySandboxId, resolveSandboxId, SandboxNotFoundError, waitForSandbox, SandboxPollingTimeoutError, SandboxPollingError, SandboxTerminalStateError, } from './operations/ods/index.js';
|
|
25
|
+
// Operations - Users
|
|
26
|
+
export { getUser, getUserByLogin, listUsers, createUser, updateUser, deleteUser, purgeUser, resetUser, grantRole, revokeRole, } from './operations/users/index.js';
|
|
27
|
+
// Operations - Roles
|
|
28
|
+
export { getRole, listRoles } from './operations/roles/index.js';
|
|
29
|
+
// Operations - Organizations
|
|
30
|
+
export { getOrg, getOrgByName, listOrgs } from './operations/orgs/index.js';
|
|
25
31
|
// Defaults
|
|
26
|
-
export { DEFAULT_ACCOUNT_MANAGER_HOST, DEFAULT_ODS_HOST } from './defaults.js';
|
|
32
|
+
export { DEFAULT_ACCOUNT_MANAGER_HOST, DEFAULT_ODS_HOST, DEFAULT_PUBLIC_CLIENT_ID } from './defaults.js';
|
|
27
33
|
// Version info
|
|
28
34
|
export { SDK_NAME, SDK_VERSION, SDK_USER_AGENT } from './version.js';
|
|
29
35
|
//# sourceMappingURL=index.js.map
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,EAAC,MAAM,oBAAoB,CAAC;AAG7G,OAAO;AACP,OAAO,EAAC,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAGlH,SAAS;AACT,OAAO,EAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,EAAC,MAAM,mBAAmB,CAAC;AAe9G,yCAAyC;AACzC,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAiBzB,2BAA2B;AAC3B,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAGhD,UAAU;AACV,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,oBAAoB,EACpB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,sBAAsB,EACtB,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH,OAAO,EAAC,YAAY,EAAE,eAAe,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,EAAC,MAAM,oBAAoB,CAAC;AAG7G,OAAO;AACP,OAAO,EAAC,CAAC,EAAE,WAAW,EAAE,WAAW,EAAE,eAAe,EAAE,oBAAoB,EAAE,aAAa,EAAC,MAAM,iBAAiB,CAAC;AAGlH,SAAS;AACT,OAAO,EAAC,UAAU,EAAE,UAAU,EAAE,aAAa,EAAE,cAAc,EAAE,oBAAoB,EAAC,MAAM,mBAAmB,CAAC;AAe9G,yCAAyC;AACzC,OAAO,EACL,iBAAiB,EACjB,aAAa,EACb,qBAAqB,EACrB,cAAc,EACd,SAAS,EACT,mBAAmB,EACnB,yBAAyB,EACzB,gBAAgB,GACjB,MAAM,iBAAiB,CAAC;AAiBzB,2BAA2B;AAC3B,OAAO,EAAC,WAAW,EAAC,MAAM,qBAAqB,CAAC;AAGhD,UAAU;AACV,OAAO,EACL,YAAY,EACZ,iBAAiB,EACjB,oBAAoB,EACpB,2BAA2B,EAC3B,gBAAgB,EAChB,eAAe,EACf,sBAAsB,EACtB,+BAA+B,EAC/B,+BAA+B,EAC/B,oCAAoC,EACpC,8BAA8B,EAC9B,oBAAoB,EACpB,gBAAgB,EAChB,UAAU,EACV,gBAAgB,EAChB,kBAAkB,EAClB,uBAAuB,EACvB,sBAAsB,EACtB,0BAA0B,EAC1B,yBAAyB,EACzB,0BAA0B,EAC1B,qBAAqB,EACrB,mBAAmB,GACpB,MAAM,oBAAoB,CAAC;AAiE5B,oBAAoB;AACpB,OAAO,EACL,cAAc,EACd,gBAAgB,EAChB,oBAAoB,EACpB,mBAAmB,EACnB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,EACvB,gBAAgB,EAChB,gBAAgB,EAChB,eAAe,GAChB,MAAM,4BAA4B,CAAC;AAYpC,oBAAoB;AACpB,OAAO,EACL,UAAU,EACV,eAAe,EACf,UAAU,EACV,mBAAmB,EACnB,uBAAuB,EACvB,SAAS,EACT,kBAAkB,EAClB,iBAAiB,EACjB,iBAAiB,EACjB,iBAAiB,EACjB,uBAAuB,GACxB,MAAM,4BAA4B,CAAC;AAmBpC,8BAA8B;AAC9B,OAAO,EACL,UAAU,EACV,OAAO,EACP,cAAc,EACd,QAAQ,EACR,eAAe,EACf,WAAW,EACX,UAAU,EACV,iBAAiB,EACjB,aAAa,EACb,YAAY,GACb,MAAM,iBAAiB,CAAC;AAYzB,mBAAmB;AACnB,OAAO,EACL,MAAM,EACN,mBAAmB,EACnB,sBAAsB,EACtB,gBAAgB,EAChB,oBAAoB,EACpB,cAAc,EACd,0BAA0B,EAC1B,mBAAmB,EACnB,yBAAyB,GAC1B,MAAM,2BAA2B,CAAC;AAInC,qBAAqB;AACrB,OAAO,EACL,OAAO,EACP,cAAc,EACd,SAAS,EACT,UAAU,EACV,UAAU,EACV,UAAU,EACV,SAAS,EACT,SAAS,EACT,SAAS,EACT,UAAU,GACX,MAAM,6BAA6B,CAAC;AAErC,qBAAqB;AACrB,OAAO,EAAC,OAAO,EAAE,SAAS,EAAC,MAAM,6BAA6B,CAAC;AAE/D,6BAA6B;AAC7B,OAAO,EAAC,MAAM,EAAE,YAAY,EAAE,QAAQ,EAAC,MAAM,4BAA4B,CAAC;AAE1E,WAAW;AACX,OAAO,EAAC,4BAA4B,EAAE,gBAAgB,EAAE,wBAAwB,EAAC,MAAM,eAAe,CAAC;AAEvG,eAAe;AACf,OAAO,EAAC,QAAQ,EAAE,WAAW,EAAE,cAAc,EAAC,MAAM,cAAc,CAAC"}
|
|
@@ -6,6 +6,7 @@
|
|
|
6
6
|
/**
|
|
7
7
|
* Logger using pino with pretty printing by default.
|
|
8
8
|
*/
|
|
9
|
+
import { Writable } from 'node:stream';
|
|
9
10
|
import pino from 'pino';
|
|
10
11
|
import pretty from 'pino-pretty';
|
|
11
12
|
const REDACT_FIELDS = [
|
|
@@ -54,6 +55,17 @@ function censor(value, path) {
|
|
|
54
55
|
}
|
|
55
56
|
return 'REDACTED';
|
|
56
57
|
}
|
|
58
|
+
/** Wrap a minimal LogDestination in a Node.js Writable so pino-pretty's transport pipeline works. */
|
|
59
|
+
function toWritable(dest) {
|
|
60
|
+
if (dest instanceof Writable)
|
|
61
|
+
return dest;
|
|
62
|
+
return new Writable({
|
|
63
|
+
write(chunk, _encoding, callback) {
|
|
64
|
+
dest.write(chunk);
|
|
65
|
+
callback();
|
|
66
|
+
},
|
|
67
|
+
});
|
|
68
|
+
}
|
|
57
69
|
let globalLogger = null;
|
|
58
70
|
let globalOptions = { level: 'silent' };
|
|
59
71
|
function createPinoLogger(options) {
|
|
@@ -80,7 +92,7 @@ function createPinoLogger(options) {
|
|
|
80
92
|
}
|
|
81
93
|
const isVerbose = level === 'debug' || level === 'trace';
|
|
82
94
|
const prettyStream = pretty({
|
|
83
|
-
destination: options.destination,
|
|
95
|
+
destination: toWritable(options.destination),
|
|
84
96
|
sync: true,
|
|
85
97
|
colorize,
|
|
86
98
|
ignore: 'pid,hostname' + (isVerbose ? '' : ',time'),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/logging/logger.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"logger.js","sourceRoot":"","sources":["../../../src/logging/logger.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Extract static asset paths from component JSON data using dot-notation queries.
|
|
3
|
+
*
|
|
4
|
+
* Supports `*` as a wildcard segment to traverse arrays, allowing extraction
|
|
5
|
+
* from repeated structures like `banners.*.image.src`.
|
|
6
|
+
*
|
|
7
|
+
* @param data - Parsed JSON data from a component's `<data>` element
|
|
8
|
+
* @param queries - Dot-notation paths to extract (e.g. `['image.path', 'slides.*.image.src']`)
|
|
9
|
+
* @returns Array of extracted asset path strings
|
|
10
|
+
*
|
|
11
|
+
* @example
|
|
12
|
+
* ```typescript
|
|
13
|
+
* const data = { image: { path: '/images/hero.jpg' } };
|
|
14
|
+
* extractAssetPaths(data, ['image.path']);
|
|
15
|
+
* // => ['/images/hero.jpg']
|
|
16
|
+
*
|
|
17
|
+
* const data2 = { slides: [{ image: { src: '/a.jpg' } }, { image: { src: '/b.jpg' } }] };
|
|
18
|
+
* extractAssetPaths(data2, ['slides.*.image.src']);
|
|
19
|
+
* // => ['/a.jpg', '/b.jpg']
|
|
20
|
+
* ```
|
|
21
|
+
*/
|
|
22
|
+
export declare function extractAssetPaths(data: Record<string, unknown>, queries: string[]): string[];
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Extract static asset paths from component JSON data using dot-notation queries.
|
|
8
|
+
*
|
|
9
|
+
* Supports `*` as a wildcard segment to traverse arrays, allowing extraction
|
|
10
|
+
* from repeated structures like `banners.*.image.src`.
|
|
11
|
+
*
|
|
12
|
+
* @param data - Parsed JSON data from a component's `<data>` element
|
|
13
|
+
* @param queries - Dot-notation paths to extract (e.g. `['image.path', 'slides.*.image.src']`)
|
|
14
|
+
* @returns Array of extracted asset path strings
|
|
15
|
+
*
|
|
16
|
+
* @example
|
|
17
|
+
* ```typescript
|
|
18
|
+
* const data = { image: { path: '/images/hero.jpg' } };
|
|
19
|
+
* extractAssetPaths(data, ['image.path']);
|
|
20
|
+
* // => ['/images/hero.jpg']
|
|
21
|
+
*
|
|
22
|
+
* const data2 = { slides: [{ image: { src: '/a.jpg' } }, { image: { src: '/b.jpg' } }] };
|
|
23
|
+
* extractAssetPaths(data2, ['slides.*.image.src']);
|
|
24
|
+
* // => ['/a.jpg', '/b.jpg']
|
|
25
|
+
* ```
|
|
26
|
+
*/
|
|
27
|
+
export function extractAssetPaths(data, queries) {
|
|
28
|
+
const results = [];
|
|
29
|
+
for (const query of queries) {
|
|
30
|
+
const segments = query.split('.');
|
|
31
|
+
collectPaths(data, segments, 0, results);
|
|
32
|
+
}
|
|
33
|
+
return results;
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Recursively walks the data object following the query segments.
|
|
37
|
+
* Wildcard `*` segments iterate over array elements.
|
|
38
|
+
*/
|
|
39
|
+
function collectPaths(current, segments, index, results) {
|
|
40
|
+
if (current == null || typeof current !== 'object') {
|
|
41
|
+
return;
|
|
42
|
+
}
|
|
43
|
+
if (index >= segments.length) {
|
|
44
|
+
return;
|
|
45
|
+
}
|
|
46
|
+
const segment = segments[index];
|
|
47
|
+
const isLast = index === segments.length - 1;
|
|
48
|
+
if (segment === '*') {
|
|
49
|
+
// Wildcard: iterate over array elements (or object values)
|
|
50
|
+
const items = Array.isArray(current) ? current : Object.values(current);
|
|
51
|
+
for (const item of items) {
|
|
52
|
+
if (isLast) {
|
|
53
|
+
if (typeof item === 'string' && item.length > 0) {
|
|
54
|
+
results.push(item);
|
|
55
|
+
}
|
|
56
|
+
}
|
|
57
|
+
else {
|
|
58
|
+
collectPaths(item, segments, index + 1, results);
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
else {
|
|
63
|
+
const value = current[segment];
|
|
64
|
+
if (value === undefined || value === null) {
|
|
65
|
+
return;
|
|
66
|
+
}
|
|
67
|
+
if (isLast) {
|
|
68
|
+
if (typeof value === 'string' && value.length > 0) {
|
|
69
|
+
results.push(value);
|
|
70
|
+
}
|
|
71
|
+
}
|
|
72
|
+
else {
|
|
73
|
+
collectPaths(value, segments, index + 1, results);
|
|
74
|
+
}
|
|
75
|
+
}
|
|
76
|
+
}
|
|
77
|
+
//# sourceMappingURL=asset-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asset-query.js","sourceRoot":"","sources":["../../../../src/operations/content/asset-query.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,MAAM,UAAU,iBAAiB,CAAC,IAA6B,EAAE,OAAiB;IAChF,MAAM,OAAO,GAAa,EAAE,CAAC;IAE7B,KAAK,MAAM,KAAK,IAAI,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAClC,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,CAAC,EAAE,OAAO,CAAC,CAAC;IAC3C,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC;AAED;;;GAGG;AACH,SAAS,YAAY,CAAC,OAAgB,EAAE,QAAkB,EAAE,KAAa,EAAE,OAAiB;IAC1F,IAAI,OAAO,IAAI,IAAI,IAAI,OAAO,OAAO,KAAK,QAAQ,EAAE,CAAC;QACnD,OAAO;IACT,CAAC;IAED,IAAI,KAAK,IAAI,QAAQ,CAAC,MAAM,EAAE,CAAC;QAC7B,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAChC,MAAM,MAAM,GAAG,KAAK,KAAK,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC;IAE7C,IAAI,OAAO,KAAK,GAAG,EAAE,CAAC;QACpB,2DAA2D;QAC3D,MAAM,KAAK,GAAG,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,MAAM,CAAC,OAAkC,CAAC,CAAC;QACnG,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,IAAI,MAAM,EAAE,CAAC;gBACX,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChD,OAAO,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;gBACrB,CAAC;YACH,CAAC;iBAAM,CAAC;gBACN,YAAY,CAAC,IAAI,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;YACnD,CAAC;QACH,CAAC;IACH,CAAC;SAAM,CAAC;QACN,MAAM,KAAK,GAAI,OAAmC,CAAC,OAAO,CAAC,CAAC;QAC5D,IAAI,KAAK,KAAK,SAAS,IAAI,KAAK,KAAK,IAAI,EAAE,CAAC;YAC1C,OAAO;QACT,CAAC;QAED,IAAI,MAAM,EAAE,CAAC;YACX,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;gBAClD,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;YACtB,CAAC;QACH,CAAC;aAAM,CAAC;YACN,YAAY,CAAC,KAAK,EAAE,QAAQ,EAAE,KAAK,GAAG,CAAC,EAAE,OAAO,CAAC,CAAC;QACpD,CAAC;IACH,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1,57 @@
|
|
|
1
|
+
import type { B2CInstance } from '../../instance/index.js';
|
|
2
|
+
import type { FetchContentLibraryOptions, FetchContentLibraryResult, ContentExportOptions, ContentExportResult } from './types.js';
|
|
3
|
+
/**
|
|
4
|
+
* Fetch and parse a content library from an instance (or local file).
|
|
5
|
+
*
|
|
6
|
+
* Returns the parsed Library and optionally the raw archive data.
|
|
7
|
+
* No filesystem side effects.
|
|
8
|
+
*
|
|
9
|
+
* @param instance - B2C instance to fetch from
|
|
10
|
+
* @param libraryId - Library ID (or site ID if isSiteLibrary is true)
|
|
11
|
+
* @param options - Fetch options
|
|
12
|
+
* @returns Parsed library and optional archive data
|
|
13
|
+
*
|
|
14
|
+
* @example
|
|
15
|
+
* ```typescript
|
|
16
|
+
* // Fetch from instance
|
|
17
|
+
* const { library } = await fetchContentLibrary(instance, 'SharedLibrary');
|
|
18
|
+
*
|
|
19
|
+
* // Filter and traverse
|
|
20
|
+
* library.filter(n => n.id === 'homepage');
|
|
21
|
+
* const xml = await library.toXMLString({ traverseHidden: false });
|
|
22
|
+
*
|
|
23
|
+
* // Use local file instead
|
|
24
|
+
* const { library } = await fetchContentLibrary(instance, 'SharedLibrary', {
|
|
25
|
+
* libraryFile: './library.xml'
|
|
26
|
+
* });
|
|
27
|
+
* ```
|
|
28
|
+
*/
|
|
29
|
+
export declare function fetchContentLibrary(instance: B2CInstance, libraryId: string, options?: FetchContentLibraryOptions): Promise<FetchContentLibraryResult>;
|
|
30
|
+
/**
|
|
31
|
+
* Export specific pages (with component trees and assets) to a local directory.
|
|
32
|
+
*
|
|
33
|
+
* This is a convenience function that:
|
|
34
|
+
* 1. Fetches/parses the library via {@link fetchContentLibrary}
|
|
35
|
+
* 2. Filters by page ID (exact or regex), optionally by folder
|
|
36
|
+
* 3. Downloads static assets via WebDAV (concurrent, with progress)
|
|
37
|
+
* 4. Writes filtered XML and assets to the output directory
|
|
38
|
+
*
|
|
39
|
+
* @param instance - B2C instance
|
|
40
|
+
* @param pageIds - Page content IDs to export
|
|
41
|
+
* @param libraryId - Library ID (or site ID if isSiteLibrary)
|
|
42
|
+
* @param outputPath - Output directory path
|
|
43
|
+
* @param options - Export options
|
|
44
|
+
* @returns Export result with statistics
|
|
45
|
+
*
|
|
46
|
+
* @example
|
|
47
|
+
* ```typescript
|
|
48
|
+
* const result = await exportContent(
|
|
49
|
+
* instance,
|
|
50
|
+
* ['homepage', 'about-us'],
|
|
51
|
+
* 'SharedLibrary',
|
|
52
|
+
* './export',
|
|
53
|
+
* );
|
|
54
|
+
* console.log(`Exported ${result.pageCount} pages, ${result.componentCount} components`);
|
|
55
|
+
* ```
|
|
56
|
+
*/
|
|
57
|
+
export declare function exportContent(instance: B2CInstance, pageIds: string[], libraryId: string, outputPath: string, options?: ContentExportOptions): Promise<ContentExportResult>;
|
|
@@ -0,0 +1,224 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
import * as fs from 'node:fs';
|
|
7
|
+
import * as path from 'node:path';
|
|
8
|
+
import JSZip from 'jszip';
|
|
9
|
+
import { getLogger } from '../../logging/logger.js';
|
|
10
|
+
import { siteArchiveExport } from '../jobs/site-archive.js';
|
|
11
|
+
import { Library } from './library.js';
|
|
12
|
+
/**
|
|
13
|
+
* Fetch and parse a content library from an instance (or local file).
|
|
14
|
+
*
|
|
15
|
+
* Returns the parsed Library and optionally the raw archive data.
|
|
16
|
+
* No filesystem side effects.
|
|
17
|
+
*
|
|
18
|
+
* @param instance - B2C instance to fetch from
|
|
19
|
+
* @param libraryId - Library ID (or site ID if isSiteLibrary is true)
|
|
20
|
+
* @param options - Fetch options
|
|
21
|
+
* @returns Parsed library and optional archive data
|
|
22
|
+
*
|
|
23
|
+
* @example
|
|
24
|
+
* ```typescript
|
|
25
|
+
* // Fetch from instance
|
|
26
|
+
* const { library } = await fetchContentLibrary(instance, 'SharedLibrary');
|
|
27
|
+
*
|
|
28
|
+
* // Filter and traverse
|
|
29
|
+
* library.filter(n => n.id === 'homepage');
|
|
30
|
+
* const xml = await library.toXMLString({ traverseHidden: false });
|
|
31
|
+
*
|
|
32
|
+
* // Use local file instead
|
|
33
|
+
* const { library } = await fetchContentLibrary(instance, 'SharedLibrary', {
|
|
34
|
+
* libraryFile: './library.xml'
|
|
35
|
+
* });
|
|
36
|
+
* ```
|
|
37
|
+
*/
|
|
38
|
+
export async function fetchContentLibrary(instance, libraryId, options = {}) {
|
|
39
|
+
const logger = getLogger();
|
|
40
|
+
const { libraryFile, isSiteLibrary = false, assetQuery = ['image.path'], keepOrphans = false, waitOptions } = options;
|
|
41
|
+
const libraryEntry = isSiteLibrary ? `sites/${libraryId}/library/library.xml` : `libraries/${libraryId}/library.xml`;
|
|
42
|
+
let libraryXML;
|
|
43
|
+
let archiveData;
|
|
44
|
+
if (libraryFile) {
|
|
45
|
+
logger.info({ libraryFile }, `Reading library from local file: ${libraryFile}`);
|
|
46
|
+
libraryXML = await fs.promises.readFile(libraryFile, 'utf8');
|
|
47
|
+
}
|
|
48
|
+
else {
|
|
49
|
+
logger.info({ libraryId, isSiteLibrary, hostname: instance.config.hostname }, `Exporting library ${libraryId} from ${instance.config.hostname}...`);
|
|
50
|
+
const dataUnits = isSiteLibrary ? { sites: { [libraryId]: { content: true } } } : { libraries: { [libraryId]: true } };
|
|
51
|
+
const result = await siteArchiveExport(instance, dataUnits, { waitOptions });
|
|
52
|
+
if (!result.data) {
|
|
53
|
+
throw new Error('No archive data returned from export');
|
|
54
|
+
}
|
|
55
|
+
archiveData = result.data;
|
|
56
|
+
const zip = await JSZip.loadAsync(result.data);
|
|
57
|
+
// Find the library XML in the archive (it's nested under a timestamped directory)
|
|
58
|
+
let libraryFile_ = null;
|
|
59
|
+
for (const [filePath, entry] of Object.entries(zip.files)) {
|
|
60
|
+
if (filePath.endsWith(libraryEntry)) {
|
|
61
|
+
libraryFile_ = entry;
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
if (!libraryFile_) {
|
|
66
|
+
throw new Error(`Library ${libraryId} not found in archive; for non-shared libraries use the --site-library option`);
|
|
67
|
+
}
|
|
68
|
+
libraryXML = await libraryFile_.async('string');
|
|
69
|
+
}
|
|
70
|
+
logger.debug('Parsing library content...');
|
|
71
|
+
const library = await Library.parse(libraryXML, { assetQuery, keepOrphans });
|
|
72
|
+
return { library, archiveData };
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Export specific pages (with component trees and assets) to a local directory.
|
|
76
|
+
*
|
|
77
|
+
* This is a convenience function that:
|
|
78
|
+
* 1. Fetches/parses the library via {@link fetchContentLibrary}
|
|
79
|
+
* 2. Filters by page ID (exact or regex), optionally by folder
|
|
80
|
+
* 3. Downloads static assets via WebDAV (concurrent, with progress)
|
|
81
|
+
* 4. Writes filtered XML and assets to the output directory
|
|
82
|
+
*
|
|
83
|
+
* @param instance - B2C instance
|
|
84
|
+
* @param pageIds - Page content IDs to export
|
|
85
|
+
* @param libraryId - Library ID (or site ID if isSiteLibrary)
|
|
86
|
+
* @param outputPath - Output directory path
|
|
87
|
+
* @param options - Export options
|
|
88
|
+
* @returns Export result with statistics
|
|
89
|
+
*
|
|
90
|
+
* @example
|
|
91
|
+
* ```typescript
|
|
92
|
+
* const result = await exportContent(
|
|
93
|
+
* instance,
|
|
94
|
+
* ['homepage', 'about-us'],
|
|
95
|
+
* 'SharedLibrary',
|
|
96
|
+
* './export',
|
|
97
|
+
* );
|
|
98
|
+
* console.log(`Exported ${result.pageCount} pages, ${result.componentCount} components`);
|
|
99
|
+
* ```
|
|
100
|
+
*/
|
|
101
|
+
export async function exportContent(instance, pageIds, libraryId, outputPath, options = {}) {
|
|
102
|
+
const logger = getLogger();
|
|
103
|
+
const { isSiteLibrary = false, assetQuery = ['image.path'], libraryFile, offline = false, folders = [], regex = false, keepOrphans = false, waitOptions, onAssetProgress, } = options;
|
|
104
|
+
// Step 1: Fetch and parse library
|
|
105
|
+
const { library } = await fetchContentLibrary(instance, libraryId, {
|
|
106
|
+
libraryFile,
|
|
107
|
+
isSiteLibrary,
|
|
108
|
+
assetQuery,
|
|
109
|
+
keepOrphans,
|
|
110
|
+
waitOptions,
|
|
111
|
+
});
|
|
112
|
+
// Step 2: Build matchers from content IDs
|
|
113
|
+
const matchers = regex ? pageIds.map((p) => new RegExp(p)) : pageIds;
|
|
114
|
+
function matchesId(id) {
|
|
115
|
+
return matchers.some((matcher) => (matcher instanceof RegExp ? matcher.test(id) : id === matcher));
|
|
116
|
+
}
|
|
117
|
+
// Step 3: Filter root children (pages/content) by ID and optionally by folder
|
|
118
|
+
library.filter((node) => {
|
|
119
|
+
if (node.type !== 'PAGE' && node.type !== 'CONTENT') {
|
|
120
|
+
return false;
|
|
121
|
+
}
|
|
122
|
+
if (!matchesId(node.id)) {
|
|
123
|
+
return false;
|
|
124
|
+
}
|
|
125
|
+
// Optional folder filtering
|
|
126
|
+
if (folders.length > 0) {
|
|
127
|
+
const xmlData = node.xml;
|
|
128
|
+
if (!xmlData)
|
|
129
|
+
return false;
|
|
130
|
+
const folderLinks = xmlData['folder-links'];
|
|
131
|
+
const classificationLink = folderLinks?.find((l) => l['classification-link']?.[0]);
|
|
132
|
+
const folderId = classificationLink?.['classification-link']?.[0]?.['$']?.['folder-id'];
|
|
133
|
+
if (!folderId || !folders.includes(folderId)) {
|
|
134
|
+
return false;
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
return true;
|
|
138
|
+
});
|
|
139
|
+
// Step 3b: Promote matching components to root level
|
|
140
|
+
const allNodes = [...library.nodes({ traverseHidden: true, callbackHidden: true })];
|
|
141
|
+
for (const node of allNodes) {
|
|
142
|
+
if (node.type === 'COMPONENT' && matchesId(node.id)) {
|
|
143
|
+
library.promoteToRoot(node);
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
// Step 4: Count pages, content, and components
|
|
147
|
+
let pageCount = 0;
|
|
148
|
+
let contentCount = 0;
|
|
149
|
+
let componentCount = 0;
|
|
150
|
+
library.traverse((node) => {
|
|
151
|
+
if (node.type === 'PAGE')
|
|
152
|
+
pageCount++;
|
|
153
|
+
else if (node.type === 'CONTENT')
|
|
154
|
+
contentCount++;
|
|
155
|
+
else if (node.type === 'COMPONENT')
|
|
156
|
+
componentCount++;
|
|
157
|
+
}, { traverseHidden: false });
|
|
158
|
+
// Step 5: Collect static asset paths
|
|
159
|
+
const filesToDownload = new Set();
|
|
160
|
+
library.traverse((node) => {
|
|
161
|
+
if (node.type === 'STATIC') {
|
|
162
|
+
filesToDownload.add(node.id);
|
|
163
|
+
}
|
|
164
|
+
}, { traverseHidden: false });
|
|
165
|
+
// Step 6: Generate output structure
|
|
166
|
+
const libraryEntry = isSiteLibrary ? `sites/${libraryId}/library/library.xml` : `libraries/${libraryId}/library.xml`;
|
|
167
|
+
const downloadedAssets = [];
|
|
168
|
+
const failedAssets = [];
|
|
169
|
+
// Step 7: Download assets (unless offline)
|
|
170
|
+
if (!offline && filesToDownload.size > 0) {
|
|
171
|
+
logger.info({ count: filesToDownload.size }, `Downloading ${filesToDownload.size} asset(s)...`);
|
|
172
|
+
const assetArray = [...filesToDownload];
|
|
173
|
+
const concurrency = 5;
|
|
174
|
+
// Process assets with limited concurrency
|
|
175
|
+
for (let i = 0; i < assetArray.length; i += concurrency) {
|
|
176
|
+
const batch = assetArray.slice(i, i + concurrency);
|
|
177
|
+
const results = await Promise.allSettled(batch.map(async (filename) => {
|
|
178
|
+
const cleanFilename = filename.startsWith('/') ? filename.slice(1) : filename;
|
|
179
|
+
const webdavPath = isSiteLibrary
|
|
180
|
+
? `Libraries/${libraryId}/default/${cleanFilename}`
|
|
181
|
+
: `Libraries/${libraryId}/default/${cleanFilename}`;
|
|
182
|
+
logger.debug({ filename: cleanFilename }, `Downloading ${cleanFilename}`);
|
|
183
|
+
const data = await instance.webdav.get(webdavPath);
|
|
184
|
+
// Write to output directory
|
|
185
|
+
const outputFilePath = isSiteLibrary
|
|
186
|
+
? path.join(outputPath, 'sites', libraryId, 'library', 'static', 'default', cleanFilename)
|
|
187
|
+
: path.join(outputPath, 'libraries', libraryId, 'static', 'default', cleanFilename);
|
|
188
|
+
await fs.promises.mkdir(path.dirname(outputFilePath), { recursive: true });
|
|
189
|
+
await fs.promises.writeFile(outputFilePath, Buffer.from(data));
|
|
190
|
+
return cleanFilename;
|
|
191
|
+
}));
|
|
192
|
+
for (let j = 0; j < results.length; j++) {
|
|
193
|
+
const result = results[j];
|
|
194
|
+
const filename = batch[j];
|
|
195
|
+
const idx = i + j;
|
|
196
|
+
if (result.status === 'fulfilled') {
|
|
197
|
+
downloadedAssets.push(result.value);
|
|
198
|
+
onAssetProgress?.(filename, idx, assetArray.length, true);
|
|
199
|
+
}
|
|
200
|
+
else {
|
|
201
|
+
const errorMessage = result.reason instanceof Error ? result.reason.message : String(result.reason);
|
|
202
|
+
logger.warn({ filename, error: errorMessage }, `Failed to download asset: ${filename}`);
|
|
203
|
+
failedAssets.push({ path: filename, error: errorMessage });
|
|
204
|
+
onAssetProgress?.(filename, idx, assetArray.length, false);
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
// Step 8: Write filtered library XML
|
|
210
|
+
const xmlString = await library.toXMLString({ traverseHidden: false });
|
|
211
|
+
const xmlOutputPath = path.join(outputPath, libraryEntry);
|
|
212
|
+
await fs.promises.mkdir(path.dirname(xmlOutputPath), { recursive: true });
|
|
213
|
+
await fs.promises.writeFile(xmlOutputPath, xmlString, 'utf8');
|
|
214
|
+
return {
|
|
215
|
+
library,
|
|
216
|
+
outputPath,
|
|
217
|
+
downloadedAssets,
|
|
218
|
+
failedAssets,
|
|
219
|
+
pageCount,
|
|
220
|
+
contentCount,
|
|
221
|
+
componentCount,
|
|
222
|
+
};
|
|
223
|
+
}
|
|
224
|
+
//# sourceMappingURL=export.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"export.js","sourceRoot":"","sources":["../../../../src/operations/content/export.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Content library operations for B2C Commerce.
|
|
3
|
+
*
|
|
4
|
+
* This module provides functions for exporting and manipulating
|
|
5
|
+
* Page Designer content libraries including pages, components, and assets.
|
|
6
|
+
*
|
|
7
|
+
* ## Core Classes
|
|
8
|
+
*
|
|
9
|
+
* - {@link Library} - Parse and manipulate content library trees
|
|
10
|
+
* - {@link LibraryNode} - Individual nodes in the library tree
|
|
11
|
+
*
|
|
12
|
+
* ## Operations
|
|
13
|
+
*
|
|
14
|
+
* - {@link fetchContentLibrary} - Fetch and parse a content library
|
|
15
|
+
* - {@link exportContent} - Export filtered pages with assets to disk
|
|
16
|
+
*
|
|
17
|
+
* ## Utilities
|
|
18
|
+
*
|
|
19
|
+
* - {@link extractAssetPaths} - Extract asset paths from component JSON data
|
|
20
|
+
*
|
|
21
|
+
* ## Usage
|
|
22
|
+
*
|
|
23
|
+
* ```typescript
|
|
24
|
+
* import {
|
|
25
|
+
* Library,
|
|
26
|
+
* fetchContentLibrary,
|
|
27
|
+
* exportContent,
|
|
28
|
+
* } from '@salesforce/b2c-tooling-sdk/operations/content';
|
|
29
|
+
*
|
|
30
|
+
* // Fetch and filter a library
|
|
31
|
+
* const { library } = await fetchContentLibrary(instance, 'SharedLibrary');
|
|
32
|
+
* library.filter(n => n.id === 'homepage');
|
|
33
|
+
*
|
|
34
|
+
* // Or use the high-level export
|
|
35
|
+
* const result = await exportContent(instance, ['homepage'], 'SharedLibrary', './export');
|
|
36
|
+
* ```
|
|
37
|
+
*
|
|
38
|
+
* @module operations/content
|
|
39
|
+
*/
|
|
40
|
+
export { Library, LibraryNode } from './library.js';
|
|
41
|
+
export { extractAssetPaths } from './asset-query.js';
|
|
42
|
+
export { fetchContentLibrary, exportContent } from './export.js';
|
|
43
|
+
export type { ColorizeFn, ContentExportOptions, ContentExportResult, FetchContentLibraryOptions, FetchContentLibraryResult, FilterCallback, LibraryNodeType, LibraryParseOptions, TraverseCallback, TraverseOptions, TreeStringOptions, } from './types.js';
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/*
|
|
2
|
+
* Copyright (c) 2025, Salesforce, Inc.
|
|
3
|
+
* SPDX-License-Identifier: Apache-2
|
|
4
|
+
* For full license text, see the license.txt file in the repo root or http://www.apache.org/licenses/LICENSE-2.0
|
|
5
|
+
*/
|
|
6
|
+
/**
|
|
7
|
+
* Content library operations for B2C Commerce.
|
|
8
|
+
*
|
|
9
|
+
* This module provides functions for exporting and manipulating
|
|
10
|
+
* Page Designer content libraries including pages, components, and assets.
|
|
11
|
+
*
|
|
12
|
+
* ## Core Classes
|
|
13
|
+
*
|
|
14
|
+
* - {@link Library} - Parse and manipulate content library trees
|
|
15
|
+
* - {@link LibraryNode} - Individual nodes in the library tree
|
|
16
|
+
*
|
|
17
|
+
* ## Operations
|
|
18
|
+
*
|
|
19
|
+
* - {@link fetchContentLibrary} - Fetch and parse a content library
|
|
20
|
+
* - {@link exportContent} - Export filtered pages with assets to disk
|
|
21
|
+
*
|
|
22
|
+
* ## Utilities
|
|
23
|
+
*
|
|
24
|
+
* - {@link extractAssetPaths} - Extract asset paths from component JSON data
|
|
25
|
+
*
|
|
26
|
+
* ## Usage
|
|
27
|
+
*
|
|
28
|
+
* ```typescript
|
|
29
|
+
* import {
|
|
30
|
+
* Library,
|
|
31
|
+
* fetchContentLibrary,
|
|
32
|
+
* exportContent,
|
|
33
|
+
* } from '@salesforce/b2c-tooling-sdk/operations/content';
|
|
34
|
+
*
|
|
35
|
+
* // Fetch and filter a library
|
|
36
|
+
* const { library } = await fetchContentLibrary(instance, 'SharedLibrary');
|
|
37
|
+
* library.filter(n => n.id === 'homepage');
|
|
38
|
+
*
|
|
39
|
+
* // Or use the high-level export
|
|
40
|
+
* const result = await exportContent(instance, ['homepage'], 'SharedLibrary', './export');
|
|
41
|
+
* ```
|
|
42
|
+
*
|
|
43
|
+
* @module operations/content
|
|
44
|
+
*/
|
|
45
|
+
export { Library, LibraryNode } from './library.js';
|
|
46
|
+
export { extractAssetPaths } from './asset-query.js';
|
|
47
|
+
export { fetchContentLibrary, exportContent } from './export.js';
|
|
48
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/operations/content/index.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AACH;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAsCG;AAEH,OAAO,EAAC,OAAO,EAAE,WAAW,EAAC,MAAM,cAAc,CAAC;AAElD,OAAO,EAAC,iBAAiB,EAAC,MAAM,kBAAkB,CAAC;AAEnD,OAAO,EAAC,mBAAmB,EAAE,aAAa,EAAC,MAAM,aAAa,CAAC"}
|