@almadar/core 7.25.0 → 8.0.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.
@@ -7031,6 +7031,37 @@ function formatMergeSummary(result) {
7031
7031
  return parts.join(", ") || "empty";
7032
7032
  }
7033
7033
 
7034
+ // src/domain-language/sync/merge-documents.ts
7035
+ function mergeDocuments(base, overlay) {
7036
+ return {
7037
+ type: "document",
7038
+ entities: mergeByName(base.entities, overlay.entities),
7039
+ pages: mergeByName(base.pages, overlay.pages),
7040
+ behaviors: mergeByName(base.behaviors, overlay.behaviors)
7041
+ };
7042
+ }
7043
+ function mergeByName(baseItems, overlayItems) {
7044
+ const overlayByName = /* @__PURE__ */ new Map();
7045
+ for (const item of overlayItems) overlayByName.set(item.name, item);
7046
+ const result = [];
7047
+ const seen = /* @__PURE__ */ new Set();
7048
+ for (const item of baseItems) {
7049
+ const replacement = overlayByName.get(item.name);
7050
+ if (replacement) {
7051
+ result.push(replacement);
7052
+ } else {
7053
+ result.push(item);
7054
+ }
7055
+ seen.add(item.name);
7056
+ }
7057
+ for (const item of overlayItems) {
7058
+ if (!seen.has(item.name)) {
7059
+ result.push(item);
7060
+ }
7061
+ }
7062
+ return result;
7063
+ }
7064
+
7034
7065
  // src/domain-language/registry.ts
7035
7066
  var FIELD_TYPE_REGISTRY = {
7036
7067
  string: {
@@ -7603,6 +7634,6 @@ function matchesRelationship(r, targetEntity, relationshipType) {
7603
7634
  return r.targetEntity === targetEntity && r.relationshipType === relationshipType;
7604
7635
  }
7605
7636
 
7606
- export { EFFECT_REGISTRY, FIELD_TYPE_REGISTRY, GUARD_REGISTRY, KEYWORDS, Lexer, MULTI_WORD_KEYWORDS, TokenType, applyMutation, applySectionUpdate, computeSchemaHash, convertDomainToSchema, convertEntitiesToDomain, convertPagesToDomain, convertSchemaToDomain, convertTraitsToDomain, createMappingStore, deleteSection, detectChanges, diffFactoryCalls, domainKeywordToSchemaType, findMapping, findMappingByPath, findMappingsByType, formatBehaviorToDomain, formatBehaviorToSchema, formatDomainGuardToSchema, formatEntityToDomain, formatEntityToSchema, formatGuardConditionToDomain, formatGuardToDomain, formatGuardToSchema, formatMergeSummary, formatPageToDomain, formatPageToSchema, formatSchemaEntityToDomain, formatSchemaGuardToDomain, formatSchemaPageToDomain, formatSchemaTraitToDomain, generateDomainLanguageReference, generateSectionId, getEffectMapping, getFieldTypeMapping, getGuardMapping, getRegisteredEffects, getRegisteredFieldTypes, getRegisteredGuards, getRegistryStats, getSchemaPath, hasSchemaChanged, isEffectRegistered, isFieldTypeRegistered, isGuardRegistered, mergeDomainChunks, parseBehavior, parseDomainEffect, parseDomainEffects, parseDomainGuard, parseEntity, parseGuard, parsePage, parseSectionId, removeMapping, resolveConflict, schemaEntityToDomainEntity, schemaPageToDomainPage, schemaTraitToDomainBehavior, schemaTypeToDomainKeyword, tokenize, translateDomainToParams, updateMappingRange, updateSchemaHash, upsertMapping, validateDomainChunk };
7637
+ export { EFFECT_REGISTRY, FIELD_TYPE_REGISTRY, GUARD_REGISTRY, KEYWORDS, Lexer, MULTI_WORD_KEYWORDS, TokenType, applyMutation, applySectionUpdate, computeSchemaHash, convertDomainToSchema, convertEntitiesToDomain, convertPagesToDomain, convertSchemaToDomain, convertTraitsToDomain, createMappingStore, deleteSection, detectChanges, diffFactoryCalls, domainKeywordToSchemaType, findMapping, findMappingByPath, findMappingsByType, formatBehaviorToDomain, formatBehaviorToSchema, formatDomainGuardToSchema, formatEntityToDomain, formatEntityToSchema, formatGuardConditionToDomain, formatGuardToDomain, formatGuardToSchema, formatMergeSummary, formatPageToDomain, formatPageToSchema, formatSchemaEntityToDomain, formatSchemaGuardToDomain, formatSchemaPageToDomain, formatSchemaTraitToDomain, generateDomainLanguageReference, generateSectionId, getEffectMapping, getFieldTypeMapping, getGuardMapping, getRegisteredEffects, getRegisteredFieldTypes, getRegisteredGuards, getRegistryStats, getSchemaPath, hasSchemaChanged, isEffectRegistered, isFieldTypeRegistered, isGuardRegistered, mergeDocuments, mergeDomainChunks, parseBehavior, parseDomainEffect, parseDomainEffects, parseDomainGuard, parseEntity, parseGuard, parsePage, parseSectionId, removeMapping, resolveConflict, schemaEntityToDomainEntity, schemaPageToDomainPage, schemaTraitToDomainBehavior, schemaTypeToDomainKeyword, tokenize, translateDomainToParams, updateMappingRange, updateSchemaHash, upsertMapping, validateDomainChunk };
7607
7638
  //# sourceMappingURL=index.js.map
7608
7639
  //# sourceMappingURL=index.js.map