@g1cloud/entity-modeler-next 5.2.24 → 5.2.25
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/entity-modeler.js +248 -243
- package/dist/entity-modeler.umd.cjs +20 -20
- package/package.json +1 -1
package/dist/entity-modeler.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
var Zy = Object.defineProperty;
|
|
2
2
|
var Qy = (e, t, n) => t in e ? Zy(e, t, { enumerable: !0, configurable: !0, writable: !0, value: n }) : e[t] = n;
|
|
3
3
|
var Ot = (e, t, n) => Qy(e, typeof t != "symbol" ? t + "" : t, n);
|
|
4
|
-
import { getCurrentScope as _m, inject as At, effectScope as wm, watch as et, provide as sn, defineComponent as Xe, useSlots as Im, onUnmounted as ev, openBlock as S, createElementBlock as M, unref as m, createVNode as W, withCtx as lt, renderSlot as zt, createPropsRestProxy as tv, toRef as wt, ref as pe, computed as H, onMounted as qn, normalizeClass as Re, getCurrentInstance as
|
|
5
|
-
import { BSTextArea as dv, BSTextInput as ht, BSSelect as mt, BSCheckbox as vt, BSNumberInput as jo, BSButton as ct, useModalHandle as Da, BSModalFrame as Va, useModal as
|
|
4
|
+
import { getCurrentScope as _m, inject as At, effectScope as wm, watch as et, provide as sn, defineComponent as Xe, useSlots as Im, onUnmounted as ev, openBlock as S, createElementBlock as M, unref as m, createVNode as W, withCtx as lt, renderSlot as zt, createPropsRestProxy as tv, toRef as wt, ref as pe, computed as H, onMounted as qn, normalizeClass as Re, getCurrentInstance as qi, reactive as dd, onScopeDispose as Is, nextTick as Pt, onBeforeMount as nv, shallowRef as Fn, createElementVNode as R, Fragment as Ne, renderList as Fe, normalizeStyle as It, onBeforeUnmount as ti, isMemoSame as ov, createBlock as He, createCommentVNode as re, toDisplayString as J, isRef as cd, toRefs as iv, customRef as av, toValue as pt, resolveComponent as km, h as xt, useAttrs as ud, mergeProps as Ps, resolveDynamicComponent as Bo, createTextVNode as Cn, markRaw as ha, readonly as sv, withKeys as gt, withModifiers as Ke, withDirectives as cn, vModelText as uo, Teleport as mr, onUpdated as rv, watchEffect as lv, normalizeProps as Po, guardReactiveProps as bi, Transition as Ia, vShow as Ri } from "vue";
|
|
5
|
+
import { BSTextArea as dv, BSTextInput as ht, BSSelect as mt, BSCheckbox as vt, BSNumberInput as jo, BSButton as ct, useModalHandle as Da, BSModalFrame as Va, useModal as Wi, showNotification as dc } from "@g1cloud/open-bluesea-core";
|
|
6
6
|
const cv = {
|
|
7
7
|
startX: 40,
|
|
8
8
|
startY: 40,
|
|
@@ -196,11 +196,11 @@ const md = "inherited:";
|
|
|
196
196
|
function vv(e, t) {
|
|
197
197
|
return `${md}${e}:${t}`;
|
|
198
198
|
}
|
|
199
|
-
function
|
|
199
|
+
function Ji(e) {
|
|
200
200
|
return e.startsWith(md);
|
|
201
201
|
}
|
|
202
202
|
function xm(e) {
|
|
203
|
-
if (!
|
|
203
|
+
if (!Ji(e)) return null;
|
|
204
204
|
const t = e.slice(md.length), n = t.indexOf(":");
|
|
205
205
|
if (n < 0) return null;
|
|
206
206
|
const o = t.slice(0, n), i = t.slice(n + 1);
|
|
@@ -371,14 +371,14 @@ function fn(e, t, n, o, i, a) {
|
|
|
371
371
|
...t.sharedColumnRef == null && !t.physicalName && s.sharedColumnRef != null && (e.attrType === "EMBED_OWN" || e.attrType === "EMBED_PREDEF") ? { sharedColumnRef: s.sharedColumnRef } : {}
|
|
372
372
|
} : t;
|
|
373
373
|
}
|
|
374
|
-
function
|
|
374
|
+
function fi(e, t) {
|
|
375
375
|
return ((t == null ? void 0 : t.notNull) ?? e.notNull) === !0;
|
|
376
376
|
}
|
|
377
377
|
function fo(e) {
|
|
378
378
|
var t, n;
|
|
379
379
|
return Ro((t = e.table) == null ? void 0 : t.logicalName) ? (n = e.table) == null ? void 0 : n.logicalName : e.classLogicalName;
|
|
380
380
|
}
|
|
381
|
-
function
|
|
381
|
+
function Si(e, t) {
|
|
382
382
|
return Ro(t == null ? void 0 : t.logicalName) ? t == null ? void 0 : t.logicalName : e.fieldLogicalName;
|
|
383
383
|
}
|
|
384
384
|
function yr(e, t, n, o, i, a) {
|
|
@@ -417,7 +417,7 @@ function Mo(e, t) {
|
|
|
417
417
|
(n) => n.attributes.flatMap((o) => o.dbAttrs)
|
|
418
418
|
);
|
|
419
419
|
}
|
|
420
|
-
function
|
|
420
|
+
function pi(e) {
|
|
421
421
|
const t = /* @__PURE__ */ new Map();
|
|
422
422
|
for (const n of e) t.set(n.modelId, n);
|
|
423
423
|
return t;
|
|
@@ -427,7 +427,7 @@ function Xi(e, t) {
|
|
|
427
427
|
const n = t.get(e.sharedColumnRef);
|
|
428
428
|
return n ? { physicalName: n.physicalName, insertable: !1, updatable: !1 } : null;
|
|
429
429
|
}
|
|
430
|
-
function
|
|
430
|
+
function Di(e, t) {
|
|
431
431
|
if (e.packageName) return { kind: "explicit", value: e.packageName };
|
|
432
432
|
const n = t.groups.find((o) => {
|
|
433
433
|
var i;
|
|
@@ -436,7 +436,7 @@ function Pi(e, t) {
|
|
|
436
436
|
return { kind: "group", value: (n == null ? void 0 : n.packageName) ?? "" };
|
|
437
437
|
}
|
|
438
438
|
function _v(e, t, n) {
|
|
439
|
-
const o =
|
|
439
|
+
const o = Di(e, n), i = Di(t, n);
|
|
440
440
|
return o.kind === i.kind && o.value !== i.value;
|
|
441
441
|
}
|
|
442
442
|
function Zi(e) {
|
|
@@ -465,8 +465,8 @@ function Ba(e, t, n, o) {
|
|
|
465
465
|
const a = t.get(i);
|
|
466
466
|
if (a.length === 1) return { kind: "resolved", entity: a[0] };
|
|
467
467
|
if (n && o) {
|
|
468
|
-
const s =
|
|
469
|
-
const d =
|
|
468
|
+
const s = Di(n, o), r = a.filter((l) => {
|
|
469
|
+
const d = Di(l, o);
|
|
470
470
|
return d.kind === s.kind && d.value === s.value;
|
|
471
471
|
});
|
|
472
472
|
if (r.length === 1) return { kind: "resolved", entity: r[0] };
|
|
@@ -586,7 +586,7 @@ function Dm(e) {
|
|
|
586
586
|
const t = (n = e.customType) == null ? void 0 : n.trim();
|
|
587
587
|
return t || void 0;
|
|
588
588
|
}
|
|
589
|
-
const
|
|
589
|
+
const hi = "GroupCodeEnum", cc = "String", vr = [
|
|
590
590
|
{ value: "String", label: "String" },
|
|
591
591
|
{ value: "Integer", label: "Integer" },
|
|
592
592
|
{ value: "Long", label: "Long" },
|
|
@@ -618,7 +618,7 @@ const pi = "GroupCodeEnum", cc = "String", vr = [
|
|
|
618
618
|
{ value: "PrimitiveShort", label: "short", boxed: "Short" },
|
|
619
619
|
{ value: "PrimitiveByteArray", label: "byte[]", boxed: "Byte[]" },
|
|
620
620
|
{ value: "PrimitiveCharacterArray", label: "char[]", boxed: "Character[]" },
|
|
621
|
-
{ value:
|
|
621
|
+
{ value: hi, label: "GroupCodeEnum" },
|
|
622
622
|
// ⑤ 파생 타입: groupCode 지정 시 type이 이 값으로 설정됨(드롭다운 자유 선택 아님)
|
|
623
623
|
{ value: "CustomMoneyType", label: "Money" },
|
|
624
624
|
// ③ predefined customtype(레거시). 신규는 embeddable로 분기 — 표시용 잔존
|
|
@@ -709,7 +709,7 @@ const Rv = {
|
|
|
709
709
|
Currency: /* @__PURE__ */ new Set(["VARCHAR", "CHAR"]),
|
|
710
710
|
// (b) ⑤ 파생 타입 — 그룹코드는 문자 코드다(실측 VARCHAR 661). `CHK-TYPE-4`가 다중값 컨버터 자동생성
|
|
711
711
|
// 조건으로 명문화한 그 짝(GroupCodeEnum + VARCHAR)과 같은 근거.
|
|
712
|
-
[
|
|
712
|
+
[hi]: /* @__PURE__ */ new Set(["VARCHAR", "CHAR"])
|
|
713
713
|
}, Bm = new Map(vr.filter((e) => e.boxed).map((e) => [e.value, e.boxed]));
|
|
714
714
|
function Av(e, t) {
|
|
715
715
|
const n = e == null ? void 0 : e.trim(), o = t == null ? void 0 : t.trim();
|
|
@@ -728,7 +728,7 @@ const Sv = /* @__PURE__ */ new Set(["PrimitiveInt", "PrimitiveLong", "PrimitiveD
|
|
|
728
728
|
function Tv(e, t, n) {
|
|
729
729
|
return n || !e ? !1 : Sv.has(e) ? !0 : e === "PrimitiveBoolean" ? zm(e, t, n) == null : !1;
|
|
730
730
|
}
|
|
731
|
-
const Mv = /* @__PURE__ */ new Set([
|
|
731
|
+
const Mv = /* @__PURE__ */ new Set([hi, "CustomMoneyType"]), Ov = vr.filter(
|
|
732
732
|
(e) => !Mv.has(e.value)
|
|
733
733
|
).map((e) => e.value === bo ? { ...e, label: "CustomType (사용자정의)" } : e);
|
|
734
734
|
function Um(e, t = [], n = [], o = []) {
|
|
@@ -748,7 +748,7 @@ function Fm(e, t, n) {
|
|
|
748
748
|
return t === e.type ? !1 : gd(e) !== "own" || n.some((o) => o.type === t);
|
|
749
749
|
}
|
|
750
750
|
function Hr(e, t) {
|
|
751
|
-
return e ===
|
|
751
|
+
return e === hi != !!t;
|
|
752
752
|
}
|
|
753
753
|
function Hm(e, t) {
|
|
754
754
|
return { ...e, dataType: t.dataType, length: t.length, scale: t.scale };
|
|
@@ -829,7 +829,7 @@ function Dv(e, t) {
|
|
|
829
829
|
for (const l of e.entities) {
|
|
830
830
|
const d = (a = l.table) != null && a.physicalName ? ` (${l.table.physicalName})` : "", c = o.get(l.modelId);
|
|
831
831
|
i.push(`## ${Xa(l.name)}${d} «${fr(l.stereotype)}»${c ? ` [${c}]` : ""}${Za(fo(l))}`);
|
|
832
|
-
const u =
|
|
832
|
+
const u = pi(Mo(l, e.entities)), p = (v) => {
|
|
833
833
|
var _;
|
|
834
834
|
return v.sharedColumnRef ? (_ = Xi(v, u)) == null ? void 0 : _.physicalName : void 0;
|
|
835
835
|
}, f = [...l.attributes].sort((v, _) => v.order - _.order);
|
|
@@ -855,7 +855,7 @@ function Dv(e, t) {
|
|
|
855
855
|
continue;
|
|
856
856
|
}
|
|
857
857
|
const F = _[0], L = F ? ` → ${mc(F, p(F))}` : "";
|
|
858
|
-
i.push(`${x}${L}${O([...w, ...F ? fc(F) : []])}${Za(
|
|
858
|
+
i.push(`${x}${L}${O([...w, ...F ? fc(F) : []])}${Za(Si(v, F), v.description)}`);
|
|
859
859
|
}
|
|
860
860
|
const h = mi(l.attributes);
|
|
861
861
|
for (const v of l.indexes ?? []) {
|
|
@@ -882,16 +882,16 @@ function Dv(e, t) {
|
|
|
882
882
|
return i.join(`
|
|
883
883
|
`).trim();
|
|
884
884
|
}
|
|
885
|
-
function
|
|
885
|
+
function yi(e) {
|
|
886
886
|
return e.referenceOnly === !0;
|
|
887
887
|
}
|
|
888
888
|
function bd(e) {
|
|
889
889
|
const t = /* @__PURE__ */ new Set();
|
|
890
|
-
for (const n of e.entities)
|
|
890
|
+
for (const n of e.entities) yi(n) && t.add(n.modelId);
|
|
891
891
|
return t;
|
|
892
892
|
}
|
|
893
893
|
function Gm(e) {
|
|
894
|
-
return e.entities.filter((t) => !
|
|
894
|
+
return e.entities.filter((t) => !yi(t));
|
|
895
895
|
}
|
|
896
896
|
function Ym(e, t = bd(e)) {
|
|
897
897
|
return t.size === 0 ? e.associations : e.associations.filter((n) => !t.has(n.end1.entityRef) && !t.has(n.end2.entityRef));
|
|
@@ -900,7 +900,7 @@ function qm(e, t) {
|
|
|
900
900
|
return t ? { ...e, entities: e.entities.map((n) => n.referenceOnly ? n : { ...n, referenceOnly: !0 }) } : e;
|
|
901
901
|
}
|
|
902
902
|
function Vv(e, t) {
|
|
903
|
-
return
|
|
903
|
+
return yi(e) || t === !0;
|
|
904
904
|
}
|
|
905
905
|
const Bv = (e) => e && e[0].toLowerCase() + e.slice(1);
|
|
906
906
|
function gr(e) {
|
|
@@ -1254,7 +1254,7 @@ const Zm = {
|
|
|
1254
1254
|
jsonb: { dataType: "JSONB" },
|
|
1255
1255
|
json: { dataType: "JSONB" },
|
|
1256
1256
|
xml: { dataType: "SQLXML" }
|
|
1257
|
-
}, ng = Object.keys(Zm).sort((e, t) => t.length - e.length), vc = String.raw`(?:"[^"]+"|\`[^\`]+\`|\[[^\]]+\]|\w+)`,
|
|
1257
|
+
}, ng = Object.keys(Zm).sort((e, t) => t.length - e.length), vc = String.raw`(?:"[^"]+"|\`[^\`]+\`|\[[^\]]+\]|\w+)`, Vi = `${vc}(?:\\.${vc})*`, og = new RegExp(String.raw`^CREATE\s+TABLE\s+(?:IF\s+NOT\s+EXISTS\s+)?(${Vi})\s*\(([\s\S]*)\)\s*$`, "i"), ig = new RegExp(String.raw`FOREIGN\s+KEY\s*\(([^)]*)\)\s*REFERENCES\s+(${Vi})\s*\(([^)]*)\)`, "i"), ag = new RegExp(String.raw`^ALTER\s+TABLE\s+(?:ONLY\s+)?(${Vi})\s+ADD\s+(?:CONSTRAINT\s+\S+\s+)?FOREIGN\s+KEY\s*\(([^)]*)\)\s*REFERENCES\s+(${Vi})\s*\(([^)]*)\)`, "i"), sg = new RegExp(String.raw`^CREATE\s+(UNIQUE\s+)?INDEX\s+(?:IF\s+NOT\s+EXISTS\s+)?(${Vi})\s+ON\s+(${Vi})\s*\(([^)]*)\)`, "i");
|
|
1258
1258
|
function vn(e) {
|
|
1259
1259
|
let t = e.trim().replace(/[";`\[\]]/g, "");
|
|
1260
1260
|
const n = t.lastIndexOf(".");
|
|
@@ -1433,10 +1433,10 @@ function mg(e) {
|
|
|
1433
1433
|
if (n.excludeDDLGeneration)
|
|
1434
1434
|
for (const o of n.memberEntityRefs) t.add(o);
|
|
1435
1435
|
return e.entities.filter(
|
|
1436
|
-
(n) => !St(n.stereotype) && !t.has(n.modelId) && !
|
|
1436
|
+
(n) => !St(n.stereotype) && !t.has(n.modelId) && !yi(n)
|
|
1437
1437
|
);
|
|
1438
1438
|
}
|
|
1439
|
-
function
|
|
1439
|
+
function Ti(e) {
|
|
1440
1440
|
var t;
|
|
1441
1441
|
return ((t = e.table) == null ? void 0 : t.physicalName) || e.name;
|
|
1442
1442
|
}
|
|
@@ -1513,7 +1513,7 @@ function hg(e, t) {
|
|
|
1513
1513
|
return f ? a.get(f.modelId) : void 0;
|
|
1514
1514
|
}, r = [], l = [], d = [];
|
|
1515
1515
|
for (const u of n) {
|
|
1516
|
-
const p =
|
|
1516
|
+
const p = Ti(u), f = ef(u, e, t);
|
|
1517
1517
|
if (f.length === 0) continue;
|
|
1518
1518
|
const h = /* @__PURE__ */ new Map(), b = /* @__PURE__ */ new Map();
|
|
1519
1519
|
for (const { attr: L, col: B, name: D } of f) {
|
|
@@ -1528,7 +1528,7 @@ function hg(e, t) {
|
|
|
1528
1528
|
}
|
|
1529
1529
|
v.add(D);
|
|
1530
1530
|
const A = [` ${D} ${Al(B)}`], $ = ug(L, B);
|
|
1531
|
-
$ && A.push($),
|
|
1531
|
+
$ && A.push($), fi(L, B) && !L.identifier && A.push("NOT NULL"), B.unique && A.push("UNIQUE"), w.push(A.join(" "));
|
|
1532
1532
|
}
|
|
1533
1533
|
const g = va(u).filter((L) => L.identifier).flatMap((L) => h.get(L.modelId) ?? []).filter((L) => !gn(L));
|
|
1534
1534
|
g.length && w.push(` PRIMARY KEY (${g.join(", ")})`);
|
|
@@ -1544,8 +1544,8 @@ ${N}
|
|
|
1544
1544
|
if (!B) continue;
|
|
1545
1545
|
const D = o.get(B.sourceAttributeRef);
|
|
1546
1546
|
if (!D) continue;
|
|
1547
|
-
if (
|
|
1548
|
-
x.push(`${L.name || L.modelId} → ${
|
|
1547
|
+
if (yi(D)) {
|
|
1548
|
+
x.push(`${L.name || L.modelId} → ${Ti(D)}`);
|
|
1549
1549
|
continue;
|
|
1550
1550
|
}
|
|
1551
1551
|
const A = h.get(L.modelId) ?? [], $ = i.get(B.sourceAttributeRef) ?? [], I = D.attributes.find((G) => G.modelId === B.sourceAttributeRef), E = [];
|
|
@@ -1556,7 +1556,7 @@ ${N}
|
|
|
1556
1556
|
if (!E.length) continue;
|
|
1557
1557
|
const C = y.get(B.associationRef) ?? {
|
|
1558
1558
|
childCols: [],
|
|
1559
|
-
parentTable:
|
|
1559
|
+
parentTable: Ti(D),
|
|
1560
1560
|
parentCols: []
|
|
1561
1561
|
};
|
|
1562
1562
|
for (const [G, T] of E)
|
|
@@ -1579,7 +1579,7 @@ ${N}
|
|
|
1579
1579
|
for (const E of L.columns) {
|
|
1580
1580
|
const C = b.get(F.canon(E.columnRef));
|
|
1581
1581
|
if (gn(C)) {
|
|
1582
|
-
|
|
1582
|
+
Ji(E.columnRef) || D.push(Cm(F, E.columnRef));
|
|
1583
1583
|
continue;
|
|
1584
1584
|
}
|
|
1585
1585
|
if ($.has(C)) {
|
|
@@ -1608,35 +1608,40 @@ ${N}
|
|
|
1608
1608
|
function yg(e, t, n) {
|
|
1609
1609
|
var o, i;
|
|
1610
1610
|
for (const a of e.entities)
|
|
1611
|
-
if (!(St(a.stereotype) ||
|
|
1611
|
+
if (!(St(a.stereotype) || yi(a)))
|
|
1612
1612
|
for (const s of va(a)) {
|
|
1613
1613
|
if (!za(s, e.associations)) continue;
|
|
1614
1614
|
const r = vg(s, e), l = (o = r == null ? void 0 : r.jpa) == null ? void 0 : o.collectionTable;
|
|
1615
1615
|
if (gn(l)) {
|
|
1616
1616
|
n.createStmts.push(
|
|
1617
|
-
`-- ⚠ ${
|
|
1617
|
+
`-- ⚠ ${Ti(a)}.${s.name || "(이름 없음)"}: @ElementCollection 컬렉션 테이블 이름 미지정 — CREATE TABLE 생략`
|
|
1618
1618
|
);
|
|
1619
1619
|
continue;
|
|
1620
1620
|
}
|
|
1621
1621
|
const d = Ao(a).map((v) => ({ name: n.parentColName.get(v.modelId), col: v })).filter((v) => !gn(v.name));
|
|
1622
1622
|
if (!d.length) {
|
|
1623
1623
|
n.createStmts.push(
|
|
1624
|
-
`-- ⚠ ${l}: 소유자 ${
|
|
1624
|
+
`-- ⚠ ${l}: 소유자 ${Ti(a)} 의 PK 컬럼을 해소하지 못해 CREATE TABLE 생략`
|
|
1625
1625
|
);
|
|
1626
1626
|
continue;
|
|
1627
1627
|
}
|
|
1628
1628
|
const c = gg(s, e, t), u = [
|
|
1629
|
-
|
|
1629
|
+
// ⚠️★**조인 컬럼은 시퀀스가 아니다** — 소유자 PK 를 상속하는데 그 PK 가 `autoIncrement` 면
|
|
1630
|
+
// `pgColumnType` 이 `bigserial` 로 승격해 **컬렉션 테이블마다 시퀀스가 생긴다**(실물은 `BIGINT`).
|
|
1631
|
+
// FK 컬럼이므로 그 축을 벗기고 낸다(`ddl.ts` 의 일반 FK 도 부모 타입만 상속한다).
|
|
1632
|
+
...d.map((v) => ` ${v.name} ${Al({ ...v.col, autoIncrement: !1 })} NOT NULL`),
|
|
1630
1633
|
// ⚠️EMBED_PREDEF 경로(카탈로그)는 방출 필터를 아직 안 지났으므로 여기서 한 번 더 건다 —
|
|
1631
1634
|
// EMBED_OWN 경로는 `resolveColumns` 가 이미 같은 기준으로 걸렀다(중복 적용은 무해).
|
|
1632
|
-
|
|
1633
|
-
|
|
1635
|
+
// ★**NOT NULL 은 `effectiveNotNull` 단일 출처** — 임베더블의 제약은 «속성 축»에 있어서
|
|
1636
|
+
// 컬럼만 보면 전부 nullable 로 나간다(실물은 전량 NOT NULL 이었다).
|
|
1637
|
+
...c.filter((v) => v.col.sharedColumnRef == null && !gn(v.col.physicalName) && !gn(v.col.dataType)).map((v) => ` ${v.col.physicalName} ${Al(v.col)}${v.attr && fi(v.attr, v.col) || v.col.notNull ? " NOT NULL" : ""}`)
|
|
1638
|
+
], p = (i = r == null ? void 0 : r.jpa) == null ? void 0 : i.orderColumn, f = !gn(p) && c.some((v) => v.col.physicalName === p), h = !gn(p) && !f ? `
|
|
1634
1639
|
-- ⚠ @OrderColumn "${p}": 타입 근거가 모델에 없어 컬럼 생략(임베더블 속성으로 선언하면 방출됨)` : "";
|
|
1635
1640
|
n.createStmts.push(`CREATE TABLE ${l} (
|
|
1636
1641
|
${u.join(`,
|
|
1637
1642
|
`)}${h}
|
|
1638
1643
|
);`);
|
|
1639
|
-
const b =
|
|
1644
|
+
const b = Ti(a);
|
|
1640
1645
|
n.alterStmts.push(
|
|
1641
1646
|
`ALTER TABLE ${l} ADD CONSTRAINT fk_${l}_${b} FOREIGN KEY (${d.map((v) => v.name).join(", ")}) REFERENCES ${b} (${d.map((v) => v.name).join(", ")});`
|
|
1642
1647
|
);
|
|
@@ -1653,14 +1658,14 @@ function vg(e, t) {
|
|
|
1653
1658
|
function gg(e, t, n) {
|
|
1654
1659
|
var a, s, r;
|
|
1655
1660
|
if (e.attrType === "EMBED_PREDEF")
|
|
1656
|
-
return ((s = (a = n == null ? void 0 : n.embeddableCatalog) == null ? void 0 : a.find((l) => l.type === e.type)) == null ? void 0 : s.fields) ?? [];
|
|
1661
|
+
return (((s = (a = n == null ? void 0 : n.embeddableCatalog) == null ? void 0 : a.find((l) => l.type === e.type)) == null ? void 0 : s.fields) ?? []).map((l) => ({ col: l }));
|
|
1657
1662
|
const o = (r = e.embedded) == null ? void 0 : r.embeddableRef;
|
|
1658
1663
|
if (o == null) return [];
|
|
1659
1664
|
const i = t.entities.find((l) => l.modelId === o);
|
|
1660
|
-
return i ? ef(i, t, n).map((l) => l.col) : [];
|
|
1665
|
+
return i ? ef(i, t, n).map((l) => ({ col: l.col, attr: l.attr })) : [];
|
|
1661
1666
|
}
|
|
1662
1667
|
const nf = "entity-modeler-diagram", of = 1;
|
|
1663
|
-
class
|
|
1668
|
+
class _i extends Error {
|
|
1664
1669
|
constructor(t) {
|
|
1665
1670
|
super(t), this.name = "InvalidDiagramJsonError";
|
|
1666
1671
|
}
|
|
@@ -1673,38 +1678,38 @@ function bg(e, t) {
|
|
|
1673
1678
|
layout: t
|
|
1674
1679
|
}, null, 2);
|
|
1675
1680
|
}
|
|
1676
|
-
const Qa = (e) => typeof e == "object" && e !== null && !Array.isArray(e),
|
|
1681
|
+
const Qa = (e) => typeof e == "object" && e !== null && !Array.isArray(e), wi = (e) => Array.isArray(e) ? e : [];
|
|
1677
1682
|
function _g(e) {
|
|
1678
1683
|
let t;
|
|
1679
1684
|
try {
|
|
1680
1685
|
t = JSON.parse(e);
|
|
1681
1686
|
} catch {
|
|
1682
|
-
throw new
|
|
1687
|
+
throw new _i("JSON 파싱 실패 — 올바른 JSON이 아닙니다.");
|
|
1683
1688
|
}
|
|
1684
|
-
if (!Qa(t)) throw new
|
|
1689
|
+
if (!Qa(t)) throw new _i("최상위가 객체가 아닙니다.");
|
|
1685
1690
|
if (t.format !== nf)
|
|
1686
|
-
throw new
|
|
1691
|
+
throw new _i(`형식이 아닙니다(format=${String(t.format)}).`);
|
|
1687
1692
|
if (typeof t.version != "number" || t.version > of)
|
|
1688
|
-
throw new
|
|
1693
|
+
throw new _i(`지원하지 않는 버전(version=${String(t.version)}).`);
|
|
1689
1694
|
const n = t.logical;
|
|
1690
1695
|
if (!Qa(n) || !Array.isArray(n.entities))
|
|
1691
|
-
throw new
|
|
1696
|
+
throw new _i("logical.entities 배열이 없습니다.");
|
|
1692
1697
|
for (const s of n.entities)
|
|
1693
1698
|
if (!Qa(s) || typeof s.modelId != "string" || !Array.isArray(s.attributes))
|
|
1694
|
-
throw new
|
|
1699
|
+
throw new _i("엔티티 골격(modelId·attributes)이 올바르지 않습니다.");
|
|
1695
1700
|
const o = {
|
|
1696
1701
|
modelId: typeof n.modelId == "string" ? n.modelId : "imported",
|
|
1697
1702
|
packageName: typeof n.packageName == "string" ? n.packageName : void 0,
|
|
1698
1703
|
entities: n.entities,
|
|
1699
|
-
associations:
|
|
1700
|
-
groups:
|
|
1704
|
+
associations: wi(n.associations),
|
|
1705
|
+
groups: wi(n.groups)
|
|
1701
1706
|
}, i = Qa(t.layout) ? t.layout : {}, a = {
|
|
1702
1707
|
diagramId: typeof i.diagramId == "string" ? i.diagramId : "imported",
|
|
1703
1708
|
logicalModelRef: typeof i.logicalModelRef == "string" ? i.logicalModelRef : o.modelId,
|
|
1704
|
-
entityLayouts:
|
|
1705
|
-
associationLayouts:
|
|
1706
|
-
groupLayouts:
|
|
1707
|
-
notes:
|
|
1709
|
+
entityLayouts: wi(i.entityLayouts),
|
|
1710
|
+
associationLayouts: wi(i.associationLayouts),
|
|
1711
|
+
groupLayouts: wi(i.groupLayouts),
|
|
1712
|
+
notes: wi(i.notes)
|
|
1708
1713
|
};
|
|
1709
1714
|
return { logical: o, layout: a };
|
|
1710
1715
|
}
|
|
@@ -2019,7 +2024,7 @@ function ns(e) {
|
|
|
2019
2024
|
function nn(e) {
|
|
2020
2025
|
return !e || e.trim() === "";
|
|
2021
2026
|
}
|
|
2022
|
-
function
|
|
2027
|
+
function Ii(e) {
|
|
2023
2028
|
return e === "ZERO_OR_MORE_INSTANCES" || e === "ONE_OR_MORE_INSTANCES";
|
|
2024
2029
|
}
|
|
2025
2030
|
function Lg(e, t) {
|
|
@@ -2308,7 +2313,7 @@ function qr(e, t) {
|
|
|
2308
2313
|
targetRef: C.modelId,
|
|
2309
2314
|
contextRef: y.modelId,
|
|
2310
2315
|
params: { type: E.attr.type, dataType: ns(C) }
|
|
2311
|
-
}), y.stereotype !== "SERIALIZED_TYPE" && E.attr.attrType === "NORMAL" && !E.attr.transient && !E.attr.identifier && !
|
|
2316
|
+
}), y.stereotype !== "SERIALIZED_TYPE" && E.attr.attrType === "NORMAL" && !E.attr.transient && !E.attr.identifier && !fi(E.attr, C) && !nn(C.dataType) && T !== !1 && Tv(E.attr.type, C.dataType, C.multiValue) && n.push({
|
|
2312
2317
|
ruleId: "CHK-TYPE-8",
|
|
2313
2318
|
severity: "warning",
|
|
2314
2319
|
targetKind: "column",
|
|
@@ -2337,7 +2342,7 @@ function qr(e, t) {
|
|
|
2337
2342
|
params: { name: E.attr.name }
|
|
2338
2343
|
}));
|
|
2339
2344
|
if ((f = t == null ? void 0 : t.embeddableCatalog) != null && f.length) {
|
|
2340
|
-
const E =
|
|
2345
|
+
const E = pi(Mo(y, e.entities));
|
|
2341
2346
|
for (const C of x) {
|
|
2342
2347
|
if (C.attrType !== "EMBED_PREDEF") continue;
|
|
2343
2348
|
const G = t.embeddableCatalog.find((T) => T.type === C.type);
|
|
@@ -2359,7 +2364,7 @@ function qr(e, t) {
|
|
|
2359
2364
|
for (const E of x) {
|
|
2360
2365
|
const C = E.dbAttrs[0];
|
|
2361
2366
|
if (!(C != null && C.multiValue)) continue;
|
|
2362
|
-
E.type ===
|
|
2367
|
+
E.type === hi && C.dataType === "VARCHAR" || n.push({
|
|
2363
2368
|
// type/dataType 미지정 폴백 문구는 표시 어휘라 뷰(카탈로그)에서 '(미지정)'로 보간 — core는 빈 문자열만 전달.
|
|
2364
2369
|
ruleId: "CHK-TYPE-4",
|
|
2365
2370
|
severity: "warning",
|
|
@@ -2374,7 +2379,7 @@ function qr(e, t) {
|
|
|
2374
2379
|
const C = o.get(E.embedded.embeddableRef);
|
|
2375
2380
|
if (!C) continue;
|
|
2376
2381
|
const G = i.get(E.embedded.associationRef), T = G == null ? void 0 : G.end1.entityRef === E.embedded.embeddableRef ? G.end1 : G.end2;
|
|
2377
|
-
if (T &&
|
|
2382
|
+
if (T && Ii(T.multiplicity)) continue;
|
|
2378
2383
|
const j = mo(C).length;
|
|
2379
2384
|
E.dbAttrs.length !== j && n.push({
|
|
2380
2385
|
ruleId: "CHK-JPA-21",
|
|
@@ -2432,7 +2437,7 @@ function qr(e, t) {
|
|
|
2432
2437
|
for (const G of E.columns) {
|
|
2433
2438
|
const T = G.columnRef;
|
|
2434
2439
|
if (D.has(T) || A.has(T)) continue;
|
|
2435
|
-
const j =
|
|
2440
|
+
const j = Ji(T);
|
|
2436
2441
|
j && !$ || n.push({
|
|
2437
2442
|
// 상속 컬럼 미발견(field 동반) vs 일반 dangling — 뷰가 field param 유무로 서브키 선택.
|
|
2438
2443
|
ruleId: "CHK-DSN-5",
|
|
@@ -2465,7 +2470,7 @@ function qr(e, t) {
|
|
|
2465
2470
|
for (const x of y.attributes)
|
|
2466
2471
|
x.attrType === "EMBED_OWN" && x.embedded && c.set(x.embedded.associationRef, x);
|
|
2467
2472
|
for (const y of l) {
|
|
2468
|
-
if (
|
|
2473
|
+
if (Ii(y.end1.multiplicity) && Ii(y.end2.multiplicity) && n.push({
|
|
2469
2474
|
ruleId: "CHK-DSN-1",
|
|
2470
2475
|
severity: "info",
|
|
2471
2476
|
targetKind: "association",
|
|
@@ -2504,19 +2509,19 @@ function qr(e, t) {
|
|
|
2504
2509
|
targetKind: "association",
|
|
2505
2510
|
targetRef: y.modelId,
|
|
2506
2511
|
params: { which: x }
|
|
2507
|
-
}),
|
|
2512
|
+
}), Ii(y[x].multiplicity) && O.fetchType === "EAGER" && n.push({
|
|
2508
2513
|
ruleId: "CHK-JPA-7",
|
|
2509
2514
|
severity: "warning",
|
|
2510
2515
|
targetKind: "association",
|
|
2511
2516
|
targetRef: y.modelId,
|
|
2512
2517
|
params: { which: x }
|
|
2513
|
-
}), O.orphanRemoval &&
|
|
2518
|
+
}), O.orphanRemoval && Ii(y[x === "end1" ? "end2" : "end1"].multiplicity) && n.push({
|
|
2514
2519
|
ruleId: "CHK-JPA-14",
|
|
2515
2520
|
severity: "error",
|
|
2516
2521
|
targetKind: "association",
|
|
2517
2522
|
targetRef: y.modelId,
|
|
2518
2523
|
params: { which: x }
|
|
2519
|
-
}), !
|
|
2524
|
+
}), !Ii(y[x].multiplicity) && (O.collectionType || O.collectionTable || O.orderColumn) && n.push({
|
|
2520
2525
|
ruleId: "CHK-JPA-9",
|
|
2521
2526
|
severity: "warning",
|
|
2522
2527
|
targetKind: "association",
|
|
@@ -2710,7 +2715,7 @@ function sV(e, t, n = {}) {
|
|
|
2710
2715
|
const o = new Map(e.entities.map((a) => [a.modelId, a])), i = [];
|
|
2711
2716
|
for (const a of t) {
|
|
2712
2717
|
const s = o.get(a);
|
|
2713
|
-
s && (
|
|
2718
|
+
s && (yi(s) || n.skipUngeneratable !== !1 && !jg(s) || i.push(qg(s, e, n)));
|
|
2714
2719
|
}
|
|
2715
2720
|
return i;
|
|
2716
2721
|
}
|
|
@@ -2770,7 +2775,7 @@ function ga(e, t, n, o) {
|
|
|
2770
2775
|
if (!e)
|
|
2771
2776
|
return { ...i, type: "Object", fillIns: ["속성 타입 미지정 — Object로 폴백 방출, 모델 정정 필요"] };
|
|
2772
2777
|
const s = [...vr, ...n.javaTypeCatalog ?? []].find((l) => l.value === e);
|
|
2773
|
-
if (e ===
|
|
2778
|
+
if (e === hi) {
|
|
2774
2779
|
if (o) {
|
|
2775
2780
|
const l = [`${Co}.Enumerated`, `${Co}.EnumType`], d = [];
|
|
2776
2781
|
return n.groupCodeEnumPackage ? l.push(`${n.groupCodeEnumPackage}.${o}`) : d.push(`enum ${o} import 패키지 확인 (groupCodeEnumPackage 미주입 — 같은 패키지 가정)`), {
|
|
@@ -3103,7 +3108,7 @@ function gf(e, t, n, o, i, a = !1) {
|
|
|
3103
3108
|
for (const h of d.fillIns) i.fillIn(`${s}.${l}: ${h}`);
|
|
3104
3109
|
const c = (r == null ? void 0 : r.multiValue) === !0, u = c ? `Set<${d.type}>` : d.type;
|
|
3105
3110
|
c && (i.import("java.util.Set"), i.import("java.util.LinkedHashSet"), i.fillIn(`${s}.${l}: 다중값(단일 컬럼 Set) 컨버터 @Convert(converter = <…AttributeConverter>.class) 지정`)), i.line("");
|
|
3106
|
-
for (const h of Fa(
|
|
3111
|
+
for (const h of Fa(Si(e, r), " ")) i.line(h);
|
|
3107
3112
|
e.identifier && (i.jpa("Id"), i.line(" @Id"), r != null && r.autoIncrement && a ? i.fillIn(`${s}.${l}: 파생 식별(@MapsId) 스칼라에 autoIncrement 지정 — 값의 출처가 연관이므로 @GeneratedValue 미방출, 모델 확인 필요`) : r != null && r.autoIncrement && (i.jpa("GeneratedValue"), i.jpa("GenerationType"), i.line(" @GeneratedValue(strategy = GenerationType.IDENTITY)"))), e.naturalId && (i.import(Nt.naturalId), i.line(e.naturalIdMutable ? " @NaturalId(mutable = true)" : " @NaturalId")), (r == null ? void 0 : r.dataType) === "CLOB" && (i.jpa("Lob"), i.line(" @Lob")), i.line(` ${db(e, r, i, a)}`);
|
|
3108
3113
|
for (const h of d.fieldAnnotations) i.line(` ${h}`);
|
|
3109
3114
|
const p = zm(e.type, r == null ? void 0 : r.dataType, c), f = p === "primitive" ? "booleanYnPrimitive" : p === "boxed" ? "booleanYnBoxed" : null;
|
|
@@ -3165,7 +3170,7 @@ function bf(e, t, n) {
|
|
|
3165
3170
|
}
|
|
3166
3171
|
function ob(e, t, n, o, i, a) {
|
|
3167
3172
|
var c;
|
|
3168
|
-
const s =
|
|
3173
|
+
const s = pi(Mo(t, n.entities)), r = (u) => {
|
|
3169
3174
|
var p;
|
|
3170
3175
|
return u == null ? "" : ((p = s.get(u)) == null ? void 0 : p.physicalName) ?? "";
|
|
3171
3176
|
}, l = e.dbAttrs.length === mo(
|
|
@@ -3178,7 +3183,7 @@ function ob(e, t, n, o, i, a) {
|
|
|
3178
3183
|
a.fillIn(`${t.name}.${e.name}: EMBED 서브컬럼[${p}] @AttributeOverride 프로퍼티 경로 미해소(카탈로그/중첩 임베더블 형상 확인)`);
|
|
3179
3184
|
return;
|
|
3180
3185
|
}
|
|
3181
|
-
const w = !b &&
|
|
3186
|
+
const w = !b && fi(e, h) ? ", nullable = false" : "";
|
|
3182
3187
|
d.push(
|
|
3183
3188
|
b ? `@AttributeOverride(name = "${f.propertyPath}", column = @Column(name = "${v}", insertable = false, updatable = false))` : `@AttributeOverride(name = "${f.propertyPath}", column = @Column(name = "${v}"${w}))`
|
|
3184
3189
|
);
|
|
@@ -3229,12 +3234,12 @@ function _f(e, t, n, o, i) {
|
|
|
3229
3234
|
}
|
|
3230
3235
|
function ib(e, t, n, o, i) {
|
|
3231
3236
|
i.jpa("Embedded"), i.import(Nt.compositeType), i.import(Nt.money), i.import(Nt.moneyUserType);
|
|
3232
|
-
const a = bf(e, n, o), s =
|
|
3237
|
+
const a = bf(e, n, o), s = pi(Mo(t, n.entities)), r = e.dbAttrs.flatMap((l, d) => {
|
|
3233
3238
|
var v, _;
|
|
3234
3239
|
const c = ((v = a[d]) == null ? void 0 : v.propertyPath) || (d === 0 ? "amount" : d === 1 ? "currency" : `field${d}`), u = Xi(l, s), p = ((_ = a[d]) == null ? void 0 : _.defaultPhysical) || "", f = l.physicalName || "", h = l.insertable === !1 || l.updatable === !1 || l.notNull != null;
|
|
3235
3240
|
if (!u && !h && (!f || f === p)) return [];
|
|
3236
3241
|
const b = [`name = "${u ? u.physicalName : f || p}"`];
|
|
3237
|
-
return
|
|
3242
|
+
return fi(e, l) && b.push("nullable = false"), u ? b.push("insertable = false", "updatable = false") : (l.insertable === !1 && b.push("insertable = false"), l.updatable === !1 && b.push("updatable = false")), [`@AttributeOverride(name = "${c}", column = @Column(${b.join(", ")}))`];
|
|
3238
3243
|
});
|
|
3239
3244
|
return i.line(""), i.line(" @Embedded"), i.line(" @CompositeType(MoneyUserType.class)"), Sl(r, i), oi(i, o.lombok !== !1), i.line(` private Money ${e.name};`), { type: "Money", name: e.name, category: 0 };
|
|
3240
3245
|
}
|
|
@@ -3327,7 +3332,7 @@ function rb(e, t, n, o, i, a, s, r, l) {
|
|
|
3327
3332
|
const g = Math.max(1, w.dbAttrs.length);
|
|
3328
3333
|
for (let N = 0; N < g; N++) {
|
|
3329
3334
|
const y = w.dbAttrs[N], x = Sd(w, t, o, N), O = (y == null ? void 0 : y.physicalName) || x || "", F = [];
|
|
3330
|
-
O ? F.push(`name = "${O}"`) : l.fillIn(`${(h == null ? void 0 : h.name) ?? ""}.${w.name}: @JoinColumn 컬럼명 미해소(FK·참조 컬럼 물리명 부재) — 확인 필요`), x && F.push(`referencedColumnName = "${x}"`),
|
|
3335
|
+
O ? F.push(`name = "${O}"`) : l.fillIn(`${(h == null ? void 0 : h.name) ?? ""}.${w.name}: @JoinColumn 컬럼명 미해소(FK·참조 컬럼 물리명 부재) — 확인 필요`), x && F.push(`referencedColumnName = "${x}"`), fi(w, y) && F.push("nullable = false"), (y == null ? void 0 : y.insertable) === !1 && F.push("insertable = false"), (y == null ? void 0 : y.updatable) === !1 && F.push("updatable = false"), v.push(`@JoinColumn(${F.join(", ")})`);
|
|
3331
3336
|
}
|
|
3332
3337
|
}
|
|
3333
3338
|
return l.line(""), i === "id" && (l.jpa("Id"), l.line(" @Id")), l.line(` @${u}${f.length ? `(${f.join(", ")})` : ""}`), v.length === 1 ? l.line(` ${v[0]}`) : (l.jpa("JoinColumns"), l.line(` @JoinColumns({${v[0]},`), v.slice(1).forEach((w, g) => {
|
|
@@ -3364,7 +3369,7 @@ function lb(e, t, n, o, i, a, s, r) {
|
|
|
3364
3369
|
function db(e, t, n, o = !1) {
|
|
3365
3370
|
n.jpa("Column");
|
|
3366
3371
|
const i = [`name = "${(t == null ? void 0 : t.physicalName) ?? ""}"`];
|
|
3367
|
-
if (
|
|
3372
|
+
if (fi(e, t) && i.push("nullable = false"), t) {
|
|
3368
3373
|
const a = Cl.has(t.dataType);
|
|
3369
3374
|
t.length != null && i.push(a ? `precision = ${t.length}` : `length = ${t.length}`), t.scale != null && i.push(`scale = ${t.scale}`), o ? i.push("insertable = false", "updatable = false") : (t.insertable === !1 && i.push("insertable = false"), t.updatable === !1 && i.push("updatable = false")), t.unique && i.push("unique = true");
|
|
3370
3375
|
}
|
|
@@ -3408,7 +3413,7 @@ function mb(e, t, n, o) {
|
|
|
3408
3413
|
}
|
|
3409
3414
|
const ii = "com.example", fb = "command.domain";
|
|
3410
3415
|
function po(e, t, n = {}) {
|
|
3411
|
-
const o =
|
|
3416
|
+
const o = Di(e, t);
|
|
3412
3417
|
if (o.kind === "explicit") return o.value;
|
|
3413
3418
|
const i = n.packageConfig;
|
|
3414
3419
|
if (i != null && i.basePackage) {
|
|
@@ -3519,7 +3524,7 @@ function gb(e, t, n) {
|
|
|
3519
3524
|
o++;
|
|
3520
3525
|
}
|
|
3521
3526
|
}
|
|
3522
|
-
const dV = "5.2.
|
|
3527
|
+
const dV = "5.2.25";
|
|
3523
3528
|
function Nn(e) {
|
|
3524
3529
|
return e.reduce((t, n) => Math.max(t, n.order), -1) + 1;
|
|
3525
3530
|
}
|
|
@@ -3543,7 +3548,7 @@ function kf(e) {
|
|
|
3543
3548
|
s.forEach((r, l) => r.order = l), t.attributes = s;
|
|
3544
3549
|
}
|
|
3545
3550
|
}
|
|
3546
|
-
function
|
|
3551
|
+
function ki(e) {
|
|
3547
3552
|
return JSON.parse(JSON.stringify(e));
|
|
3548
3553
|
}
|
|
3549
3554
|
function bb(e, t, n) {
|
|
@@ -3573,22 +3578,22 @@ function bb(e, t, n) {
|
|
|
3573
3578
|
}
|
|
3574
3579
|
for (const L of c) f(L.modelId);
|
|
3575
3580
|
const h = (L) => p.get(L), b = l.map((L) => {
|
|
3576
|
-
const B =
|
|
3581
|
+
const B = ki(L);
|
|
3577
3582
|
B.modelId = h(L.modelId), B.attributes = B.attributes.map((D) => _b(D, h, u, d));
|
|
3578
3583
|
for (const D of B.indexes ?? [])
|
|
3579
|
-
D.modelId = h(D.modelId), D.columns = D.columns.map((A) =>
|
|
3584
|
+
D.modelId = h(D.modelId), D.columns = D.columns.map((A) => Ji(A.columnRef) ? A : { ...A, columnRef: h(A.columnRef) }).filter((A) => A.columnRef !== void 0);
|
|
3580
3585
|
for (const D of B.operations ?? []) D.modelId = h(D.modelId);
|
|
3581
3586
|
return B;
|
|
3582
3587
|
});
|
|
3583
3588
|
kf(b);
|
|
3584
3589
|
const v = c.map((L) => {
|
|
3585
|
-
const B =
|
|
3590
|
+
const B = ki(L);
|
|
3586
3591
|
return B.modelId = h(L.modelId), B.end1 = Rc(B.end1, h), B.end2 = Rc(B.end2, h), B;
|
|
3587
3592
|
}), _ = [];
|
|
3588
3593
|
for (const L of a.groups) {
|
|
3589
3594
|
const B = L.memberEntityRefs.filter((A) => d.has(A));
|
|
3590
3595
|
if (B.length === 0) continue;
|
|
3591
|
-
const D =
|
|
3596
|
+
const D = ki(L);
|
|
3592
3597
|
D.modelId = f(L.modelId), D.memberEntityRefs = B.map((A) => h(A)), _.push(D);
|
|
3593
3598
|
}
|
|
3594
3599
|
const w = n.collisionSuffix ?? "_imported", g = new Set(n.existing.entities.map((L) => L.name)), N = new Set(
|
|
@@ -3603,21 +3608,21 @@ function bb(e, t, n) {
|
|
|
3603
3608
|
for (const L of s.entityLayouts) {
|
|
3604
3609
|
const B = h(L.entityRef);
|
|
3605
3610
|
if (!B) continue;
|
|
3606
|
-
const D =
|
|
3611
|
+
const D = ki(L);
|
|
3607
3612
|
D.entityRef = B, D.geo = { ...D.geo, location: Wr(D.geo.location, i) }, D.attributeStyles && (D.attributeStyles = Us(D.attributeStyles, h)), D.operationStyles && (D.operationStyles = Us(D.operationStyles, h)), y.push(D);
|
|
3608
3613
|
}
|
|
3609
3614
|
const x = [];
|
|
3610
3615
|
for (const L of s.associationLayouts) {
|
|
3611
3616
|
const B = h(L.associationRef);
|
|
3612
3617
|
if (!B) continue;
|
|
3613
|
-
const D =
|
|
3618
|
+
const D = ki(L);
|
|
3614
3619
|
D.associationRef = B, D.sourceColumnRef = L.sourceColumnRef ? h(L.sourceColumnRef) : void 0, D.targetColumnRef = L.targetColumnRef ? h(L.targetColumnRef) : void 0, D.waypoints = D.waypoints.map((A) => Wr(A, i)), x.push(D);
|
|
3615
3620
|
}
|
|
3616
3621
|
const O = [];
|
|
3617
3622
|
for (const L of s.groupLayouts) {
|
|
3618
3623
|
const B = h(L.groupRef);
|
|
3619
3624
|
if (!B) continue;
|
|
3620
|
-
const D =
|
|
3625
|
+
const D = ki(L);
|
|
3621
3626
|
D.groupRef = B, D.geo = { ...D.geo, location: Wr(D.geo.location, i) }, delete D.memberNoteRefs, O.push(D);
|
|
3622
3627
|
}
|
|
3623
3628
|
return {
|
|
@@ -3664,15 +3669,15 @@ function Jr(e) {
|
|
|
3664
3669
|
const { rev: t, ...n } = e;
|
|
3665
3670
|
return n;
|
|
3666
3671
|
}
|
|
3667
|
-
function
|
|
3672
|
+
function Bi(e, t) {
|
|
3668
3673
|
if (e === t || e == null && t == null) return !0;
|
|
3669
3674
|
if (e == null || t == null) return !1;
|
|
3670
3675
|
if (Array.isArray(e) || Array.isArray(t))
|
|
3671
|
-
return !Array.isArray(e) || !Array.isArray(t) || e.length !== t.length ? !1 : e.every((n, o) =>
|
|
3676
|
+
return !Array.isArray(e) || !Array.isArray(t) || e.length !== t.length ? !1 : e.every((n, o) => Bi(n, t[o]));
|
|
3672
3677
|
if (typeof e == "object" && typeof t == "object") {
|
|
3673
3678
|
const n = /* @__PURE__ */ new Set([...Object.keys(e), ...Object.keys(t)]);
|
|
3674
3679
|
for (const o of n)
|
|
3675
|
-
if (!
|
|
3680
|
+
if (!Bi(e[o], t[o])) return !1;
|
|
3676
3681
|
return !0;
|
|
3677
3682
|
}
|
|
3678
3683
|
return !1;
|
|
@@ -3680,7 +3685,7 @@ function Vi(e, t) {
|
|
|
3680
3685
|
function Ko(e, t, n) {
|
|
3681
3686
|
const o = {}, i = /* @__PURE__ */ new Set([...Object.keys(e), ...Object.keys(t)]);
|
|
3682
3687
|
for (const a of i)
|
|
3683
|
-
n.has(a) ||
|
|
3688
|
+
n.has(a) || Bi(e[a], t[a]) || (o[a] = t[a] === void 0 ? null : t[a]);
|
|
3684
3689
|
return Object.keys(o).length ? o : null;
|
|
3685
3690
|
}
|
|
3686
3691
|
function Xo(e, t, n) {
|
|
@@ -3723,7 +3728,7 @@ function xb(e, t, n, o) {
|
|
|
3723
3728
|
for (const r of s.added)
|
|
3724
3729
|
o.push({ kind: "index.add", casUnit: "logical", containerRef: e, entityRef: e, value: r });
|
|
3725
3730
|
for (const { cur: r, tgt: l } of s.common) {
|
|
3726
|
-
if (!
|
|
3731
|
+
if (!Bi(r.columns, l.columns)) {
|
|
3727
3732
|
o.push({ kind: "index.remove", casUnit: "logical", containerRef: e, entityRef: e, indexRef: r.modelId }), o.push({ kind: "index.add", casUnit: "logical", containerRef: e, entityRef: e, value: l });
|
|
3728
3733
|
continue;
|
|
3729
3734
|
}
|
|
@@ -3773,7 +3778,7 @@ function os(e, t, n, o, i, a, s) {
|
|
|
3773
3778
|
for (const l of r.removed) s.push({ kind: i, casUnit: "layout", [a]: n(l), value: void 0 });
|
|
3774
3779
|
for (const l of r.added) s.push({ kind: o, casUnit: "layout", [a]: n(l), value: l });
|
|
3775
3780
|
for (const { cur: l, tgt: d } of r.common)
|
|
3776
|
-
|
|
3781
|
+
Bi(l, d) || (s.push({ kind: i, casUnit: "layout", [a]: n(l), value: void 0 }), s.push({ kind: o, casUnit: "layout", [a]: n(d), value: d }));
|
|
3777
3782
|
}
|
|
3778
3783
|
function Ab(e, t, n) {
|
|
3779
3784
|
os(
|
|
@@ -4247,7 +4252,7 @@ function Sc(e, t) {
|
|
|
4247
4252
|
}
|
|
4248
4253
|
const v = [];
|
|
4249
4254
|
for (const [_, w] of h)
|
|
4250
|
-
w.hasOld &&
|
|
4255
|
+
w.hasOld && Bi(w.firstOld, w.lastValue) || v.push({ field: _, value: w.lastValue, ...w.hasOld ? { oldValue: w.firstOld } : {} });
|
|
4251
4256
|
v.length !== 0 && d.push({ subject: u.subject, verb: "modified", fields: v });
|
|
4252
4257
|
}
|
|
4253
4258
|
return { fromSeq: n, toSeq: a, entries: d };
|
|
@@ -6144,7 +6149,7 @@ function zo(e, t, n) {
|
|
|
6144
6149
|
)
|
|
6145
6150
|
};
|
|
6146
6151
|
}
|
|
6147
|
-
function
|
|
6152
|
+
function Ci(e, t, n) {
|
|
6148
6153
|
const o = [];
|
|
6149
6154
|
for (const [i, a] of kd(e, t, We))
|
|
6150
6155
|
o.push(...Cr(e, i, a, n));
|
|
@@ -6262,7 +6267,7 @@ function _p(e, t) {
|
|
|
6262
6267
|
o.push(...jn(u.ownerId, [u.dispId], l)), o.push(Er(u.assocId, { end1: u.end1, end2: u.end2 }));
|
|
6263
6268
|
o.push(...Cr(s, t, r, l));
|
|
6264
6269
|
const d = n_(s, t, r);
|
|
6265
|
-
return o.push(...
|
|
6270
|
+
return o.push(...Ci(d, t, l)), o.push(...kn(e, l)), o;
|
|
6266
6271
|
}
|
|
6267
6272
|
function wp(e, t, n) {
|
|
6268
6273
|
const o = e.entities.find((c) => c.modelId === t);
|
|
@@ -6409,7 +6414,7 @@ function tl(e, t, n) {
|
|
|
6409
6414
|
const l_ = /* @__PURE__ */ new Set(["name", "description", "packageName", "excludeDDLGeneration"]);
|
|
6410
6415
|
function d_(e, t) {
|
|
6411
6416
|
var i;
|
|
6412
|
-
const n =
|
|
6417
|
+
const n = Di(e, t).value, o = t.associations.filter(
|
|
6413
6418
|
(a) => {
|
|
6414
6419
|
var s, r;
|
|
6415
6420
|
return ((s = a.end1) == null ? void 0 : s.entityRef) === e.modelId || ((r = a.end2) == null ? void 0 : r.entityRef) === e.modelId;
|
|
@@ -6775,7 +6780,7 @@ function Hc(e, t, n, o, i, a) {
|
|
|
6775
6780
|
...t.parameters ? { parameters: t.parameters } : {}
|
|
6776
6781
|
};
|
|
6777
6782
|
}
|
|
6778
|
-
function
|
|
6783
|
+
function xi(e, t, n, o) {
|
|
6779
6784
|
const i = `${n}:${o}`;
|
|
6780
6785
|
t.seen.has(i) || (t.seen.add(i), t.pairs.push({ entityId: n, attributeId: o }), e.push({ kind: "attribute.remove", casUnit: "logical", containerRef: n, entityRef: n, attributeRef: o }));
|
|
6781
6786
|
}
|
|
@@ -6838,7 +6843,7 @@ function Cp(e, t) {
|
|
|
6838
6843
|
}
|
|
6839
6844
|
function xp(e, t, n, o, i, a, s) {
|
|
6840
6845
|
var p;
|
|
6841
|
-
for (const f of o.remove)
|
|
6846
|
+
for (const f of o.remove) xi(e, a, n, f);
|
|
6842
6847
|
for (const f of o.update)
|
|
6843
6848
|
e.push({ kind: "attribute.update", casUnit: "logical", containerRef: n, entityRef: n, attributeRef: f.attributeId, patch: f.patch }), i.attrPatches.push({ entityId: n, attributeId: f.attributeId, patch: f.patch });
|
|
6844
6849
|
const r = ((p = t.entities.find((f) => f.modelId === n)) == null ? void 0 : p.attributes) ?? [], l = [];
|
|
@@ -7072,13 +7077,13 @@ function mV(e, t, n = {}) {
|
|
|
7072
7077
|
for (const T of e.entities)
|
|
7073
7078
|
if (T.modelId !== $)
|
|
7074
7079
|
for (const j of T.attributes)
|
|
7075
|
-
j.embedded && E.has(j.embedded.associationRef) &&
|
|
7080
|
+
j.embedded && E.has(j.embedded.associationRef) && xi(r, h, T.modelId, j.modelId);
|
|
7076
7081
|
for (const T of I) {
|
|
7077
7082
|
if (T.end1.entityRef === $ || !T.end1.attributeRef) continue;
|
|
7078
7083
|
const j = e.entities.find((Y) => Y.modelId === T.end1.entityRef), K = j == null ? void 0 : j.attributes.find(
|
|
7079
7084
|
(Y) => Y.modelId === T.end1.attributeRef && Y.attrType === "RELATION_REF"
|
|
7080
7085
|
);
|
|
7081
|
-
K &&
|
|
7086
|
+
K && xi(r, h, j.modelId, K.modelId);
|
|
7082
7087
|
}
|
|
7083
7088
|
const C = {
|
|
7084
7089
|
...e,
|
|
@@ -7225,7 +7230,7 @@ function mV(e, t, n = {}) {
|
|
|
7225
7230
|
});
|
|
7226
7231
|
break;
|
|
7227
7232
|
}
|
|
7228
|
-
|
|
7233
|
+
xi(r, h, A.value.modelId, $.value.modelId), $.value.identifier && v.identifierCascadeParents.add(A.value.modelId);
|
|
7229
7234
|
}
|
|
7230
7235
|
break;
|
|
7231
7236
|
}
|
|
@@ -7290,14 +7295,14 @@ function mV(e, t, n = {}) {
|
|
|
7290
7295
|
var K;
|
|
7291
7296
|
return ((K = j.embedded) == null ? void 0 : K.associationRef) === E.modelId;
|
|
7292
7297
|
});
|
|
7293
|
-
|
|
7298
|
+
xi(r, h, C.modelId, T.modelId);
|
|
7294
7299
|
break;
|
|
7295
7300
|
}
|
|
7296
7301
|
if (E.end1.attributeRef) {
|
|
7297
7302
|
const T = e.entities.find((K) => K.modelId === E.end1.entityRef), j = T == null ? void 0 : T.attributes.find(
|
|
7298
7303
|
(K) => K.modelId === E.end1.attributeRef && K.attrType === "RELATION_REF"
|
|
7299
7304
|
);
|
|
7300
|
-
j &&
|
|
7305
|
+
j && xi(r, h, T.modelId, j.modelId);
|
|
7301
7306
|
}
|
|
7302
7307
|
const G = {
|
|
7303
7308
|
...e,
|
|
@@ -9016,7 +9021,7 @@ function D1(e, t, n = {}) {
|
|
|
9016
9021
|
i
|
|
9017
9022
|
);
|
|
9018
9023
|
}
|
|
9019
|
-
function
|
|
9024
|
+
function Ei(e, t, n = {}) {
|
|
9020
9025
|
const {
|
|
9021
9026
|
eventFilter: o,
|
|
9022
9027
|
...i
|
|
@@ -9204,7 +9209,7 @@ function il(e, t, n, o = {}) {
|
|
|
9204
9209
|
deep: c = !1,
|
|
9205
9210
|
defaultValue: u,
|
|
9206
9211
|
shouldEmit: p
|
|
9207
|
-
} = o, f =
|
|
9212
|
+
} = o, f = qi(), h = n || (f == null ? void 0 : f.emit) || ((i = f == null ? void 0 : f.$emit) == null ? void 0 : i.bind(f)) || ((s = (a = f == null ? void 0 : f.proxy) == null ? void 0 : a.$emit) == null ? void 0 : s.bind(f == null ? void 0 : f.proxy));
|
|
9208
9213
|
let b = d;
|
|
9209
9214
|
t || (t = "modelValue"), b = b || `update:${t.toString()}`;
|
|
9210
9215
|
const v = (g) => r ? typeof r == "function" ? r(g) : U1(g) : g, _ = () => S1(e[t]) ? v(e[t]) : u, w = (g) => {
|
|
@@ -9610,9 +9615,9 @@ function P0(e, t, n) {
|
|
|
9610
9615
|
};
|
|
9611
9616
|
}
|
|
9612
9617
|
function D0(e, t, n) {
|
|
9613
|
-
return arguments.length > 1 ? this.each((t == null ? O0 : typeof t == "function" ? P0 : L0)(e, t, n ?? "")) :
|
|
9618
|
+
return arguments.length > 1 ? this.each((t == null ? O0 : typeof t == "function" ? P0 : L0)(e, t, n ?? "")) : zi(this.node(), e);
|
|
9614
9619
|
}
|
|
9615
|
-
function
|
|
9620
|
+
function zi(e, t) {
|
|
9616
9621
|
return e.style.getPropertyValue(t) || qp(e).getComputedStyle(e, null).getPropertyValue(t);
|
|
9617
9622
|
}
|
|
9618
9623
|
function V0(e) {
|
|
@@ -9918,16 +9923,16 @@ const Ew = { passive: !1 }, Na = { capture: !0, passive: !1 };
|
|
|
9918
9923
|
function al(e) {
|
|
9919
9924
|
e.stopImmediatePropagation();
|
|
9920
9925
|
}
|
|
9921
|
-
function
|
|
9926
|
+
function Mi(e) {
|
|
9922
9927
|
e.preventDefault(), e.stopImmediatePropagation();
|
|
9923
9928
|
}
|
|
9924
9929
|
function th(e) {
|
|
9925
|
-
var t = e.document.documentElement, n = Rn(e).on("dragstart.drag",
|
|
9926
|
-
"onselectstart" in t ? n.on("selectstart.drag",
|
|
9930
|
+
var t = e.document.documentElement, n = Rn(e).on("dragstart.drag", Mi, Na);
|
|
9931
|
+
"onselectstart" in t ? n.on("selectstart.drag", Mi, Na) : (t.__noselect = t.style.MozUserSelect, t.style.MozUserSelect = "none");
|
|
9927
9932
|
}
|
|
9928
9933
|
function nh(e, t) {
|
|
9929
9934
|
var n = e.document.documentElement, o = Rn(e).on("dragstart.drag", null);
|
|
9930
|
-
t && (o.on("click.drag",
|
|
9935
|
+
t && (o.on("click.drag", Mi, Na), setTimeout(function() {
|
|
9931
9936
|
o.on("click.drag", null);
|
|
9932
9937
|
}, 0)), "onselectstart" in n ? o.on("selectstart.drag", null) : (n.style.MozUserSelect = n.__noselect, delete n.__noselect);
|
|
9933
9938
|
}
|
|
@@ -9986,14 +9991,14 @@ function Aw() {
|
|
|
9986
9991
|
}
|
|
9987
9992
|
}
|
|
9988
9993
|
function h(N) {
|
|
9989
|
-
if (
|
|
9994
|
+
if (Mi(N), !d) {
|
|
9990
9995
|
var y = N.clientX - r, x = N.clientY - l;
|
|
9991
9996
|
d = y * y + x * x > u;
|
|
9992
9997
|
}
|
|
9993
9998
|
i.mouse("drag", N);
|
|
9994
9999
|
}
|
|
9995
10000
|
function b(N) {
|
|
9996
|
-
Rn(N.view).on("mousemove.drag mouseup.drag", null), nh(N.view, d),
|
|
10001
|
+
Rn(N.view).on("mousemove.drag mouseup.drag", null), nh(N.view, d), Mi(N), i.mouse("end", N);
|
|
9997
10002
|
}
|
|
9998
10003
|
function v(N, y) {
|
|
9999
10004
|
if (e.call(this, N, y)) {
|
|
@@ -10005,7 +10010,7 @@ function Aw() {
|
|
|
10005
10010
|
function _(N) {
|
|
10006
10011
|
var y = N.changedTouches, x = y.length, O, F;
|
|
10007
10012
|
for (O = 0; O < x; ++O)
|
|
10008
|
-
(F = i[y[O].identifier]) && (
|
|
10013
|
+
(F = i[y[O].identifier]) && (Mi(N), F("drag", N, y[O]));
|
|
10009
10014
|
}
|
|
10010
10015
|
function w(N) {
|
|
10011
10016
|
var y = N.changedTouches, x = y.length, O, F;
|
|
@@ -10084,7 +10089,7 @@ function oh(e, t) {
|
|
|
10084
10089
|
}
|
|
10085
10090
|
function Ya() {
|
|
10086
10091
|
}
|
|
10087
|
-
var Ca = 0.7, qs = 1 / Ca,
|
|
10092
|
+
var Ca = 0.7, qs = 1 / Ca, Oi = "\\s*([+-]?\\d+)\\s*", xa = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*", Kn = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*", $w = /^#([0-9a-f]{3,8})$/, Sw = new RegExp(`^rgb\\(${Oi},${Oi},${Oi}\\)$`), Tw = new RegExp(`^rgb\\(${Kn},${Kn},${Kn}\\)$`), Mw = new RegExp(`^rgba\\(${Oi},${Oi},${Oi},${xa}\\)$`), Ow = new RegExp(`^rgba\\(${Kn},${Kn},${Kn},${xa}\\)$`), Lw = new RegExp(`^hsl\\(${xa},${Kn},${Kn}\\)$`), Pw = new RegExp(`^hsla\\(${xa},${Kn},${Kn},${xa}\\)$`), Qc = {
|
|
10088
10093
|
aliceblue: 15792383,
|
|
10089
10094
|
antiquewhite: 16444375,
|
|
10090
10095
|
aqua: 65535,
|
|
@@ -10576,7 +10581,7 @@ const Rs = (function e(t, n, o) {
|
|
|
10576
10581
|
return e(s, r, l);
|
|
10577
10582
|
}, i;
|
|
10578
10583
|
})(Math.SQRT2, 2, 4);
|
|
10579
|
-
var
|
|
10584
|
+
var Ui = 0, da = 0, ia = 0, dh = 1e3, Xs, ca, Zs = 0, si = 0, Ar = 0, Ra = typeof performance == "object" && performance.now ? performance : Date, ch = typeof window == "object" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(e) {
|
|
10580
10585
|
setTimeout(e, 17);
|
|
10581
10586
|
};
|
|
10582
10587
|
function Ud() {
|
|
@@ -10604,17 +10609,17 @@ function uh(e, t, n) {
|
|
|
10604
10609
|
return o.restart(e, t, n), o;
|
|
10605
10610
|
}
|
|
10606
10611
|
function sI() {
|
|
10607
|
-
Ud(), ++
|
|
10612
|
+
Ud(), ++Ui;
|
|
10608
10613
|
for (var e = Xs, t; e; )
|
|
10609
10614
|
(t = si - e._time) >= 0 && e._call.call(void 0, t), e = e._next;
|
|
10610
|
-
--
|
|
10615
|
+
--Ui;
|
|
10611
10616
|
}
|
|
10612
10617
|
function du() {
|
|
10613
|
-
si = (Zs = Ra.now()) + Ar,
|
|
10618
|
+
si = (Zs = Ra.now()) + Ar, Ui = da = 0;
|
|
10614
10619
|
try {
|
|
10615
10620
|
sI();
|
|
10616
10621
|
} finally {
|
|
10617
|
-
|
|
10622
|
+
Ui = 0, lI(), si = 0;
|
|
10618
10623
|
}
|
|
10619
10624
|
}
|
|
10620
10625
|
function rI() {
|
|
@@ -10627,10 +10632,10 @@ function lI() {
|
|
|
10627
10632
|
ca = e, Hl(o);
|
|
10628
10633
|
}
|
|
10629
10634
|
function Hl(e) {
|
|
10630
|
-
if (!
|
|
10635
|
+
if (!Ui) {
|
|
10631
10636
|
da && (da = clearTimeout(da));
|
|
10632
10637
|
var t = e - si;
|
|
10633
|
-
t > 24 ? (e < 1 / 0 && (da = setTimeout(du, e - Ra.now() - Ar)), ia && (ia = clearInterval(ia))) : (ia || (Zs = Ra.now(), ia = setInterval(rI, dh)),
|
|
10638
|
+
t > 24 ? (e < 1 / 0 && (da = setTimeout(du, e - Ra.now() - Ar)), ia && (ia = clearInterval(ia))) : (ia || (Zs = Ra.now(), ia = setInterval(rI, dh)), Ui = 1, ch(du));
|
|
10634
10639
|
}
|
|
10635
10640
|
}
|
|
10636
10641
|
function cu(e, t, n) {
|
|
@@ -10995,7 +11000,7 @@ function qI() {
|
|
|
10995
11000
|
function WI(e, t) {
|
|
10996
11001
|
var n, o, i;
|
|
10997
11002
|
return function() {
|
|
10998
|
-
var a =
|
|
11003
|
+
var a = zi(this, e), s = (this.style.removeProperty(e), zi(this, e));
|
|
10999
11004
|
return a === s ? null : a === n && s === o ? i : i = t(n = a, o = s);
|
|
11000
11005
|
};
|
|
11001
11006
|
}
|
|
@@ -11007,15 +11012,15 @@ function ph(e) {
|
|
|
11007
11012
|
function JI(e, t, n) {
|
|
11008
11013
|
var o, i = n + "", a;
|
|
11009
11014
|
return function() {
|
|
11010
|
-
var s =
|
|
11015
|
+
var s = zi(this, e);
|
|
11011
11016
|
return s === i ? null : s === o ? a : a = t(o = s, n);
|
|
11012
11017
|
};
|
|
11013
11018
|
}
|
|
11014
11019
|
function XI(e, t, n) {
|
|
11015
11020
|
var o, i, a;
|
|
11016
11021
|
return function() {
|
|
11017
|
-
var s =
|
|
11018
|
-
return r == null && (l = r = (this.style.removeProperty(e),
|
|
11022
|
+
var s = zi(this, e), r = n(this), l = r + "";
|
|
11023
|
+
return r == null && (l = r = (this.style.removeProperty(e), zi(this, e))), s === l ? null : s === o && l === i ? a : (i = l, a = t(o = s, r));
|
|
11019
11024
|
};
|
|
11020
11025
|
}
|
|
11021
11026
|
function ZI(e, t) {
|
|
@@ -11235,7 +11240,7 @@ ro.prototype = {
|
|
|
11235
11240
|
return "translate(" + this.x + "," + this.y + ") scale(" + this.k + ")";
|
|
11236
11241
|
}
|
|
11237
11242
|
};
|
|
11238
|
-
var
|
|
11243
|
+
var Fi = new ro(1, 0, 0);
|
|
11239
11244
|
ro.prototype;
|
|
11240
11245
|
function ll(e) {
|
|
11241
11246
|
e.stopImmediatePropagation();
|
|
@@ -11251,7 +11256,7 @@ function gk() {
|
|
|
11251
11256
|
return e instanceof SVGElement ? (e = e.ownerSVGElement || e, e.hasAttribute("viewBox") ? (e = e.viewBox.baseVal, [[e.x, e.y], [e.x + e.width, e.y + e.height]]) : [[0, 0], [e.width.baseVal.value, e.height.baseVal.value]]) : [[0, 0], [e.clientWidth, e.clientHeight]];
|
|
11252
11257
|
}
|
|
11253
11258
|
function fu() {
|
|
11254
|
-
return this.__zoom ||
|
|
11259
|
+
return this.__zoom || Fi;
|
|
11255
11260
|
}
|
|
11256
11261
|
function bk(e) {
|
|
11257
11262
|
return -e.deltaY * (e.deltaMode === 1 ? 0.05 : e.deltaMode ? 1 : 2e-3) * (e.ctrlKey ? 10 : 1);
|
|
@@ -11296,7 +11301,7 @@ function Ik() {
|
|
|
11296
11301
|
}, _.translateTo = function(I, E, C, G, T) {
|
|
11297
11302
|
_.transform(I, function() {
|
|
11298
11303
|
var j = t.apply(this, arguments), K = this.__zoom, Y = G == null ? N(j) : typeof G == "function" ? G.apply(this, arguments) : G;
|
|
11299
|
-
return n(
|
|
11304
|
+
return n(Fi.translate(Y[0], Y[1]).scale(K.k).translate(
|
|
11300
11305
|
typeof E == "function" ? -E.apply(this, arguments) : -E,
|
|
11301
11306
|
typeof C == "function" ? -C.apply(this, arguments) : -C
|
|
11302
11307
|
), j, s);
|
|
@@ -11549,7 +11554,7 @@ function wa(e, t) {
|
|
|
11549
11554
|
}
|
|
11550
11555
|
return o;
|
|
11551
11556
|
}
|
|
11552
|
-
const vh = "vue-flow__node-desc", gh = "vue-flow__edge-desc", Rk = "vue-flow__aria-live", bh = ["Enter", " ", "Escape"],
|
|
11557
|
+
const vh = "vue-flow__node-desc", gh = "vue-flow__edge-desc", Rk = "vue-flow__aria-live", bh = ["Enter", " ", "Escape"], Li = {
|
|
11553
11558
|
ArrowUp: { x: 0, y: -1 },
|
|
11554
11559
|
ArrowDown: { x: 0, y: 1 },
|
|
11555
11560
|
ArrowLeft: { x: -1, y: 0 },
|
|
@@ -11768,7 +11773,7 @@ function Fo(e, t) {
|
|
|
11768
11773
|
n.add(o.id);
|
|
11769
11774
|
return t.filter((o) => n.has(o.source) || n.has(o.target));
|
|
11770
11775
|
}
|
|
11771
|
-
function
|
|
11776
|
+
function Ni(e, t) {
|
|
11772
11777
|
if (typeof e == "number")
|
|
11773
11778
|
return Math.floor((t - t / (1 + e)) * 0.5);
|
|
11774
11779
|
if (typeof e == "string" && e.endsWith("px")) {
|
|
@@ -11785,7 +11790,7 @@ function Ei(e, t) {
|
|
|
11785
11790
|
}
|
|
11786
11791
|
function Lk(e, t, n) {
|
|
11787
11792
|
if (typeof e == "string" || typeof e == "number") {
|
|
11788
|
-
const o =
|
|
11793
|
+
const o = Ni(e, n), i = Ni(e, t);
|
|
11789
11794
|
return {
|
|
11790
11795
|
top: o,
|
|
11791
11796
|
right: i,
|
|
@@ -11796,7 +11801,7 @@ function Lk(e, t, n) {
|
|
|
11796
11801
|
};
|
|
11797
11802
|
}
|
|
11798
11803
|
if (typeof e == "object") {
|
|
11799
|
-
const o =
|
|
11804
|
+
const o = Ni(e.top ?? e.y ?? 0, n), i = Ni(e.bottom ?? e.y ?? 0, n), a = Ni(e.left ?? e.x ?? 0, t), s = Ni(e.right ?? e.x ?? 0, t);
|
|
11800
11805
|
return { top: o, right: s, bottom: i, left: a, x: a + s, y: o + i };
|
|
11801
11806
|
}
|
|
11802
11807
|
return { top: 0, right: 0, bottom: 0, left: 0, x: 0, y: 0 };
|
|
@@ -12123,7 +12128,7 @@ function Gd(e, t, n, o, i) {
|
|
|
12123
12128
|
computedPosition: s
|
|
12124
12129
|
};
|
|
12125
12130
|
}
|
|
12126
|
-
function
|
|
12131
|
+
function Hi(e, t, n = Be.Left, o = !1) {
|
|
12127
12132
|
const i = ((t == null ? void 0 : t.x) ?? 0) + e.computedPosition.x, a = ((t == null ? void 0 : t.y) ?? 0) + e.computedPosition.y, { width: s, height: r } = t ?? Kk(e);
|
|
12128
12133
|
if (o)
|
|
12129
12134
|
return { x: i + s / 2, y: a + r / 2 };
|
|
@@ -12275,7 +12280,7 @@ function Wk(e, t, n, o) {
|
|
|
12275
12280
|
for (const u of c) {
|
|
12276
12281
|
if (o.nodeId === u.nodeId && o.type === u.type && o.id === u.id)
|
|
12277
12282
|
continue;
|
|
12278
|
-
const { x: p, y: f } =
|
|
12283
|
+
const { x: p, y: f } = Hi(d, u, u.position, !0), h = Math.sqrt((p - e.x) ** 2 + (f - e.y) ** 2);
|
|
12279
12284
|
h > t || (h < r ? (s = [{ ...u, x: p, y: f }], r = h) : h === r && s.push({ ...u, x: p, y: f }));
|
|
12280
12285
|
}
|
|
12281
12286
|
}
|
|
@@ -12342,7 +12347,7 @@ function Sh(e, t, n, o, i, a = !1) {
|
|
|
12342
12347
|
if (!d)
|
|
12343
12348
|
return null;
|
|
12344
12349
|
const c = i === vo.Strict ? (s = d.handleBounds) == null ? void 0 : s[t] : [...((r = d.handleBounds) == null ? void 0 : r.source) ?? [], ...((l = d.handleBounds) == null ? void 0 : l.target) ?? []], u = (n ? c == null ? void 0 : c.find((p) => p.id === n) : c == null ? void 0 : c[0]) ?? null;
|
|
12345
|
-
return u && a ? { ...u, ...
|
|
12350
|
+
return u && a ? { ...u, ...Hi(d, u, u.position, !0) } : u;
|
|
12346
12351
|
}
|
|
12347
12352
|
const Wl = {
|
|
12348
12353
|
[Be.Left]: Be.Right,
|
|
@@ -12779,7 +12784,7 @@ function Ph({
|
|
|
12779
12784
|
}, ie = B.value.get(pt(t)), be = {
|
|
12780
12785
|
inProgress: !0,
|
|
12781
12786
|
isValid: null,
|
|
12782
|
-
from:
|
|
12787
|
+
from: Hi(ie, se, Be.Left, !0),
|
|
12783
12788
|
fromHandle: se,
|
|
12784
12789
|
fromPosition: se.position,
|
|
12785
12790
|
fromNode: ie,
|
|
@@ -12978,7 +12983,7 @@ function uE(e) {
|
|
|
12978
12983
|
function n(o, i, a, s) {
|
|
12979
12984
|
return new Promise((r) => {
|
|
12980
12985
|
var l;
|
|
12981
|
-
const { x: d, y: c } = _h({ x: -o, y: -i }, e.translateExtent), u =
|
|
12986
|
+
const { x: d, y: c } = _h({ x: -o, y: -i }, e.translateExtent), u = Fi.translate(-d, -c).scale(a);
|
|
12982
12987
|
e.d3Selection && e.d3Zoom ? (l = e.d3Zoom) == null || l.interpolate((s == null ? void 0 : s.interpolate) === "linear" ? ba : Rs).transform(
|
|
12983
12988
|
pl(e.d3Selection, s == null ? void 0 : s.duration, s == null ? void 0 : s.ease, () => {
|
|
12984
12989
|
r(!0);
|
|
@@ -13082,12 +13087,12 @@ function mE(e, t, n) {
|
|
|
13082
13087
|
const i = () => {
|
|
13083
13088
|
o.run(() => {
|
|
13084
13089
|
let b, v, _ = !!(n.nodes.value.length || n.edges.value.length);
|
|
13085
|
-
b =
|
|
13090
|
+
b = Ei([e.modelValue, () => {
|
|
13086
13091
|
var w, g;
|
|
13087
13092
|
return (g = (w = e.modelValue) == null ? void 0 : w.value) == null ? void 0 : g.length;
|
|
13088
13093
|
}], ([w]) => {
|
|
13089
13094
|
w && Array.isArray(w) && (v == null || v.pause(), n.setElements(w), !v && !_ && w.length ? _ = !0 : v == null || v.resume());
|
|
13090
|
-
}), v =
|
|
13095
|
+
}), v = Ei(
|
|
13091
13096
|
[n.nodes, n.edges, () => n.edges.value.length, () => n.nodes.value.length],
|
|
13092
13097
|
([w, g]) => {
|
|
13093
13098
|
var N;
|
|
@@ -13103,12 +13108,12 @@ function mE(e, t, n) {
|
|
|
13103
13108
|
}, a = () => {
|
|
13104
13109
|
o.run(() => {
|
|
13105
13110
|
let b, v, _ = !!n.nodes.value.length;
|
|
13106
|
-
b =
|
|
13111
|
+
b = Ei([e.nodes, () => {
|
|
13107
13112
|
var w, g;
|
|
13108
13113
|
return (g = (w = e.nodes) == null ? void 0 : w.value) == null ? void 0 : g.length;
|
|
13109
13114
|
}], ([w]) => {
|
|
13110
13115
|
w && Array.isArray(w) && (v == null || v.pause(), n.setNodes(w), !v && !_ && w.length ? _ = !0 : v == null || v.resume());
|
|
13111
|
-
}), v =
|
|
13116
|
+
}), v = Ei(
|
|
13112
13117
|
[n.nodes, () => n.nodes.value.length],
|
|
13113
13118
|
([w]) => {
|
|
13114
13119
|
var g;
|
|
@@ -13124,12 +13129,12 @@ function mE(e, t, n) {
|
|
|
13124
13129
|
}, s = () => {
|
|
13125
13130
|
o.run(() => {
|
|
13126
13131
|
let b, v, _ = !!n.edges.value.length;
|
|
13127
|
-
b =
|
|
13132
|
+
b = Ei([e.edges, () => {
|
|
13128
13133
|
var w, g;
|
|
13129
13134
|
return (g = (w = e.edges) == null ? void 0 : w.value) == null ? void 0 : g.length;
|
|
13130
13135
|
}], ([w]) => {
|
|
13131
13136
|
w && Array.isArray(w) && (v == null || v.pause(), n.setEdges(w), !v && !_ && w.length ? _ = !0 : v == null || v.resume());
|
|
13132
|
-
}), v =
|
|
13137
|
+
}), v = Ei(
|
|
13133
13138
|
[n.edges, () => n.edges.value.length],
|
|
13134
13139
|
([w]) => {
|
|
13135
13140
|
var g;
|
|
@@ -13314,7 +13319,7 @@ function fE() {
|
|
|
13314
13319
|
};
|
|
13315
13320
|
}
|
|
13316
13321
|
function pE(e, t) {
|
|
13317
|
-
const n =
|
|
13322
|
+
const n = qi();
|
|
13318
13323
|
nv(() => {
|
|
13319
13324
|
for (const [i, a] of Object.entries(t.value)) {
|
|
13320
13325
|
const s = (r) => {
|
|
@@ -13715,7 +13720,7 @@ function vE(e, t, n) {
|
|
|
13715
13720
|
const { viewport: z, dimensions: q, d3Zoom: se, d3Selection: ie, translateExtent: we } = e;
|
|
13716
13721
|
if (!se || !ie || !V.x && !V.y)
|
|
13717
13722
|
return !1;
|
|
13718
|
-
const be =
|
|
13723
|
+
const be = Fi.translate(z.x + V.x, z.y + V.y).scale(z.zoom), Me = [
|
|
13719
13724
|
[0, 0],
|
|
13720
13725
|
[q.width, q.height]
|
|
13721
13726
|
], Ae = se.constrain()(be, Me, we), te = e.viewport.x !== Ae.x || e.viewport.y !== Ae.y || e.viewport.zoom !== Ae.k;
|
|
@@ -13849,7 +13854,7 @@ function vE(e, t, n) {
|
|
|
13849
13854
|
$reset: () => {
|
|
13850
13855
|
const V = Bh();
|
|
13851
13856
|
if (e.edges = [], e.nodes = [], e.d3Zoom && e.d3Selection) {
|
|
13852
|
-
const z =
|
|
13857
|
+
const z = Fi.translate(V.defaultViewport.x ?? 0, V.defaultViewport.y ?? 0).scale(ri(V.defaultViewport.zoom ?? 1, V.minZoom, V.maxZoom)), q = e.viewportRef.getBoundingClientRect(), se = [
|
|
13853
13858
|
[0, 0],
|
|
13854
13859
|
[q.width, q.height]
|
|
13855
13860
|
], ie = e.d3Zoom.constrain()(z, se, V.translateExtent);
|
|
@@ -14651,7 +14656,7 @@ class Ho {
|
|
|
14651
14656
|
}
|
|
14652
14657
|
static getInstance() {
|
|
14653
14658
|
var t;
|
|
14654
|
-
const n = (t =
|
|
14659
|
+
const n = (t = qi()) == null ? void 0 : t.appContext.app, o = (n == null ? void 0 : n.config.globalProperties.$vueFlowStorage) ?? Ho.instance;
|
|
14655
14660
|
return Ho.instance = o ?? new Ho(), n && (n.config.globalProperties.$vueFlowStorage = Ho.instance), Ho.instance;
|
|
14656
14661
|
}
|
|
14657
14662
|
set(t, n) {
|
|
@@ -14737,7 +14742,7 @@ function kt(e) {
|
|
|
14737
14742
|
} else
|
|
14738
14743
|
o && r.setState(i);
|
|
14739
14744
|
if (n && (sn(Su, r), n.vueFlowId = r.id), o) {
|
|
14740
|
-
const l =
|
|
14745
|
+
const l = qi();
|
|
14741
14746
|
(l == null ? void 0 : l.type.name) !== "VueFlow" && r.emits.error(new Xt(Wt.USEVUEFLOW_OPTIONS));
|
|
14742
14747
|
}
|
|
14743
14748
|
return r;
|
|
@@ -14808,10 +14813,10 @@ const qE = {
|
|
|
14808
14813
|
t.selectionContextMenu({ event: h, nodes: o.value });
|
|
14809
14814
|
}
|
|
14810
14815
|
function f(h) {
|
|
14811
|
-
a.value ||
|
|
14816
|
+
a.value || Li[h.key] && (h.preventDefault(), r(
|
|
14812
14817
|
{
|
|
14813
|
-
x:
|
|
14814
|
-
y:
|
|
14818
|
+
x: Li[h.key].x,
|
|
14819
|
+
y: Li[h.key].y
|
|
14815
14820
|
},
|
|
14816
14821
|
h.shiftKey
|
|
14817
14822
|
));
|
|
@@ -15047,7 +15052,7 @@ const eN = {
|
|
|
15047
15052
|
qa("Viewport element is missing");
|
|
15048
15053
|
return;
|
|
15049
15054
|
}
|
|
15050
|
-
const Ve = B.value, ve = Ve.getBoundingClientRect(), Ee = Ik().clickDistance(D.value).scaleExtent([t.value, n.value]).translateExtent(i.value), Ce = Rn(Ve).call(Ee), V = Ce.on("wheel.zoom"), z =
|
|
15055
|
+
const Ve = B.value, ve = Ve.getBoundingClientRect(), Ee = Ik().clickDistance(D.value).scaleExtent([t.value, n.value]).translateExtent(i.value), Ce = Rn(Ve).call(Ee), V = Ce.on("wheel.zoom"), z = Fi.translate(o.value.x ?? 0, o.value.y ?? 0).scale(ri(o.value.zoom ?? 1, t.value, n.value)), q = [
|
|
15051
15056
|
[0, 0],
|
|
15052
15057
|
[ve.width, ve.height]
|
|
15053
15058
|
], se = Ee.constrain()(z, q, i.value);
|
|
@@ -15260,7 +15265,7 @@ const Pu = qd, pN = Xe({
|
|
|
15260
15265
|
edgesUpdatable: v,
|
|
15261
15266
|
edgesFocusable: _,
|
|
15262
15267
|
hooks: w
|
|
15263
|
-
} = kt(), g = H(() => c(e.id)), { emit: N, on: y } = iE(g.value, a), x = At(Mr), O =
|
|
15268
|
+
} = kt(), g = H(() => c(e.id)), { emit: N, on: y } = iE(g.value, a), x = At(Mr), O = qi(), F = pe(!1), L = pe(!1), B = pe(""), D = pe(null), A = pe("source"), $ = pe(null), I = wt(
|
|
15264
15269
|
() => typeof g.value.selectable > "u" ? b.value : g.value.selectable
|
|
15265
15270
|
), E = wt(() => typeof g.value.updatable > "u" ? v.value : g.value.updatable), C = wt(() => typeof g.value.focusable > "u" ? _.value : g.value.focusable);
|
|
15266
15271
|
sn(tE, e.id), sn(nE, $);
|
|
@@ -15298,7 +15303,7 @@ const Pu = qd, pN = Xe({
|
|
|
15298
15303
|
const we = Eu(ie, g.value.sourceHandle);
|
|
15299
15304
|
let be;
|
|
15300
15305
|
o.value === vo.Strict ? be = q.handleBounds.target : be = [...q.handleBounds.target || [], ...q.handleBounds.source || []];
|
|
15301
|
-
const Me = Eu(be, g.value.targetHandle), Ae = (we == null ? void 0 : we.position) || Be.Bottom, te = (Me == null ? void 0 : Me.position) || Be.Top, { x: ne, y: oe } =
|
|
15306
|
+
const Me = Eu(be, g.value.targetHandle), Ae = (we == null ? void 0 : we.position) || Be.Bottom, te = (Me == null ? void 0 : Me.position) || Be.Top, { x: ne, y: oe } = Hi(z, we, Ae), { x: Ie, y: ze } = Hi(q, Me, te);
|
|
15302
15307
|
return g.value.sourceX = ne, g.value.sourceY = oe, g.value.targetX = Ie, g.value.targetY = ze, xt(
|
|
15303
15308
|
"g",
|
|
15304
15309
|
{
|
|
@@ -15494,7 +15499,7 @@ const Pu = qd, pN = Xe({
|
|
|
15494
15499
|
}
|
|
15495
15500
|
if (!F)
|
|
15496
15501
|
return null;
|
|
15497
|
-
const L = (y ? F.find((T) => T.id === y) : F[0]) ?? null, B = (L == null ? void 0 : L.position) ?? Be.Top, { x: D, y: A } =
|
|
15502
|
+
const L = (y ? F.find((T) => T.id === y) : F[0]) ?? null, B = (L == null ? void 0 : L.position) ?? Be.Top, { x: D, y: A } = Hi(f.value, L, B);
|
|
15498
15503
|
let $ = null;
|
|
15499
15504
|
h.value && (n.value === vo.Strict ? $ = ((w = h.value.handleBounds[x === "source" ? "target" : "source"]) == null ? void 0 : w.find(
|
|
15500
15505
|
(T) => {
|
|
@@ -15699,7 +15704,7 @@ const Pu = qd, pN = Xe({
|
|
|
15699
15704
|
hooks: O
|
|
15700
15705
|
} = kt(), F = pe(null);
|
|
15701
15706
|
sn(Oh, F), sn(Mh, e.id);
|
|
15702
|
-
const L = At(Mr), B =
|
|
15707
|
+
const L = At(Mr), B = qi(), D = Vh(), { node: A, parentNode: $ } = Dh(e.id), { emit: I, on: E } = lE(A, s), C = wt(() => typeof A.draggable > "u" ? g.value : A.draggable), G = wt(() => typeof A.selectable > "u" ? N.value : A.selectable), T = wt(() => typeof A.connectable > "u" ? y.value : A.connectable), j = wt(() => typeof A.focusable > "u" ? x.value : A.focusable), K = H(
|
|
15703
15708
|
() => G.value || C.value || O.value.nodeClick.hasListeners() || O.value.nodeDoubleClick.hasListeners() || O.value.nodeMouseEnter.hasListeners() || O.value.nodeMouseMove.hasListeners() || O.value.nodeMouseLeave.hasListeners()
|
|
15704
15709
|
), Y = wt(() => !!A.dimensions.width && !!A.dimensions.height), Z = H(() => {
|
|
15705
15710
|
const q = A.type || "default", se = L == null ? void 0 : L[`node-${q}`];
|
|
@@ -15905,10 +15910,10 @@ const Pu = qd, pN = Xe({
|
|
|
15905
15910
|
se,
|
|
15906
15911
|
F.value
|
|
15907
15912
|
);
|
|
15908
|
-
} else C.value && A.selected &&
|
|
15913
|
+
} else C.value && A.selected && Li[q.key] && (q.preventDefault(), b.value = `Moved selected node ${q.key.replace("Arrow", "").toLowerCase()}. New position, x: ${~~A.position.x}, y: ${~~A.position.y}`, D(
|
|
15909
15914
|
{
|
|
15910
|
-
x:
|
|
15911
|
-
y:
|
|
15915
|
+
x: Li[q.key].x,
|
|
15916
|
+
y: Li[q.key].y
|
|
15912
15917
|
},
|
|
15913
15918
|
q.shiftKey
|
|
15914
15919
|
));
|
|
@@ -16291,7 +16296,7 @@ function Du(e, t = !1) {
|
|
|
16291
16296
|
function di(e) {
|
|
16292
16297
|
return Gh[e];
|
|
16293
16298
|
}
|
|
16294
|
-
function
|
|
16299
|
+
function ji(e) {
|
|
16295
16300
|
return `var(--em-swatch-${e}-bar)`;
|
|
16296
16301
|
}
|
|
16297
16302
|
function GN(e) {
|
|
@@ -16944,7 +16949,7 @@ const JN = { class: "em-inline-issue__msgs" }, XN = /* @__PURE__ */ Xe({
|
|
|
16944
16949
|
key: ue,
|
|
16945
16950
|
type: "button",
|
|
16946
16951
|
class: Re(["em-swatch__chip", { "is-on": r.value === ue }]),
|
|
16947
|
-
style: It({ background: m(
|
|
16952
|
+
style: It({ background: m(ji)(ue) }),
|
|
16948
16953
|
title: m(i).t(m(di)(ue)),
|
|
16949
16954
|
onClick: (Te) => K(ue)
|
|
16950
16955
|
}, null, 14, CC))), 128))
|
|
@@ -17240,7 +17245,7 @@ function Wh(e, t) {
|
|
|
17240
17245
|
const Gt = H(
|
|
17241
17246
|
() => n.value ? Mm(n.value, e.state.logical.entities) : []
|
|
17242
17247
|
), Dt = H(
|
|
17243
|
-
() =>
|
|
17248
|
+
() => pi(Gt.value.flatMap((X) => X.attributes.flatMap((de) => de.dbAttrs)))
|
|
17244
17249
|
), Ut = H(
|
|
17245
17250
|
() => Gt.value.flatMap(
|
|
17246
17251
|
(X) => X.attributes.filter((de) => de.attrType === "NORMAL" && de.dbAttrs.length === 1 && de.dbAttrs[0]).map((de) => {
|
|
@@ -19747,7 +19752,7 @@ function aR(e, t) {
|
|
|
19747
19752
|
}
|
|
19748
19753
|
function Wd(e, t) {
|
|
19749
19754
|
var s;
|
|
19750
|
-
if (
|
|
19755
|
+
if (Ji(e)) {
|
|
19751
19756
|
const r = (s = t.inherited) == null ? void 0 : s.find((l) => l.modelId === e);
|
|
19752
19757
|
return r ? Zl(r.field, r.physicalName) : e;
|
|
19753
19758
|
}
|
|
@@ -19843,7 +19848,7 @@ const sR = ["disabled"], rR = { class: "em-idxw__list" }, lR = { class: "em-idxw
|
|
|
19843
19848
|
]), _ = pe(/* @__PURE__ */ new Set());
|
|
19844
19849
|
et(r, () => _.value = /* @__PURE__ */ new Set());
|
|
19845
19850
|
function w($) {
|
|
19846
|
-
return
|
|
19851
|
+
return Ji($);
|
|
19847
19852
|
}
|
|
19848
19853
|
function g($, I) {
|
|
19849
19854
|
o.value && n.updateIndex(o.value.modelId, $, I);
|
|
@@ -20122,7 +20127,7 @@ const sR = ["disabled"], rR = { class: "em-idxw__list" }, lR = { class: "em-idxw
|
|
|
20122
20127
|
entityId: {}
|
|
20123
20128
|
},
|
|
20124
20129
|
setup(e) {
|
|
20125
|
-
const t = e, n = t.controller, o =
|
|
20130
|
+
const t = e, n = t.controller, o = Wi(), i = H(() => n.state.logical.entities.find((v) => v.modelId === t.entityId) ?? null), a = H(
|
|
20126
20131
|
() => {
|
|
20127
20132
|
var v;
|
|
20128
20133
|
return [...((v = i.value) == null ? void 0 : v.operations) ?? []].sort((_, w) => _.order - w.order);
|
|
@@ -20606,7 +20611,7 @@ function fA(e) {
|
|
|
20606
20611
|
t.logical,
|
|
20607
20612
|
u,
|
|
20608
20613
|
(w) => w.map((g) => g.modelId === p ? { ...g, ...f } : g)
|
|
20609
|
-
), v = [], _ =
|
|
20614
|
+
), v = [], _ = Ci(b, u, v);
|
|
20610
20615
|
_.push(...kn(t.logical, v)), o(_.length ? Et("속성 수정", [h, ..._]) : h);
|
|
20611
20616
|
};
|
|
20612
20617
|
return {
|
|
@@ -20698,7 +20703,7 @@ function fA(e) {
|
|
|
20698
20703
|
A.set(p, N.length === 1 ? N[0].modelId : O);
|
|
20699
20704
|
}
|
|
20700
20705
|
const $ = [
|
|
20701
|
-
...
|
|
20706
|
+
...Ci(D, u, L),
|
|
20702
20707
|
...kn(t.logical, L, A),
|
|
20703
20708
|
...Qr(t.logical, u, [p])
|
|
20704
20709
|
];
|
|
@@ -20764,7 +20769,7 @@ function fA(e) {
|
|
|
20764
20769
|
// ⚠️임베더블은 해당 없음 — 그쪽은 owner 테이블로 평탄화돼 **실제로 컬럼을 갖는다**.
|
|
20765
20770
|
dbAttrs: p.dbAttrs ?? (f && Hn(f.stereotype) ? [] : [{ modelId: We(), physicalName: v, dataType: "VARCHAR" }]),
|
|
20766
20771
|
...p
|
|
20767
|
-
}, w = In(u, _), g = zo(t.logical, u, (x) => [...x, _]), N = [], y =
|
|
20772
|
+
}, w = In(u, _), g = zo(t.logical, u, (x) => [...x, _]), N = [], y = Ci(g, u, N);
|
|
20768
20773
|
return y.push(...kn(t.logical, N)), o(y.length ? Et("속성 추가", [w, ...y]) : w), b;
|
|
20769
20774
|
},
|
|
20770
20775
|
addDivider(u) {
|
|
@@ -20787,7 +20792,7 @@ function fA(e) {
|
|
|
20787
20792
|
setAttributeGroupCode(u, p, f) {
|
|
20788
20793
|
c(u, p, {
|
|
20789
20794
|
groupCode: f,
|
|
20790
|
-
type: f ?
|
|
20795
|
+
type: f ? hi : cc
|
|
20791
20796
|
});
|
|
20792
20797
|
},
|
|
20793
20798
|
setEmbedColumns(u, p, f) {
|
|
@@ -20807,7 +20812,7 @@ function fA(e) {
|
|
|
20807
20812
|
u,
|
|
20808
20813
|
(w) => w.filter((g) => g.modelId !== p)
|
|
20809
20814
|
), v = [
|
|
20810
|
-
...
|
|
20815
|
+
...Ci(b, u, f),
|
|
20811
20816
|
...kn(t.logical, f),
|
|
20812
20817
|
// 이 엔티티가 임베더블이면 사용처(owner) 슬롯에서도 그 자리를 걷어낸다 — 안 걷으면 뒤 슬롯이
|
|
20813
20818
|
// 한 칸씩 밀려 **남의 컬럼을 상속**한다(재정렬 짝과 같은 규율, `core/embedSlots`).
|
|
@@ -20828,7 +20833,7 @@ function fA(e) {
|
|
|
20828
20833
|
(N) => N.filter((y) => !v.has(y.modelId))
|
|
20829
20834
|
), w = [
|
|
20830
20835
|
...b,
|
|
20831
|
-
...
|
|
20836
|
+
...Ci(_, u, h),
|
|
20832
20837
|
...kn(t.logical, h),
|
|
20833
20838
|
// 임베드 슬롯 삭제 전파 — 다건도 한 번에 계획한다(위치 대응을 삭제 전 상태에서 한 번만 푼다).
|
|
20834
20839
|
...Qr(t.logical, u, f)
|
|
@@ -21416,7 +21421,7 @@ function IA(e) {
|
|
|
21416
21421
|
}
|
|
21417
21422
|
};
|
|
21418
21423
|
}
|
|
21419
|
-
const
|
|
21424
|
+
const vi = Symbol("editorController");
|
|
21420
21425
|
function kA(e = "m1", t = "d1") {
|
|
21421
21426
|
return {
|
|
21422
21427
|
logical: { modelId: e, entities: [], associations: [], groups: [] },
|
|
@@ -21810,7 +21815,7 @@ function bV(e = kA(), t = {}) {
|
|
|
21810
21815
|
importEntities: te.importEntities
|
|
21811
21816
|
};
|
|
21812
21817
|
}
|
|
21813
|
-
const Vr = Symbol("groupHover"), ny = Symbol("groupDrag"),
|
|
21818
|
+
const Vr = Symbol("groupHover"), ny = Symbol("groupDrag"), gi = Symbol("relationHighlight"), oy = Symbol("diffOverlay"), iy = Symbol("nodeInternals"), ay = Symbol("columnResolution");
|
|
21814
21819
|
function EA(e, t) {
|
|
21815
21820
|
const n = Object.keys(e);
|
|
21816
21821
|
if (n.length !== Object.keys(t).length) return !1;
|
|
@@ -21883,7 +21888,7 @@ function $A(e, t, n) {
|
|
|
21883
21888
|
for (const l of o) {
|
|
21884
21889
|
const d = /* @__PURE__ */ new Map(), c = /* @__PURE__ */ new Map(), u = /* @__PURE__ */ new Map();
|
|
21885
21890
|
let p = null;
|
|
21886
|
-
const f = () => p ?? (p =
|
|
21891
|
+
const f = () => p ?? (p = pi(Mo(l, o)));
|
|
21887
21892
|
for (const g of l.attributes) {
|
|
21888
21893
|
if (hr(g)) {
|
|
21889
21894
|
const x = g.dbAttrs[0], O = x && fn(g, x, 0, l, e);
|
|
@@ -21977,11 +21982,11 @@ const ly = Symbol("embedSlotCollapse"), Bu = (e, t) => `${e}:${t}`, dy = "all:",
|
|
|
21977
21982
|
data: {}
|
|
21978
21983
|
},
|
|
21979
21984
|
setup(e) {
|
|
21980
|
-
const t = e, n = At(
|
|
21985
|
+
const t = e, n = At(vi, null), o = (U, Q) => n ? n.t(U, Q) : Jn("ko", U, Q), i = H(() => (n == null ? void 0 : n.userLanguage.value) ?? "ko"), a = Wi();
|
|
21981
21986
|
function s() {
|
|
21982
21987
|
n && or(a, n, t.id);
|
|
21983
21988
|
}
|
|
21984
|
-
const r = At(Vr, null), l = At(
|
|
21989
|
+
const r = At(Vr, null), l = At(gi, null), d = At(oy, null), c = H(() => {
|
|
21985
21990
|
var U;
|
|
21986
21991
|
return ((U = d == null ? void 0 : d.marks.value) == null ? void 0 : U.get(t.id)) ?? null;
|
|
21987
21992
|
}), u = At(ay, null), p = H(() => u == null ? void 0 : u.value.get(t.id)), f = At(ly, void 0), h = At(iy, null);
|
|
@@ -22125,7 +22130,7 @@ const ly = Symbol("embedSlotCollapse"), Bu = (e, t) => `${e}:${t}`, dy = "all:",
|
|
|
22125
22130
|
function be(U) {
|
|
22126
22131
|
var Le;
|
|
22127
22132
|
if (ne(U)) return [{ text: U.name }];
|
|
22128
|
-
const Q = we(U), Se =
|
|
22133
|
+
const Q = we(U), Se = Si(Q, Q.dbAttrs[0]);
|
|
22129
22134
|
return ie(Me(U), Se == null ? void 0 : Se[i.value], ((Le = Q.dbAttrs[0]) == null ? void 0 : Le.physicalName) ?? "");
|
|
22130
22135
|
}
|
|
22131
22136
|
function Me(U) {
|
|
@@ -22701,12 +22706,12 @@ const ly = Symbol("embedSlotCollapse"), Bu = (e, t) => `${e}:${t}`, dy = "all:",
|
|
|
22701
22706
|
setup(e) {
|
|
22702
22707
|
const t = e, n = H(() => t.data.group), o = H(() => t.data.locked ?? !1), i = H(() => ln(t.data.style)), a = H(
|
|
22703
22708
|
() => i.value ? { "--em-group-fill": `color-mix(in srgb, var(--em-swatch-${i.value}-bar) 14%, transparent)` } : {}
|
|
22704
|
-
), s = At(
|
|
22709
|
+
), s = At(vi, null), r = (D, A) => s ? s.t(D, A) : Jn("ko", D, A), l = H(() => !!s && s.editable.value), d = H(
|
|
22705
22710
|
() => {
|
|
22706
22711
|
var D;
|
|
22707
22712
|
return !!t.id && ((D = s == null ? void 0 : s.selection.value) == null ? void 0 : D.kind) === "group" && s.selection.value.id === t.id;
|
|
22708
22713
|
}
|
|
22709
|
-
), c = H(() => !!t.selected && !d.value), u = At(Vr, null), p = H(() => !!t.id && (u == null ? void 0 : u.value) === t.id), f = At(
|
|
22714
|
+
), c = H(() => !!t.selected && !d.value), u = At(Vr, null), p = H(() => !!t.id && (u == null ? void 0 : u.value) === t.id), f = At(gi, null);
|
|
22710
22715
|
function h() {
|
|
22711
22716
|
t.id && (f == null || f.setGroupHover(t.id));
|
|
22712
22717
|
}
|
|
@@ -22798,7 +22803,7 @@ const ly = Symbol("embedSlotCollapse"), Bu = (e, t) => `${e}:${t}`, dy = "all:",
|
|
|
22798
22803
|
data: {}
|
|
22799
22804
|
},
|
|
22800
22805
|
setup(e) {
|
|
22801
|
-
const t = e, n = At(
|
|
22806
|
+
const t = e, n = At(vi, null), o = At(Vr, null), i = At(gi, null), a = H(() => t.data.note), s = H(() => !!n && n.editable.value), r = H(() => ln(a.value.style)), l = H(
|
|
22802
22807
|
() => r.value ? {
|
|
22803
22808
|
"--em-note-fill": `color-mix(in srgb, var(--em-swatch-${r.value}-bar) 16%, var(--em-note-surface))`,
|
|
22804
22809
|
"--em-note-stroke": `color-mix(in srgb, var(--em-swatch-${r.value}-bar) 50%, var(--em-note-border))`
|
|
@@ -22928,17 +22933,17 @@ function ir(e) {
|
|
|
22928
22933
|
return { x: 0, y: 1 };
|
|
22929
22934
|
}
|
|
22930
22935
|
}
|
|
22931
|
-
const
|
|
22936
|
+
const Ai = 0.5;
|
|
22932
22937
|
function my(e, t, n, o, i, a) {
|
|
22933
22938
|
const s = ir(t), r = ir(i), l = { x: e.x + s.x * a, y: e.y + s.y * a }, d = { x: o.x + r.x * a, y: o.y + r.y * a }, c = [l, ...n, d], u = [];
|
|
22934
22939
|
let p = e;
|
|
22935
22940
|
const f = (v, _) => {
|
|
22936
|
-
(Math.abs(v.x - p.x) >=
|
|
22941
|
+
(Math.abs(v.x - p.x) >= Ai || Math.abs(v.y - p.y) >= Ai) && (u.push({ a: p, b: v, seg: _ }), p = v);
|
|
22937
22942
|
};
|
|
22938
22943
|
f(l, 0);
|
|
22939
22944
|
let h = s.x !== 0, b = l;
|
|
22940
22945
|
for (let v = 1; v < c.length; v++) {
|
|
22941
|
-
const _ = c[v], w = v <= n.length ? v - 1 : n.length, g = Math.abs(_.x - b.x) <
|
|
22946
|
+
const _ = c[v], w = v <= n.length ? v - 1 : n.length, g = Math.abs(_.x - b.x) < Ai, N = Math.abs(_.y - b.y) < Ai;
|
|
22942
22947
|
g && N || (g ? (f(_, w), h = !1) : N ? (f(_, w), h = !0) : h ? (f({ x: b.x, y: _.y }, w), f(_, w), h = !0) : (f({ x: _.x, y: b.y }, w), f(_, w), h = !1), b = _);
|
|
22943
22948
|
}
|
|
22944
22949
|
return f(o, n.length), u;
|
|
@@ -22972,7 +22977,7 @@ function k$(e) {
|
|
|
22972
22977
|
}
|
|
22973
22978
|
function Uu(e, t) {
|
|
22974
22979
|
const n = k$(e), o = e.width / 2, i = e.height / 2, a = t.x - n.x, s = t.y - n.y;
|
|
22975
|
-
if (Math.abs(a) <
|
|
22980
|
+
if (Math.abs(a) < Ai && Math.abs(s) < Ai)
|
|
22976
22981
|
return { point: { x: e.x + e.width, y: n.y }, side: "right" };
|
|
22977
22982
|
const r = a !== 0 ? o / Math.abs(a) : 1 / 0, l = s !== 0 ? i / Math.abs(s) : 1 / 0, d = Math.min(r, l), c = { x: n.x + a * d, y: n.y + s * d }, u = r <= l ? a >= 0 ? "right" : "left" : s >= 0 ? "bottom" : "top";
|
|
22978
22983
|
return { point: c, side: u };
|
|
@@ -23098,7 +23103,7 @@ const Qd = Symbol("waypointController"), T$ = ["d"], M$ = ["d"], O$ = ["d"], L$
|
|
|
23098
23103
|
data: {}
|
|
23099
23104
|
},
|
|
23100
23105
|
setup(e) {
|
|
23101
|
-
const t = e, { screenToFlowCoordinate: n } = kt(), o = At(Qd), i = At(
|
|
23106
|
+
const t = e, { screenToFlowCoordinate: n } = kt(), o = At(Qd), i = At(vi, null), a = H(() => !!i && i.editable.value), s = At(ny, null), r = At(gi, null), l = H(() => !!r && r.relatedEdgeIds.value.has(t.id)), d = H(
|
|
23102
23107
|
() => {
|
|
23103
23108
|
var ve;
|
|
23104
23109
|
return ((ve = i == null ? void 0 : i.selection.value) == null ? void 0 : ve.kind) === "association" && i.selection.value.id === t.id;
|
|
@@ -23885,9 +23890,9 @@ function wT(e, t, n) {
|
|
|
23885
23890
|
};
|
|
23886
23891
|
}
|
|
23887
23892
|
function IT(e, t, n) {
|
|
23888
|
-
return arguments.length > 1 ? this.each((t == null ? bT : typeof t == "function" ? wT : _T)(e, t, n ?? "")) :
|
|
23893
|
+
return arguments.length > 1 ? this.each((t == null ? bT : typeof t == "function" ? wT : _T)(e, t, n ?? "")) : Ki(this.node(), e);
|
|
23889
23894
|
}
|
|
23890
|
-
function
|
|
23895
|
+
function Ki(e, t) {
|
|
23891
23896
|
return e.style.getPropertyValue(t) || Ny(e).getComputedStyle(e, null).getPropertyValue(t);
|
|
23892
23897
|
}
|
|
23893
23898
|
function kT(e) {
|
|
@@ -24207,7 +24212,7 @@ function Ty(e, t) {
|
|
|
24207
24212
|
}
|
|
24208
24213
|
function Ja() {
|
|
24209
24214
|
}
|
|
24210
|
-
var Ma = 0.7, rr = 1 / Ma,
|
|
24215
|
+
var Ma = 0.7, rr = 1 / Ma, Pi = "\\s*([+-]?\\d+)\\s*", Oa = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*", Gn = "\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*", u2 = /^#([0-9a-f]{3,8})$/, m2 = new RegExp(`^rgb\\(${Pi},${Pi},${Pi}\\)$`), f2 = new RegExp(`^rgb\\(${Gn},${Gn},${Gn}\\)$`), p2 = new RegExp(`^rgba\\(${Pi},${Pi},${Pi},${Oa}\\)$`), h2 = new RegExp(`^rgba\\(${Gn},${Gn},${Gn},${Oa}\\)$`), y2 = new RegExp(`^hsl\\(${Oa},${Gn},${Gn}\\)$`), v2 = new RegExp(`^hsla\\(${Oa},${Gn},${Gn},${Oa}\\)$`), em = {
|
|
24211
24216
|
aliceblue: 15792383,
|
|
24212
24217
|
antiquewhite: 16444375,
|
|
24213
24218
|
aqua: 65535,
|
|
@@ -24649,7 +24654,7 @@ const P2 = (function e(t, n, o) {
|
|
|
24649
24654
|
return e(s, r, l);
|
|
24650
24655
|
}, i;
|
|
24651
24656
|
})(Math.SQRT2, 2, 4);
|
|
24652
|
-
var
|
|
24657
|
+
var Gi = 0, ma = 0, sa = 0, Vy = 1e3, dr, fa, cr = 0, ui = 0, zr = 0, Pa = typeof performance == "object" && performance.now ? performance : Date, By = typeof window == "object" && window.requestAnimationFrame ? window.requestAnimationFrame.bind(window) : function(e) {
|
|
24653
24658
|
setTimeout(e, 17);
|
|
24654
24659
|
};
|
|
24655
24660
|
function ic() {
|
|
@@ -24676,17 +24681,17 @@ function zy(e, t, n) {
|
|
|
24676
24681
|
return o.restart(e, t, n), o;
|
|
24677
24682
|
}
|
|
24678
24683
|
function V2() {
|
|
24679
|
-
ic(), ++
|
|
24684
|
+
ic(), ++Gi;
|
|
24680
24685
|
for (var e = dr, t; e; )
|
|
24681
24686
|
(t = ui - e._time) >= 0 && e._call.call(void 0, t), e = e._next;
|
|
24682
|
-
--
|
|
24687
|
+
--Gi;
|
|
24683
24688
|
}
|
|
24684
24689
|
function um() {
|
|
24685
|
-
ui = (cr = Pa.now()) + zr,
|
|
24690
|
+
ui = (cr = Pa.now()) + zr, Gi = ma = 0;
|
|
24686
24691
|
try {
|
|
24687
24692
|
V2();
|
|
24688
24693
|
} finally {
|
|
24689
|
-
|
|
24694
|
+
Gi = 0, z2(), ui = 0;
|
|
24690
24695
|
}
|
|
24691
24696
|
}
|
|
24692
24697
|
function B2() {
|
|
@@ -24699,10 +24704,10 @@ function z2() {
|
|
|
24699
24704
|
fa = e, ad(o);
|
|
24700
24705
|
}
|
|
24701
24706
|
function ad(e) {
|
|
24702
|
-
if (!
|
|
24707
|
+
if (!Gi) {
|
|
24703
24708
|
ma && (ma = clearTimeout(ma));
|
|
24704
24709
|
var t = e - ui;
|
|
24705
|
-
t > 24 ? (e < 1 / 0 && (ma = setTimeout(um, e - Pa.now() - zr)), sa && (sa = clearInterval(sa))) : (sa || (cr = Pa.now(), sa = setInterval(B2, Vy)),
|
|
24710
|
+
t > 24 ? (e < 1 / 0 && (ma = setTimeout(um, e - Pa.now() - zr)), sa && (sa = clearInterval(sa))) : (sa || (cr = Pa.now(), sa = setInterval(B2, Vy)), Gi = 1, By(um));
|
|
24706
24711
|
}
|
|
24707
24712
|
}
|
|
24708
24713
|
function mm(e, t, n) {
|
|
@@ -25049,7 +25054,7 @@ function CM() {
|
|
|
25049
25054
|
function xM(e, t) {
|
|
25050
25055
|
var n, o, i;
|
|
25051
25056
|
return function() {
|
|
25052
|
-
var a =
|
|
25057
|
+
var a = Ki(this, e), s = (this.style.removeProperty(e), Ki(this, e));
|
|
25053
25058
|
return a === s ? null : a === n && s === o ? i : i = t(n = a, o = s);
|
|
25054
25059
|
};
|
|
25055
25060
|
}
|
|
@@ -25061,15 +25066,15 @@ function Hy(e) {
|
|
|
25061
25066
|
function RM(e, t, n) {
|
|
25062
25067
|
var o, i = n + "", a;
|
|
25063
25068
|
return function() {
|
|
25064
|
-
var s =
|
|
25069
|
+
var s = Ki(this, e);
|
|
25065
25070
|
return s === i ? null : s === o ? a : a = t(o = s, n);
|
|
25066
25071
|
};
|
|
25067
25072
|
}
|
|
25068
25073
|
function AM(e, t, n) {
|
|
25069
25074
|
var o, i, a;
|
|
25070
25075
|
return function() {
|
|
25071
|
-
var s =
|
|
25072
|
-
return r == null && (l = r = (this.style.removeProperty(e),
|
|
25076
|
+
var s = Ki(this, e), r = n(this), l = r + "";
|
|
25077
|
+
return r == null && (l = r = (this.style.removeProperty(e), Ki(this, e))), s === l ? null : s === o && l === i ? a : (i = l, a = t(o = s, r));
|
|
25073
25078
|
};
|
|
25074
25079
|
}
|
|
25075
25080
|
function $M(e, t) {
|
|
@@ -25762,7 +25767,7 @@ const Ky = Symbol("MiniMapSlots"), tO = ["id", "x", "y", "rx", "ry", "width", "h
|
|
|
25762
25767
|
data: {}
|
|
25763
25768
|
},
|
|
25764
25769
|
setup(e) {
|
|
25765
|
-
const t = e, { screenToFlowCoordinate: n } = kt(), o = At(Qd), i = At(
|
|
25770
|
+
const t = e, { screenToFlowCoordinate: n } = kt(), o = At(Qd), i = At(vi, null), a = H(() => !!i && i.editable.value), s = At(gi, null), r = H(
|
|
25766
25771
|
() => !!s && s.active.value && (!s.relatedEntityIds.value.has(t.data.targetRef) || !s.relatedNoteIds.value.has(t.data.noteRef))
|
|
25767
25772
|
), l = H(() => (o == null ? void 0 : o.points(t.id)) ?? []), d = pe(-1), c = pe({ x: 0, y: 0 }), u = H(
|
|
25768
25773
|
() => l.value.map((F, L) => L === d.value ? c.value : F)
|
|
@@ -25834,7 +25839,7 @@ const Ky = Symbol("MiniMapSlots"), tO = ["id", "x", "y", "rx", "ry", "width", "h
|
|
|
25834
25839
|
data: {}
|
|
25835
25840
|
},
|
|
25836
25841
|
setup(e) {
|
|
25837
|
-
const t = e, n = At(
|
|
25842
|
+
const t = e, n = At(vi, null), o = At(gi, null), i = H(
|
|
25838
25843
|
() => !!o && o.active.value && (!o.relatedEntityIds.value.has(t.data.consumerRef) || !o.relatedEntityIds.value.has(t.data.typeRef))
|
|
25839
25844
|
), { source: a, target: s, sourceSide: r, targetSide: l } = Zd({
|
|
25840
25845
|
sourceNode: () => t.sourceNode,
|
|
@@ -25991,7 +25996,7 @@ const Ky = Symbol("MiniMapSlots"), tO = ["id", "x", "y", "rx", "ry", "width", "h
|
|
|
25991
25996
|
key: O,
|
|
25992
25997
|
type: "button",
|
|
25993
25998
|
class: Re(["em-ctx__chip", { "is-on": y.current === O }]),
|
|
25994
|
-
style: It({ background: m(
|
|
25999
|
+
style: It({ background: m(ji)(O) }),
|
|
25995
26000
|
role: "menuitemradio",
|
|
25996
26001
|
"aria-checked": y.current === O,
|
|
25997
26002
|
"aria-label": o(m(di)(O)),
|
|
@@ -26105,7 +26110,7 @@ const lc = [
|
|
|
26105
26110
|
".em-note-edge__waypoint",
|
|
26106
26111
|
".em-note-edge__mid"
|
|
26107
26112
|
].join(",");
|
|
26108
|
-
function
|
|
26113
|
+
function Yi(e) {
|
|
26109
26114
|
const t = getComputedStyle(e);
|
|
26110
26115
|
return !(t.display === "none" || t.visibility === "hidden" || parseFloat(t.opacity) === 0);
|
|
26111
26116
|
}
|
|
@@ -26148,7 +26153,7 @@ function SO(e, t) {
|
|
|
26148
26153
|
function _s(e, t) {
|
|
26149
26154
|
const n = [];
|
|
26150
26155
|
for (const o of e.querySelectorAll("*"))
|
|
26151
|
-
$O(o) && (o.closest(lc) ||
|
|
26156
|
+
$O(o) && (o.closest(lc) || Yi(o) && n.push(...SO(o, t)));
|
|
26152
26157
|
return n;
|
|
26153
26158
|
}
|
|
26154
26159
|
function pa(e) {
|
|
@@ -26157,7 +26162,7 @@ function pa(e) {
|
|
|
26157
26162
|
function TO(e, t) {
|
|
26158
26163
|
const n = [];
|
|
26159
26164
|
for (const o of e.querySelectorAll("svg.em-icon")) {
|
|
26160
|
-
if (o.closest(lc) || !
|
|
26165
|
+
if (o.closest(lc) || !Yi(o)) continue;
|
|
26161
26166
|
const i = o.getBoundingClientRect();
|
|
26162
26167
|
if (i.width === 0 || i.height === 0) continue;
|
|
26163
26168
|
const a = t(i.left, i.top), s = t(i.right, i.bottom), r = getComputedStyle(o), l = o.getAttribute("viewBox") ?? "0 0 24 24", d = parseFloat(r.strokeWidth) || 1.75;
|
|
@@ -26172,7 +26177,7 @@ function TO(e, t) {
|
|
|
26172
26177
|
function MO(e) {
|
|
26173
26178
|
const t = [];
|
|
26174
26179
|
for (const n of e.querySelectorAll(".em-edge__marker")) {
|
|
26175
|
-
if (!
|
|
26180
|
+
if (!Yi(n)) continue;
|
|
26176
26181
|
const o = getComputedStyle(n), i = o.stroke, a = parseFloat(o.strokeWidth) || 1.5, s = o.fill && o.fill !== "none" ? o.fill : "none", r = n.tagName.toLowerCase(), l = (d) => pa(parseFloat(n.getAttribute(d) ?? "0"));
|
|
26177
26182
|
r === "line" ? t.push(
|
|
26178
26183
|
`<line x1="${l("x1")}" y1="${l("y1")}" x2="${l("x2")}" y2="${l("y2")}" stroke="${i}" stroke-width="${a}" stroke-linecap="round" />`
|
|
@@ -26187,7 +26192,7 @@ function MO(e) {
|
|
|
26187
26192
|
function gm(e, t, n) {
|
|
26188
26193
|
const o = [];
|
|
26189
26194
|
for (const i of e.querySelectorAll("*")) {
|
|
26190
|
-
if (i === t || i.closest(lc) || !
|
|
26195
|
+
if (i === t || i.closest(lc) || !Yi(i)) continue;
|
|
26191
26196
|
const a = getComputedStyle(i), s = parseFloat(a.borderTopWidth);
|
|
26192
26197
|
if (!s) continue;
|
|
26193
26198
|
const r = i.getBoundingClientRect();
|
|
@@ -26225,7 +26230,7 @@ function OO(e) {
|
|
|
26225
26230
|
const n = (f, h) => e.screenToFlowCoordinate({ x: f, y: h }), o = [], i = [], a = [], s = [], r = { minX: 1 / 0, minY: 1 / 0, maxX: -1 / 0, maxY: -1 / 0 };
|
|
26226
26231
|
for (const f of e.nodes.value) {
|
|
26227
26232
|
const h = t.querySelector(`.vue-flow__node[data-id="${CSS.escape(f.id)}"]`);
|
|
26228
|
-
if (!h || !
|
|
26233
|
+
if (!h || !Yi(h)) continue;
|
|
26229
26234
|
const b = h.firstElementChild;
|
|
26230
26235
|
if (b)
|
|
26231
26236
|
if (f.type === "group") {
|
|
@@ -26282,7 +26287,7 @@ function OO(e) {
|
|
|
26282
26287
|
}
|
|
26283
26288
|
for (const f of t.querySelectorAll(".vue-flow__edge")) {
|
|
26284
26289
|
const h = f.querySelector("path.em-edge__path, path.em-note-edge__path");
|
|
26285
|
-
if (!h || !
|
|
26290
|
+
if (!h || !Yi(h)) continue;
|
|
26286
26291
|
const b = h.getAttribute("d");
|
|
26287
26292
|
if (!b) continue;
|
|
26288
26293
|
const v = getComputedStyle(h), _ = v.strokeDasharray, w = MO(f);
|
|
@@ -26434,7 +26439,7 @@ const VO = { class: "em-shortcuts" }, BO = { class: "em-shortcuts__list" }, zO =
|
|
|
26434
26439
|
}, 8, ["title"]));
|
|
26435
26440
|
}
|
|
26436
26441
|
}), Jy = /* @__PURE__ */ _t(GO, [["__scopeId", "data-v-38f2450f"]]);
|
|
26437
|
-
function
|
|
26442
|
+
function $i(...e) {
|
|
26438
26443
|
return e.filter((n) => !!n).join(" ").toLowerCase().trim() || void 0;
|
|
26439
26444
|
}
|
|
26440
26445
|
function YO(e, t) {
|
|
@@ -26482,7 +26487,7 @@ const qO = ["aria-label"], WO = ["aria-activedescendant", "aria-label", "placeho
|
|
|
26482
26487
|
id: F.modelId,
|
|
26483
26488
|
label: ((L = fo(F)) == null ? void 0 : L[y]) || F.name,
|
|
26484
26489
|
sub: (B = F.table) == null ? void 0 : B.physicalName,
|
|
26485
|
-
match:
|
|
26490
|
+
match: $i(F.name, (D = fo(F)) == null ? void 0 : D[y], (A = F.table) == null ? void 0 : A.physicalName) ?? ""
|
|
26486
26491
|
};
|
|
26487
26492
|
}), O = i.state.logical.groups.map((F) => {
|
|
26488
26493
|
var L, B;
|
|
@@ -26492,7 +26497,7 @@ const qO = ["aria-label"], WO = ["aria-activedescendant", "aria-label", "placeho
|
|
|
26492
26497
|
id: F.modelId,
|
|
26493
26498
|
label: dn(F.name, y) || F.packageName || i.t("em.cmd.groupTag"),
|
|
26494
26499
|
tag: i.t("em.cmd.groupTag"),
|
|
26495
|
-
match:
|
|
26500
|
+
match: $i((L = F.name) == null ? void 0 : L[y], (B = F.name) == null ? void 0 : B.ko, F.packageName) ?? ""
|
|
26496
26501
|
};
|
|
26497
26502
|
});
|
|
26498
26503
|
return [...x, ...O];
|
|
@@ -26677,7 +26682,7 @@ const uL = {
|
|
|
26677
26682
|
embedCollapseStorageKey: {}
|
|
26678
26683
|
},
|
|
26679
26684
|
setup(e, { expose: t }) {
|
|
26680
|
-
const n = e, o = n.controller, i =
|
|
26685
|
+
const n = e, o = n.controller, i = Wi(), a = pe(!1), s = pe(null);
|
|
26681
26686
|
let r;
|
|
26682
26687
|
function l(P) {
|
|
26683
26688
|
s.value = P, r && clearTimeout(r), r = setTimeout(() => s.value = null, 3200);
|
|
@@ -26733,7 +26738,7 @@ const uL = {
|
|
|
26733
26738
|
k.has(je.targetRef) && xe.add(je.noteRef);
|
|
26734
26739
|
return { related: k, edges: le, notes: xe };
|
|
26735
26740
|
});
|
|
26736
|
-
sn(
|
|
26741
|
+
sn(gi, {
|
|
26737
26742
|
source: v,
|
|
26738
26743
|
active: H(() => v.value !== null),
|
|
26739
26744
|
primaryEntityIds: _,
|
|
@@ -26755,7 +26760,7 @@ const uL = {
|
|
|
26755
26760
|
setNoteHover: (P) => {
|
|
26756
26761
|
b.value || u.value || (v.value = P ? { kind: "note", id: P } : null);
|
|
26757
26762
|
}
|
|
26758
|
-
}), sn(
|
|
26763
|
+
}), sn(vi, o);
|
|
26759
26764
|
const g = AA(), N = H(
|
|
26760
26765
|
() => g(o.state.logical, o.embeddableCatalog.value)
|
|
26761
26766
|
);
|
|
@@ -27497,22 +27502,22 @@ const uL = {
|
|
|
27497
27502
|
onEdgeContextMenu: Qn
|
|
27498
27503
|
}, {
|
|
27499
27504
|
"node-group": lt((le) => [
|
|
27500
|
-
W(h$, Po(
|
|
27505
|
+
W(h$, Po(bi(le)), null, 16)
|
|
27501
27506
|
]),
|
|
27502
27507
|
"node-entity": lt((le) => [
|
|
27503
|
-
W(l$, Po(
|
|
27508
|
+
W(l$, Po(bi(le)), null, 16)
|
|
27504
27509
|
]),
|
|
27505
27510
|
"node-note": lt((le) => [
|
|
27506
|
-
W(b$, Po(
|
|
27511
|
+
W(b$, Po(bi(le)), null, 16)
|
|
27507
27512
|
]),
|
|
27508
27513
|
"edge-association": lt((le) => [
|
|
27509
|
-
W(F$, Po(
|
|
27514
|
+
W(F$, Po(bi(le)), null, 16)
|
|
27510
27515
|
]),
|
|
27511
27516
|
"edge-note-connection": lt((le) => [
|
|
27512
|
-
W(fO, Po(
|
|
27517
|
+
W(fO, Po(bi(le)), null, 16)
|
|
27513
27518
|
]),
|
|
27514
27519
|
"edge-serialized-type": lt((le) => [
|
|
27515
|
-
W(yO, Po(
|
|
27520
|
+
W(yO, Po(bi(le)), null, 16)
|
|
27516
27521
|
]),
|
|
27517
27522
|
default: lt(() => [
|
|
27518
27523
|
m(o).showGrid.value ? (S(), He(m(W$), {
|
|
@@ -27654,7 +27659,7 @@ const uL = {
|
|
|
27654
27659
|
storageKey: {}
|
|
27655
27660
|
},
|
|
27656
27661
|
setup(e, { expose: t }) {
|
|
27657
|
-
const n = e, o = n.controller, i =
|
|
27662
|
+
const n = e, o = n.controller, i = Wi(), a = H(() => {
|
|
27658
27663
|
const $ = o.resolved.value, I = o.displayMode.value, E = o.userLanguage.value, C = (V) => {
|
|
27659
27664
|
var z, q;
|
|
27660
27665
|
return jr(I, V.name, (z = fo(V)) == null ? void 0 : z[E], (q = V.table) == null ? void 0 : q.physicalName, o.t("em.node.logicalMissing"));
|
|
@@ -27671,7 +27676,7 @@ const uL = {
|
|
|
27671
27676
|
}) : void 0;
|
|
27672
27677
|
}, he = { embeddableCatalog: o.embeddableCatalog.value }, ge = /* @__PURE__ */ new Map(), ke = (V) => {
|
|
27673
27678
|
let z = ge.get(V.modelId);
|
|
27674
|
-
return z || ge.set(V.modelId, z =
|
|
27679
|
+
return z || ge.set(V.modelId, z = pi(Mo(V, o.state.logical.entities))), z;
|
|
27675
27680
|
}, ue = (V, z) => {
|
|
27676
27681
|
const q = Z.get(z);
|
|
27677
27682
|
return so(V) ? V.dbAttrs.map((se, ie) => fn(V, se, ie, q, o.state.logical)) : V.attrType === "EMBED_PREDEF" && !o.embeddableCatalog.value.some((se) => se.type === V.type) ? V.dbAttrs : V.dbAttrs.map((se, ie) => {
|
|
@@ -27692,7 +27697,7 @@ const uL = {
|
|
|
27692
27697
|
icon: "table",
|
|
27693
27698
|
attrRef: se,
|
|
27694
27699
|
focusId: z,
|
|
27695
|
-
matchText:
|
|
27700
|
+
matchText: $i(V.name, (Me = Si(V, V.dbAttrs[0])) == null ? void 0 : Me[E], (Ae = V.dbAttrs[0]) == null ? void 0 : Ae.physicalName),
|
|
27696
27701
|
children: Y ? ue(V, z).map((Ie) => {
|
|
27697
27702
|
var ze, Ye;
|
|
27698
27703
|
return {
|
|
@@ -27701,7 +27706,7 @@ const uL = {
|
|
|
27701
27706
|
icon: "field",
|
|
27702
27707
|
attrRef: se,
|
|
27703
27708
|
focusId: z,
|
|
27704
|
-
matchText:
|
|
27709
|
+
matchText: $i(Ie.physicalName, (Ye = Ie.logicalName) == null ? void 0 : Ye[E]),
|
|
27705
27710
|
children: []
|
|
27706
27711
|
};
|
|
27707
27712
|
}) : []
|
|
@@ -27710,13 +27715,13 @@ const uL = {
|
|
|
27710
27715
|
const ie = (q == null ? void 0 : q.collection) ?? za(V, o.state.logical.associations), we = xl(I, V, ie, q == null ? void 0 : q.targetName, Te(V)), be = fe(V, z);
|
|
27711
27716
|
return {
|
|
27712
27717
|
key: `attr:${V.modelId}`,
|
|
27713
|
-
label: jr(I, V.name, (te =
|
|
27718
|
+
label: jr(I, V.name, (te = Si(V, be)) == null ? void 0 : te[E], be == null ? void 0 : be.physicalName, o.t("em.node.logicalMissing")) + (we ? ` : ${we}` : ""),
|
|
27714
27719
|
...T(V),
|
|
27715
27720
|
// 속성 단위 선택 — 클릭 시 selectAttribute로 캔버스 행 마커·Inspector 포커스와 동기화(수식어로 다중선택).
|
|
27716
27721
|
// 센터링은 부모 엔티티(속성은 캔버스에서 행이라 노드 단위 포커스가 자연스러움).
|
|
27717
27722
|
attrRef: se,
|
|
27718
27723
|
focusId: z,
|
|
27719
|
-
matchText:
|
|
27724
|
+
matchText: $i(V.name, (ne = Si(V, be)) == null ? void 0 : ne[E], be == null ? void 0 : be.physicalName),
|
|
27720
27725
|
children: []
|
|
27721
27726
|
};
|
|
27722
27727
|
}, Ve = (V) => {
|
|
@@ -27734,7 +27739,7 @@ const uL = {
|
|
|
27734
27739
|
selectKind: "entity",
|
|
27735
27740
|
selectId: z.modelId,
|
|
27736
27741
|
focusId: z.modelId,
|
|
27737
|
-
matchText:
|
|
27742
|
+
matchText: $i(z.name, (Me = fo(z)) == null ? void 0 : Me[E], (Ae = z.table) == null ? void 0 : Ae.physicalName),
|
|
27738
27743
|
children: we.map((te) => Je(te, z.modelId, be.get(te.modelId)))
|
|
27739
27744
|
};
|
|
27740
27745
|
}, ve = /* @__PURE__ */ new Map(), Ee = [];
|
|
@@ -28230,7 +28235,7 @@ const uL = {
|
|
|
28230
28235
|
},
|
|
28231
28236
|
emits: ["exportSvg", "exportPng", "toggleHistory"],
|
|
28232
28237
|
setup(e, { emit: t }) {
|
|
28233
|
-
const o = e.controller, i = t, a =
|
|
28238
|
+
const o = e.controller, i = t, a = Wi(), s = [
|
|
28234
28239
|
{ v: "LOGICAL", labelKey: "em.displayMode.logical" },
|
|
28235
28240
|
{ v: "PHYSICAL", labelKey: "em.displayMode.physical" },
|
|
28236
28241
|
{ v: "LOGICAL_PHYSICAL", labelKey: "em.displayMode.logicalPhysical" },
|
|
@@ -29235,7 +29240,7 @@ const uL = {
|
|
|
29235
29240
|
key: U,
|
|
29236
29241
|
type: "button",
|
|
29237
29242
|
class: Re(["em-swatch__chip", { "is-on": X(k) === U }]),
|
|
29238
|
-
style: It({ background: m(
|
|
29243
|
+
style: It({ background: m(ji)(U) }),
|
|
29239
29244
|
title: m(n).t(m(di)(U)),
|
|
29240
29245
|
onClick: (Q) => Ue(k, U)
|
|
29241
29246
|
}, null, 14, cD))), 128)),
|
|
@@ -29425,7 +29430,7 @@ const uL = {
|
|
|
29425
29430
|
},
|
|
29426
29431
|
emits: ["toggle"],
|
|
29427
29432
|
setup(e, { emit: t }) {
|
|
29428
|
-
const n = e, o = t, i = n.controller, a =
|
|
29433
|
+
const n = e, o = t, i = n.controller, a = Wi(), s = H(() => i.state.logical.entities.find((g) => g.modelId === n.entityId) ?? null), r = H(
|
|
29429
29434
|
() => s.value ? i.state.layout.entityLayouts.find((g) => g.entityRef === s.value.modelId) ?? null : null
|
|
29430
29435
|
), l = ["PUBLIC", "PROTECTED", "PACKAGE", "PRIVATE"], d = [
|
|
29431
29436
|
"none",
|
|
@@ -29574,7 +29579,7 @@ const uL = {
|
|
|
29574
29579
|
key: O,
|
|
29575
29580
|
type: "button",
|
|
29576
29581
|
class: Re(["em-swatch__chip", { "is-on": v(x) === O }]),
|
|
29577
|
-
style: It({ background: m(
|
|
29582
|
+
style: It({ background: m(ji)(O) }),
|
|
29578
29583
|
title: m(i).t(m(di)(O)),
|
|
29579
29584
|
onClick: (F) => _(x, O)
|
|
29580
29585
|
}, null, 14, AD))), 128))
|
|
@@ -30070,7 +30075,7 @@ const uL = {
|
|
|
30070
30075
|
])
|
|
30071
30076
|
])
|
|
30072
30077
|
]), [
|
|
30073
|
-
[
|
|
30078
|
+
[Ri, !ve.value || oe === ve.value.which]
|
|
30074
30079
|
]);
|
|
30075
30080
|
}), 64))
|
|
30076
30081
|
], 64)) : re("", !0),
|
|
@@ -30131,7 +30136,7 @@ const uL = {
|
|
|
30131
30136
|
key: oe,
|
|
30132
30137
|
type: "button",
|
|
30133
30138
|
class: Re(["em-swatch__chip", { "is-on": ie.value === oe }]),
|
|
30134
|
-
style: It({ background: m(
|
|
30139
|
+
style: It({ background: m(ji)(oe) }),
|
|
30135
30140
|
title: m(s).t(m(di)(oe)),
|
|
30136
30141
|
onClick: (Ie) => we(oe)
|
|
30137
30142
|
}, null, 14, u3))), 128))
|
|
@@ -30162,7 +30167,7 @@ const uL = {
|
|
|
30162
30167
|
key: oe,
|
|
30163
30168
|
type: "button",
|
|
30164
30169
|
class: Re(["em-swatch__chip", { "is-on": Me.value === oe }]),
|
|
30165
|
-
style: It({ background: m(
|
|
30170
|
+
style: It({ background: m(ji)(oe) }),
|
|
30166
30171
|
title: m(s).t(m(di)(oe)),
|
|
30167
30172
|
onClick: (Ie) => Ae(oe)
|
|
30168
30173
|
}, null, 14, g3))), 128))
|
|
@@ -30869,7 +30874,7 @@ const uL = {
|
|
|
30869
30874
|
}, J(m(i).t("em.history.loadMore", { n: j.value })), 1)) : re("", !0)
|
|
30870
30875
|
])
|
|
30871
30876
|
], 512), [
|
|
30872
|
-
[
|
|
30877
|
+
[Ri, e.open]
|
|
30873
30878
|
])
|
|
30874
30879
|
];
|
|
30875
30880
|
}),
|
|
@@ -30987,7 +30992,7 @@ const j8 = { class: "em-modeler" }, K8 = { class: "em-modeler__body" }, G8 = { c
|
|
|
30987
30992
|
onPointerdown: y[5] || (y[5] = //@ts-ignore
|
|
30988
30993
|
(...L) => m(h) && m(h)(...L))
|
|
30989
30994
|
}, null, 42, X8), [
|
|
30990
|
-
[
|
|
30995
|
+
[Ri, t.value]
|
|
30991
30996
|
])
|
|
30992
30997
|
], 6),
|
|
30993
30998
|
W(Ia, { name: "em-reopen" }, {
|
|
@@ -31005,7 +31010,7 @@ const j8 = { class: "em-modeler" }, K8 = { class: "em-modeler__body" }, G8 = { c
|
|
|
31005
31010
|
size: 18
|
|
31006
31011
|
})
|
|
31007
31012
|
], 8, Z8), [
|
|
31008
|
-
[
|
|
31013
|
+
[Ri, !t.value]
|
|
31009
31014
|
])
|
|
31010
31015
|
]),
|
|
31011
31016
|
_: 1
|
|
@@ -31031,7 +31036,7 @@ const j8 = { class: "em-modeler" }, K8 = { class: "em-modeler__body" }, G8 = { c
|
|
|
31031
31036
|
"start-resize": m(_),
|
|
31032
31037
|
onCollapse: y[7] || (y[7] = (L) => d(!1))
|
|
31033
31038
|
}, null, 8, ["controller", "width", "resizing", "start-resize"]), [
|
|
31034
|
-
[
|
|
31039
|
+
[Ri, n.value]
|
|
31035
31040
|
]),
|
|
31036
31041
|
W(Ia, { name: "em-reopen" }, {
|
|
31037
31042
|
default: lt(() => [
|
|
@@ -31048,7 +31053,7 @@ const j8 = { class: "em-modeler" }, K8 = { class: "em-modeler__body" }, G8 = { c
|
|
|
31048
31053
|
size: 18
|
|
31049
31054
|
})
|
|
31050
31055
|
], 8, Q8), [
|
|
31051
|
-
[
|
|
31056
|
+
[Ri, !n.value]
|
|
31052
31057
|
])
|
|
31053
31058
|
]),
|
|
31054
31059
|
_: 1
|
|
@@ -31079,15 +31084,15 @@ export {
|
|
|
31079
31084
|
of as DIAGRAM_JSON_VERSION,
|
|
31080
31085
|
kL as DiagramCanvas,
|
|
31081
31086
|
VL as DiagramExplorer,
|
|
31082
|
-
|
|
31087
|
+
vi as EDITOR,
|
|
31083
31088
|
_V as EditModeToggle,
|
|
31084
31089
|
lP as EditorToolbar,
|
|
31085
31090
|
wV as EntityModeler,
|
|
31086
31091
|
l$ as EntityNode,
|
|
31087
|
-
|
|
31092
|
+
hi as GROUP_CODE_ENUM_VALUE,
|
|
31088
31093
|
h$ as GroupNode,
|
|
31089
31094
|
md as INHERITED_REF_PREFIX,
|
|
31090
|
-
|
|
31095
|
+
_i as InvalidDiagramJsonError,
|
|
31091
31096
|
vr as JAVA_TYPES,
|
|
31092
31097
|
dV as LIB_VERSION,
|
|
31093
31098
|
b$ as NoteNode,
|
|
@@ -31120,7 +31125,7 @@ export {
|
|
|
31120
31125
|
LO as exportDiagramSvg,
|
|
31121
31126
|
p1 as fromPersisted,
|
|
31122
31127
|
jg as isGeneratable,
|
|
31123
|
-
|
|
31128
|
+
Ji as isInheritedColumnRef,
|
|
31124
31129
|
St as isValueTypeStereotype,
|
|
31125
31130
|
ya as javaTypeLabel,
|
|
31126
31131
|
vv as makeInheritedColumnRef,
|
|
@@ -31147,7 +31152,7 @@ export {
|
|
|
31147
31152
|
Ic as resolveQuickFix,
|
|
31148
31153
|
Xi as resolveSharedColumn,
|
|
31149
31154
|
mV as resolveSymbolicOps,
|
|
31150
|
-
|
|
31155
|
+
Bi as restoreDeepEqual,
|
|
31151
31156
|
sV as scaffoldEntityJava,
|
|
31152
31157
|
Mm as sharedColumnScopeEntities,
|
|
31153
31158
|
dg as sqlDdlToImportSource,
|