/** * Public recipe API — `import { ... } from "@sitecoreai-labs/sitecoreai-cli/recipe"`. * * The registry (and any other consumer) imports recipe types and the * compiler from this entry. Internal CLI plumbing (config loading, * commander wiring, GraphQL transport bound to scai's environment shape) * stays in `src/recipe/{tasks,api/graphql,api/authoring-client,io}.ts` * and is NOT re-exported here. * * Stability contract: the surface in this file is the public contract. * Anything not exported here is internal and may move between scai * versions without notice. * * Two composition kinds — `SiteRecipe` and `SiteTemplate` — are NOT part of * the stability promise and live on the separate `./recipe/unstable` entry * (`src/recipe/unstable.ts`). The other four composition kinds * (`ContentItem`, `PageDesign`, `PartialDesign`, `Dictionary`) graduated to * this entry; `./recipe/unstable` still re-exports them for a deprecation * window. * * Importing this entry pulls the compiler chain (`./compile` → * `./sandbox/transpile` → esbuild). Consumers that want ONLY the Zod schemas * and field-type tables — no compiler, no esbuild — should import the * schema-only entry `./recipe/schema` (`src/recipe/schema.ts`) instead, which * re-exports the stable AND unstable kind schemas with a zod-only graph. */ export { ComponentPlacementSchema, ComponentTemplateRecipeSchema, ContentFieldValueSchema, ContentTemplateRecipeSchema, FieldDefinitionSchema, LayoutSchema, PageRecipeSchema, PageTemplateRecipeSchema, DesignParameterSchema, DesignParametersTemplateRecipeSchema, PlaceholderDefinitionSchema, PlaceholderRecipeSchema, RecipeMetaSchema, RecipeSchema, RecipeDatasourceSchema, RenderingDatasourceLocationSchema, RenderingVariantDefinitionSchema, SitecoreFieldAugmentSchema, ComponentSectionRecipeSchema, ContentTranslationSchema, ContentItemRecipeSchema, DictionaryPhraseSchema, DictionaryRecipeSchema, PageDesignRecipeSchema, PartialDesignRecipeSchema, EnumerationRecipeSchema, EnumerationValueSchema, RecipeMetaTaxSchema, SitecoreFieldSourceSchema, VariantRecipeSchema, type ComponentPlacement, type ComponentTemplateRecipe, type ContentFieldValue, type ContentTemplateRecipe, type FieldDefinition, type Layout, type PageRecipe, type PageTemplateRecipe, type DesignParameter, type DesignParametersTemplateRecipe, type PlaceholderDefinition, type PlaceholderRecipe, type Recipe, type RecipeMeta, type RecipeDatasource, type RenderingDatasourceLocation, type RenderingVariantDefinition, type SitecoreFieldAugment, type ComponentSectionRecipe, type ContentTranslation, type ContentItemRecipe, type DictionaryPhrase, type DictionaryRecipe, type PageDesignRecipe, type PartialDesignRecipe, type EnumerationRecipe, type EnumerationValue, type SitecoreFieldSource, type VariantRecipe, } from "./schema/recipe.js"; export { FIELD_SHAPES, FieldShapeSchema, SITECORE_FIELD_TYPES, SitecoreFieldTypeSchema, defaultSitecoreFieldType, sitecoreFieldTypeLabel, type FieldShape, type SitecoreFieldType, } from "./schema/field-types.js"; export { compileComponentTemplateRecipe, compileContentTemplateRecipe, compilePageTemplateRecipe, compilePageRecipe, compilePlaceholderRecipe, compileDesignParametersTemplateRecipe, compileContentItemRecipe, compileDictionaryRecipe, compilePageDesignRecipe, compilePartialDesignRecipe, compileRecipe, compileRecipeSet, PLACEHOLDER_SETTINGS_AGGREGATE_HANDLE, TEMPLATES_MAPPING_AGGREGATE_HANDLE, type CompileContext, } from "./compile/index.js"; export { emitLayoutXml } from "./layout/emit.js"; export type { ComponentPlacementInput, LayoutEmitContext, LayoutInput } from "./layout/emit.js"; export { encodeTemplatesMapping, type TemplatesMappingEntry } from "./layout/templates-mapping.js"; export { NAMESPACE_CONTENT_ITEM, NAMESPACE_PAGE, NAMESPACE_PAGE_DESIGN, NAMESPACE_PARTIAL_DESIGN, NAMESPACE_PLACEHOLDER, NAMESPACE_PROJECT, NAMESPACE_RENDERING, NAMESPACE_ROOT, NAMESPACE_SITE_BRANCH, NAMESPACE_TEMPLATE, PAGE_DESIGNS_ROOT_REF_KEY, componentFolderStandardValuesId, componentFolderTemplateId, componentFoldersBucketId, contentItemId, contentModelsGroupFolderId, datasourceId, fieldId, pageDesignId, pageItemId, pageTemplatesGroupFolderId, placeholderSettingsId, designParameterFieldId, designParametersSectionId, designParametersTemplateId, partialDesignId, presentationDesignParametersBucketId, renderingId, renderingsSectionFolderId, sectionFolderId, sectionId, siteBranchId, siteDataFolderId, standardValuesId, templateId, variantId, variantsFolderId, } from "./items/guids.js"; export { AppendToMultiListOpSchema, CreateItemOpSchema, FieldValueSchema, OperationIrSchema, OperationSchema, PushPolicySchema, RefValueSchema, SetBaseTemplatesOpSchema, SetFieldOpSchema, SetStandardValuesOpSchema, type AppendToMultiListOp, type CreateItemOp, type FieldValue, type Operation, type OperationIr, type PushPolicy, type RefValue, type SetBaseTemplatesOp, type SetFieldOp, type SetStandardValuesOp, } from "./ir/operations.js"; export { COMPOSITION_FIELDS, DEFAULT_DEVICE_ID, DEFAULT_ICON, DEFAULT_LANGUAGE, DEFAULT_VERSION, LAYOUT_FIELDS, RENDERING_FIELDS, SITE_FIELDS, SITE_TEMPLATE_FIELDS, SITECORE_TEMPLATES, STANDARD_TEMPLATE_ID, SYSTEM_FIELDS, TEMPLATE_FIELD_FIELDS, } from "./ir/sitecore-templates.js"; export { buildPlan } from "./runtime/plan.js"; export type { FieldDiffEntry, Plan, PlanEvent, PlanOptions, PlanSummary, PlannedAction, } from "./runtime/plan.js"; export { executeIr } from "./runtime/execute.js"; export type { ExecuteOptions, ExecutionEvent, ExecutionMode, ExecutionResult, } from "./runtime/execute.js"; export { BaselineFieldEntrySchema, BaselineSchema, CONTENT_RECIPE_BASELINE_KIND, FileBaselineStorage, adaptSyncBaselineStorage, baselineFilePath, canonicaliseLayoutXml, hashFieldValue, hashFieldValueForBaseline, indexBaseline, isLayoutFieldId, loadBaseline, writeBaseline, } from "./runtime/baseline.js"; export type { Baseline, BaselineFieldEntry, BaselineIndex, BaselineStorage, } from "./runtime/baseline.js"; export { MergePlanFieldSchema, MergePlanRecipeSchema, MergePlanSchema } from "./tasks/pull.js"; export type { MergePlan, MergePlanField, MergePlanRecipe } from "./tasks/pull.js"; export type { AuthoringApiClient, CreateItemInput, RemoteFieldValue, RemoteItem, UpdateItemInput, } from "./api/client.js"; export { createAuthoringClient, type AuthoringClientOptions } from "./api/authoring-client.js"; export { runAuthoringGraphQL, type AuthoringRequestOptions } from "./api/graphql.js"; export { discoverSites, type DiscoveredSite, type DiscoverSitesOptions, } from "./api/site-discovery.js"; export { createSitesApiClient, type SitesApiClient, type Job, type JobResponse, type Language, type NewSiteInput, type Site, type SiteCollection, type SiteTemplate, } from "./api/sites-client.js"; export { renderRefValue } from "./api/ref-encoding.js"; export { renderSourceFields, sourceFieldsNeedHandleResolution, type SourceFields, } from "./schema/source-fields.js"; export { defaultPolicyForRecipe, policyFor, policyForOp, purposeForRecipe, type OpPurpose, } from "./runtime/policy.js"; export { formatValidationErrors, isValid, validateRecipeSet, validateRecipeSetOrThrow, type CyclicReference, type DuplicateHandle, type FieldShapeError, type PlacementViolation, type RecipeKind, type UnresolvedHandle, type ValidationResult, } from "./validate.js";