@g1cloud/bpmn-modeler-next 5.0.0-alpha.91 โ†’ 5.0.0-alpha.93

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.
@@ -175,6 +175,30 @@ export type GeometryFinding =
175
175
  edge: string;
176
176
  line: string;
177
177
  }
178
+ /**
179
+ * ๐Ÿ”ด **๊ฐ„์„  ๋ผ๋ฒจ์ด ํ๋ฆ„ ๋…ธ๋“œ ๋„ํ˜• ์œ„์— ์•‰์•˜๋‹ค**(B-119 ยท ํ‘œ๋ณธ 85) โ€” ๊ธ€์ž๊ฐ€ ๋„ํ˜• ํ…Œ๋‘๋ฆฌยท๋‚ด์šฉ๊ณผ ํฌ๊ฐœ์ง„๋‹ค.
180
+ * ์žฌ๋ฐฐ์„ ํ•œ ๊ฐˆ๋ž˜์˜ ใ€Œๅฏใ€ ๋ผ๋ฒจ์ด ์ƒˆ ๋…ธ๋“œ์— 8px ๊ฒน์ณค๋Š”๋ฐ **ํŒ์ • kind ๊ฐ€ ์—†์–ด ๋ฐฐ์น˜ findings 0** ์ด์—ˆ๊ณ  ์‚ฌ๋žŒ์ด
181
+ * base ์ž๋ฆฌ๋กœ ๋˜๋Œ๋ ธ๋‹ค(*"๋ถ„๊ธฐ๊ด€๋ จ ์ฝ”๋ฉ˜ํŠธ๊ฐ€ ์š”์†Œ์™€ ๊ฒน์นœ๊ฑธ ์ˆ˜์ •ํ–ˆ์–ด"*). `label-over-line` ์€ ์„ ยท๊ฒฝ๊ณ„๋งŒ ๋ณธ๋‹ค.
182
+ *
183
+ * ๐Ÿ”ด **๊ด€์ธก ์ „์šฉ์ด๋‹ค**(๋ชจ๋“ˆ ๋จธ๋ฆฌ ์ฃผ์„) โ€” ์‚ฌ๋žŒ ํŒ์ •์ด **๊ฐˆ๋ ธ๋‹ค**: ๊ฐ™์€ ํ˜•์ƒ(์žฌ๋ฐฐ์„  ๋ผ๋ฒจ ร— ์ƒˆ ๋…ธ๋“œ 10px)์„
184
+ * ํ‘œ๋ณธ 84 ์—์„œ๋Š” ์‚ฌ๋žŒ์ด **๊ทธ๋Œ€๋กœ ๋’€๋‹ค**. ๊ฒŒ์ดํŠธ์— ๋„ฃ์œผ๋ฉด ๋ชจ๋“  ๋ณด์ • ๋‹จ๊ณ„์˜ ์ฑ„ํƒ ์กฐ๊ฑด์ด ๋ฐ”๋€๋‹ค(๋˜๋Œ๋ฆฌ๊ธฐ๋ฅผ
185
+ * ์ ์šฉํ•œ ๋’ค์—๋„ ํ•ฉ์„ฑ ์žฌ๊ณ  4,960 ์ค‘ **327 ํšŒ์ฐจ(6.6%)** ์˜ ๋ฐฐ์น˜ ์‘๋‹ต์— ์ƒˆ๋กœ ์‹ค๋ฆฐ๋‹ค โ€” ๋„ฃ๊ธฐ ์ „์— ๊ฒŒ์ดํŠธ๋งˆ๋‹ค ๋ฐ˜์‚ฌ์‹ค์ด ์„ ๊ฒฐ).
186
+ *
187
+ * โš  **์‹คํ˜•์ƒ์œผ๋กœ ์žฐ๋‹ค** โ€” ๊ฒŒ์ดํŠธ์›จ์ด bbox ๋ชจ์„œ๋ฆฌ๋Š” ๋น„์–ด ์žˆ์–ด bbox ๋กœ ์žฌ๋ฉด ๊ฒŒ์ดํŠธ์›จ์ด ์˜†์— ๋ถ™์ธ ์‚ฌ๋žŒ
188
+ * ๋ผ๋ฒจ(๊นŠ์ด 1~2)์„ ์ค๋Š”๋‹ค(์‚ฌ๋žŒ ์‹ค๋ฌด 23์ข…: bbox 13 โ†” ์‹คํ˜•์ƒ 9). ์ด๋ฒคํŠธ = ์› ยท ๊ฒŒ์ดํŠธ์›จ์ด = ๋งˆ๋ฆ„๋ชจ ยท
189
+ * ๊ทธ ๋ฐ– = ์‚ฌ๊ฐ. โš  **์‚ฌ๋žŒ๋„ ๊ฒน์ณ ๋‘”๋‹ค** โ€” ์‹ค๋ฌด sequenceFlow ๋ผ๋ฒจ 176 ์ค‘ ๊นŠ์ด โ‰ฅ3 ์ด **6**(3๋ฌธ์„œ ยท ์ตœ๋Œ€ 27)
190
+ * ์ด๋ผ ๋ฌธ์„œ ์ „์ฒด ํ‘œ๋ฉด์—์„œ๋Š” ๊ทธ๊ฒƒ์ด ์žกํžŒ๋‹ค(๋ฐฐ์น˜ ํ‘œ๋ฉด์€ ์ „ํ›„ diff ๋กœ ๋บ€๋‹ค).
191
+ *
192
+ * โš  **sequenceFlow ๋ผ๋ฒจ๋งŒ ๋ณธ๋‹ค** โ€” ๋ฉ”์‹œ์ง€ ๋ผ๋ฒจ์€ ์‚ฌ๋žŒ ๊ธฐ์ €๊ฐ€ ์—†๊ณ (์‹ค๋ฌด 0/5) ๋„๊ตฌ ๊ณ„๋ณด ์ €์žฅ๋ณธ์—์„œ๋Š” ์‚ฌ๋žŒ์ด
193
+ * **21/813 ์„ ๋‚จ๊ฒจ ๋‘์—ˆ๋‹ค**(๊นŠ์ด โ‰ฅ3 ยท 16๋ฌธ์„œ โ€” sequenceFlow ๋Š” 3/951) โ€” ๋„ฃ์œผ๋ฉด ํŒ์ •ํ•  ๊ทผ๊ฑฐ ์—†์ด ํŒจ๋„๋งŒ ๋Š”๋‹ค. ํ๋ฆ„ ๋…ธ๋“œ๋งŒ ๋ณธ๋‹ค
194
+ * (์ฃผ์„ยท๋ฐ์ดํ„ฐ๋Š” ํ๋ฆ„ ๋…ธ๋“œ๊ฐ€ ์•„๋‹ˆ๋‹ค). `depth` = ์นจํˆฌ ๊นŠ์ด px(์‚ฌ๊ฐ์€ ๊ฒน์นœ ํญยท๋†’์ด ์ค‘ ์ž‘์€ ์ชฝ).
195
+ */
196
+ | {
197
+ kind: 'label-over-shape';
198
+ edge: string;
199
+ shape: string;
200
+ depth: number;
201
+ }
178
202
  /**
179
203
  * ํ…์ŠคํŠธ ์ฃผ์„ ์ƒ์ž๊ฐ€ ๋‹ค๋ฅธ ์š”์†Œ์˜ **์™ธ๋ถ€ ๋ผ๋ฒจ**(๊ฒŒ์ดํŠธ์›จ์ดยท์ด๋ฒคํŠธ ์ด๋ฆ„, ๊ฐ„์„  ๋ผ๋ฒจ) ์œ„์— ๋†“์˜€๋‹ค โ€” ๋‘ ํ…์ŠคํŠธ๊ฐ€
180
204
  * ๊ฒน์ณ ์–ด๋А ์ชฝ๋„ ์ฝ์„ ์ˆ˜ ์—†๋‹ค(์—ด์—ฌ๋Ÿ ๋ฒˆ์งธ ํ‘œ๋ณธ: `top` ์ฃผ์„์ด `์ฒ˜๋ฆฌ ๊ฒฐ๊ณผ?` ๊ฒŒ์ดํŠธ์›จ์ด์˜ ์ด๋ฆ„ ๋ผ๋ฒจ์„ ๋ฎ์—ˆ๊ณ 
@@ -636,6 +660,23 @@ export declare function labelRectsOf(scene: GeometryScene): Array<{
636
660
  owner: string;
637
661
  rect: GeometryLabel;
638
662
  }>;
663
+ /**
664
+ * ๊ฐ„์„  ๋ผ๋ฒจ์ด ๋„ํ˜• ์œ„์— ใ€Œ์•‰์•˜๋‹คใ€๊ณ  ๋ณผ ์ตœ์†Œ ์นจํˆฌ ๊นŠ์ด(px, ์ด์ƒ) โ€” B-119. ์‚ฌ๋žŒ ์‹ค๋ฌด 23์ข…์˜ ์‹คํ˜•์ƒ ๊นŠ์ด๊ฐ€
665
+ * **1ยท1ยท2** ์™€ **4ยท14ยท14ยท14ยท27ยท27** ๋กœ ๊ฐˆ๋ ธ๋‹ค โ€” ์•ž ๋ฌด๋ฆฌ๋Š” ๊ฒŒ์ดํŠธ์›จ์ด ์˜†์— ๋ถ™์ธ ๋ผ๋ฒจ์ด ๋งˆ๋ฆ„๋ชจ ๋์„ ์Šค์นœ ๊ฒƒ์ด๋‹ค.
666
+ * ํ‘œ๋ณธ 85(8px ยท ์‚ฌ๋žŒ์ด ๊ณ ์ณค๋‹ค)ยท84(10px ยท ์‚ฌ๋žŒ์ด ๋’€๋‹ค)๋Š” ๋‘˜ ๋‹ค ๋’ค ๋ฌด๋ฆฌ๋‹ค.
667
+ */
668
+ export declare const LABEL_SHAPE_MIN_DEPTH = 3;
669
+ /**
670
+ * ๋ผ๋ฒจ ์ƒ์ž๊ฐ€ ๋„ํ˜• **์‹คํ˜•์ƒ**์— ๋“ค์–ด๊ฐ„ ๊นŠ์ด(px) โ€” 0 = ์•ˆ ๋‹ฟ๋Š”๋‹ค(B-119). ์ด๋ฒคํŠธ = ์› ยท ๊ฒŒ์ดํŠธ์›จ์ด = ๋งˆ๋ฆ„๋ชจ ยท
671
+ * ๊ทธ ๋ฐ– = ์‚ฌ๊ฐ(๊ฒน์นœ ํญยท๋†’์ด ์ค‘ ์ž‘์€ ์ชฝ). ์›ยท๋งˆ๋ฆ„๋ชจ๋Š” ๋ผ๋ฒจ ์ƒ์ž์—์„œ ์ค‘์‹ฌ์— ๊ฐ€์žฅ ๊ฐ€๊นŒ์šด ์ ์ด ๊ฒฝ๊ณ„ ์•ˆ์ชฝ์œผ๋กœ
672
+ * ๋“ค์–ด๊ฐ„ ๊ฑฐ๋ฆฌ๋กœ ๊ทผ์‚ฌํ•œ๋‹ค(N20 ์Šคํฌ๋ฆฝํŠธ `n20-label-shape.py` ์™€ ๊ฐ™์€ ๊ธฐํ•˜ โ€” ์ž„๊ณ„๊ฐ€ ๊ทธ ์ธก์ •์—์„œ ๋‚˜์™”๋‹ค).
673
+ */
674
+ export declare function labelShapeDepth(label: GeometryLabel, shape: GeometryShape): number;
675
+ /** ๋ผ๋ฒจ ์ƒ์ž๊ฐ€ ์•‰์€ ํ๋ฆ„ ๋…ธ๋“œ(๊นŠ์ด โ‰ฅ {@link LABEL_SHAPE_MIN_DEPTH})์™€ ๊ทธ ๊นŠ์ด โ€” id ์ˆœ. ํŒ์ •๊ณผ B-119 ๋˜๋Œ๋ฆฌ๊ธฐ๊ฐ€ ๊ฐ™์€ ์ˆ ์–ด๋ฅผ ์“ด๋‹ค. */
676
+ export declare function shapesUnderLabel(label: GeometryLabel, scene: GeometryScene): Array<{
677
+ shape: string;
678
+ depth: number;
679
+ }>;
639
680
  /**
640
681
  * ๊ธฐํ•˜ ํŒ์ • (์ˆœ์ˆ˜). ๊ฒฐ๊ณผ๋Š” **๊ฒฐ์ •๋ก ์  ์ˆœ์„œ**๋กœ ์ •๋ ฌํ•ด ๋ฐ˜ํ™˜ํ•œ๋‹ค โ€” ์ „ํ›„ diffยท๊ณจ๋“  ๋น„๊ตยทํšŒ๊ท€
641
682
  * ๊ณ ์ •์ด ์ „๋ถ€ ์ˆœ์„œ์— ์˜์กดํ•œ๋‹ค.
@@ -645,7 +686,7 @@ export declare function labelRectsOf(scene: GeometryScene): Array<{
645
686
  */
646
687
  export interface AuditGeometryOptions {
647
688
  /**
648
- * **๊ด€์ธก ์ „์šฉ kind** ๊นŒ์ง€ ๋‚ธ๋‹ค(ํ˜„์žฌ = `edge-along-group-boundary`) โ€” ํŒ์ • ํ‘œ๋ฉด(๋ฐฐ์น˜ ์‘๋‹ต ยท ๋ฌธ์„œ ์ „์ฒด ยท
689
+ * **๊ด€์ธก ์ „์šฉ kind** ๊นŒ์ง€ ๋‚ธ๋‹ค(ํ˜„์žฌ = `edge-along-group-boundary` ยท `label-over-shape`) โ€” ํŒ์ • ํ‘œ๋ฉด(๋ฐฐ์น˜ ์‘๋‹ต ยท ๋ฌธ์„œ ์ „์ฒด ยท
649
690
  * GUI ํŒจ๋„)๋งŒ ์ผ ๋‹ค. resolver ์ฑ„ํƒ ๊ฒŒ์ดํŠธ๋Š” ์ผœ์ง€ ์•Š๋Š”๋‹ค(๋ชจ๋“ˆ ๋จธ๋ฆฌ ์ฃผ์„ โ€” ์ผœ๋ฉด ๊ฒŒ์ดํŠธ ์ œ์•ฝ์ด ๋œ๋‹ค).
650
691
  */
651
692
  includeObservationOnly?: boolean;
@@ -201,6 +201,19 @@ export declare const LABEL_LINE_GAP = 8;
201
201
  * (ํŒ์ •๊ธฐ๊ฐ€ ๋ณด๊ณ ํ•œ๋‹ค). ๋ฐ”๊ฟ€ ๊ฒƒ์ด ์—†์œผ๋ฉด `null`.
202
202
  */
203
203
  export declare function planLabelLineClearance(edge: GeometryEdge, scene: GeometryScene): GeometryLabel | null;
204
+ /** B-99ยทB-119 ๋ผ๋ฒจ ์ถ”์ข…์˜ ๋ฐฐ์น˜ ์‹œ์ž‘ ๊ธฐ์ค€์„  โ€” ์ ˆ๋Œ€ ์ขŒํ‘œ์™€ ๋์  id(์žฌ๋ฐฐ์„  ํŒ๋ณ„). */
205
+ export interface EdgeLabelSnapshot {
206
+ wps: ReadonlyArray<{
207
+ x: number;
208
+ y: number;
209
+ }>;
210
+ label: {
211
+ x: number;
212
+ y: number;
213
+ };
214
+ source: string | undefined;
215
+ target: string | undefined;
216
+ }
204
217
  /**
205
218
  * โ”€โ”€ B-99. **๋ฐฐ์น˜๊ฐ€ ์˜ฎ๊ธด ์„ ์„ ์„ ์žฌ ๋ผ๋ฒจ์ด ๋”ฐ๋ผ๊ฐ„๋‹ค** โ”€โ”€
206
219
  *
@@ -234,17 +247,22 @@ export declare function planLabelLineClearance(edge: GeometryEdge, scene: Geomet
234
247
  * ํŒ์ • ๊ธฐ์ค€์œผ๋กœ ์“ด๋‹ค(๋ˆ„์ ).
235
248
  *
236
249
  * ๋ผ๋ฒจ ํ•˜๋‚˜์”ฉ ์žฌ๊ณ  ์ƒˆ ํ‚ค๊ฐ€ ์ƒ๊ธฐ๋ฉด **๊ทธ ๋ผ๋ฒจ๋งŒ** ๋‘๊ณ  ๊ฐ„๋‹ค(๋ถ€๋ถ„ ํ•ด์†Œ ํ—ˆ์šฉ โ€” ๐Ÿ” B-61).
250
+ *
251
+ * โ”€โ”€ B-119. **์žฌ๋ฐฐ์„ ๋œ ๊ฐ„์„ ์˜ ์„ ์žฌ ๋ผ๋ฒจ์ด ๋„ํ˜• ์œ„์— ์•‰์œผ๋ฉด base ์ž๋ฆฌ๋กœ ๋˜๋Œ๋ฆฐ๋‹ค** โ”€โ”€
252
+ *
253
+ * ๐Ÿ”ด **๊ทผ์ธ์€ bpmn-js ๋ผ๋ฒจ ๋™์ž‘์˜ ๋‘ ๋‹จ๊ณ„ ํ•ฉ์„ฑ์ด๋‹ค**(N22 ๋‹จ๊ณ„ ๋กœ๊ทธ ยท ํ‘œ๋ณธ 85). โ‘  ์‚ฝ์ž… ๋ฐ€๊ธฐ(`createSpace`)๊ฐ€ ์˜›
254
+ * ๋์ ์„ ๋ฐ€์–ด ์„ ์ด 27 โ†’ 180px ๋กœ **๋Š˜๋ฉด** `LabelBehavior` ๊ฐ€ ๋ผ๋ฒจ์„ **๋น„๋ก€ ์œ„์น˜**(51.85%)๋กœ ์˜ฎ๊ธด๋‹ค(+79)
255
+ * โ‘ก ์žฌ๋ฐฐ์„ (`modeling.reconnect`)์˜ ์ค‘๊ฐ„ ๊ฒฝ๋กœ๋Š” **๋‘ ์ค‘์‹ฌ์ **(830 โ†’ 945)์ธ๋ฐ ๋ผ๋ฒจ์ด ๊ทธ ๋ ๋ฐ”๊นฅ์ด๋ผ ใ€Œ๋์ ์— ๋ถ™์€
256
+ * ๋ผ๋ฒจใ€๋กœ ์ฝํ˜€ layout ๋’ค ์ƒˆ ๋์ ์œผ๋กœ ๋Œ๋ ค๊ฐ„๋‹ค(โˆ’50) โ‡’ ์ƒˆ ๋…ธ๋“œ ์œ„ 8px. ์žฌ๋ฐฐ์„ ๋œ ๊ฐ„์„ ์€ ํ‰ํ–‰์ด๋™์ด ์•„๋‹ˆ๋ผ
257
+ * ์œ„ ์ถ”์ข…์˜ ๋Œ€์ƒ์ด ์•„๋‹ˆ์—ˆ๊ณ , ๋ณด์ • ๋‹จ๊ณ„๋“ค์€ ์„ ์žฌ ๋ผ๋ฒจ์„ ์ œ์™ธํ•œ๋‹ค(์•ˆ์ „ ์„ฑ์งˆ 2) โ€” ๊ทธ๋ž˜์„œ ์•„๋ฌด๋„ ์•ˆ ๋ดค๋‹ค.
258
+ *
259
+ * **๋˜๋Œ๋ฆฌ๋Š” ์ž๋ฆฌ๋Š” base ์ ˆ๋Œ€ ์ขŒํ‘œ๋‹ค** โ€” ์‚ฌ๋žŒ์ด ํ•œ ๊ฒƒ์ด ์ •ํ™•ํžˆ ๊ทธ๊ฒƒ์ด๋‹ค(1px ์ฐจ). ๐Ÿ”ด **๊ฒน์น  ๋•Œ๋งŒ** ๋˜๋Œ๋ฆฐ๋‹ค
260
+ * (์‚ฌ์šฉ์ž ๊ฒฐ์ • 2026-09-28): ๊ฒน์นจ ์—†์ด ํ‘œ๋ฅ˜๋งŒ ํ•œ ๋ผ๋ฒจ(ํ•ฉ์„ฑ ์žฌ๊ณ  80๊ฑด ยท ์ค‘์•™ 21px)์€ ๊ฒฐํ•จ ์‹ ํ˜ธ๊ฐ€ ์—†์–ด ๋‘๊ณ  ๊ฐ„๋‹ค.
261
+ * โš  **base ์ž๋ฆฌ๊ฐ€ ๋ง‰ํ˜”์œผ๋ฉด ์†๋Œ€์ง€ ์•Š๋Š”๋‹ค** โ€” ์ƒˆ ๋…ธ๋“œ๊ฐ€ ๊ทธ ์ž๋ฆฌ์— ์„  ํ˜•์ƒ(ํ•ฉ์„ฑ 238๊ฑด ยท ํ‘œ๋ณธ 84 ๋Š” ์‚ฌ๋žŒ์ด ๋’€๋‹ค)์€
262
+ * ์ด ์ˆ˜๋‹จ์˜ ๋ชซ์ด ์•„๋‹ˆ๋‹ค(์ฐฉ์ง€ ์ถ• = B-119 ์ž”์กด). โš  **base ์ž๋ฆฌ๊ฐ€ ์ƒˆ ์„ ์—์„œ ๋ฉ€๋ฉด ์†๋Œ€์ง€ ์•Š๋Š”๋‹ค** โ€” ์˜› ๊ฒฝ๋กœ ์œ„์˜
263
+ * ์ž๋ฆฌ๋ผ ์ƒˆ ์„ ์˜ ๋ผ๋ฒจ๋กœ ์•ˆ ์ฝํžŒ๋‹ค(์ž„๊ณ„ = B-99 N20 sequenceFlow ์ค‘์‹ฌ๊ฑฐ๋ฆฌ p95). ์ฑ„ํƒ ์กฐ๊ฑด์€ ์œ„์™€ ๊ฐ™์€ ํ‚ค ์ง‘ํ•ฉ.
237
264
  */
238
- export declare function followMovedEdgeLabels(services: Pick<ResolverServices, 'elementRegistry' | 'modeling'>, before: ReadonlyMap<string, {
239
- wps: ReadonlyArray<{
240
- x: number;
241
- y: number;
242
- }>;
243
- label: {
244
- x: number;
245
- y: number;
246
- };
247
- }>): void;
265
+ export declare function followMovedEdgeLabels(services: Pick<ResolverServices, 'elementRegistry' | 'modeling'>, before: ReadonlyMap<string, EdgeLabelSnapshot>): void;
248
266
  /** ์ด ๋ฐฐ์น˜๊ฐ€ **์ƒˆ๋กœ ๋งŒ๋“ ** ๊ฐ„์„ ์˜ ๋ผ๋ฒจ์„ ์„ ยท๊ฒฝ๊ณ„์„ ์—์„œ ๋—€๋‹ค(๋งจ ๋งˆ์ง€๋ง‰ โ€” ๋ผ๋ฒจ ๊ท€์† ๋ณด์ • ๋’ค). ์„ ์žฌ ๋ผ๋ฒจ์€ ๋ถˆ๊ฐ€์นจ. */
249
267
  export declare function repairIntroducedLabelLines(services: Pick<ResolverServices, 'elementRegistry' | 'modeling'>, beforeEdgeIds: ReadonlySet<string>): void;
250
268
  /**