@g1cloud/entity-modeler-next 5.2.21 → 5.2.22

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.
@@ -88,8 +88,30 @@ export declare function isJoinColumnOnlyFk(attr: Attribute, entity: Entity, anch
88
88
  * 둔 본래 이유)는 그대로다. id가 유일한 문서에서는 두 경로가 같은 속성을 찾아 **결과가 동일하다**.
89
89
  */
90
90
  export declare function resolveFkOriginColumn(attr: Attribute, childEntity: Entity | null | undefined, entities: readonly Entity[], associations: readonly Association[], i?: number): DbColumn | undefined;
91
+ /**
92
+ * **PK 멤버 술어 — 단일 출처**. 「이 속성이 엔티티의 식별자 멤버인가」를 한 곳에서 정한다.
93
+ *
94
+ * ★★**왜 여기 있나(2026-09-03)**: 같은 술어가 **세 곳에 복제**돼 있었고 `@EmbeddedId` 축(5.2.21)이
95
+ * 그중 하나(`scaffoldJava.pkMembers`)만 고쳐서 «축을 열었다» 고 보고됐다. 나머지 둘
96
+ * (`parentIdColumns` · `propagation.computeForeignAttributes`)이 여전히 임베더블 식별자를 못 봐,
97
+ * 값 타입 PK 로 전환하면 **부모가 「PK 0」으로 보이고 FK spec 이 통째로 사라졌다**(게이트 실측:
98
+ * `MemberPointWallet` 1→0 · `MemberCouponWallet` 2→0 · `UserAccount` **7→0**).
99
+ * ⇒ 술어를 여기(의존 leaf · 두 소비처가 이미 import)로 올려 **한 곳만 고치는 것이 구조적으로 불가능**하게 한다.
100
+ *
101
+ * ★멤버십: 스칼라(`NORMAL`) · 식별 FK(`RELATION_OWN`) · **임베더블 식별자**(`@EmbeddedId` — 값 타입을
102
+ * PK 로 쓰는 JPA 정식 관용구 · 실물 10자리). `dbAttrs` 가 없는 임베드(inverse nav 등)는 컬럼 기여가
103
+ * 없으므로 제외한다.
104
+ * ⚠️`DIVIDER`·`RELATION_REF` 는 `identifier` 가 참일 수 없거나 컬럼이 없어 자연히 빠진다.
105
+ */
106
+ export declare function isPkMemberAttr(attr: Attribute): boolean;
107
+ /**
108
+ * PK 멤버 중 **임베더블**(`@EmbeddedId` 방출 대상) — 코드젠이 `@Embedded` 대신 낼 표기를 가르는 판정.
109
+ * `isPkMemberAttr` 의 부분집합이고, 멤버십을 재기술하지 않도록 그쪽이 이 함수를 호출한다.
110
+ */
111
+ export declare function isEmbeddedPkAttr(attr: Attribute): boolean;
91
112
  /**
92
113
  * 부모 식별자 컬럼 평탄화(선언 순서) — 복합 PK 를 한 속성이 담는 **형상 A** 의 슬롯 원본.
93
114
  * `scaffoldJava.parentIdColumns` 와 같은 규칙이며 그쪽이 이 함수로 위임한다(산식 이중화 금지).
115
+ * 멤버십 판정은 **`isPkMemberAttr` 단일 출처**다(위 주석의 「세 곳 복제」 사고 이후).
94
116
  */
95
117
  export declare function parentIdColumns(parent: Entity | undefined): DbColumn[];