@sitecoreai-labs/sitecoreai-cli 0.0.4 → 0.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/AGENTS.md +146 -55
- package/README.md +372 -325
- package/dist/agents/api/agents.d.ts +27 -0
- package/dist/agents/api/agents.js +70 -0
- package/dist/agents/api/catalog.d.ts +8 -0
- package/dist/agents/api/catalog.js +33 -0
- package/dist/agents/api/custom-mcps.d.ts +26 -0
- package/dist/agents/api/custom-mcps.js +53 -0
- package/dist/agents/api/html-templates.d.ts +35 -0
- package/dist/agents/api/html-templates.js +116 -0
- package/dist/agents/api/request.d.ts +28 -0
- package/dist/agents/api/request.js +207 -0
- package/dist/agents/api/runs.d.ts +31 -0
- package/dist/agents/api/runs.js +82 -0
- package/dist/agents/api/schema.d.ts +182 -0
- package/dist/agents/api/schema.js +10 -0
- package/dist/agents/api/schemas.d.ts +37 -0
- package/dist/agents/api/schemas.js +95 -0
- package/dist/agents/api/skills.d.ts +25 -0
- package/dist/agents/api/skills.js +55 -0
- package/dist/agents/api/spaces.d.ts +34 -0
- package/dist/agents/api/spaces.js +72 -0
- package/dist/agents/api/tools.d.ts +4 -0
- package/dist/agents/api/tools.js +18 -0
- package/dist/agents/api/widgets.d.ts +32 -0
- package/dist/agents/api/widgets.js +89 -0
- package/dist/agents/client.d.ts +18 -0
- package/dist/agents/client.js +28 -0
- package/dist/agents/index.d.ts +31 -0
- package/dist/agents/index.js +51 -0
- package/dist/agents/recipe/agent.diff.d.ts +4 -0
- package/dist/agents/recipe/agent.diff.js +55 -0
- package/dist/agents/recipe/agent.kind.d.ts +12 -0
- package/dist/agents/recipe/agent.kind.js +107 -0
- package/dist/agents/recipe/agent.schema.d.ts +26 -0
- package/dist/agents/recipe/agent.schema.js +42 -0
- package/dist/agents/recipe/client.d.ts +4 -0
- package/dist/agents/recipe/client.js +15 -0
- package/dist/agents/recipe/converge.d.ts +11 -0
- package/dist/agents/recipe/converge.js +32 -0
- package/dist/agents/recipe/custom-mcp.kind.d.ts +4 -0
- package/dist/agents/recipe/custom-mcp.kind.js +42 -0
- package/dist/agents/recipe/custom-mcp.schema.d.ts +11 -0
- package/dist/agents/recipe/custom-mcp.schema.js +15 -0
- package/dist/agents/recipe/html-template.kind.d.ts +4 -0
- package/dist/agents/recipe/html-template.kind.js +50 -0
- package/dist/agents/recipe/html-template.schema.d.ts +13 -0
- package/dist/agents/recipe/html-template.schema.js +17 -0
- package/dist/agents/recipe/index.d.ts +43 -0
- package/dist/agents/recipe/index.js +81 -0
- package/dist/agents/recipe/schema.kind.d.ts +4 -0
- package/dist/agents/recipe/schema.kind.js +50 -0
- package/dist/agents/recipe/schema.schema.d.ts +15 -0
- package/dist/agents/recipe/schema.schema.js +21 -0
- package/dist/agents/recipe/skill.kind.d.ts +4 -0
- package/dist/agents/recipe/skill.kind.js +48 -0
- package/dist/agents/recipe/skill.schema.d.ts +14 -0
- package/dist/agents/recipe/skill.schema.js +18 -0
- package/dist/agents/recipe/widget.kind.d.ts +4 -0
- package/dist/agents/recipe/widget.kind.js +49 -0
- package/dist/agents/recipe/widget.schema.d.ts +20 -0
- package/dist/agents/recipe/widget.schema.js +23 -0
- package/dist/agents/session/index.d.ts +50 -0
- package/dist/agents/session/index.js +127 -0
- package/dist/agents/session/playwright-login.d.ts +11 -0
- package/dist/agents/session/playwright-login.js +169 -0
- package/dist/agents/session/types.d.ts +72 -0
- package/dist/agents/session/types.js +26 -0
- package/dist/agents/tasks/agent.d.ts +27 -0
- package/dist/agents/tasks/agent.js +183 -0
- package/dist/agents/tasks/index.d.ts +14 -0
- package/dist/agents/tasks/index.js +30 -0
- package/dist/agents/tasks/resources.d.ts +39 -0
- package/dist/agents/tasks/resources.js +219 -0
- package/dist/agents/tasks/session.d.ts +6 -0
- package/dist/agents/tasks/session.js +63 -0
- package/dist/agents/tasks/shared.d.ts +38 -0
- package/dist/agents/tasks/shared.js +72 -0
- package/dist/agents/tasks/space.d.ts +12 -0
- package/dist/agents/tasks/space.js +55 -0
- package/dist/brand/api/auth.d.ts +58 -0
- package/dist/brand/api/auth.js +141 -0
- package/dist/brand/api/client.d.ts +40 -0
- package/dist/brand/api/client.js +83 -0
- package/dist/brand/api/types.d.ts +119 -0
- package/dist/brand/api/types.js +9 -0
- package/dist/brand/credential.d.ts +55 -0
- package/dist/brand/credential.js +87 -0
- package/dist/brand/documents/list.d.ts +85 -0
- package/dist/brand/documents/list.js +53 -0
- package/dist/brand/documents/upload.d.ts +113 -0
- package/dist/brand/documents/upload.js +106 -0
- package/dist/brand/index.d.ts +33 -0
- package/dist/brand/index.js +76 -0
- package/dist/brand/kits/create.d.ts +58 -0
- package/dist/brand/kits/create.js +68 -0
- package/dist/brand/kits/list.d.ts +53 -0
- package/dist/brand/kits/list.js +36 -0
- package/dist/brand/kits/sections.d.ts +156 -0
- package/dist/brand/kits/sections.js +80 -0
- package/dist/brand/pipeline/run.d.ts +58 -0
- package/dist/brand/pipeline/run.js +63 -0
- package/dist/brand/recipe/client.d.ts +4 -0
- package/dist/brand/recipe/client.js +24 -0
- package/dist/brand/recipe/diff.d.ts +4 -0
- package/dist/brand/recipe/diff.js +74 -0
- package/dist/brand/recipe/index.d.ts +10 -0
- package/dist/brand/recipe/index.js +20 -0
- package/dist/brand/recipe/kind.d.ts +4 -0
- package/dist/brand/recipe/kind.js +0 -0
- package/dist/brand/recipe/schema.d.ts +54 -0
- package/dist/brand/recipe/schema.js +59 -0
- package/dist/brand/review/format-json.d.ts +33 -0
- package/dist/brand/review/format-json.js +36 -0
- package/dist/brand/review/format-sarif.d.ts +64 -0
- package/dist/brand/review/format-sarif.js +77 -0
- package/dist/brand/review/format-text.d.ts +24 -0
- package/dist/brand/review/format-text.js +60 -0
- package/dist/brand/review/generate.d.ts +37 -0
- package/dist/brand/review/generate.js +146 -0
- package/dist/brand/review/outcomes.d.ts +43 -0
- package/dist/brand/review/outcomes.js +58 -0
- package/dist/brand/seed.d.ts +81 -0
- package/dist/brand/seed.js +151 -0
- package/dist/brand/tasks/login.d.ts +37 -0
- package/dist/brand/tasks/login.js +192 -0
- package/dist/brand/tasks/review.d.ts +111 -0
- package/dist/brand/tasks/review.js +310 -0
- package/dist/brief/api/brief-types.d.ts +64 -0
- package/dist/brief/api/brief-types.js +103 -0
- package/dist/brief/api/briefs.d.ts +66 -0
- package/dist/brief/api/briefs.js +58 -0
- package/dist/brief/api/comments.d.ts +43 -0
- package/dist/brief/api/comments.js +29 -0
- package/dist/brief/api/request.d.ts +5 -0
- package/dist/brief/api/request.js +83 -0
- package/dist/brief/api/schema.d.ts +158 -0
- package/dist/brief/api/schema.js +18 -0
- package/dist/brief/api/tasks.d.ts +41 -0
- package/dist/brief/api/tasks.js +24 -0
- package/dist/brief/api/types.d.ts +17 -0
- package/dist/brief/api/types.js +21 -0
- package/dist/brief/auth.d.ts +44 -0
- package/dist/brief/auth.js +101 -0
- package/dist/brief/client.d.ts +25 -0
- package/dist/brief/client.js +56 -0
- package/dist/brief/index.d.ts +31 -0
- package/dist/brief/index.js +53 -0
- package/dist/brief/recipe/client.d.ts +4 -0
- package/dist/brief/recipe/client.js +52 -0
- package/dist/brief/recipe/diff.d.ts +4 -0
- package/dist/brief/recipe/diff.js +74 -0
- package/dist/brief/recipe/index.d.ts +10 -0
- package/dist/brief/recipe/index.js +23 -0
- package/dist/brief/recipe/kind.d.ts +4 -0
- package/dist/brief/recipe/kind.js +114 -0
- package/dist/brief/recipe/schema.d.ts +152 -0
- package/dist/brief/recipe/schema.js +99 -0
- package/dist/brief/tasks/index.d.ts +128 -0
- package/dist/brief/tasks/index.js +286 -0
- package/dist/campaigns/api/deliverables.d.ts +37 -0
- package/dist/campaigns/api/deliverables.js +30 -0
- package/dist/campaigns/api/projects.d.ts +49 -0
- package/dist/campaigns/api/projects.js +45 -0
- package/dist/campaigns/api/request.d.ts +5 -0
- package/dist/campaigns/api/request.js +119 -0
- package/dist/campaigns/api/schema.d.ts +144 -0
- package/dist/campaigns/api/schema.js +22 -0
- package/dist/campaigns/api/tasks.d.ts +42 -0
- package/dist/campaigns/api/tasks.js +68 -0
- package/dist/campaigns/api/types.d.ts +17 -0
- package/dist/campaigns/api/types.js +27 -0
- package/dist/campaigns/api/users.d.ts +13 -0
- package/dist/campaigns/api/users.js +16 -0
- package/dist/campaigns/auth.d.ts +19 -0
- package/dist/campaigns/auth.js +86 -0
- package/dist/campaigns/client.d.ts +25 -0
- package/dist/campaigns/client.js +48 -0
- package/dist/campaigns/index.d.ts +29 -0
- package/dist/campaigns/index.js +47 -0
- package/dist/campaigns/recipe/client.d.ts +4 -0
- package/dist/campaigns/recipe/client.js +41 -0
- package/dist/campaigns/recipe/diff.d.ts +4 -0
- package/dist/campaigns/recipe/diff.js +119 -0
- package/dist/campaigns/recipe/index.d.ts +10 -0
- package/dist/campaigns/recipe/index.js +19 -0
- package/dist/campaigns/recipe/kind.d.ts +4 -0
- package/dist/campaigns/recipe/kind.js +217 -0
- package/dist/campaigns/recipe/schema.d.ts +79 -0
- package/dist/campaigns/recipe/schema.js +67 -0
- package/dist/campaigns/tasks/index.d.ts +124 -0
- package/dist/campaigns/tasks/index.js +271 -0
- package/dist/cli.d.ts +0 -1
- package/dist/cli.js +84 -63
- package/dist/commands/agents/index.d.ts +28 -0
- package/dist/commands/agents/index.js +289 -0
- package/dist/commands/agents/sync.d.ts +13 -0
- package/dist/commands/agents/sync.js +139 -0
- package/dist/commands/audit/all.d.ts +2 -0
- package/dist/commands/audit/all.js +26 -0
- package/dist/commands/audit/alt-text-missing.d.ts +2 -0
- package/dist/commands/audit/alt-text-missing.js +19 -0
- package/dist/commands/audit/baseline.d.ts +2 -0
- package/dist/commands/audit/baseline.js +75 -0
- package/dist/commands/audit/broken-images.d.ts +2 -0
- package/dist/commands/audit/broken-images.js +25 -0
- package/dist/commands/audit/broken-links.d.ts +2 -0
- package/dist/commands/audit/broken-links.js +18 -0
- package/dist/commands/audit/datasource-missing.d.ts +2 -0
- package/dist/commands/audit/datasource-missing.js +19 -0
- package/dist/commands/audit/dead-templates.d.ts +2 -0
- package/dist/commands/audit/dead-templates.js +18 -0
- package/dist/commands/audit/duplicates.d.ts +2 -0
- package/dist/commands/audit/duplicates.js +21 -0
- package/dist/commands/audit/empty-items.d.ts +2 -0
- package/dist/commands/audit/empty-items.js +19 -0
- package/dist/commands/audit/empty-links.d.ts +2 -0
- package/dist/commands/audit/empty-links.js +25 -0
- package/dist/commands/audit/empty-roles.d.ts +2 -0
- package/dist/commands/audit/empty-roles.js +18 -0
- package/dist/commands/audit/fallback-drift.d.ts +2 -0
- package/dist/commands/audit/fallback-drift.js +22 -0
- package/dist/commands/audit/find-replace.d.ts +2 -0
- package/dist/commands/audit/find-replace.js +27 -0
- package/dist/commands/audit/heavy-templates.d.ts +2 -0
- package/dist/commands/audit/heavy-templates.js +19 -0
- package/dist/commands/audit/history.d.ts +2 -0
- package/dist/commands/audit/history.js +44 -0
- package/dist/commands/audit/index.d.ts +2 -0
- package/dist/commands/audit/index.js +100 -0
- package/dist/commands/audit/language-data.d.ts +2 -0
- package/dist/commands/audit/language-data.js +24 -0
- package/dist/commands/audit/large-fields.d.ts +2 -0
- package/dist/commands/audit/large-fields.js +21 -0
- package/dist/commands/audit/missing-meta.d.ts +2 -0
- package/dist/commands/audit/missing-meta.js +22 -0
- package/dist/commands/audit/orphans.d.ts +2 -0
- package/dist/commands/audit/orphans.js +22 -0
- package/dist/commands/audit/page-design-orphans.d.ts +2 -0
- package/dist/commands/audit/page-design-orphans.js +18 -0
- package/dist/commands/audit/personalization-broken.d.ts +2 -0
- package/dist/commands/audit/personalization-broken.js +18 -0
- package/dist/commands/audit/references.d.ts +2 -0
- package/dist/commands/audit/references.js +27 -0
- package/dist/commands/audit/role-bloat.d.ts +2 -0
- package/dist/commands/audit/role-bloat.js +19 -0
- package/dist/commands/audit/shared.d.ts +7 -0
- package/dist/commands/audit/shared.js +32 -0
- package/dist/commands/audit/site-residue.d.ts +2 -0
- package/dist/commands/audit/site-residue.js +22 -0
- package/dist/commands/audit/slug-conflicts.d.ts +2 -0
- package/dist/commands/audit/slug-conflicts.js +20 -0
- package/dist/commands/audit/stale-content.d.ts +2 -0
- package/dist/commands/audit/stale-content.js +21 -0
- package/dist/commands/audit/stale-users.d.ts +2 -0
- package/dist/commands/audit/stale-users.js +21 -0
- package/dist/commands/audit/stale-workflow.d.ts +2 -0
- package/dist/commands/audit/stale-workflow.js +19 -0
- package/dist/commands/audit/suite.d.ts +2 -0
- package/dist/commands/audit/suite.js +31 -0
- package/dist/commands/audit/template-dependencies.d.ts +2 -0
- package/dist/commands/audit/template-dependencies.js +22 -0
- package/dist/commands/audit/translation-coverage.d.ts +2 -0
- package/dist/commands/audit/translation-coverage.js +22 -0
- package/dist/commands/audit/unused-media.d.ts +2 -0
- package/dist/commands/audit/unused-media.js +21 -0
- package/dist/commands/brand/docs.d.ts +9 -0
- package/dist/commands/brand/docs.js +168 -0
- package/dist/commands/brand/index.d.ts +13 -0
- package/dist/commands/brand/index.js +37 -0
- package/dist/commands/brand/ingest-enrich.d.ts +3 -0
- package/dist/commands/brand/ingest-enrich.js +71 -0
- package/dist/commands/brand/kits.d.ts +18 -0
- package/dist/commands/brand/kits.js +361 -0
- package/dist/commands/brand/review.d.ts +13 -0
- package/dist/commands/brand/review.js +65 -0
- package/dist/commands/brand/seed.d.ts +9 -0
- package/dist/commands/brand/seed.js +136 -0
- package/dist/commands/brand/sync.d.ts +11 -0
- package/dist/commands/brand/sync.js +128 -0
- package/dist/commands/brief/comments.d.ts +11 -0
- package/dist/commands/brief/comments.js +55 -0
- package/dist/commands/brief/delete.d.ts +10 -0
- package/dist/commands/brief/delete.js +40 -0
- package/dist/commands/brief/index.d.ts +19 -0
- package/dist/commands/brief/index.js +53 -0
- package/dist/commands/brief/list.d.ts +2 -0
- package/dist/commands/brief/list.js +19 -0
- package/dist/commands/brief/set-status.d.ts +10 -0
- package/dist/commands/brief/set-status.js +33 -0
- package/dist/commands/brief/show.d.ts +2 -0
- package/dist/commands/brief/show.js +19 -0
- package/dist/commands/brief/sync.d.ts +12 -0
- package/dist/commands/brief/sync.js +121 -0
- package/dist/commands/brief/todos.d.ts +9 -0
- package/dist/commands/brief/todos.js +28 -0
- package/dist/commands/brief/types.d.ts +16 -0
- package/dist/commands/brief/types.js +129 -0
- package/dist/commands/campaign/index.d.ts +2 -0
- package/dist/commands/campaign/index.js +309 -0
- package/dist/commands/campaign/sync.d.ts +12 -0
- package/dist/commands/campaign/sync.js +121 -0
- package/dist/commands/cleanup/archive.d.ts +2 -0
- package/dist/commands/cleanup/archive.js +21 -0
- package/dist/commands/cleanup/dead-templates.d.ts +2 -0
- package/dist/commands/cleanup/dead-templates.js +21 -0
- package/dist/commands/cleanup/duplicates.d.ts +2 -0
- package/dist/commands/cleanup/duplicates.js +49 -0
- package/dist/commands/cleanup/empty-folders.d.ts +2 -0
- package/dist/commands/cleanup/empty-folders.js +18 -0
- package/dist/commands/cleanup/field-set.d.ts +2 -0
- package/dist/commands/cleanup/field-set.js +44 -0
- package/dist/commands/cleanup/find-replace.d.ts +2 -0
- package/dist/commands/cleanup/find-replace.js +35 -0
- package/dist/commands/cleanup/index.d.ts +2 -0
- package/dist/commands/cleanup/index.js +48 -0
- package/dist/commands/cleanup/language-versions.d.ts +2 -0
- package/dist/commands/cleanup/language-versions.js +25 -0
- package/dist/commands/cleanup/rename.d.ts +2 -0
- package/dist/commands/cleanup/rename.js +32 -0
- package/dist/commands/cleanup/roles.d.ts +2 -0
- package/dist/commands/cleanup/roles.js +20 -0
- package/dist/commands/cleanup/shared.d.ts +2 -0
- package/dist/commands/cleanup/shared.js +15 -0
- package/dist/commands/cleanup/site-residue.d.ts +2 -0
- package/dist/commands/cleanup/site-residue.js +32 -0
- package/dist/commands/cleanup/slug-conflicts.d.ts +2 -0
- package/dist/commands/cleanup/slug-conflicts.js +54 -0
- package/dist/commands/cleanup/subtree.d.ts +2 -0
- package/dist/commands/cleanup/subtree.js +25 -0
- package/dist/commands/cleanup/users.d.ts +2 -0
- package/dist/commands/cleanup/users.js +23 -0
- package/dist/commands/cleanup/versions.d.ts +2 -0
- package/dist/commands/cleanup/versions.js +42 -0
- package/dist/commands/cleanup/workflow.d.ts +2 -0
- package/dist/commands/cleanup/workflow.js +40 -0
- package/dist/commands/config.d.ts +0 -1
- package/dist/commands/config.js +3 -3
- package/dist/commands/content/index.d.ts +2 -0
- package/dist/commands/content/index.js +11 -0
- package/dist/commands/content/version/index.d.ts +2 -0
- package/dist/commands/content/version/index.js +19 -0
- package/dist/commands/content/version/inspect.d.ts +2 -0
- package/dist/commands/content/version/inspect.js +22 -0
- package/dist/commands/content/version/set-never-publish.d.ts +2 -0
- package/dist/commands/content/version/set-never-publish.js +40 -0
- package/dist/commands/content/version/set-validity.d.ts +2 -0
- package/dist/commands/content/version/set-validity.js +30 -0
- package/dist/commands/deploy/deployments.d.ts +0 -1
- package/dist/commands/deploy/deployments.js +9 -9
- package/dist/commands/deploy/editing-host.d.ts +0 -1
- package/dist/commands/deploy/editing-host.js +25 -13
- package/dist/commands/deploy/environments/deployments.d.ts +0 -1
- package/dist/commands/deploy/environments/deployments.js +3 -3
- package/dist/commands/deploy/environments/index.d.ts +0 -1
- package/dist/commands/deploy/environments/index.js +1 -0
- package/dist/commands/deploy/environments/mutations.d.ts +0 -1
- package/dist/commands/deploy/environments/mutations.js +18 -17
- package/dist/commands/deploy/environments/queries.d.ts +1 -1
- package/dist/commands/deploy/environments/queries.js +29 -8
- package/dist/commands/deploy/environments/variables.d.ts +0 -1
- package/dist/commands/deploy/environments/variables.js +9 -8
- package/dist/commands/deploy/environments.d.ts +0 -1
- package/dist/commands/deploy/index.d.ts +0 -1
- package/dist/commands/deploy/index.js +1 -1
- package/dist/commands/deploy/logs.d.ts +0 -1
- package/dist/commands/deploy/logs.js +4 -4
- package/dist/commands/deploy/organizations.d.ts +0 -1
- package/dist/commands/deploy/organizations.js +5 -5
- package/dist/commands/deploy/projects.d.ts +0 -1
- package/dist/commands/deploy/projects.js +32 -20
- package/dist/commands/deploy/shared.d.ts +0 -1
- package/dist/commands/deploy/shared.js +1 -0
- package/dist/commands/deploy/site.d.ts +2 -3
- package/dist/commands/deploy/site.js +6 -5
- package/dist/commands/deploy/source-control.d.ts +0 -1
- package/dist/commands/deploy/source-control.js +13 -13
- package/dist/commands/deploy.d.ts +0 -1
- package/dist/commands/explain/index.d.ts +14 -0
- package/dist/commands/explain/index.js +25 -0
- package/dist/commands/explain/orphan-site.d.ts +11 -0
- package/dist/commands/explain/orphan-site.js +36 -0
- package/dist/commands/explain/why-blocked.d.ts +13 -0
- package/dist/commands/explain/why-blocked.js +42 -0
- package/dist/commands/health.d.ts +2 -0
- package/dist/commands/health.js +28 -0
- package/dist/commands/history.d.ts +0 -1
- package/dist/commands/history.js +11 -42
- package/dist/commands/init.d.ts +0 -1
- package/dist/commands/init.js +42 -8
- package/dist/commands/login.d.ts +11 -1
- package/dist/commands/login.js +35 -4
- package/dist/commands/logout.d.ts +0 -1
- package/dist/commands/logout.js +3 -3
- package/dist/commands/mcp/serve.d.ts +27 -0
- package/dist/commands/mcp/serve.js +120 -0
- package/dist/commands/mcp/tools.d.ts +8 -0
- package/dist/commands/mcp/tools.js +75 -0
- package/dist/commands/mcp.d.ts +2 -0
- package/dist/commands/mcp.js +23 -0
- package/dist/commands/policy.d.ts +16 -0
- package/dist/commands/policy.js +296 -0
- package/dist/commands/publish/all.d.ts +2 -0
- package/dist/commands/publish/all.js +41 -0
- package/dist/commands/publish/cancel.d.ts +2 -0
- package/dist/commands/publish/cancel.js +25 -0
- package/dist/commands/publish/history.d.ts +2 -0
- package/dist/commands/publish/history.js +34 -0
- package/dist/commands/publish/index.d.ts +2 -0
- package/dist/commands/publish/index.js +30 -0
- package/dist/commands/publish/item.d.ts +2 -0
- package/dist/commands/publish/item.js +55 -0
- package/dist/commands/publish/status.d.ts +2 -0
- package/dist/commands/publish/status.js +34 -0
- package/dist/commands/publish/unpublish.d.ts +2 -0
- package/dist/commands/publish/unpublish.js +52 -0
- package/dist/commands/recipe/index.d.ts +0 -1
- package/dist/commands/recipe/index.js +19 -15
- package/dist/commands/serialization/index.d.ts +0 -1
- package/dist/commands/serialization/index.js +14 -9
- package/dist/commands/serialization/package.d.ts +0 -1
- package/dist/commands/serialization/package.js +3 -3
- package/dist/commands/setup-client.d.ts +17 -0
- package/dist/commands/setup-client.js +148 -0
- package/dist/commands/shared.d.ts +72 -2
- package/dist/commands/shared.js +151 -24
- package/dist/commands/shell.d.ts +0 -1
- package/dist/commands/shell.js +1 -1
- package/dist/commands/status.d.ts +0 -1
- package/dist/commands/status.js +3 -3
- package/dist/commands/sync.d.ts +23 -0
- package/dist/commands/sync.js +154 -0
- package/dist/commands/telemetry.d.ts +0 -1
- package/dist/commands/telemetry.js +40 -2
- package/dist/commands/topics/index.d.ts +5 -0
- package/dist/commands/topics/index.js +102 -0
- package/dist/commands/webhook/create.d.ts +2 -0
- package/dist/commands/webhook/create.js +52 -0
- package/dist/commands/webhook/delete.d.ts +2 -0
- package/dist/commands/webhook/delete.js +20 -0
- package/dist/commands/webhook/event-types.d.ts +2 -0
- package/dist/commands/webhook/event-types.js +22 -0
- package/dist/commands/webhook/index.d.ts +2 -0
- package/dist/commands/webhook/index.js +33 -0
- package/dist/commands/webhook/inspect.d.ts +2 -0
- package/dist/commands/webhook/inspect.js +17 -0
- package/dist/commands/webhook/list.d.ts +2 -0
- package/dist/commands/webhook/list.js +24 -0
- package/dist/commands/webhook/shared.d.ts +2 -0
- package/dist/commands/webhook/shared.js +11 -0
- package/dist/commands/workflow/advance.d.ts +2 -0
- package/dist/commands/workflow/advance.js +22 -0
- package/dist/commands/workflow/apply.d.ts +2 -0
- package/dist/commands/workflow/apply.js +22 -0
- package/dist/commands/workflow/assigned.d.ts +2 -0
- package/dist/commands/workflow/assigned.js +21 -0
- package/dist/commands/workflow/index.d.ts +2 -0
- package/dist/commands/workflow/index.js +35 -0
- package/dist/commands/workflow/inspect.d.ts +2 -0
- package/dist/commands/workflow/inspect.js +17 -0
- package/dist/commands/workflow/list-commands.d.ts +2 -0
- package/dist/commands/workflow/list-commands.js +17 -0
- package/dist/commands/workflow/list-defs.d.ts +2 -0
- package/dist/commands/workflow/list-defs.js +17 -0
- package/dist/commands/workflow/reset.d.ts +2 -0
- package/dist/commands/workflow/reset.js +20 -0
- package/dist/commands/workflow/shared.d.ts +3 -0
- package/dist/commands/workflow/shared.js +12 -0
- package/dist/commands/workflow/status.d.ts +2 -0
- package/dist/commands/workflow/status.js +18 -0
- package/dist/config/env-overrides.d.ts +0 -1
- package/dist/config/env-overrides.js +41 -5
- package/dist/config/index.d.ts +15 -3
- package/dist/config/index.js +43 -3
- package/dist/config/modules.d.ts +0 -1
- package/dist/config/modules.js +2 -2
- package/dist/config/paths.d.ts +0 -1
- package/dist/config/paths.js +11 -2
- package/dist/config/root-config.d.ts +24 -1
- package/dist/config/root-config.js +84 -7
- package/dist/config/schema.json +113 -25
- package/dist/config/types.d.ts +228 -13
- package/dist/config/types.js +1 -1
- package/dist/config/validation.d.ts +1 -4
- package/dist/content/api/version-fields.d.ts +129 -0
- package/dist/content/api/version-fields.js +193 -0
- package/dist/content/index.d.ts +15 -0
- package/dist/content/index.js +40 -0
- package/dist/content/tasks/shared.d.ts +86 -0
- package/dist/content/tasks/shared.js +130 -0
- package/dist/content/tasks/version-inspect.d.ts +13 -0
- package/dist/content/tasks/version-inspect.js +56 -0
- package/dist/content/tasks/version-never-publish.d.ts +16 -0
- package/dist/content/tasks/version-never-publish.js +115 -0
- package/dist/content/tasks/version-validity.d.ts +24 -0
- package/dist/content/tasks/version-validity.js +159 -0
- package/dist/deploy/api/client-naming.d.ts +80 -0
- package/dist/deploy/api/client-naming.js +124 -0
- package/dist/deploy/api/client.d.ts +72 -0
- package/dist/deploy/api/client.js +72 -0
- package/dist/deploy/api/clients.d.ts +126 -0
- package/dist/deploy/api/clients.js +89 -0
- package/dist/deploy/api/common/headers.d.ts +0 -1
- package/dist/deploy/api/common/request.d.ts +0 -5
- package/dist/deploy/api/common/request.js +93 -120
- package/dist/deploy/api/common/transport-events.d.ts +31 -0
- package/dist/deploy/api/common/transport-events.js +24 -0
- package/dist/deploy/api/common/types.d.ts +60 -1
- package/dist/deploy/api/deployment-logs.d.ts +0 -1
- package/dist/deploy/api/deployment-logs.js +5 -5
- package/dist/deploy/api/deployments.d.ts +1 -2
- package/dist/deploy/api/deployments.js +22 -20
- package/dist/deploy/api/environments.d.ts +28 -2
- package/dist/deploy/api/environments.js +103 -20
- package/dist/deploy/api/index.d.ts +31 -9
- package/dist/deploy/api/index.js +129 -22
- package/dist/deploy/api/logs.d.ts +1 -2
- package/dist/deploy/api/logs.js +9 -7
- package/dist/deploy/api/organizations.d.ts +1 -2
- package/dist/deploy/api/organizations.js +8 -7
- package/dist/deploy/api/projects.d.ts +19 -4
- package/dist/deploy/api/projects.js +75 -13
- package/dist/deploy/api/source-control.d.ts +1 -2
- package/dist/deploy/api/source-control.js +25 -24
- package/dist/deploy/api.d.ts +0 -1
- package/dist/deploy/context.d.ts +52 -0
- package/dist/deploy/context.js +234 -0
- package/dist/deploy/index.d.ts +11 -0
- package/dist/deploy/index.js +38 -0
- package/dist/deploy/tasks/deployment-result.d.ts +0 -1
- package/dist/deploy/tasks/deployments.d.ts +0 -1
- package/dist/deploy/tasks/deployments.js +12 -11
- package/dist/deploy/tasks/editing-host.d.ts +0 -1
- package/dist/deploy/tasks/editing-host.js +48 -18
- package/dist/deploy/tasks/environments.d.ts +3 -3
- package/dist/deploy/tasks/environments.js +108 -24
- package/dist/deploy/tasks/health.d.ts +23 -0
- package/dist/deploy/tasks/health.js +181 -0
- package/dist/deploy/tasks/logs.d.ts +0 -1
- package/dist/deploy/tasks/logs.js +4 -4
- package/dist/deploy/tasks/organizations.d.ts +0 -1
- package/dist/deploy/tasks/organizations.js +5 -5
- package/dist/deploy/tasks/projects.d.ts +6 -2
- package/dist/deploy/tasks/projects.js +61 -42
- package/dist/deploy/tasks/shared.d.ts +9 -52
- package/dist/deploy/tasks/shared.js +46 -222
- package/dist/deploy/tasks/site-bind.d.ts +1 -2
- package/dist/deploy/tasks/site-bind.js +7 -7
- package/dist/deploy/tasks/site.d.ts +2 -3
- package/dist/deploy/tasks/site.js +4 -4
- package/dist/deploy/tasks/source-control.d.ts +0 -1
- package/dist/deploy/tasks/source-control.js +14 -14
- package/dist/deploy/tasks/transport-spinner.d.ts +5 -0
- package/dist/deploy/tasks/transport-spinner.js +118 -0
- package/dist/deploy/tasks/types.d.ts +16 -3
- package/dist/deploy/tasks/types.js +1 -1
- package/dist/hygiene/api/client.d.ts +294 -0
- package/dist/hygiene/api/client.js +827 -0
- package/dist/hygiene/api/graphql.d.ts +4 -0
- package/dist/hygiene/api/graphql.js +18 -0
- package/dist/hygiene/audit-suite.d.ts +84 -0
- package/dist/hygiene/audit-suite.js +95 -0
- package/dist/hygiene/baseline.d.ts +56 -0
- package/dist/hygiene/baseline.js +248 -0
- package/dist/hygiene/cache.d.ts +35 -0
- package/dist/hygiene/cache.js +179 -0
- package/dist/hygiene/history.d.ts +70 -0
- package/dist/hygiene/history.js +148 -0
- package/dist/hygiene/index.d.ts +128 -0
- package/dist/hygiene/index.js +168 -0
- package/dist/hygiene/output-adapters.d.ts +49 -0
- package/dist/hygiene/output-adapters.js +270 -0
- package/dist/hygiene/tasks/audit/all.d.ts +58 -0
- package/dist/hygiene/tasks/audit/all.js +274 -0
- package/dist/hygiene/tasks/audit/alt-text-missing.d.ts +27 -0
- package/dist/hygiene/tasks/audit/alt-text-missing.js +87 -0
- package/dist/hygiene/tasks/audit/baseline.d.ts +66 -0
- package/dist/hygiene/tasks/audit/baseline.js +185 -0
- package/dist/hygiene/tasks/audit/broken-images.d.ts +41 -0
- package/dist/hygiene/tasks/audit/broken-images.js +183 -0
- package/dist/hygiene/tasks/audit/broken-links.d.ts +53 -0
- package/dist/hygiene/tasks/audit/broken-links.js +121 -0
- package/dist/hygiene/tasks/audit/datasource-missing.d.ts +44 -0
- package/dist/hygiene/tasks/audit/datasource-missing.js +146 -0
- package/dist/hygiene/tasks/audit/dead-templates.d.ts +46 -0
- package/dist/hygiene/tasks/audit/dead-templates.js +216 -0
- package/dist/hygiene/tasks/audit/duplicates.d.ts +48 -0
- package/dist/hygiene/tasks/audit/duplicates.js +94 -0
- package/dist/hygiene/tasks/audit/empty-items.d.ts +24 -0
- package/dist/hygiene/tasks/audit/empty-items.js +53 -0
- package/dist/hygiene/tasks/audit/empty-links.d.ts +37 -0
- package/dist/hygiene/tasks/audit/empty-links.js +145 -0
- package/dist/hygiene/tasks/audit/empty-roles.d.ts +41 -0
- package/dist/hygiene/tasks/audit/empty-roles.js +51 -0
- package/dist/hygiene/tasks/audit/fallback-drift.d.ts +53 -0
- package/dist/hygiene/tasks/audit/fallback-drift.js +115 -0
- package/dist/hygiene/tasks/audit/find-replace.d.ts +75 -0
- package/dist/hygiene/tasks/audit/find-replace.js +142 -0
- package/dist/hygiene/tasks/audit/heavy-templates.d.ts +46 -0
- package/dist/hygiene/tasks/audit/heavy-templates.js +73 -0
- package/dist/hygiene/tasks/audit/history.d.ts +30 -0
- package/dist/hygiene/tasks/audit/history.js +161 -0
- package/dist/hygiene/tasks/audit/language-data.d.ts +55 -0
- package/dist/hygiene/tasks/audit/language-data.js +126 -0
- package/dist/hygiene/tasks/audit/large-fields.d.ts +48 -0
- package/dist/hygiene/tasks/audit/large-fields.js +84 -0
- package/dist/hygiene/tasks/audit/missing-meta.d.ts +57 -0
- package/dist/hygiene/tasks/audit/missing-meta.js +97 -0
- package/dist/hygiene/tasks/audit/orphans.d.ts +47 -0
- package/dist/hygiene/tasks/audit/orphans.js +78 -0
- package/dist/hygiene/tasks/audit/page-design-orphans.d.ts +24 -0
- package/dist/hygiene/tasks/audit/page-design-orphans.js +80 -0
- package/dist/hygiene/tasks/audit/personalization-broken.d.ts +25 -0
- package/dist/hygiene/tasks/audit/personalization-broken.js +96 -0
- package/dist/hygiene/tasks/audit/references.d.ts +70 -0
- package/dist/hygiene/tasks/audit/references.js +142 -0
- package/dist/hygiene/tasks/audit/role-bloat.d.ts +42 -0
- package/dist/hygiene/tasks/audit/role-bloat.js +64 -0
- package/dist/hygiene/tasks/audit/site-residue.d.ts +39 -0
- package/dist/hygiene/tasks/audit/site-residue.js +164 -0
- package/dist/hygiene/tasks/audit/slug-conflicts.d.ts +58 -0
- package/dist/hygiene/tasks/audit/slug-conflicts.js +87 -0
- package/dist/hygiene/tasks/audit/stale-content.d.ts +68 -0
- package/dist/hygiene/tasks/audit/stale-content.js +133 -0
- package/dist/hygiene/tasks/audit/stale-users.d.ts +54 -0
- package/dist/hygiene/tasks/audit/stale-users.js +83 -0
- package/dist/hygiene/tasks/audit/stale-workflow.d.ts +50 -0
- package/dist/hygiene/tasks/audit/stale-workflow.js +109 -0
- package/dist/hygiene/tasks/audit/suite-run.d.ts +28 -0
- package/dist/hygiene/tasks/audit/suite-run.js +46 -0
- package/dist/hygiene/tasks/audit/template-dependencies.d.ts +72 -0
- package/dist/hygiene/tasks/audit/template-dependencies.js +97 -0
- package/dist/hygiene/tasks/audit/translation-coverage.d.ts +64 -0
- package/dist/hygiene/tasks/audit/translation-coverage.js +123 -0
- package/dist/hygiene/tasks/audit/unused-media.d.ts +58 -0
- package/dist/hygiene/tasks/audit/unused-media.js +144 -0
- package/dist/hygiene/tasks/browse.d.ts +49 -0
- package/dist/hygiene/tasks/browse.js +50 -0
- package/dist/hygiene/tasks/cleanup/archive-purge.d.ts +50 -0
- package/dist/hygiene/tasks/cleanup/archive-purge.js +129 -0
- package/dist/hygiene/tasks/cleanup/dead-templates.d.ts +74 -0
- package/dist/hygiene/tasks/cleanup/dead-templates.js +247 -0
- package/dist/hygiene/tasks/cleanup/duplicates.d.ts +86 -0
- package/dist/hygiene/tasks/cleanup/duplicates.js +189 -0
- package/dist/hygiene/tasks/cleanup/empty-folders.d.ts +75 -0
- package/dist/hygiene/tasks/cleanup/empty-folders.js +165 -0
- package/dist/hygiene/tasks/cleanup/field-set.d.ts +108 -0
- package/dist/hygiene/tasks/cleanup/field-set.js +230 -0
- package/dist/hygiene/tasks/cleanup/find-replace.d.ts +77 -0
- package/dist/hygiene/tasks/cleanup/find-replace.js +180 -0
- package/dist/hygiene/tasks/cleanup/language-version-add.d.ts +74 -0
- package/dist/hygiene/tasks/cleanup/language-version-add.js +136 -0
- package/dist/hygiene/tasks/cleanup/rename.d.ts +78 -0
- package/dist/hygiene/tasks/cleanup/rename.js +152 -0
- package/dist/hygiene/tasks/cleanup/roles.d.ts +58 -0
- package/dist/hygiene/tasks/cleanup/roles.js +177 -0
- package/dist/hygiene/tasks/cleanup/site-residue.d.ts +55 -0
- package/dist/hygiene/tasks/cleanup/site-residue.js +247 -0
- package/dist/hygiene/tasks/cleanup/slug-conflicts.d.ts +126 -0
- package/dist/hygiene/tasks/cleanup/slug-conflicts.js +296 -0
- package/dist/hygiene/tasks/cleanup/subtree-prune.d.ts +40 -0
- package/dist/hygiene/tasks/cleanup/subtree-prune.js +113 -0
- package/dist/hygiene/tasks/cleanup/subtree.d.ts +123 -0
- package/dist/hygiene/tasks/cleanup/subtree.js +312 -0
- package/dist/hygiene/tasks/cleanup/users.d.ts +48 -0
- package/dist/hygiene/tasks/cleanup/users.js +92 -0
- package/dist/hygiene/tasks/cleanup/versions-archive.d.ts +57 -0
- package/dist/hygiene/tasks/cleanup/versions-archive.js +162 -0
- package/dist/hygiene/tasks/cleanup/versions-prune.d.ts +76 -0
- package/dist/hygiene/tasks/cleanup/versions-prune.js +194 -0
- package/dist/hygiene/tasks/cleanup/workflow-advance.d.ts +76 -0
- package/dist/hygiene/tasks/cleanup/workflow-advance.js +185 -0
- package/dist/hygiene/tasks/cleanup/workflow-apply.d.ts +97 -0
- package/dist/hygiene/tasks/cleanup/workflow-apply.js +310 -0
- package/dist/hygiene/tasks/explain/orphan-site.d.ts +53 -0
- package/dist/hygiene/tasks/explain/orphan-site.js +83 -0
- package/dist/hygiene/tasks/explain/why-blocked.d.ts +81 -0
- package/dist/hygiene/tasks/explain/why-blocked.js +149 -0
- package/dist/hygiene/tasks/reference-kind.d.ts +47 -0
- package/dist/hygiene/tasks/reference-kind.js +73 -0
- package/dist/hygiene/tasks/shared.d.ts +350 -0
- package/dist/hygiene/tasks/shared.js +532 -0
- package/dist/mcp/auth.d.ts +80 -0
- package/dist/mcp/auth.js +165 -0
- package/dist/mcp/build-registry.d.ts +12 -0
- package/dist/mcp/build-registry.js +75 -0
- package/dist/mcp/descriptions.d.ts +22 -0
- package/dist/mcp/descriptions.js +113 -0
- package/dist/mcp/dispatch.d.ts +44 -0
- package/dist/mcp/dispatch.js +110 -0
- package/dist/mcp/errors.d.ts +31 -0
- package/dist/mcp/errors.js +117 -0
- package/dist/mcp/http.d.ts +42 -0
- package/dist/mcp/http.js +128 -0
- package/dist/mcp/logging.d.ts +28 -0
- package/dist/mcp/logging.js +78 -0
- package/dist/mcp/prompts/workflows.d.ts +13 -0
- package/dist/mcp/prompts/workflows.js +171 -0
- package/dist/mcp/redact.d.ts +11 -0
- package/dist/mcp/redact.js +35 -0
- package/dist/mcp/registry.d.ts +84 -0
- package/dist/mcp/registry.js +62 -0
- package/dist/mcp/resources/brand.d.ts +20 -0
- package/dist/mcp/resources/brand.js +514 -0
- package/dist/mcp/resources/env.d.ts +10 -0
- package/dist/mcp/resources/env.js +120 -0
- package/dist/mcp/resources/help.d.ts +10 -0
- package/dist/mcp/resources/help.js +475 -0
- package/dist/mcp/resources/recipes.d.ts +13 -0
- package/dist/mcp/resources/recipes.js +270 -0
- package/dist/mcp/schemas/common.d.ts +22 -0
- package/dist/mcp/schemas/common.js +43 -0
- package/dist/mcp/server.d.ts +26 -0
- package/dist/mcp/server.js +88 -0
- package/dist/mcp/tools/access-check.d.ts +11 -0
- package/dist/mcp/tools/access-check.js +47 -0
- package/dist/mcp/tools/agents-recipe.d.ts +2 -0
- package/dist/mcp/tools/agents-recipe.js +139 -0
- package/dist/mcp/tools/agents.d.ts +2 -0
- package/dist/mcp/tools/agents.js +148 -0
- package/dist/mcp/tools/audit.d.ts +41 -0
- package/dist/mcp/tools/audit.js +584 -0
- package/dist/mcp/tools/bootstrap.d.ts +8 -0
- package/dist/mcp/tools/bootstrap.js +200 -0
- package/dist/mcp/tools/brand-recipe.d.ts +2 -0
- package/dist/mcp/tools/brand-recipe.js +123 -0
- package/dist/mcp/tools/brand.d.ts +28 -0
- package/dist/mcp/tools/brand.js +549 -0
- package/dist/mcp/tools/brief-recipe.d.ts +2 -0
- package/dist/mcp/tools/brief-recipe.js +123 -0
- package/dist/mcp/tools/brief.d.ts +16 -0
- package/dist/mcp/tools/brief.js +388 -0
- package/dist/mcp/tools/browse.d.ts +9 -0
- package/dist/mcp/tools/browse.js +57 -0
- package/dist/mcp/tools/campaign-recipe.d.ts +2 -0
- package/dist/mcp/tools/campaign-recipe.js +125 -0
- package/dist/mcp/tools/campaign.d.ts +20 -0
- package/dist/mcp/tools/campaign.js +342 -0
- package/dist/mcp/tools/cleanup.d.ts +22 -0
- package/dist/mcp/tools/cleanup.js +608 -0
- package/dist/mcp/tools/deploy.d.ts +19 -0
- package/dist/mcp/tools/deploy.js +797 -0
- package/dist/mcp/tools/explain.d.ts +2 -0
- package/dist/mcp/tools/explain.js +132 -0
- package/dist/mcp/tools/inspector.d.ts +12 -0
- package/dist/mcp/tools/inspector.js +101 -0
- package/dist/mcp/tools/onboard.d.ts +11 -0
- package/dist/mcp/tools/onboard.js +65 -0
- package/dist/mcp/tools/publish.d.ts +30 -0
- package/dist/mcp/tools/publish.js +173 -0
- package/dist/mcp/tools/recipe-sync.d.ts +2 -0
- package/dist/mcp/tools/recipe-sync.js +117 -0
- package/dist/mcp/tools/recipe.d.ts +18 -0
- package/dist/mcp/tools/recipe.js +250 -0
- package/dist/mcp/tools/serialization.d.ts +17 -0
- package/dist/mcp/tools/serialization.js +282 -0
- package/dist/mcp/tools/webhook.d.ts +12 -0
- package/dist/mcp/tools/webhook.js +246 -0
- package/dist/mcp/tools/workflow.d.ts +21 -0
- package/dist/mcp/tools/workflow.js +436 -0
- package/dist/policy/access-check.d.ts +56 -0
- package/dist/policy/access-check.js +160 -0
- package/dist/policy/allow-write.d.ts +37 -0
- package/dist/policy/allow-write.js +78 -0
- package/dist/policy/authorize.d.ts +36 -0
- package/dist/policy/authorize.js +102 -0
- package/dist/policy/caller.d.ts +23 -0
- package/dist/policy/caller.js +66 -0
- package/dist/policy/enforce.d.ts +25 -0
- package/dist/policy/enforce.js +57 -0
- package/dist/policy/enroll.d.ts +57 -0
- package/dist/policy/enroll.js +101 -0
- package/dist/policy/environment.d.ts +35 -0
- package/dist/policy/environment.js +44 -0
- package/dist/policy/identity.d.ts +24 -0
- package/dist/policy/identity.js +58 -0
- package/dist/policy/index.d.ts +22 -0
- package/dist/policy/index.js +42 -0
- package/dist/policy/operations.d.ts +24 -0
- package/dist/policy/operations.js +37 -0
- package/dist/policy/organization.d.ts +62 -0
- package/dist/policy/organization.js +97 -0
- package/dist/policy/paths.d.ts +21 -0
- package/dist/policy/paths.js +46 -0
- package/dist/policy/resolve.d.ts +15 -0
- package/dist/policy/resolve.js +67 -0
- package/dist/policy/schema.d.ts +137 -0
- package/dist/policy/schema.js +92 -0
- package/dist/policy/store.d.ts +25 -0
- package/dist/policy/store.js +85 -0
- package/dist/policy/types.d.ts +52 -0
- package/dist/policy/types.js +22 -0
- package/dist/program.d.ts +35 -0
- package/dist/program.js +131 -0
- package/dist/publishing/api/auth.d.ts +49 -0
- package/dist/publishing/api/auth.js +173 -0
- package/dist/publishing/api/client.d.ts +5 -0
- package/dist/publishing/api/client.js +153 -0
- package/dist/publishing/api/languages.d.ts +61 -0
- package/dist/publishing/api/languages.js +116 -0
- package/dist/publishing/api/path-resolver.d.ts +10 -0
- package/dist/publishing/api/path-resolver.js +76 -0
- package/dist/publishing/api/sites.d.ts +23 -0
- package/dist/publishing/api/sites.js +27 -0
- package/dist/publishing/api/types.d.ts +166 -0
- package/dist/publishing/api/types.js +17 -0
- package/dist/publishing/index.d.ts +25 -0
- package/dist/publishing/index.js +51 -0
- package/dist/publishing/job-diagnostics.d.ts +44 -0
- package/dist/publishing/job-diagnostics.js +87 -0
- package/dist/publishing/job-watcher.d.ts +33 -0
- package/dist/publishing/job-watcher.js +118 -0
- package/dist/publishing/tasks/all.d.ts +41 -0
- package/dist/publishing/tasks/all.js +234 -0
- package/dist/publishing/tasks/cancel.d.ts +18 -0
- package/dist/publishing/tasks/cancel.js +147 -0
- package/dist/publishing/tasks/history.d.ts +22 -0
- package/dist/publishing/tasks/history.js +85 -0
- package/dist/publishing/tasks/item.d.ts +69 -0
- package/dist/publishing/tasks/item.js +194 -0
- package/dist/publishing/tasks/status.d.ts +17 -0
- package/dist/publishing/tasks/status.js +74 -0
- package/dist/publishing/tasks/unpublish.d.ts +69 -0
- package/dist/publishing/tasks/unpublish.js +546 -0
- package/dist/recipe/api/auth.d.ts +1 -2
- package/dist/recipe/api/auth.js +1 -1
- package/dist/recipe/api/authoring-client.d.ts +9 -3
- package/dist/recipe/api/authoring-client.js +101 -17
- package/dist/recipe/api/client.d.ts +50 -1
- package/dist/recipe/api/graphql.d.ts +2 -3
- package/dist/recipe/api/graphql.js +1 -1
- package/dist/recipe/api/ref-encoding.d.ts +0 -1
- package/dist/recipe/api/ref-encoding.js +5 -5
- package/dist/recipe/api/site-discovery.d.ts +1 -2
- package/dist/recipe/api/sites-client.d.ts +6 -3
- package/dist/recipe/api/sites-client.js +11 -8
- package/dist/recipe/cache.d.ts +0 -1
- package/dist/recipe/compile/component-section.d.ts +1 -2
- package/dist/recipe/compile/component-section.js +2 -2
- package/dist/recipe/compile/component-template.d.ts +0 -1
- package/dist/recipe/compile/component-template.js +15 -19
- package/dist/recipe/compile/content-item.d.ts +42 -22
- package/dist/recipe/compile/content-item.js +198 -46
- package/dist/recipe/compile/content-template.d.ts +0 -1
- package/dist/recipe/compile/content-template.js +25 -1
- package/dist/recipe/compile/design-parameters-template.d.ts +13 -0
- package/dist/recipe/compile/design-parameters-template.js +92 -0
- package/dist/recipe/compile/enumeration.d.ts +0 -1
- package/dist/recipe/compile/enumeration.js +4 -4
- package/dist/recipe/compile/page-design.d.ts +0 -1
- package/dist/recipe/compile/page-design.js +1 -1
- package/dist/recipe/compile/page-template.d.ts +30 -0
- package/dist/recipe/compile/page-template.js +121 -0
- package/dist/recipe/compile/page.d.ts +26 -0
- package/dist/recipe/compile/page.js +184 -0
- package/dist/recipe/compile/partial-design.d.ts +0 -1
- package/dist/recipe/compile/partial-design.js +1 -1
- package/dist/recipe/compile/placeholder.d.ts +23 -0
- package/dist/recipe/compile/placeholder.js +32 -0
- package/dist/recipe/compile/section-definition.d.ts +0 -1
- package/dist/recipe/compile/shared.d.ts +52 -7
- package/dist/recipe/compile/shared.js +55 -15
- package/dist/recipe/compile/site-template.d.ts +0 -1
- package/dist/recipe/compile/site-template.js +1 -1
- package/dist/recipe/compile/site.d.ts +0 -1
- package/dist/recipe/compile/site.js +1 -1
- package/dist/recipe/compile/webhook-authorization.d.ts +23 -0
- package/dist/recipe/compile/webhook-authorization.js +116 -0
- package/dist/recipe/compile/workflow.d.ts +46 -0
- package/dist/recipe/compile/workflow.js +368 -0
- package/dist/recipe/compile.d.ts +19 -3
- package/dist/recipe/compile.js +297 -11
- package/dist/recipe/ensure-marker-field.d.ts +25 -0
- package/dist/recipe/ensure-marker-field.js +140 -0
- package/dist/recipe/execute.d.ts +19 -2
- package/dist/recipe/execute.js +39 -8
- package/dist/recipe/guids.d.ts +106 -9
- package/dist/recipe/guids.js +126 -15
- package/dist/recipe/index.d.ts +11 -5
- package/dist/recipe/index.js +46 -23
- package/dist/recipe/io.d.ts +0 -1
- package/dist/recipe/io.js +33 -10
- package/dist/recipe/ir/operations.d.ts +66 -4
- package/dist/recipe/ir/operations.js +55 -2
- package/dist/recipe/ir/sitecore-templates.d.ts +87 -1
- package/dist/recipe/ir/sitecore-templates.js +94 -1
- package/dist/recipe/layout/emit.d.ts +22 -3
- package/dist/recipe/layout/emit.js +18 -7
- package/dist/recipe/layout/parse.d.ts +164 -0
- package/dist/recipe/layout/parse.js +295 -0
- package/dist/recipe/layout/templates-mapping.d.ts +0 -1
- package/dist/recipe/marker.d.ts +28 -0
- package/dist/recipe/marker.js +37 -0
- package/dist/recipe/plan.d.ts +9 -2
- package/dist/recipe/plan.js +195 -19
- package/dist/recipe/policy.d.ts +0 -1
- package/dist/recipe/policy.js +19 -1
- package/dist/recipe/read-current.d.ts +109 -0
- package/dist/recipe/read-current.js +1285 -0
- package/dist/recipe/recipe-kind.d.ts +4 -0
- package/dist/recipe/recipe-kind.js +217 -0
- package/dist/recipe/rollback-log.d.ts +52 -0
- package/dist/recipe/rollback-log.js +90 -0
- package/dist/recipe/rollback.d.ts +12 -1
- package/dist/recipe/rollback.js +32 -7
- package/dist/recipe/sandbox/load.d.ts +17 -0
- package/dist/recipe/sandbox/load.js +145 -0
- package/dist/recipe/sandbox/recipe-runner.cjs +49 -0
- package/dist/recipe/sandbox/transpile.d.ts +17 -0
- package/dist/recipe/sandbox/transpile.js +46 -0
- package/dist/recipe/schema/field-types.d.ts +3 -4
- package/dist/recipe/schema/recipe.d.ts +1631 -213
- package/dist/recipe/schema/recipe.js +576 -37
- package/dist/recipe/schema/source-fields.d.ts +0 -1
- package/dist/recipe/tasks/compile.d.ts +1 -2
- package/dist/recipe/tasks/compile.js +14 -4
- package/dist/recipe/tasks/diff.d.ts +1 -2
- package/dist/recipe/tasks/placeholder-allow.d.ts +0 -1
- package/dist/recipe/tasks/placeholder-allow.js +3 -7
- package/dist/recipe/tasks/plan.d.ts +3 -4
- package/dist/recipe/tasks/plan.js +5 -5
- package/dist/recipe/tasks/prune-defaults.d.ts +1 -2
- package/dist/recipe/tasks/prune-defaults.js +6 -7
- package/dist/recipe/tasks/push.d.ts +1 -2
- package/dist/recipe/tasks/push.js +46 -6
- package/dist/recipe/tasks/shared.d.ts +21 -4
- package/dist/recipe/tasks/shared.js +34 -21
- package/dist/recipe/unstable.d.ts +18 -0
- package/dist/recipe/unstable.js +36 -0
- package/dist/recipe/validate.d.ts +51 -2
- package/dist/recipe/validate.js +162 -15
- package/dist/scripting/connect.d.ts +24 -0
- package/dist/scripting/connect.js +17 -0
- package/dist/scripting/helpers/multilist.d.ts +26 -0
- package/dist/scripting/helpers/multilist.js +75 -0
- package/dist/scripting/index.d.ts +20 -0
- package/dist/scripting/index.js +57 -0
- package/dist/serialization/api/auth.d.ts +57 -0
- package/dist/serialization/api/auth.js +433 -0
- package/dist/serialization/api/client.d.ts +41 -0
- package/dist/serialization/api/client.js +41 -0
- package/dist/serialization/api/graphql.d.ts +11 -0
- package/dist/serialization/api/history.d.ts +8 -0
- package/dist/serialization/api/index.d.ts +23 -0
- package/dist/serialization/api/index.js +64 -0
- package/dist/serialization/api/items.d.ts +7 -0
- package/dist/serialization/api/items.js +132 -0
- package/dist/serialization/api/publish.d.ts +43 -0
- package/dist/serialization/api/publish.js +67 -0
- package/dist/serialization/api/roles.d.ts +8 -0
- package/dist/serialization/api/types.d.ts +65 -0
- package/dist/serialization/api/types.js +2 -0
- package/dist/serialization/api/users.d.ts +8 -0
- package/dist/serialization/commands.d.ts +0 -1
- package/dist/serialization/compare.d.ts +0 -1
- package/dist/serialization/context.d.ts +25 -0
- package/dist/serialization/context.js +58 -0
- package/dist/serialization/field-filter.d.ts +0 -1
- package/dist/serialization/filesystem-store/constants.d.ts +0 -1
- package/dist/serialization/filesystem-store/items.d.ts +0 -1
- package/dist/serialization/filesystem-store/items.js +1 -1
- package/dist/serialization/filesystem-store/roles.d.ts +1 -2
- package/dist/serialization/filesystem-store/users.d.ts +1 -2
- package/dist/serialization/filesystem-store/utils.d.ts +0 -1
- package/dist/serialization/index.d.ts +12 -0
- package/dist/serialization/index.js +32 -0
- package/dist/serialization/item-path.d.ts +0 -1
- package/dist/serialization/item-path.js +3 -3
- package/dist/serialization/path-provider.d.ts +0 -1
- package/dist/serialization/path-provider.js +4 -4
- package/dist/serialization/signature.d.ts +0 -1
- package/dist/serialization/tasks/diff.d.ts +0 -1
- package/dist/serialization/tasks/diff.js +176 -48
- package/dist/serialization/tasks/env/constants.d.ts +13 -1
- package/dist/serialization/tasks/env/constants.js +64 -1
- package/dist/serialization/tasks/env/deploy-token.d.ts +0 -1
- package/dist/serialization/tasks/env/deploy-token.js +69 -17
- package/dist/serialization/tasks/env/init/auth.d.ts +11 -3
- package/dist/serialization/tasks/env/init/auth.js +19 -17
- package/dist/serialization/tasks/env/init/deploy-lookup.d.ts +1 -2
- package/dist/serialization/tasks/env/init/deploy-lookup.js +18 -5
- package/dist/serialization/tasks/env/init.d.ts +0 -1
- package/dist/serialization/tasks/env/init.js +18 -12
- package/dist/serialization/tasks/env/logout.d.ts +0 -1
- package/dist/serialization/tasks/env/logout.js +13 -6
- package/dist/serialization/tasks/env/onboard.d.ts +40 -0
- package/dist/serialization/tasks/env/onboard.js +53 -0
- package/dist/serialization/tasks/env/setup-clients.d.ts +24 -0
- package/dist/serialization/tasks/env/setup-clients.js +119 -0
- package/dist/serialization/tasks/env/setup-env.d.ts +54 -0
- package/dist/serialization/tasks/env/setup-env.js +216 -0
- package/dist/serialization/tasks/env/setup-org-client.d.ts +21 -0
- package/dist/serialization/tasks/env/setup-org-client.js +146 -0
- package/dist/serialization/tasks/env/status.d.ts +0 -1
- package/dist/serialization/tasks/env/status.js +36 -11
- package/dist/serialization/tasks/helpers/collect.d.ts +1 -2
- package/dist/serialization/tasks/helpers/collect.js +22 -15
- package/dist/serialization/tasks/helpers/commands.d.ts +0 -1
- package/dist/serialization/tasks/helpers/filesystem.d.ts +0 -1
- package/dist/serialization/tasks/helpers/filesystem.js +4 -4
- package/dist/serialization/tasks/helpers/items.d.ts +0 -1
- package/dist/serialization/tasks/helpers/sitecore.d.ts +1 -2
- package/dist/serialization/tasks/helpers/sitecore.js +2 -2
- package/dist/serialization/tasks/info.d.ts +0 -1
- package/dist/serialization/tasks/package.d.ts +0 -1
- package/dist/serialization/tasks/package.js +21 -16
- package/dist/serialization/tasks/pull.d.ts +0 -1
- package/dist/serialization/tasks/pull.js +24 -9
- package/dist/serialization/tasks/push.d.ts +0 -1
- package/dist/serialization/tasks/push.js +27 -11
- package/dist/serialization/tasks/roles.d.ts +2 -2
- package/dist/serialization/tasks/roles.js +9 -9
- package/dist/serialization/tasks/shared.d.ts +9 -16
- package/dist/serialization/tasks/shared.js +14 -44
- package/dist/serialization/tasks/types.d.ts +44 -4
- package/dist/serialization/tasks/types.js +1 -1
- package/dist/serialization/tasks/users.d.ts +2 -2
- package/dist/serialization/tasks/users.js +9 -9
- package/dist/serialization/tasks/validate.d.ts +0 -1
- package/dist/serialization/tasks/validate.js +2 -2
- package/dist/serialization/tasks/watch.d.ts +0 -1
- package/dist/serialization/tasks/watch.js +9 -8
- package/dist/serialization/tree-spec.d.ts +0 -1
- package/dist/serialization/tree-spec.js +21 -21
- package/dist/serialization/types.d.ts +0 -1
- package/dist/serialization/wildcard.d.ts +0 -1
- package/dist/serialization/wildcard.js +2 -2
- package/dist/serialization/yaml.d.ts +0 -1
- package/dist/serialization/yaml.js +1 -1
- package/dist/shared/browser.d.ts +0 -1
- package/dist/shared/cli-options.d.ts +0 -1
- package/dist/shared/cli-tasks.d.ts +1 -2
- package/dist/shared/cli-tasks.js +2 -2
- package/dist/shared/client-credential.d.ts +82 -0
- package/dist/shared/client-credential.js +117 -0
- package/dist/shared/concurrency.d.ts +20 -0
- package/dist/shared/concurrency.js +67 -0
- package/dist/shared/config-template.d.ts +0 -1
- package/dist/shared/credential-matrix.d.ts +83 -0
- package/dist/shared/credential-matrix.js +65 -0
- package/dist/shared/env-tier.d.ts +2 -0
- package/dist/shared/env-tier.js +31 -0
- package/dist/shared/envelope.d.ts +69 -0
- package/dist/shared/envelope.js +84 -0
- package/dist/shared/errors.d.ts +79 -9
- package/dist/shared/errors.js +49 -11
- package/dist/shared/graphql.d.ts +2 -3
- package/dist/shared/graphql.js +31 -15
- package/dist/shared/history.d.ts +25 -1
- package/dist/shared/history.js +35 -1
- package/dist/shared/human-only-operations.d.ts +28 -0
- package/dist/shared/human-only-operations.js +33 -0
- package/dist/shared/keychain.d.ts +68 -1
- package/dist/shared/keychain.js +416 -46
- package/dist/shared/logger.d.ts +2 -1
- package/dist/shared/logger.js +12 -1
- package/dist/shared/output.d.ts +0 -1
- package/dist/shared/prompt.d.ts +0 -1
- package/dist/shared/prompt.js +2 -2
- package/dist/shared/publish-audit.d.ts +154 -0
- package/dist/shared/publish-audit.js +52 -0
- package/dist/shared/publish-consent.d.ts +104 -0
- package/dist/shared/publish-consent.js +148 -0
- package/dist/shared/redact.d.ts +0 -1
- package/dist/shared/redact.js +4 -2
- package/dist/shared/region.d.ts +96 -0
- package/dist/shared/region.js +129 -0
- package/dist/shared/rwlock.d.ts +43 -0
- package/dist/shared/rwlock.js +110 -0
- package/dist/shared/spinner.d.ts +0 -1
- package/dist/shared/style.d.ts +0 -1
- package/dist/shared/telemetry.d.ts +15 -2
- package/dist/shared/telemetry.js +59 -34
- package/dist/shared/topics.d.ts +33 -0
- package/dist/shared/topics.js +151 -0
- package/dist/shared/validate.d.ts +0 -1
- package/dist/shared/validate.js +18 -3
- package/dist/sites/api/collections.d.ts +0 -1
- package/dist/sites/api/jobs.d.ts +0 -1
- package/dist/sites/api/languages.d.ts +0 -1
- package/dist/sites/api/request.d.ts +0 -1
- package/dist/sites/api/request.js +13 -4
- package/dist/sites/api/sites.d.ts +44 -1
- package/dist/sites/api/sites.js +42 -1
- package/dist/sites/api/types.d.ts +0 -1
- package/dist/sites/index.d.ts +25 -0
- package/dist/sites/index.js +44 -0
- package/dist/sync/aggregate-kinds.d.ts +7 -0
- package/dist/sync/aggregate-kinds.js +32 -0
- package/dist/sync/aggregate.d.ts +100 -0
- package/dist/sync/aggregate.js +173 -0
- package/dist/sync/engine.d.ts +28 -0
- package/dist/sync/engine.js +38 -0
- package/dist/sync/index.d.ts +18 -0
- package/dist/sync/index.js +25 -0
- package/dist/sync/io.d.ts +8 -0
- package/dist/sync/io.js +52 -0
- package/dist/sync/kind.d.ts +80 -0
- package/dist/sync/kind.js +2 -0
- package/dist/sync/plan.d.ts +55 -0
- package/dist/sync/plan.js +27 -0
- package/dist/sync/registry.d.ts +7 -0
- package/dist/sync/registry.js +36 -0
- package/dist/webhooks/api/client.d.ts +134 -0
- package/dist/webhooks/api/client.js +326 -0
- package/dist/webhooks/api/graphql.d.ts +4 -0
- package/dist/webhooks/api/graphql.js +18 -0
- package/dist/webhooks/api/templates.d.ts +41 -0
- package/dist/webhooks/api/templates.js +78 -0
- package/dist/webhooks/index.d.ts +16 -0
- package/dist/webhooks/index.js +43 -0
- package/dist/webhooks/tasks/create.d.ts +58 -0
- package/dist/webhooks/tasks/create.js +127 -0
- package/dist/webhooks/tasks/delete.d.ts +14 -0
- package/dist/webhooks/tasks/delete.js +57 -0
- package/dist/webhooks/tasks/event-types.d.ts +21 -0
- package/dist/webhooks/tasks/event-types.js +32 -0
- package/dist/webhooks/tasks/inspect.d.ts +12 -0
- package/dist/webhooks/tasks/inspect.js +65 -0
- package/dist/webhooks/tasks/list.d.ts +29 -0
- package/dist/webhooks/tasks/list.js +41 -0
- package/dist/webhooks/tasks/shared.d.ts +35 -0
- package/dist/webhooks/tasks/shared.js +38 -0
- package/dist/workflow/api/client.d.ts +208 -0
- package/dist/workflow/api/client.js +421 -0
- package/dist/workflow/api/graphql.d.ts +4 -0
- package/dist/workflow/api/graphql.js +18 -0
- package/dist/workflow/api/resolve-command.d.ts +27 -0
- package/dist/workflow/api/resolve-command.js +26 -0
- package/dist/workflow/index.d.ts +18 -0
- package/dist/workflow/index.js +37 -0
- package/dist/workflow/tasks/advance.d.ts +39 -0
- package/dist/workflow/tasks/advance.js +182 -0
- package/dist/workflow/tasks/apply.d.ts +47 -0
- package/dist/workflow/tasks/apply.js +193 -0
- package/dist/workflow/tasks/assigned.d.ts +33 -0
- package/dist/workflow/tasks/assigned.js +41 -0
- package/dist/workflow/tasks/inspect.d.ts +60 -0
- package/dist/workflow/tasks/inspect.js +171 -0
- package/dist/workflow/tasks/list-commands.d.ts +21 -0
- package/dist/workflow/tasks/list-commands.js +54 -0
- package/dist/workflow/tasks/list-defs.d.ts +21 -0
- package/dist/workflow/tasks/list-defs.js +28 -0
- package/dist/workflow/tasks/reset.d.ts +33 -0
- package/dist/workflow/tasks/reset.js +137 -0
- package/dist/workflow/tasks/shared.d.ts +75 -0
- package/dist/workflow/tasks/shared.js +124 -0
- package/dist/workflow/tasks/status.d.ts +21 -0
- package/dist/workflow/tasks/status.js +41 -0
- package/package.json +102 -8
- package/dist/cli.d.ts.map +0 -1
- package/dist/commands/config.d.ts.map +0 -1
- package/dist/commands/deploy/deployments.d.ts.map +0 -1
- package/dist/commands/deploy/editing-host.d.ts.map +0 -1
- package/dist/commands/deploy/environments/deployments.d.ts.map +0 -1
- package/dist/commands/deploy/environments/index.d.ts.map +0 -1
- package/dist/commands/deploy/environments/mutations.d.ts.map +0 -1
- package/dist/commands/deploy/environments/queries.d.ts.map +0 -1
- package/dist/commands/deploy/environments/variables.d.ts.map +0 -1
- package/dist/commands/deploy/environments.d.ts.map +0 -1
- package/dist/commands/deploy/index.d.ts.map +0 -1
- package/dist/commands/deploy/logs.d.ts.map +0 -1
- package/dist/commands/deploy/organizations.d.ts.map +0 -1
- package/dist/commands/deploy/projects.d.ts.map +0 -1
- package/dist/commands/deploy/shared.d.ts.map +0 -1
- package/dist/commands/deploy/site.d.ts.map +0 -1
- package/dist/commands/deploy/source-control.d.ts.map +0 -1
- package/dist/commands/deploy.d.ts.map +0 -1
- package/dist/commands/history.d.ts.map +0 -1
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/login.d.ts.map +0 -1
- package/dist/commands/logout.d.ts.map +0 -1
- package/dist/commands/recipe/index.d.ts.map +0 -1
- package/dist/commands/serialization/index.d.ts.map +0 -1
- package/dist/commands/serialization/package.d.ts.map +0 -1
- package/dist/commands/shared.d.ts.map +0 -1
- package/dist/commands/shell.d.ts.map +0 -1
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/telemetry.d.ts.map +0 -1
- package/dist/config/env-overrides.d.ts.map +0 -1
- package/dist/config/index.d.ts.map +0 -1
- package/dist/config/modules.d.ts.map +0 -1
- package/dist/config/paths.d.ts.map +0 -1
- package/dist/config/root-config.d.ts.map +0 -1
- package/dist/config/types.d.ts.map +0 -1
- package/dist/config/validation.d.ts.map +0 -1
- package/dist/deploy/api/common/headers.d.ts.map +0 -1
- package/dist/deploy/api/common/index.d.ts +0 -4
- package/dist/deploy/api/common/index.d.ts.map +0 -1
- package/dist/deploy/api/common/index.js +0 -19
- package/dist/deploy/api/common/request.d.ts.map +0 -1
- package/dist/deploy/api/common/types.d.ts.map +0 -1
- package/dist/deploy/api/common.d.ts +0 -2
- package/dist/deploy/api/common.d.ts.map +0 -1
- package/dist/deploy/api/common.js +0 -17
- package/dist/deploy/api/deployment-logs.d.ts.map +0 -1
- package/dist/deploy/api/deployments.d.ts.map +0 -1
- package/dist/deploy/api/environments.d.ts.map +0 -1
- package/dist/deploy/api/index.d.ts.map +0 -1
- package/dist/deploy/api/logs.d.ts.map +0 -1
- package/dist/deploy/api/organizations.d.ts.map +0 -1
- package/dist/deploy/api/projects.d.ts.map +0 -1
- package/dist/deploy/api/source-control.d.ts.map +0 -1
- package/dist/deploy/api.d.ts.map +0 -1
- package/dist/deploy/tasks/deployment-result.d.ts.map +0 -1
- package/dist/deploy/tasks/deployments.d.ts.map +0 -1
- package/dist/deploy/tasks/editing-host.d.ts.map +0 -1
- package/dist/deploy/tasks/environments.d.ts.map +0 -1
- package/dist/deploy/tasks/index.d.ts +0 -10
- package/dist/deploy/tasks/index.d.ts.map +0 -1
- package/dist/deploy/tasks/index.js +0 -25
- package/dist/deploy/tasks/logs.d.ts.map +0 -1
- package/dist/deploy/tasks/organizations.d.ts.map +0 -1
- package/dist/deploy/tasks/projects.d.ts.map +0 -1
- package/dist/deploy/tasks/shared.d.ts.map +0 -1
- package/dist/deploy/tasks/site-bind.d.ts.map +0 -1
- package/dist/deploy/tasks/site.d.ts.map +0 -1
- package/dist/deploy/tasks/source-control.d.ts.map +0 -1
- package/dist/deploy/tasks/types.d.ts.map +0 -1
- package/dist/deploy/tasks.d.ts +0 -3
- package/dist/deploy/tasks.d.ts.map +0 -1
- package/dist/deploy/tasks.js +0 -18
- package/dist/recipe/api/auth.d.ts.map +0 -1
- package/dist/recipe/api/authoring-client.d.ts.map +0 -1
- package/dist/recipe/api/client.d.ts.map +0 -1
- package/dist/recipe/api/graphql.d.ts.map +0 -1
- package/dist/recipe/api/ref-encoding.d.ts.map +0 -1
- package/dist/recipe/api/site-discovery.d.ts.map +0 -1
- package/dist/recipe/api/sites-client.d.ts.map +0 -1
- package/dist/recipe/cache.d.ts.map +0 -1
- package/dist/recipe/compile/component-section.d.ts.map +0 -1
- package/dist/recipe/compile/component-template.d.ts.map +0 -1
- package/dist/recipe/compile/content-item.d.ts.map +0 -1
- package/dist/recipe/compile/content-template.d.ts.map +0 -1
- package/dist/recipe/compile/enumeration.d.ts.map +0 -1
- package/dist/recipe/compile/page-design.d.ts.map +0 -1
- package/dist/recipe/compile/parameters-template.d.ts +0 -14
- package/dist/recipe/compile/parameters-template.d.ts.map +0 -1
- package/dist/recipe/compile/parameters-template.js +0 -92
- package/dist/recipe/compile/partial-design.d.ts.map +0 -1
- package/dist/recipe/compile/section-definition.d.ts.map +0 -1
- package/dist/recipe/compile/shared.d.ts.map +0 -1
- package/dist/recipe/compile/site-template.d.ts.map +0 -1
- package/dist/recipe/compile/site.d.ts.map +0 -1
- package/dist/recipe/compile.d.ts.map +0 -1
- package/dist/recipe/execute.d.ts.map +0 -1
- package/dist/recipe/guids.d.ts.map +0 -1
- package/dist/recipe/index.d.ts.map +0 -1
- package/dist/recipe/io.d.ts.map +0 -1
- package/dist/recipe/ir/operations.d.ts.map +0 -1
- package/dist/recipe/ir/sitecore-templates.d.ts.map +0 -1
- package/dist/recipe/layout/emit.d.ts.map +0 -1
- package/dist/recipe/layout/templates-mapping.d.ts.map +0 -1
- package/dist/recipe/plan.d.ts.map +0 -1
- package/dist/recipe/policy.d.ts.map +0 -1
- package/dist/recipe/rollback.d.ts.map +0 -1
- package/dist/recipe/schema/field-types.d.ts.map +0 -1
- package/dist/recipe/schema/recipe.d.ts.map +0 -1
- package/dist/recipe/schema/source-fields.d.ts.map +0 -1
- package/dist/recipe/tasks/compile.d.ts.map +0 -1
- package/dist/recipe/tasks/diff.d.ts.map +0 -1
- package/dist/recipe/tasks/index.d.ts +0 -9
- package/dist/recipe/tasks/index.d.ts.map +0 -1
- package/dist/recipe/tasks/index.js +0 -13
- package/dist/recipe/tasks/placeholder-allow.d.ts.map +0 -1
- package/dist/recipe/tasks/plan.d.ts.map +0 -1
- package/dist/recipe/tasks/prune-defaults.d.ts.map +0 -1
- package/dist/recipe/tasks/push.d.ts.map +0 -1
- package/dist/recipe/tasks/shared.d.ts.map +0 -1
- package/dist/recipe/validate.d.ts.map +0 -1
- package/dist/serialization/commands.d.ts.map +0 -1
- package/dist/serialization/compare.d.ts.map +0 -1
- package/dist/serialization/field-filter.d.ts.map +0 -1
- package/dist/serialization/filesystem-store/constants.d.ts.map +0 -1
- package/dist/serialization/filesystem-store/index.d.ts +0 -4
- package/dist/serialization/filesystem-store/index.d.ts.map +0 -1
- package/dist/serialization/filesystem-store/index.js +0 -15
- package/dist/serialization/filesystem-store/items.d.ts.map +0 -1
- package/dist/serialization/filesystem-store/roles.d.ts.map +0 -1
- package/dist/serialization/filesystem-store/users.d.ts.map +0 -1
- package/dist/serialization/filesystem-store/utils.d.ts.map +0 -1
- package/dist/serialization/filesystem-store.d.ts +0 -2
- package/dist/serialization/filesystem-store.d.ts.map +0 -1
- package/dist/serialization/filesystem-store.js +0 -17
- package/dist/serialization/item-path.d.ts.map +0 -1
- package/dist/serialization/path-provider.d.ts.map +0 -1
- package/dist/serialization/signature.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/auth.d.ts +0 -31
- package/dist/serialization/sitecore-api/auth.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/auth.js +0 -319
- package/dist/serialization/sitecore-api/graphql.d.ts +0 -12
- package/dist/serialization/sitecore-api/graphql.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/history.d.ts +0 -9
- package/dist/serialization/sitecore-api/history.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/index.d.ts +0 -7
- package/dist/serialization/sitecore-api/index.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/index.js +0 -22
- package/dist/serialization/sitecore-api/items.d.ts +0 -8
- package/dist/serialization/sitecore-api/items.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/items.js +0 -132
- package/dist/serialization/sitecore-api/publish.d.ts +0 -14
- package/dist/serialization/sitecore-api/publish.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/publish.js +0 -43
- package/dist/serialization/sitecore-api/roles.d.ts +0 -9
- package/dist/serialization/sitecore-api/roles.d.ts.map +0 -1
- package/dist/serialization/sitecore-api/users.d.ts +0 -9
- package/dist/serialization/sitecore-api/users.d.ts.map +0 -1
- package/dist/serialization/sitecore-api.d.ts +0 -2
- package/dist/serialization/sitecore-api.d.ts.map +0 -1
- package/dist/serialization/sitecore-api.js +0 -17
- package/dist/serialization/tasks/diff.d.ts.map +0 -1
- package/dist/serialization/tasks/env/constants.d.ts.map +0 -1
- package/dist/serialization/tasks/env/deploy-token.d.ts.map +0 -1
- package/dist/serialization/tasks/env/index.d.ts +0 -5
- package/dist/serialization/tasks/env/index.d.ts.map +0 -1
- package/dist/serialization/tasks/env/index.js +0 -11
- package/dist/serialization/tasks/env/init/auth.d.ts.map +0 -1
- package/dist/serialization/tasks/env/init/deploy-lookup.d.ts.map +0 -1
- package/dist/serialization/tasks/env/init.d.ts.map +0 -1
- package/dist/serialization/tasks/env/logout.d.ts.map +0 -1
- package/dist/serialization/tasks/env/status.d.ts.map +0 -1
- package/dist/serialization/tasks/env.d.ts +0 -2
- package/dist/serialization/tasks/env.d.ts.map +0 -1
- package/dist/serialization/tasks/env.js +0 -17
- package/dist/serialization/tasks/helpers/collect.d.ts.map +0 -1
- package/dist/serialization/tasks/helpers/commands.d.ts.map +0 -1
- package/dist/serialization/tasks/helpers/filesystem.d.ts.map +0 -1
- package/dist/serialization/tasks/helpers/index.d.ts +0 -6
- package/dist/serialization/tasks/helpers/index.d.ts.map +0 -1
- package/dist/serialization/tasks/helpers/index.js +0 -13
- package/dist/serialization/tasks/helpers/items.d.ts.map +0 -1
- package/dist/serialization/tasks/helpers/sitecore.d.ts.map +0 -1
- package/dist/serialization/tasks/helpers.d.ts +0 -2
- package/dist/serialization/tasks/helpers.d.ts.map +0 -1
- package/dist/serialization/tasks/helpers.js +0 -17
- package/dist/serialization/tasks/index.d.ts +0 -8
- package/dist/serialization/tasks/index.d.ts.map +0 -1
- package/dist/serialization/tasks/index.js +0 -19
- package/dist/serialization/tasks/info.d.ts.map +0 -1
- package/dist/serialization/tasks/package.d.ts.map +0 -1
- package/dist/serialization/tasks/pull.d.ts.map +0 -1
- package/dist/serialization/tasks/push.d.ts.map +0 -1
- package/dist/serialization/tasks/roles.d.ts.map +0 -1
- package/dist/serialization/tasks/shared.d.ts.map +0 -1
- package/dist/serialization/tasks/types.d.ts.map +0 -1
- package/dist/serialization/tasks/users.d.ts.map +0 -1
- package/dist/serialization/tasks/validate.d.ts.map +0 -1
- package/dist/serialization/tasks/watch.d.ts.map +0 -1
- package/dist/serialization/tasks.d.ts +0 -4
- package/dist/serialization/tasks.d.ts.map +0 -1
- package/dist/serialization/tasks.js +0 -19
- package/dist/serialization/tree-spec.d.ts.map +0 -1
- package/dist/serialization/types.d.ts.map +0 -1
- package/dist/serialization/wildcard.d.ts.map +0 -1
- package/dist/serialization/yaml.d.ts.map +0 -1
- package/dist/shared/browser.d.ts.map +0 -1
- package/dist/shared/cli-options.d.ts.map +0 -1
- package/dist/shared/cli-tasks.d.ts.map +0 -1
- package/dist/shared/config-template.d.ts.map +0 -1
- package/dist/shared/env.d.ts +0 -28
- package/dist/shared/env.d.ts.map +0 -1
- package/dist/shared/env.js +0 -38
- package/dist/shared/errors.d.ts.map +0 -1
- package/dist/shared/graphql.d.ts.map +0 -1
- package/dist/shared/history.d.ts.map +0 -1
- package/dist/shared/keychain.d.ts.map +0 -1
- package/dist/shared/logger.d.ts.map +0 -1
- package/dist/shared/output.d.ts.map +0 -1
- package/dist/shared/prompt.d.ts.map +0 -1
- package/dist/shared/redact.d.ts.map +0 -1
- package/dist/shared/spinner.d.ts.map +0 -1
- package/dist/shared/style.d.ts.map +0 -1
- package/dist/shared/telemetry.d.ts.map +0 -1
- package/dist/shared/validate.d.ts.map +0 -1
- package/dist/sites/api/collections.d.ts.map +0 -1
- package/dist/sites/api/index.d.ts +0 -26
- package/dist/sites/api/index.d.ts.map +0 -1
- package/dist/sites/api/index.js +0 -55
- package/dist/sites/api/jobs.d.ts.map +0 -1
- package/dist/sites/api/languages.d.ts.map +0 -1
- package/dist/sites/api/request.d.ts.map +0 -1
- package/dist/sites/api/sites.d.ts.map +0 -1
- package/dist/sites/api/types.d.ts.map +0 -1
- /package/dist/serialization/{sitecore-api → api}/graphql.js +0 -0
- /package/dist/serialization/{sitecore-api → api}/history.js +0 -0
- /package/dist/serialization/{sitecore-api → api}/roles.js +0 -0
- /package/dist/serialization/{sitecore-api → api}/users.js +0 -0
|
@@ -0,0 +1,296 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* `scai policy …` — inspect and manage the workspace environment-policy
|
|
4
|
+
* guardrails. See docs/policy-and-guardrails.md.
|
|
5
|
+
*
|
|
6
|
+
* The workspace policy is an operator-owned, deny-by-default allowlist of
|
|
7
|
+
* the Sitecore environments scai may operate against. It is normally
|
|
8
|
+
* auto-populated (`scai setup login`, `scai mcp serve`); these commands
|
|
9
|
+
* are for inspecting it and for the deliberate acts — enrolling a second
|
|
10
|
+
* environment, re-pinning after a legitimate tenant change, revoking one.
|
|
11
|
+
*
|
|
12
|
+
* These commands deliberately read the config directly rather than going
|
|
13
|
+
* through `resolveEnvironment`: they run before/around enrollment and
|
|
14
|
+
* must not trip the very gate they manage.
|
|
15
|
+
*/
|
|
16
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
+
exports.createPolicyCommand = void 0;
|
|
18
|
+
const commander_1 = require("commander");
|
|
19
|
+
const shared_1 = require("./shared");
|
|
20
|
+
const cli_tasks_1 = require("../shared/cli-tasks");
|
|
21
|
+
const root_config_1 = require("../config/root-config");
|
|
22
|
+
const errors_1 = require("../shared/errors");
|
|
23
|
+
const policy_1 = require("../policy");
|
|
24
|
+
const POLICY_WRITE_FAILED_HINT = "Check that ~/.sitecoreai is writable, or set SITECOREAI_POLICY_HOME.";
|
|
25
|
+
/**
|
|
26
|
+
* Resolve an env profile's raw config without going through
|
|
27
|
+
* `resolveEnvironment` (which would enforce the policy).
|
|
28
|
+
*/
|
|
29
|
+
const resolveEnvProfile = (options, envNameArg) => {
|
|
30
|
+
const configPath = options.config ?? process.cwd();
|
|
31
|
+
const file = (0, root_config_1.readRootConfigurationFile)(configPath);
|
|
32
|
+
const envName = envNameArg ?? options.environmentName ?? file.config.defaultEnvProfile;
|
|
33
|
+
if (!envName) {
|
|
34
|
+
throw (0, errors_1.createScaiError)("An environment name is required.", "INPUT_INVALID", {
|
|
35
|
+
hint: "Pass the environment name, or set defaultEnvProfile in sitecoreai.cli.json.",
|
|
36
|
+
});
|
|
37
|
+
}
|
|
38
|
+
const environment = (0, root_config_1.readRootConfiguration)(configPath, envName).environments[envName];
|
|
39
|
+
if (!environment) {
|
|
40
|
+
throw (0, errors_1.createScaiError)(`Environment '${envName}' is not configured.`, "ENV_NOT_FOUND", {
|
|
41
|
+
hint: "Run 'scai setup init' to configure it before enrolling it in the policy.",
|
|
42
|
+
});
|
|
43
|
+
}
|
|
44
|
+
return { envName, environment };
|
|
45
|
+
};
|
|
46
|
+
const runPolicyShow = async (options) => {
|
|
47
|
+
const logger = (0, cli_tasks_1.toLogger)(options);
|
|
48
|
+
const policy = (0, policy_1.readWorkspacePolicy)();
|
|
49
|
+
const policyPath = (0, policy_1.resolveUserPolicyPath)();
|
|
50
|
+
let repoPolicy = null;
|
|
51
|
+
try {
|
|
52
|
+
const rootDir = (0, root_config_1.readRootConfigurationFile)(options.config ?? process.cwd()).rootDir;
|
|
53
|
+
repoPolicy = (0, policy_1.readRepoPolicy)(rootDir);
|
|
54
|
+
}
|
|
55
|
+
catch {
|
|
56
|
+
// No config file resolvable from here — the repo policy is simply absent.
|
|
57
|
+
}
|
|
58
|
+
if (logger.isJson()) {
|
|
59
|
+
logger.json({
|
|
60
|
+
managed: policy !== null,
|
|
61
|
+
policyPath,
|
|
62
|
+
environments: policy
|
|
63
|
+
? Object.entries(policy.environments).map(([name, entry]) => ({ name, ...entry }))
|
|
64
|
+
: [],
|
|
65
|
+
repoPolicy,
|
|
66
|
+
});
|
|
67
|
+
return;
|
|
68
|
+
}
|
|
69
|
+
if (!policy) {
|
|
70
|
+
logger.info("Workspace policy: unmanaged — no policy file.", "yellow");
|
|
71
|
+
logger.info("Environment guardrails are off. Run 'scai policy init' (or 'scai setup login') to enable them.");
|
|
72
|
+
return;
|
|
73
|
+
}
|
|
74
|
+
logger.info(`Workspace policy: ${policyPath}`, "cyan");
|
|
75
|
+
const names = Object.keys(policy.environments).sort((a, b) => a.localeCompare(b));
|
|
76
|
+
if (names.length === 0) {
|
|
77
|
+
logger.warn("No environments are enrolled — every environment is currently denied.");
|
|
78
|
+
}
|
|
79
|
+
for (const name of names) {
|
|
80
|
+
const entry = policy.environments[name];
|
|
81
|
+
const id = entry.identity;
|
|
82
|
+
const idParts = [
|
|
83
|
+
id.organizationId && `org=${id.organizationId}`,
|
|
84
|
+
id.projectId && `project=${id.projectId}`,
|
|
85
|
+
id.environmentId && `environment=${id.environmentId}`,
|
|
86
|
+
id.host && `host=${id.host}`,
|
|
87
|
+
].filter(Boolean);
|
|
88
|
+
logger.info(`\n ${name}`, "green");
|
|
89
|
+
logger.info(` ceiling: ${entry.ceiling}`);
|
|
90
|
+
logger.info(` mint: ${entry.mintCredentials ? "allowed" : "denied"}`);
|
|
91
|
+
logger.info(` ciWrites: ${entry.ciWrites ? "allowed" : "denied"}`);
|
|
92
|
+
logger.info(` step-up: ${entry.stepUpMinutes ? `${entry.stepUpMinutes} min` : "off"}`);
|
|
93
|
+
logger.info(` enrolled: ${entry.enrolledAt} (via ${entry.enrolledVia})`);
|
|
94
|
+
logger.info(` identity: ${idParts.length > 0 ? idParts.join(", ") : "(none pinned)"}`);
|
|
95
|
+
}
|
|
96
|
+
if (repoPolicy) {
|
|
97
|
+
logger.info("\n repo policy (scai.policy.json) is narrowing this workspace:", "magenta");
|
|
98
|
+
if (repoPolicy.allowEnvironments) {
|
|
99
|
+
logger.info(` allowEnvironments: ${repoPolicy.allowEnvironments.join(", ")}`);
|
|
100
|
+
}
|
|
101
|
+
for (const [name, entry] of Object.entries(repoPolicy.environments ?? {})) {
|
|
102
|
+
if (entry.ceiling) {
|
|
103
|
+
logger.info(` ${name}: ceiling lowered to ${entry.ceiling}`);
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
};
|
|
108
|
+
const runPolicyInit = async (options) => {
|
|
109
|
+
const logger = (0, cli_tasks_1.toLogger)(options);
|
|
110
|
+
const wasManaged = (0, policy_1.readWorkspacePolicy)() !== null;
|
|
111
|
+
const { envName, environment } = resolveEnvProfile(options);
|
|
112
|
+
const result = (0, policy_1.enrollEnvironment)({ envName, environment, via: "policy-init" });
|
|
113
|
+
if (!result.written) {
|
|
114
|
+
throw (0, errors_1.createScaiError)("Could not write the workspace policy.", "CONFIG_INVALID", {
|
|
115
|
+
hint: POLICY_WRITE_FAILED_HINT,
|
|
116
|
+
});
|
|
117
|
+
}
|
|
118
|
+
if (logger.isJson()) {
|
|
119
|
+
logger.json({ envName, created: !wasManaged, policyPath: (0, policy_1.resolveUserPolicyPath)() });
|
|
120
|
+
return;
|
|
121
|
+
}
|
|
122
|
+
if (!wasManaged) {
|
|
123
|
+
logger.info(`Workspace policy created at ${(0, policy_1.resolveUserPolicyPath)()}.`, "cyan");
|
|
124
|
+
}
|
|
125
|
+
logger.info(`Environment '${envName}' enrolled — guardrails are active.`, "green");
|
|
126
|
+
};
|
|
127
|
+
const runPolicyAllow = async (envNameArg, options) => {
|
|
128
|
+
const logger = (0, cli_tasks_1.toLogger)(options);
|
|
129
|
+
const { envName, environment } = resolveEnvProfile(options, envNameArg);
|
|
130
|
+
const result = (0, policy_1.enrollEnvironment)({ envName, environment, via: "policy-allow" });
|
|
131
|
+
if (!result.written) {
|
|
132
|
+
throw (0, errors_1.createScaiError)("Could not write the workspace policy.", "CONFIG_INVALID", {
|
|
133
|
+
hint: POLICY_WRITE_FAILED_HINT,
|
|
134
|
+
});
|
|
135
|
+
}
|
|
136
|
+
const action = result.alreadyEnrolled ? "refreshed" : "enrolled";
|
|
137
|
+
if (logger.isJson()) {
|
|
138
|
+
logger.json({ envName, action });
|
|
139
|
+
return;
|
|
140
|
+
}
|
|
141
|
+
logger.info(`Environment '${envName}' ${action} in the workspace policy.`, "green");
|
|
142
|
+
};
|
|
143
|
+
const runPolicyRemove = async (envNameArg, options) => {
|
|
144
|
+
const logger = (0, cli_tasks_1.toLogger)(options);
|
|
145
|
+
const configPath = options.config ?? process.cwd();
|
|
146
|
+
const envName = envNameArg ??
|
|
147
|
+
options.environmentName ??
|
|
148
|
+
(0, root_config_1.readRootConfigurationFile)(configPath).config.defaultEnvProfile;
|
|
149
|
+
if (!envName) {
|
|
150
|
+
throw (0, errors_1.createScaiError)("An environment name is required.", "INPUT_INVALID", {
|
|
151
|
+
hint: "Pass the environment name to remove from the allowlist.",
|
|
152
|
+
});
|
|
153
|
+
}
|
|
154
|
+
const removed = (0, policy_1.unenrollEnvironment)(envName);
|
|
155
|
+
if (logger.isJson()) {
|
|
156
|
+
logger.json({ envName, action: removed ? "removed" : "not-enrolled" });
|
|
157
|
+
return;
|
|
158
|
+
}
|
|
159
|
+
if (removed) {
|
|
160
|
+
logger.info(`Environment '${envName}' removed from the workspace policy.`, "green");
|
|
161
|
+
}
|
|
162
|
+
else {
|
|
163
|
+
logger.warn(`Environment '${envName}' was not enrolled — nothing to remove.`);
|
|
164
|
+
}
|
|
165
|
+
};
|
|
166
|
+
const runPolicyTrust = async (envNameArg, options) => {
|
|
167
|
+
const logger = (0, cli_tasks_1.toLogger)(options);
|
|
168
|
+
const { envName, environment } = resolveEnvProfile(options, envNameArg);
|
|
169
|
+
const policy = (0, policy_1.readWorkspacePolicy)();
|
|
170
|
+
if (!policy || !policy.environments[envName]) {
|
|
171
|
+
throw (0, errors_1.createScaiError)(`Environment '${envName}' is not enrolled in the workspace policy.`, "POLICY_DENIED", { hint: `Run 'scai policy allow ${envName}' to enroll it first.` });
|
|
172
|
+
}
|
|
173
|
+
(0, policy_1.repinEnvironment)(envName, environment);
|
|
174
|
+
if (logger.isJson()) {
|
|
175
|
+
logger.json({ envName, action: "re-pinned" });
|
|
176
|
+
return;
|
|
177
|
+
}
|
|
178
|
+
logger.info(`Environment '${envName}' identity re-pinned to the current sitecoreai.cli.json.`, "green");
|
|
179
|
+
};
|
|
180
|
+
const runPolicySet = async (envNameArg, options) => {
|
|
181
|
+
const logger = (0, cli_tasks_1.toLogger)(options);
|
|
182
|
+
const configPath = options.config ?? process.cwd();
|
|
183
|
+
const envName = envNameArg ??
|
|
184
|
+
options.environmentName ??
|
|
185
|
+
(0, root_config_1.readRootConfigurationFile)(configPath).config.defaultEnvProfile;
|
|
186
|
+
if (!envName) {
|
|
187
|
+
throw (0, errors_1.createScaiError)("An environment name is required.", "INPUT_INVALID", {
|
|
188
|
+
hint: "Pass the environment name to tune.",
|
|
189
|
+
});
|
|
190
|
+
}
|
|
191
|
+
const flags = {};
|
|
192
|
+
if (options.ceiling) {
|
|
193
|
+
flags.ceiling = options.ceiling;
|
|
194
|
+
}
|
|
195
|
+
if (options.ciWrites) {
|
|
196
|
+
flags.ciWrites = options.ciWrites === "on";
|
|
197
|
+
}
|
|
198
|
+
if (options.mint) {
|
|
199
|
+
flags.mintCredentials = options.mint === "on";
|
|
200
|
+
}
|
|
201
|
+
if (options.stepUp) {
|
|
202
|
+
if (options.stepUp.toLowerCase() === "off") {
|
|
203
|
+
flags.stepUpMinutes = null;
|
|
204
|
+
}
|
|
205
|
+
else {
|
|
206
|
+
const minutes = Number(options.stepUp);
|
|
207
|
+
if (!Number.isInteger(minutes) || minutes <= 0) {
|
|
208
|
+
throw (0, errors_1.createScaiError)("--step-up must be a positive whole number of minutes, or 'off'.", "INPUT_INVALID", { hint: "Example: scai policy set prod --step-up 60" });
|
|
209
|
+
}
|
|
210
|
+
flags.stepUpMinutes = minutes;
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
if (Object.keys(flags).length === 0) {
|
|
214
|
+
throw (0, errors_1.createScaiError)("Nothing to change.", "INPUT_INVALID", {
|
|
215
|
+
hint: "Pass at least one of --ceiling, --ci-writes, or --mint.",
|
|
216
|
+
});
|
|
217
|
+
}
|
|
218
|
+
const updated = (0, policy_1.setEnvironmentFlags)(envName, flags);
|
|
219
|
+
if (!updated) {
|
|
220
|
+
throw (0, errors_1.createScaiError)(`Environment '${envName}' is not enrolled in the workspace policy.`, "POLICY_DENIED", { hint: `Run 'scai policy allow ${envName}' to enroll it first.` });
|
|
221
|
+
}
|
|
222
|
+
if (logger.isJson()) {
|
|
223
|
+
logger.json({ envName, ...flags });
|
|
224
|
+
return;
|
|
225
|
+
}
|
|
226
|
+
logger.info(`Updated the workspace policy for '${envName}'.`, "green");
|
|
227
|
+
};
|
|
228
|
+
const createPolicyCommand = () => {
|
|
229
|
+
const command = new commander_1.Command("policy").description("Inspect and manage the workspace environment-policy guardrails — the allowlist of Sitecore environments scai may operate against.");
|
|
230
|
+
const show = new commander_1.Command("show").description("Show the effective workspace policy and the enrolled environments.");
|
|
231
|
+
(0, shared_1.addConfigOption)(show);
|
|
232
|
+
(0, shared_1.addVerbosityOptions)(show);
|
|
233
|
+
show.action(async (options) => runPolicyShow(options));
|
|
234
|
+
const init = new commander_1.Command("init").description("Create the workspace policy, enrolling the default environment.");
|
|
235
|
+
(0, shared_1.addConfigOption)(init);
|
|
236
|
+
(0, shared_1.addEnvironmentOption)(init);
|
|
237
|
+
(0, shared_1.addVerbosityOptions)(init);
|
|
238
|
+
init.action(async (options) => runPolicyInit(options));
|
|
239
|
+
const allow = new commander_1.Command("allow")
|
|
240
|
+
.description("Enroll an environment into the workspace-policy allowlist.")
|
|
241
|
+
.argument("[env]", "Environment profile name (defaults to the configured default).");
|
|
242
|
+
(0, shared_1.addConfigOption)(allow);
|
|
243
|
+
(0, shared_1.addVerbosityOptions)(allow);
|
|
244
|
+
allow.action(async (env, options) => runPolicyAllow(env, options));
|
|
245
|
+
const remove = new commander_1.Command("remove")
|
|
246
|
+
.aliases(["rm"])
|
|
247
|
+
.description("Remove an environment from the workspace-policy allowlist.")
|
|
248
|
+
.argument("[env]", "Environment profile name (defaults to the configured default).");
|
|
249
|
+
(0, shared_1.addConfigOption)(remove);
|
|
250
|
+
(0, shared_1.addVerbosityOptions)(remove);
|
|
251
|
+
remove.action(async (env, options) => runPolicyRemove(env, options));
|
|
252
|
+
const trust = new commander_1.Command("trust")
|
|
253
|
+
.description("Re-pin an enrolled environment's tenant identity to the current config, after a legitimate change.")
|
|
254
|
+
.argument("[env]", "Environment profile name (defaults to the configured default).");
|
|
255
|
+
(0, shared_1.addConfigOption)(trust);
|
|
256
|
+
(0, shared_1.addVerbosityOptions)(trust);
|
|
257
|
+
trust.action(async (env, options) => runPolicyTrust(env, options));
|
|
258
|
+
const set = new commander_1.Command("set")
|
|
259
|
+
.description("Tune an enrolled environment — ceiling, CI-write permission, mint eligibility.")
|
|
260
|
+
.argument("[env]", "Environment profile name (defaults to the configured default).")
|
|
261
|
+
.addOption(new commander_1.Option("--ceiling <tier>", "Cap the environment at this risk tier.").choices([
|
|
262
|
+
"read",
|
|
263
|
+
"write",
|
|
264
|
+
"destructive",
|
|
265
|
+
"mint",
|
|
266
|
+
]))
|
|
267
|
+
.addOption(new commander_1.Option("--ci-writes <state>", "Allow or deny write/destructive operations from a CI caller.").choices(["on", "off"]))
|
|
268
|
+
.addOption(new commander_1.Option("--mint <state>", "Allow or deny `scai setup client create` minting on this environment.").choices(["on", "off"]))
|
|
269
|
+
.addOption(new commander_1.Option("--step-up <minutes>", "Require a deploy token authenticated within N minutes for destructive/mint ops; 'off' to clear."));
|
|
270
|
+
(0, shared_1.addConfigOption)(set);
|
|
271
|
+
(0, shared_1.addVerbosityOptions)(set);
|
|
272
|
+
set.action(async (env, options) => runPolicySet(env, options));
|
|
273
|
+
command.addCommand(show);
|
|
274
|
+
command.addCommand(init);
|
|
275
|
+
command.addCommand(allow);
|
|
276
|
+
command.addCommand(set);
|
|
277
|
+
command.addCommand(remove);
|
|
278
|
+
command.addCommand(trust);
|
|
279
|
+
command.addHelpText("after", [
|
|
280
|
+
"",
|
|
281
|
+
"The workspace policy is a deny-by-default allowlist of the environments",
|
|
282
|
+
"scai may operate against, kept at ~/.sitecoreai/policy.json. It is",
|
|
283
|
+
"normally auto-populated by 'scai setup login' and 'scai mcp serve' — a",
|
|
284
|
+
"second environment is the one thing that needs a deliberate 'allow'.",
|
|
285
|
+
"",
|
|
286
|
+
"Examples:",
|
|
287
|
+
" $ scai policy show # what is allowed right now",
|
|
288
|
+
" $ scai policy allow staging # enroll a second environment",
|
|
289
|
+
" $ scai policy set staging --ci-writes on # let a CI caller write here",
|
|
290
|
+
" $ scai policy trust staging # re-pin after a legitimate tenant change",
|
|
291
|
+
" $ scai policy remove staging # revoke an environment",
|
|
292
|
+
"",
|
|
293
|
+
].join("\n"));
|
|
294
|
+
return command;
|
|
295
|
+
};
|
|
296
|
+
exports.createPolicyCommand = createPolicyCommand;
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPublishAllCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const all_1 = require("../../publishing/tasks/all");
|
|
6
|
+
const shared_1 = require("../shared");
|
|
7
|
+
const createPublishAllCommand = () => {
|
|
8
|
+
const command = new commander_1.Command("all")
|
|
9
|
+
.description("Whole-environment republish to Edge (Tier 2). Publishes every item across every site in the environment — empirically verified against the API (the `xmc.site.mode` field is named for legacy XM reasons; there is no API surface to scope to a single site). To publish just one site's subtree, use `scai content publish item --site <name> --include-subitems`. MAXIMUM gating: always requires --confirm-token AND a typed env-name confirmation, regardless of whether the env is flagged production. Use sparingly — needed after big serialization pushes, rollbacks, or migrations where Edge has drifted from CM.")
|
|
10
|
+
.option("-l, --languages <list>", "Literal language list. Mutually exclusive with --languages-from-site / --all-tenant-languages.", (value) => value
|
|
11
|
+
.split(",")
|
|
12
|
+
.map((s) => s.trim())
|
|
13
|
+
.filter(Boolean), [])
|
|
14
|
+
.option("--languages-from-site <name>", "Resolve locales from the named site (Sites API). NOTE: the publish is still whole-environment — this flag scopes locales only, not items.")
|
|
15
|
+
.option("--all-tenant-languages", "Resolve locales to every language registered in the tenant.")
|
|
16
|
+
.addOption(new commander_1.Option("--mode <mode>", "Whole-environment publish mode")
|
|
17
|
+
.choices(["Republish", "Smart", "Incremental"])
|
|
18
|
+
.default("Republish"))
|
|
19
|
+
.option("--confirm-token <token>", "Scope token from a previous dry-run. Always required for the real call.")
|
|
20
|
+
.option("--yes", "Skip the typed env-name prompt (CI use). Still requires --confirm-token.")
|
|
21
|
+
.option("--no-wait", "In --non-interactive mode (default behavior is to watch), don't wait for the job to finish — submit and exit. The submitted jobId is logged so CI can poll later.")
|
|
22
|
+
.addOption(new commander_1.Option("--poll-interval-s <seconds>", "Polling interval when watching in non-interactive mode (default 5, clamped to [2, 60]).").argParser((v) => Number.parseInt(v, 10)))
|
|
23
|
+
.addOption(new commander_1.Option("--timeout-s <seconds>", "Watch timeout in seconds when waiting on the job in non-interactive mode (default 1800).").argParser((v) => Number.parseInt(v, 10)))
|
|
24
|
+
.addOption(new commander_1.Option("--name <name>", "Override the API job name."))
|
|
25
|
+
.addOption(new commander_1.Option("--source <source>", "Override the API source field. Default `scai`."));
|
|
26
|
+
(0, shared_1.addEnvironmentOption)(command);
|
|
27
|
+
(0, shared_1.addConfigOption)(command);
|
|
28
|
+
(0, shared_1.addWhatIfOption)(command);
|
|
29
|
+
(0, shared_1.addAllowWriteOption)(command);
|
|
30
|
+
(0, shared_1.addVerbosityOptions)(command);
|
|
31
|
+
command.addHelpText("after", "\nFlow (always two steps, no shortcut even on sandbox):\n" +
|
|
32
|
+
" 1. Dry-run: scai content publish all -n <env>\n" +
|
|
33
|
+
" → prints scope summary + a 5-minute scope token\n" +
|
|
34
|
+
" 2. Real call: scai content publish all -n <env> --allow-write --confirm-token <token>\n" +
|
|
35
|
+
" → prompts to type the env name verbatim (skippable with --yes for CI)\n");
|
|
36
|
+
command.action(async (options) => {
|
|
37
|
+
await (0, all_1.runPublishAll)(options);
|
|
38
|
+
});
|
|
39
|
+
return command;
|
|
40
|
+
};
|
|
41
|
+
exports.createPublishAllCommand = createPublishAllCommand;
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPublishCancelCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const cancel_1 = require("../../publishing/tasks/cancel");
|
|
6
|
+
const shared_1 = require("../shared");
|
|
7
|
+
const createPublishCancelCommand = () => {
|
|
8
|
+
const command = new commander_1.Command("cancel")
|
|
9
|
+
.description("Cancel a queued or running publish job. Pass <jobId> for one, or --all-queued to sweep every queued/running job in the env (gated behind a typed env-name confirmation). The API only honours cancellation for Queued / Running jobs; Completed / Failed / already-Cancelled jobs cannot be cancelled.")
|
|
10
|
+
.argument("[jobId]", "Publish job id returned by `scai content publish item` / `scai content publish all`. Omit when using --all-queued.")
|
|
11
|
+
.option("--all-queued", "Cancel every queued and running publish job in the env. Requires a typed env-name confirmation (or --yes in CI).")
|
|
12
|
+
.option("--yes", "Skip the typed env-name prompt when using --all-queued (CI use).");
|
|
13
|
+
(0, shared_1.addEnvironmentOption)(command);
|
|
14
|
+
(0, shared_1.addConfigOption)(command);
|
|
15
|
+
(0, shared_1.addVerbosityOptions)(command);
|
|
16
|
+
command.addHelpText("after", "\nExamples:\n" +
|
|
17
|
+
" $ scai content publish cancel job_abc123 -n sandbox\n" +
|
|
18
|
+
" $ scai content publish cancel --all-queued -n sandbox\n" +
|
|
19
|
+
" $ scai content publish cancel --all-queued -n sandbox --yes # CI / scripted use\n");
|
|
20
|
+
command.action(async (jobId, options) => {
|
|
21
|
+
await (0, cancel_1.runPublishCancel)({ ...options, jobId });
|
|
22
|
+
});
|
|
23
|
+
return command;
|
|
24
|
+
};
|
|
25
|
+
exports.createPublishCancelCommand = createPublishCancelCommand;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPublishHistoryCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const history_1 = require("../../publishing/tasks/history");
|
|
6
|
+
const shared_1 = require("../shared");
|
|
7
|
+
const parseIntOpt = (value) => {
|
|
8
|
+
const n = Number.parseInt(value, 10);
|
|
9
|
+
if (!Number.isFinite(n) || n <= 0) {
|
|
10
|
+
throw new Error(`Expected positive integer, got '${value}'.`);
|
|
11
|
+
}
|
|
12
|
+
return n;
|
|
13
|
+
};
|
|
14
|
+
const createPublishHistoryCommand = () => {
|
|
15
|
+
const command = new commander_1.Command("history")
|
|
16
|
+
.description("Read the local publishing audit log at ~/.sitecoreai/audit.log (overridable via SITECOREAI_AUDIT_LOG). Filter by env / time / command / outcome. Use --json for newline-delimited JSON suitable for piping into jq.")
|
|
17
|
+
.option("--env <name>", "Filter to entries from this env (matches scope.envName).")
|
|
18
|
+
.option("--since <spec>", "Filter to entries newer than this. ISO 8601 (e.g. 2026-05-01) or relative (24h, 7d, 30m).")
|
|
19
|
+
.option("--command <substr>", "Substring match against the `command` field (e.g. 'item', 'unpublish', 'content version').")
|
|
20
|
+
.addOption(new commander_1.Option("--outcome <value>", "Filter by outcome.").choices(["ok", "error", "cancelled"]))
|
|
21
|
+
.addOption(new commander_1.Option("--scan-limit <N>", "How many recent entries to scan before filtering (default 500). Increase for deep history searches.").argParser(parseIntOpt))
|
|
22
|
+
.addOption(new commander_1.Option("--limit <N>", "Max entries to print after filtering (default 50).").argParser(parseIntOpt));
|
|
23
|
+
(0, shared_1.addVerbosityOptions)(command);
|
|
24
|
+
command.addHelpText("after", "\nExamples:\n" +
|
|
25
|
+
" $ scai content publish history\n" +
|
|
26
|
+
" $ scai content publish history --env sandbox --since 24h\n" +
|
|
27
|
+
" $ scai content publish history --command 'publish all' --outcome ok\n" +
|
|
28
|
+
" $ scai content publish history --outcome error --json | jq -r '.errorMessage'\n");
|
|
29
|
+
command.action(async (options) => {
|
|
30
|
+
await (0, history_1.runPublishHistory)(options);
|
|
31
|
+
});
|
|
32
|
+
return command;
|
|
33
|
+
};
|
|
34
|
+
exports.createPublishHistoryCommand = createPublishHistoryCommand;
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPublishCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const all_1 = require("./all");
|
|
6
|
+
const cancel_1 = require("./cancel");
|
|
7
|
+
const history_1 = require("./history");
|
|
8
|
+
const item_1 = require("./item");
|
|
9
|
+
const status_1 = require("./status");
|
|
10
|
+
const unpublish_1 = require("./unpublish");
|
|
11
|
+
const createPublishCommand = () => {
|
|
12
|
+
const command = new commander_1.Command("publish").description("Publish content to Experience Edge via the SAI Publishing API. Requires an environment-level automation client (Cloud Portal → Environments → [env] → Automation Clients).");
|
|
13
|
+
command.addCommand((0, item_1.createPublishItemCommand)());
|
|
14
|
+
command.addCommand((0, all_1.createPublishAllCommand)());
|
|
15
|
+
command.addCommand((0, status_1.createPublishStatusCommand)());
|
|
16
|
+
command.addCommand((0, cancel_1.createPublishCancelCommand)());
|
|
17
|
+
command.addCommand((0, unpublish_1.createPublishUnpublishCommand)());
|
|
18
|
+
command.addCommand((0, history_1.createPublishHistoryCommand)());
|
|
19
|
+
command.addHelpText("after", "\nExamples:\n" +
|
|
20
|
+
" $ scai content publish item --item-id <guid> -n <env> # dry-run, prints scope + token\n" +
|
|
21
|
+
" $ scai content publish item --item-id <guid> -n <env> --allow-write # actually publish (non-prod)\n" +
|
|
22
|
+
" $ scai content publish status <jobId> -n <env> # inspect a publish job\n" +
|
|
23
|
+
"\nSetup:\n" +
|
|
24
|
+
" 1. Cloud Portal: Environments → [env] → Automation Clients → Create\n" +
|
|
25
|
+
" 2. Set SITECOREAI_ENV_<NAME>_CLIENT_ID / _CLIENT_SECRET in your shell,\n" +
|
|
26
|
+
" or add clientId/clientSecret to the env profile in sitecoreai.cli.json\n" +
|
|
27
|
+
" 3. scai mints the publishing token transparently with xmcpub.jobs.t:r/w scopes\n");
|
|
28
|
+
return command;
|
|
29
|
+
};
|
|
30
|
+
exports.createPublishCommand = createPublishCommand;
|
|
@@ -0,0 +1,55 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPublishItemCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const item_1 = require("../../publishing/tasks/item");
|
|
6
|
+
const shared_1 = require("../shared");
|
|
7
|
+
const createPublishItemCommand = () => {
|
|
8
|
+
const command = new commander_1.Command("item")
|
|
9
|
+
.description("Publish one or more items in a single job (Tier 1). Items can be addressed by GUID (--items) or by Sitecore content-tree path (--paths). At least one must be provided. Defaults to --what-if dry-run; pass --allow-write to actually publish. Production-tier envs additionally require --confirm-token from a prior dry-run.")
|
|
10
|
+
.option("--items <guid>", "Item ID (GUID) to publish. Repeatable, or pass a comma-separated list.", shared_1.collectList, [])
|
|
11
|
+
.option("--paths <path>", "Item path (e.g. /sitecore/content/Home). Repeatable, or pass a comma-separated list. Resolved to item IDs via Authoring GraphQL before submission.", shared_1.collectList, [])
|
|
12
|
+
.option("--site <name>", "Resolve the named site's content-tree root and add it to the publish target list. By default publishes ONLY the root item; combine with --include-subitems for the whole site.")
|
|
13
|
+
.option("--item-type <type>", "ItemModel.type for the request body. Defaults to `item`.")
|
|
14
|
+
.option("-l, --languages <list>", "Literal language list (e.g. en-US,fr-CA). Mutually exclusive with --languages-from-site / --all-tenant-languages.", shared_1.collectList, [])
|
|
15
|
+
.option("--languages-from-site <name>", "Resolve the language list from the named site's configured languages (via Sites API). Logs the resolved set before submitting.")
|
|
16
|
+
.option("--all-tenant-languages", "Resolve the language list to every language registered in the tenant (via Sites API listLanguages).")
|
|
17
|
+
.option("--include-subitems", "Publish descendants of the items (xmc.items.publishChildren).")
|
|
18
|
+
.option("--include-related", "Publish referenced items (xmc.items.publishRelatedItems).")
|
|
19
|
+
.addOption(new commander_1.Option("--mode <mode>", "Publish mode. `Smart` skips items unchanged since the last publish; `Republish` forces re-emit of every item in the batch. Incremental is whole-environment only and lives on `publish all`.")
|
|
20
|
+
.choices(["Smart", "Republish"])
|
|
21
|
+
.default("Smart"))
|
|
22
|
+
.option("--confirm-token <token>", "Scope token obtained from a previous dry-run. Required on production-tier envs.")
|
|
23
|
+
.option("--yes", "Skip the [y/N] prompt on non-production envs. Has no effect on production-tier — those always require --confirm-token.")
|
|
24
|
+
.addOption(new commander_1.Option("--name <name>", "Override the API job name (the publishing UI label)."))
|
|
25
|
+
.addOption(new commander_1.Option("--source <source>", "Override the API source field. Default `scai`."));
|
|
26
|
+
(0, shared_1.addEnvironmentOption)(command);
|
|
27
|
+
(0, shared_1.addConfigOption)(command);
|
|
28
|
+
(0, shared_1.addWhatIfOption)(command);
|
|
29
|
+
(0, shared_1.addAllowWriteOption)(command);
|
|
30
|
+
(0, shared_1.addVerbosityOptions)(command);
|
|
31
|
+
command.addHelpText("after", "\nFlow:\n" +
|
|
32
|
+
" 1. Dry-run (default): scai content publish item --items <guid>[,<guid>...] -n <env>\n" +
|
|
33
|
+
" → prints the resolved scope and a scope token (5-min TTL)\n" +
|
|
34
|
+
" 2. Real call: scai content publish item --items <guid>... -n <env> --allow-write\n" +
|
|
35
|
+
" → on non-prod envs, prompts [y/N]\n" +
|
|
36
|
+
" → on prod envs, ALSO requires --confirm-token <token>\n" +
|
|
37
|
+
"\nExamples:\n" +
|
|
38
|
+
" $ scai content publish item --items abc123 -n sandbox\n" +
|
|
39
|
+
" $ scai content publish item --items abc123,def456,ghi789 -n sandbox\n" +
|
|
40
|
+
" $ scai content publish item --paths /sitecore/content/Home -n sandbox\n" +
|
|
41
|
+
" $ scai content publish item --paths /sitecore/content/Home,/sitecore/content/About -n sandbox\n" +
|
|
42
|
+
" $ scai content publish item --items abc123 --paths /sitecore/content/Home -n sandbox # mix both\n" +
|
|
43
|
+
" $ scai content publish item --items abc123 --include-subitems -n sandbox # + descendants\n" +
|
|
44
|
+
" $ scai content publish item --items abc1,def4 --mode Republish -n sandbox # force re-emit\n" +
|
|
45
|
+
" $ scai content publish item --paths /sitecore/content/Home --languages-from-site marketing -n sandbox\n" +
|
|
46
|
+
" $ scai content publish item --items abc1 --all-tenant-languages -n sandbox # every tenant lang\n" +
|
|
47
|
+
" $ scai content publish item --site marketing -n sandbox # site root only\n" +
|
|
48
|
+
" $ scai content publish item --site marketing --include-subitems -n sandbox # whole site\n" +
|
|
49
|
+
" $ scai content publish item --site marketing --include-subitems --languages-from-site marketing -n sandbox\n");
|
|
50
|
+
command.action(async (options) => {
|
|
51
|
+
await (0, item_1.runPublishItem)(options);
|
|
52
|
+
});
|
|
53
|
+
return command;
|
|
54
|
+
};
|
|
55
|
+
exports.createPublishItemCommand = createPublishItemCommand;
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPublishStatusCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const status_1 = require("../../publishing/tasks/status");
|
|
6
|
+
const shared_1 = require("../shared");
|
|
7
|
+
const parseIntOpt = (value) => {
|
|
8
|
+
const n = Number.parseInt(value, 10);
|
|
9
|
+
if (!Number.isFinite(n) || n <= 0) {
|
|
10
|
+
throw new Error(`Expected positive integer, got '${value}'.`);
|
|
11
|
+
}
|
|
12
|
+
return n;
|
|
13
|
+
};
|
|
14
|
+
const createPublishStatusCommand = () => {
|
|
15
|
+
const command = new commander_1.Command("status")
|
|
16
|
+
.description("Show the state of a publish job, or list queued/running jobs when no jobId is given. Pass --watch to poll until the job reaches a terminal state (completed/failed/cancelled).")
|
|
17
|
+
.argument("[jobId]", "Publish job id (e.g. job_4F2B1). When omitted, lists jobs currently queued or running.")
|
|
18
|
+
.option("--watch", "Poll until the job reaches a terminal state. Requires a jobId.")
|
|
19
|
+
.addOption(new commander_1.Option("--poll-interval-s <seconds>", "Polling interval in seconds (default 5, clamped to [2, 60]).").argParser(parseIntOpt))
|
|
20
|
+
.addOption(new commander_1.Option("--timeout-s <seconds>", "Hard timeout for --watch in seconds (default 1800). Throws NETWORK error if the job hasn't reached a terminal state by then.").argParser(parseIntOpt));
|
|
21
|
+
(0, shared_1.addEnvironmentOption)(command);
|
|
22
|
+
(0, shared_1.addConfigOption)(command);
|
|
23
|
+
(0, shared_1.addVerbosityOptions)(command);
|
|
24
|
+
command.addHelpText("after", "\nExamples:\n" +
|
|
25
|
+
" $ scai content publish status -n sandbox # list queued/running\n" +
|
|
26
|
+
" $ scai content publish status job_abc123 -n sandbox # one-shot status\n" +
|
|
27
|
+
" $ scai content publish status job_abc123 -n sandbox --watch # follow until terminal\n" +
|
|
28
|
+
" $ scai content publish status job_abc123 -n sandbox --watch --json # CI-friendly stream\n");
|
|
29
|
+
command.action(async (jobId, options) => {
|
|
30
|
+
await (0, status_1.runPublishStatus)({ ...options, jobId });
|
|
31
|
+
});
|
|
32
|
+
return command;
|
|
33
|
+
};
|
|
34
|
+
exports.createPublishStatusCommand = createPublishStatusCommand;
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.createPublishUnpublishCommand = void 0;
|
|
4
|
+
const commander_1 = require("commander");
|
|
5
|
+
const unpublish_1 = require("../../publishing/tasks/unpublish");
|
|
6
|
+
const shared_1 = require("../shared");
|
|
7
|
+
const createPublishUnpublishCommand = () => {
|
|
8
|
+
const command = new commander_1.Command("unpublish")
|
|
9
|
+
.description("Unpublish one or more items. Writes a publish-state field via the Authoring API (or calls deleteItem for --strategy delete), then submits a publish job so Edge picks up the removal. Defaults to the reversible `never-publish` strategy; pass --strategy expire-now to set `__Valid to: now`, or --strategy delete for permanent removal (typed-item-path confirmation required).")
|
|
10
|
+
.option("--items <guid>", "Item ID (GUID) to unpublish. Repeatable, or pass a comma-separated list.", shared_1.collectList, [])
|
|
11
|
+
.option("--paths <path>", "Item path (e.g. /sitecore/content/Home). Repeatable, or pass a comma-separated list. Resolved to item IDs via Authoring GraphQL before submission.", shared_1.collectList, [])
|
|
12
|
+
.option("--site <name>", "Resolve the named site's content-tree root and add it to the target list. By default targets ONLY the root item; combine with --include-subitems to unpublish the whole site.")
|
|
13
|
+
.option("-l, --languages <list>", "Literal language list. Mutually exclusive with --languages-from-site / --all-tenant-languages.", shared_1.collectList, [])
|
|
14
|
+
.option("--languages-from-site <name>", "Resolve the language list from the named site (Sites API).")
|
|
15
|
+
.option("--all-tenant-languages", "Resolve the language list to every language registered in the tenant.")
|
|
16
|
+
.option("--include-subitems", "Publish descendants in the follow-up publish job.")
|
|
17
|
+
.option("--include-related", "Publish referenced items in the follow-up publish job.")
|
|
18
|
+
.addOption(new commander_1.Option("--strategy <mode>", "Unpublish mechanism. `never-publish` (default, reversible) sets `__Never publish: true`. `expire-now` (reversible) sets `__Valid to: <now>`. `delete` (NOT reversible) calls deleteItem and requires typed-item-path confirmation per item.")
|
|
19
|
+
.choices(["never-publish", "expire-now", "delete"])
|
|
20
|
+
.default("never-publish"))
|
|
21
|
+
.option("--confirm-token <token>", "Scope token obtained from a previous dry-run. Required on production-tier envs.")
|
|
22
|
+
.option("--confirm-item-path <path>", "For --strategy delete with --yes: the exact resolved item path the operator is authorizing to delete. Must match scai's path resolution for each item. Without this (and --yes), scai prompts interactively per item.")
|
|
23
|
+
.option("--yes", "Skip the [y/N] prompt on non-production envs. Has no effect on production-tier — those always require --confirm-token. For --strategy delete: also requires --confirm-item-path.")
|
|
24
|
+
.addOption(new commander_1.Option("--name <name>", "Override the API job name for the follow-up publish job."))
|
|
25
|
+
.addOption(new commander_1.Option("--source <source>", "Override the API source field. Default `scai`."));
|
|
26
|
+
(0, shared_1.addEnvironmentOption)(command);
|
|
27
|
+
(0, shared_1.addConfigOption)(command);
|
|
28
|
+
(0, shared_1.addWhatIfOption)(command);
|
|
29
|
+
(0, shared_1.addAllowWriteOption)(command);
|
|
30
|
+
(0, shared_1.addVerbosityOptions)(command);
|
|
31
|
+
command.addHelpText("after", "\nFlow:\n" +
|
|
32
|
+
" 1. Dry-run (default): scai content publish unpublish --items <guid> -n <env>\n" +
|
|
33
|
+
" → prints the resolved scope and a scope token (5-min TTL)\n" +
|
|
34
|
+
" 2. Real call: scai content publish unpublish --items <guid> -n <env> --allow-write\n" +
|
|
35
|
+
" → writes `__Never publish: true` (or `__Valid to: <now>` for --strategy expire-now)\n" +
|
|
36
|
+
" → then submits a Publishing API job so Edge picks up the removal\n" +
|
|
37
|
+
" Reverse:\n" +
|
|
38
|
+
" scai content version set-never-publish --item-id <guid> --value false -n <env> --allow-write\n" +
|
|
39
|
+
" scai content publish item --items <guid> -n <env> --allow-write\n" +
|
|
40
|
+
"\nExamples:\n" +
|
|
41
|
+
" $ scai content publish unpublish --items abc123 -n sandbox\n" +
|
|
42
|
+
" $ scai content publish unpublish --paths /sitecore/content/Home -n sandbox\n" +
|
|
43
|
+
" $ scai content publish unpublish --site marketing -n sandbox # site root only\n" +
|
|
44
|
+
" $ scai content publish unpublish --site marketing --include-subitems -n sandbox # whole site\n" +
|
|
45
|
+
" $ scai content publish unpublish --items abc123 --strategy expire-now -n sandbox\n" +
|
|
46
|
+
" $ scai content publish unpublish --items abc123 --strategy delete -n sandbox # destructive\n");
|
|
47
|
+
command.action(async (options) => {
|
|
48
|
+
await (0, unpublish_1.runPublishUnpublish)(options);
|
|
49
|
+
});
|
|
50
|
+
return command;
|
|
51
|
+
};
|
|
52
|
+
exports.createPublishUnpublishCommand = createPublishUnpublishCommand;
|