@g1cloud/bpmn-modeler-next 5.0.0-alpha.65 โ†’ 5.0.0-alpha.67

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.
@@ -406,6 +406,39 @@ export type GeometryFinding =
406
406
  kind: 'pool-name-over-label';
407
407
  pool: string;
408
408
  label: string;
409
+ }
410
+ /**
411
+ * ๐Ÿ”ด **ํ’€์ด ๋‹ค๋ฅธ ํ’€๊ณผ ๊ฒน์นœ๋‹ค โ€” ใ€Œ๊ฐ€๋ ค์งใ€์ถ•**(B-91 ยท ํ‘œ๋ณธ 67). ํ•œ ํ’€์ด ๋‹ค๋ฅธ ํ’€ ์œ„์— ์–นํžˆ๋ฉด
412
+ * ์•„๋ž˜ ํ’€์˜ ๋‚ด์šฉ์ด ๋ฐฐ๊ฒฝ์— ๋ฌปํ˜€ **์ฝ์„ ์ˆ˜ ์—†๋‹ค**. ๊ทผ์ธ์€ ๋ฐฐ์น˜์˜ **๋น„๋Œ€์นญ**์ด๋‹ค โ€” ํ’€์ด ์„ธ๋กœ๋กœ
413
+ * ์ž๋ž„ ๋•Œ๋Š” `pushRootBelow` ๊ฐ€ ์•„๋ž˜๋ฅผ ๋ฐ€์ง€๋งŒ **๊ฐ€๋กœ๋กœ ์ž๋ž„ ๋•Œ๋Š” ์˜ค๋ฅธ์ชฝ์„ ์•ˆ ๋ฏผ๋‹ค**.
414
+ *
415
+ * โš  **๊ด€ํ†ต ์ถ•์œผ๋กœ๋Š” ๋ชป ์žก๋Š”๋‹ค** โ€” `auditTargetsOf` ๊ฐ€ ์ปจํ…Œ์ด๋„ˆ๋ฅผ ์ „๋ถ€ ๋นผ๋ฏ€๋กœ(`!s.container`)
416
+ * ํ’€์€ ์• ์ดˆ์— ๊ด€ํ†ตยท๊ฒน์นจ ํŒ์ •์˜ ๋Œ€์ƒ์ด ์•„๋‹ˆ๋‹ค. ๊ทธ๋ž˜์„œ ํ‘œ๋ณธ 67 ์—์„œ POS ํ’€์ด ๋ ˆ์ „๋“œ ํ’€์„
417
+ * **100% ๋ฎ์—ˆ๋Š”๋ฐ ๋ฌธ์„œ ์ „์ฒด ํŒ์ •์ด 0๊ฑด**์ด์—ˆ๊ณ , ์‚ฌ์šฉ์ž๊ฐ€ ํ’€ 3๊ฐœ๋ฅผ ์†์œผ๋กœ ๋“œ๋ž˜๊ทธํ•ด ๋บ๋‹ค
418
+ * (์ฆ์–ธ: *"๋ ˆ์ „๋“œ ์นด๋“œ๊ฐ€ ๋„ํ˜•์— ๊ฐ€๋ ค์„œ ๋ฐ–์œผ๋กœ ๋บ€๊ฑฐ์•ผ"*) โ€” ๐Ÿ” **์กฐ์šฉํ•œ ๊ฒฐํ•จ**(B-51ยทB-74 ํด๋ž˜์Šค).
419
+ *
420
+ * ๐Ÿ”ด **์–‘์„ ์žฌ์ง€ ์•Š๋Š”๋‹ค โ€” ๊ฒน์น˜๋Š”๊ฐ€๋งŒ ๋ณธ๋‹ค.** ์˜คํƒ ๊ธฐ์ €๊ฐ€ **0/97**(์‹ค๋ฌด 0/26 ยท ์ €์žฅ๋ณธ 0/74)์ด๋ผ
421
+ * ์ž„๊ณ„๊ฐ€ ํ•„์š” ์—†๋‹ค. `contained` = ํ•œ์ชฝ์ด ๋‹ค๋ฅธ ์ชฝ์„ ํ†ต์งธ๋กœ ๋ฎ์—ˆ๋‹ค(๊ฐ€๋ฆผ์ด ๊ฐ€์žฅ ์‹ฌํ•œ ํ˜•์ƒ).
422
+ */
423
+ | {
424
+ kind: 'pool-overlap';
425
+ pools: [string, string];
426
+ contained: boolean;
427
+ }
428
+ /**
429
+ * ๐Ÿ”ด **๊ฐ„์„ ์ด ๋‚จ์˜ ์„œ๋ธŒํ”„๋กœ์„ธ์Šค๋ฅผ ๊ด€ํ†ตํ•œ๋‹ค**(B-91 โ“‘). `edge-crosses-shape` ๊ฐ€ ์ด๊ฒƒ์„ ๋ชป ๋ณด๋Š”
430
+ * ์ด์œ ๋Š” ๊ฐ™๋‹ค โ€” subProcess ๊ฐ€ `container` ๋ผ ๋Œ€์ƒ์—์„œ ๋น ์ง„๋‹ค. ๊ทธ๋Ÿฐ๋ฐ **์‚ฌ๋žŒ ๋ˆˆ์—๋Š” ๋„ํ˜•**์ด๊ณ ,
431
+ * ํ‘œ๋ณธ 67 ์—์„œ ์‹ ๊ทœ ๊ฐ„์„  3๊ฑด์ด ๋ ˆ์ „๋“œ ์นด๋“œ ์•ˆ์˜ subProcess ๋ฅผ ๊ฐ€๋กœ์งˆ๋ €๋‹ค.
432
+ *
433
+ * โš  **์ปจํ…Œ์ด๋„ˆ ์ข…๋ฅ˜๋ฅผ ๊ฐ€๋ฅด๋Š” ๊ฒƒ์ด ํŒ๋ณ„์ž๋‹ค**(๐Ÿ” B-65 ใ€Œ์–‘์ด ์•ˆ ๊ฐ€๋ฅด๋ฉด ๋Œ€์ƒ์„ ๊ฐˆ๋ผ๋ผใ€) โ€”
434
+ * participantยทlaneยทgroup ๊ด€ํ†ต์€ **์ •์ƒ ํ˜•์ƒ**์ด๋ผ ๊ฐ™์ด ์žก์œผ๋ฉด ์ €์žฅ๋ณธ์—์„œ๋งŒ **718๊ฑด**์ด ํ„ฐ์ง„๋‹ค
435
+ * (์‹ค์ธก: Participant 410 ยท Group 210 ยท Lane 98). subProcess ๋งŒ **0/97** ์ด๋‹ค.
436
+ * โš  **collapsed ์—ฌ๋ถ€๋กœ๋Š” ๋ชป ๊ฐ€๋ฅธ๋‹ค** โ€” ํ‘œ๋ณธ 67 ์˜ ๊ทธ subProcess ๋“ค์€ **expanded** ์˜€๋‹ค.
437
+ */
438
+ | {
439
+ kind: 'edge-crosses-subprocess';
440
+ edge: string;
441
+ subProcess: string;
409
442
  };
410
443
  /** ๋ฐœ๊ฒฌ์„ ์ „ํ›„ ๋น„๊ต(๋ฐฐ์น˜๊ฐ€ ์ƒˆ๋กœ ๋งŒ๋“  ๊ฒƒ ๊ฐ€๋ ค๋‚ด๊ธฐ)ํ•  ์ˆ˜ ์žˆ๊ฒŒ ํ•˜๋Š” ์•ˆ์ • ํ‚ค. */
411
444
  export declare function geometryFindingKey(finding: GeometryFinding): string;
@@ -9,7 +9,7 @@ import { default as BpmnReplace } from 'bpmn-js/lib/features/replace/BpmnReplace
9
9
  import { Shape } from 'bpmn-js/lib/model/Types';
10
10
  import { SymbolicOp } from '../symbolicOp';
11
11
  import { BwlSide } from '../../core/hints';
12
- import { GeometryFinding } from '../geometryAudit';
12
+ import { GeometryFinding, GeometryScene } from '../geometryAudit';
13
13
  /** resolver ๊ฐ€ ๋Œ€๋ฉดํ•˜๋Š” bpmn-js ์„œ๋น„์Šค ํ‘œ๋ฉด โ€” ํ•˜๊ฐ•์€ ์ด ๋ฌถ์Œ๋งŒ ์‚ฌ์šฉํ•œ๋‹ค. */
14
14
  export interface ResolverServices {
15
15
  modeling: Modeling;
@@ -63,3 +63,43 @@ export declare function lowerOps(ops: readonly SymbolicOp[], services: ResolverS
63
63
  /** ์ฃผ์„ ๋„ํ˜•์ด ์†Œ์œ ์ž๋กœ ๋“ฑ์žฅํ•  ์ˆ˜ ์žˆ๋Š” finding ์˜ ์†Œ์œ  ๋„ํ˜• id. */
64
64
  export declare function annotationOwnersOf(finding: GeometryFinding): readonly string[];
65
65
  export declare function repairIntroducedAnnotationOverlaps(services: Pick<ResolverServices, 'elementRegistry' | 'modeling'>, beforeKeys: ReadonlySet<string>, beforeShapeIds: ReadonlySet<string>): void;
66
+ /**
67
+ * **B-91 ์˜ˆ๋ฐฉ** โ€” ์ด ๋ฐฐ์น˜๊ฐ€ ๋งŒ๋“  **ํ’€ ร— ํ’€ ๊ฒน์นจ**์„, ์˜ค๋ฅธ์ชฝ ์ด์›ƒ์„ ๋ฐ€์–ด ํ•ด์†Œํ•œ๋‹ค.
68
+ *
69
+ * B-91 ์€ ํƒ์ง€๋งŒ ํ–ˆ๋‹ค(`pool-overlap` finding). ๊ฒน์นจ ์ž์ฒด๋Š” ๊ณ„์† ์ƒ๊ฒผ๊ณ  ์‚ฌ๋žŒ์ด ๋งค๋ฒˆ ์†์œผ๋กœ ๋บ๋‹ค โ€”
70
+ * ๐Ÿ”ด **ํ‘œ๋ณธ 68 ์—์„œ ์žฌ๋ฐœ์ด 3์  ๊ฒ€์ •์œผ๋กœ ํ™•์ •๋ผ**(base 0 / ์‚ฐ์ถœ 2 / ์‚ฌ๋žŒ ์ตœ์ข… 0) ์˜ˆ๋ฐฉ ์ถ• ํŠธ๋ฆฌ๊ฑฐ๊ฐ€ ๋ฐœ๋™ํ–ˆ๋‹ค.
71
+ *
72
+ * โš  **์‚ฌ๋žŒ๊ณผ ๋ฐฉํ–ฅ์ด ๋Š˜ ๊ฐ™์ง€๋Š” ์•Š๋‹ค** โ€” ํ‘œ๋ณธ 67 ์€ ๊ฒน์นœ ํ’€์„ **์œ„๋กœ** ๋บ๊ณ  ํ‘œ๋ณธ 68 ์€ **์˜† ์นด๋“œ๋ฅผ ์˜ค๋ฅธ์ชฝ์œผ๋กœ**
73
+ * ์˜ฎ๊ฒผ๋‹ค. ์ด ํŒจ์Šค๋Š” ํ›„์ž๋งŒ ํ•œ๋‹ค. ๊ฒน์นจ์€ ๋ง‰๋˜ **์‚ฌ๋žŒ๊ณผ ๋‹ค๋ฅธ ๊ทธ๋ฆผ์ด ๋  ์ˆ˜ ์žˆ๋‹ค**๋Š” ๊ฒƒ์ด ๋“ฑ๋ก๋œ ๋Œ€๊ฐ€๋‹ค.
74
+ *
75
+ * ๐Ÿ”ด **๋™๋ฐ˜ ๋ฒ”์œ„๋Š” ใ€Œ๋ฐฐ์น˜ ์ „ใ€ ๊ธฐํ•˜ ํฌํ•จ์œผ๋กœ ์ •ํ•œ๋‹ค โ€” ใ€Œ๋ฐฐ์น˜ ํ›„ใ€๋กœ ์ •ํ•˜๋ฉด ์˜ค์—ผ๋œ๋‹ค.** ํ‘œ๋ณธ 68 ์‹ค์ธก:
76
+ * ์™ผ์ชฝ ์นด๋“œ์—์„œ **๋ฐ€๋ ค ๋‚˜๊ฐ„ ๋…ธ๋“œ 3๊ฐœ**(B-83 โ“‘ ์˜ ๊ทธ ์ดํƒˆ)๊ฐ€ ๋ฐฐ์น˜ ํ›„์—๋Š” **์˜ค๋ฅธ์ชฝ ์นด๋“œ ์ƒ์ž ์•ˆ**์— ๋“ค์–ด๊ฐ€
77
+ * ์žˆ์–ด, ํ›„ ๊ธฐ์ค€์œผ๋กœ ์นด๋“œ๋ฅผ ๋ชจ์œผ๋ฉด ๋ฐ€ ๋Œ€์ƒ์ด 14 โ†’ **17** ๋กœ ๋ถ€ํ’€๊ณ  **๋‚จ์˜ ๋…ธ๋“œ๋ฅผ ํ•จ๊ป˜ ๋ฐ€์–ด ๋ฒ„๋ฆฐ๋‹ค**.
78
+ * (๋ฃจํŠธ ์š”์†Œ๋งŒ ์˜ฎ๊ธฐ๋ฏ€๋กœ ์‹ค์ œ ์ด๋™์—์„œ๋Š” ๊ฑธ๋Ÿฌ์ง€์ง€๋งŒ, **ํํฌ๋ฅผ ์ž‡๋Š” ๊ทผ๊ฑฐ**๊ฐ€ ์˜ค์—ผ๋˜๋ฉด ์นด๋“œ ํŒ์ • ์ž์ฒด๊ฐ€ ํ‹€๋ฆฐ๋‹ค.)
79
+ *
80
+ * ๐Ÿ” **ใ€Œ์•ž ๋‹จ๊ณ„์˜ ํŒ๋‹จ์ด ๋’ค ๋‹จ๊ณ„๊ฐ€ ๋ฐ”๊พผ ์ „์ œ ์œ„์— ๋‚จ๋Š”๋‹คใ€์˜ ๊ฑฐ์šธ์ƒ** โ€” ์—ฌ๊ธฐ์„œ๋Š” *๋’ค* ๋‹จ๊ณ„๊ฐ€ ์•ž ์ƒํƒœ๋ฅผ
81
+ * ๊ทผ๊ฑฐ๋กœ ์‚ผ์•„์•ผ ์˜ณ๋‹ค(B-51ยทB-58ยทB-71ยทB-88 ํด๋ž˜์Šค์™€ ๋ฐ˜๋Œ€ ๋ฐฉํ–ฅ).
82
+ *
83
+ * **๋ฐ€ ๊ฑฐ๋ฆฌ = ๋ฐฐ์น˜ ์ „ ํ‹ˆ์˜ ๋ณต์›**์ด๋‹ค(๊ณ ์ • ์ƒ์ˆ˜๊ฐ€ ์•„๋‹ˆ๋‹ค โ€” ๋ฌธ์„œ๋งˆ๋‹ค ์นด๋“œ ๊ฐ„๊ฒฉ์ด ๋‹ค๋ฅด๋‹ค). ํ‘œ๋ณธ 68 ์‹ค์ธก =
84
+ * ํ‹ˆ **60px** ยท ๊ฒน์นจ 308ยท180 โ‡’ dx **368**(์‚ฌ๋žŒ์€ +340 ์œผ๋กœ ํ‹ˆ 32 ๋ฅผ ์ˆ˜์šฉํ–ˆ๋‹ค โ€” ๊ฐ™์€ ๋ฐฉํ–ฅ 28px ์ฐจ).
85
+ */
86
+ export declare function repairIntroducedPoolOverlaps(services: Pick<ResolverServices, 'elementRegistry' | 'modeling'>, beforeKeys: ReadonlySet<string>, sceneBefore: GeometryScene): void;
87
+ /**
88
+ * **B-83 โ“** โ€” ๊ธฐ์กด ๊ทธ๋ฃน ์ƒ์ž๊ฐ€ **ํฌ๊ธฐ ๋ณ€ํ™”**๋ฅผ ๋”ฐ๋ผ๊ฐ€์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ์„ ๊ณ ์นœ๋‹ค.
89
+ *
90
+ * ํ‘œ๋ณธ 67 ์ด ์ง„๋‹จ์„ ์ •๋ฐ€ํ™”ํ–ˆ๋‹ค โ€” *"์•ˆ ๋”ฐ๋ผ๊ฐ„๋‹ค"* ๊ฐ€ ์•„๋‹ˆ๋ผ **ใ€Œํฌ๊ธฐ ๋ณ€ํ™”๋ฅผ ๋ชป ๋”ฐ๋ผ๊ฐ„๋‹คใ€**๋‹ค(์œ„์น˜ ์ด๋™์€
91
+ * ์ด๋ฏธ ๋”ฐ๋ผ๊ฐ„๋‹ค). ํ‘œ๋ณธ 68 ์—์„œ **์ฆ์–ธ 1์ˆœ์œ„**๋กœ ์˜ฌ๋ผ์™”๊ณ  ์‚ฌ๋žŒ์ด ์ƒ์ž๋ฅผ ์ง์ ‘ ํ‚ค์› ๋‹ค(ฮ”w+348 ฮ”h+110).
92
+ *
93
+ * ๐Ÿ”ด **์ˆ˜๋‹จ์€ ใ€Œ์žฌ์‚ฐ์ถœใ€์ด ์•„๋‹ˆ๋ผ ใ€Œ์—ฌ๋ฐฑ ๋ณด์กดใ€์ด๋‹ค.** 5.7 ํŒจ์Šค(B-51)๋Š” `groupBoundsOf`(๋ฉค๋ฒ„ bbox + PAD 40)๋กœ
94
+ * ๋‹ค์‹œ ๊ทธ๋ฆฌ๋Š”๋ฐ, ๊ทธ ์ˆ˜๋‹จ์„ ์‚ฌ๋žŒ ๊ทธ๋ฃน์— ๊ฑธ๋ฉด **36/36 ์ด ์ „๋ถ€ ์›€์ง์ธ๋‹ค**(10px ์ด๋‚ด **0** ยท ์ค‘์•™ **30px** ยท
95
+ * ์ตœ๋Œ€ **150px**) โ€” ์‚ฌ๋žŒ์ด ๊ทธ๋ฆฐ ์—ฌ๋ฐฑ์ด ์ƒ์ˆ˜ 40 ์œผ๋กœ ๊ต์ฒด๋˜๊ธฐ ๋•Œ๋ฌธ์ด๋‹ค. ๊ทธ๋ž˜์„œ ์—ฌ๊ธฐ์„œ๋Š” **๋ฐฐ์น˜ ์ „ ์—ฌ๋ฐฑ์„
96
+ * ๋„ค ๋ณ€๋งˆ๋‹ค ๊ทธ๋Œ€๋กœ ์œ ์ง€**ํ•œ๋‹ค. ์ ˆ๋Œ€์‹์ด๋ผ **๋ฉฑ๋“ฑ**์ด๊ณ , ์ƒ์ž๊ฐ€ ์ด๋ฏธ ์ด๋™ํ•œ ๊ฒฝ์šฐ์—๋„ ์ด์ค‘ ์ ์šฉ๋˜์ง€ ์•Š๋Š”๋‹ค.
97
+ *
98
+ * ๐Ÿ”ด **๋ฉค๋ฒ„์‹ญ์€ ใ€Œ๋ฐฐ์น˜ ์ „ ๊ธฐํ•˜ ํฌํ•จใ€์œผ๋กœ ๋Œ€์‹ ํ•œ๋‹ค** โ€” ์‚ฌ๋žŒ ๋ฌธ์„œ์˜ ๊ทธ๋ฃน์€ **100% ๊ฐ€ `bwl:members` ๋ฏธ์„ ์–ธ**
99
+ * ์ด๋ผ(B-83 N20 ยท 36/36) 5.7 ์˜ `if (!members.length) continue` ๊ฒŒ์ดํŠธ์—์„œ ํ†ต์งธ๋กœ ๋น ์ง„๋‹ค. โš  **`members` ๋ฅผ
100
+ * ์„ ์–ธํ•ด ์ฃผ๋Š” ๊ฒƒ์€ ์ˆ˜๋‹จ์ด ์•„๋‹ˆ๋‹ค** โ€” ์„ ์–ธํ•˜๋Š” ์ˆœ๊ฐ„ ์‚ฌ๋žŒ์ด ๊ทธ๋ฆฐ ์ƒ์ž๊ฐ€ ๋ฉค๋ฒ„ bbox ๋กœ **๊ต์ฒด**๋œ๋‹ค.
101
+ *
102
+ * โš  **`repairIntroducedPoolOverlaps` ๋’ค์—ฌ์•ผ ํ•œ๋‹ค** โ€” ํ‚ค์šธ ์ž๋ฆฌ๋ฅผ ๊ทธ ํŒจ์Šค๊ฐ€ ๋งŒ๋“ ๋‹ค(ํ‘œ๋ณธ 68 ์‹ค์ธก: ์ž๋ฆฌ ์—†์ด
103
+ * +368 ํ‚ค์šฐ๋ฉด ์ด์›ƒ ์ƒ์ž ์ขŒ๋‹จ์„ **348px ์นจ๋ฒ”**ํ•œ๋‹ค). ์‚ฌ๋žŒ๋„ **๋‘˜ ๋‹ค** ํ–ˆ๋‹ค(์ƒ์ž +348 ยท ์ด์›ƒ ์นด๋“œ +340).
104
+ */
105
+ export declare function repairIntroducedGroupGrowth(services: Pick<ResolverServices, 'elementRegistry' | 'modeling'>, beforeKeys: ReadonlySet<string>, sceneBefore: GeometryScene): void;