@g1cloud/entity-modeler-next 5.1.9 → 5.1.10
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/dist/core/propagation.d.ts +23 -0
- package/dist/entity-modeler.js +7591 -7500
- package/dist/entity-modeler.umd.cjs +23 -23
- package/package.json +1 -1
|
@@ -83,6 +83,29 @@ export declare function planChildReconcileWithCascade(futureLogical: LogicalMode
|
|
|
83
83
|
entityId: ModelId;
|
|
84
84
|
plan: ReconcilePlan;
|
|
85
85
|
}>;
|
|
86
|
+
/**
|
|
87
|
+
* 병합이 남길 수 있는 **중복 FK 추가**를 접는다. `mergePlans` 는 add 를 단순 이어붙이는데, 두 루트가
|
|
88
|
+
* 같은 후손에 같은 FK 를 계획하면 idFactory 가 매번 새 modelId 를 내므로 **같은 컬럼이 두 개** 추가된다
|
|
89
|
+
* (제거·수정과 달리 modelId 가 달라 중복으로 안 보인다). 근거 관계와 원본 컬럼이 같으면 같은 FK 다.
|
|
90
|
+
* (editor `commandPlans` 로컬에 있던 것을 다중 자식 병합의 core 이관과 함께 올렸다 — 소비처 2곳.)
|
|
91
|
+
*/
|
|
92
|
+
export declare function dedupeAdds(plan: ReconcilePlan): ReconcilePlan;
|
|
93
|
+
/**
|
|
94
|
+
* 여러 seed 자식의 reconcile + 후손 cascade 를 **엔터티당 계획 하나**로 병합한 통합 계획.
|
|
95
|
+
*
|
|
96
|
+
* 한 조작이 여러 자식을 동시에 reconcile 할 때 cascade 서브트리는 **겹칠 수 있다** — 삭제 대상의
|
|
97
|
+
* 직접 자식이면서 동시에 다른 자식의 손자인 다이아몬드(실측 `Cancellation → {CCS, CLI}` + `CCS → CLI`).
|
|
98
|
+
* 루트마다 따로 계획하면 같은 후손에 같은 계획이 두 벌 생기고, 로컬 apply 는 멱등이라 조용히 지나가지만
|
|
99
|
+
* **op 배치에는 같은 경로의 `$set` 이 두 번 실려** 호스트가 배치 전체를 거부한다. ⇒ `mergePlans` 로 접고
|
|
100
|
+
* `dedupeAdds` 로 중복 FK 추가를 걷는다.
|
|
101
|
+
*
|
|
102
|
+
* editor `childReconcileWithCascade`(→Command)와 agent resolver(→OpShape)가 이 병합을 공유한다 —
|
|
103
|
+
* 종전에는 editor 만 병합하고 resolver `entity.remove` 는 자식별 루프라 다이아몬드에 노출돼 있었다.
|
|
104
|
+
*/
|
|
105
|
+
export declare function planChildrenReconcileWithCascade(futureLogical: LogicalModel, childIds: readonly ModelId[], idFactory?: IdFactory): Array<{
|
|
106
|
+
entityId: ModelId;
|
|
107
|
+
plan: ReconcilePlan;
|
|
108
|
+
}>;
|
|
86
109
|
/**
|
|
87
110
|
* 주어진 속성이 "연관관계가 관리하는 FK 컬럼"이면 그 소유 연관관계를 돌려준다(아니면 undefined).
|
|
88
111
|
*
|