@cardenelabs/cdl 0.64.1 → 0.65.0
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/CHANGELOG.md +46 -1
- package/dist/index.cjs +16 -12
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +16 -12
- package/dist/index.js.map +1 -1
- package/dist/react.cjs +16 -12
- package/dist/react.cjs.map +1 -1
- package/dist/react.js +16 -12
- package/dist/react.js.map +1 -1
- package/package.json +12 -9
- package/src/layout/edges.ts +38 -12
package/dist/react.cjs
CHANGED
|
@@ -7377,6 +7377,9 @@ var VERTICAL_DETOUR_CORNER = 14;
|
|
|
7377
7377
|
function verticalCornerDir(from, to) {
|
|
7378
7378
|
return to < from ? -1 : 1;
|
|
7379
7379
|
}
|
|
7380
|
+
function cornerRadiusFor(\u534A\u5F84, ...\u8D70\u308A) {
|
|
7381
|
+
return Math.min(\u534A\u5F84, ...\u8D70\u308A.map((v) => Math.abs(v)));
|
|
7382
|
+
}
|
|
7380
7383
|
var VERTICAL_DETOUR_EXIT = 45;
|
|
7381
7384
|
function nearestBoxDistance(anchorX, dir, verticalTop, verticalBottom, boxes) {
|
|
7382
7385
|
let nearest = Infinity;
|
|
@@ -8384,6 +8387,7 @@ function routePath(from, to, fromSide, toSide, obstacles = [], detourSide, _from
|
|
|
8384
8387
|
iter++;
|
|
8385
8388
|
}
|
|
8386
8389
|
}
|
|
8390
|
+
const lCorner = cornerRadiusFor(corner, (B.y - A.y) / 2, midX2 - A.x, B.x - midX2);
|
|
8387
8391
|
let verticalMidY = (A.y + B.y) / 2;
|
|
8388
8392
|
if (labelHalfW > 0) {
|
|
8389
8393
|
const labelBoxH = 36;
|
|
@@ -8421,10 +8425,10 @@ function routePath(from, to, fromSide, toSide, obstacles = [], detourSide, _from
|
|
|
8421
8425
|
}
|
|
8422
8426
|
}
|
|
8423
8427
|
if (edge?.overlay) {
|
|
8424
|
-
const exitEndX = midX2 - xDir *
|
|
8425
|
-
const enterStartX = midX2 + xDir *
|
|
8426
|
-
const midStartY = A.y + yDir *
|
|
8427
|
-
const midEndY = B.y - yDir *
|
|
8428
|
+
const exitEndX = midX2 - xDir * lCorner;
|
|
8429
|
+
const enterStartX = midX2 + xDir * lCorner;
|
|
8430
|
+
const midStartY = A.y + yDir * lCorner;
|
|
8431
|
+
const midEndY = B.y - yDir * lCorner;
|
|
8428
8432
|
const segments = [
|
|
8429
8433
|
{ len: Math.abs(exitEndX - A.x), midXVal: (A.x + exitEndX) / 2, midYVal: A.y },
|
|
8430
8434
|
{ len: Math.abs(midEndY - midStartY), midXVal: midX2, midYVal: (midStartY + midEndY) / 2 },
|
|
@@ -8433,10 +8437,10 @@ function routePath(from, to, fromSide, toSide, obstacles = [], detourSide, _from
|
|
|
8433
8437
|
const longest = segments.reduce((a, b) => b.len > a.len ? b : a);
|
|
8434
8438
|
return {
|
|
8435
8439
|
d: `M ${A.x} ${A.y}
|
|
8436
|
-
L ${midX2 - xDir *
|
|
8437
|
-
Q ${midX2} ${A.y}, ${midX2} ${A.y + yDir *
|
|
8438
|
-
L ${midX2} ${B.y - yDir *
|
|
8439
|
-
Q ${midX2} ${B.y}, ${midX2 + xDir *
|
|
8440
|
+
L ${midX2 - xDir * lCorner} ${A.y}
|
|
8441
|
+
Q ${midX2} ${A.y}, ${midX2} ${A.y + yDir * lCorner}
|
|
8442
|
+
L ${midX2} ${B.y - yDir * lCorner}
|
|
8443
|
+
Q ${midX2} ${B.y}, ${midX2 + xDir * lCorner} ${B.y}
|
|
8440
8444
|
L ${B.x} ${B.y}`,
|
|
8441
8445
|
labelX: longest.midXVal,
|
|
8442
8446
|
labelY: longest.midYVal,
|
|
@@ -8445,10 +8449,10 @@ function routePath(from, to, fromSide, toSide, obstacles = [], detourSide, _from
|
|
|
8445
8449
|
}
|
|
8446
8450
|
return {
|
|
8447
8451
|
d: `M ${A.x} ${A.y}
|
|
8448
|
-
L ${midX2 - xDir *
|
|
8449
|
-
Q ${midX2} ${A.y}, ${midX2} ${A.y + yDir *
|
|
8450
|
-
L ${midX2} ${B.y - yDir *
|
|
8451
|
-
Q ${midX2} ${B.y}, ${midX2 + xDir *
|
|
8452
|
+
L ${midX2 - xDir * lCorner} ${A.y}
|
|
8453
|
+
Q ${midX2} ${A.y}, ${midX2} ${A.y + yDir * lCorner}
|
|
8454
|
+
L ${midX2} ${B.y - yDir * lCorner}
|
|
8455
|
+
Q ${midX2} ${B.y}, ${midX2 + xDir * lCorner} ${B.y}
|
|
8452
8456
|
L ${B.x} ${B.y}`,
|
|
8453
8457
|
labelX: midX2,
|
|
8454
8458
|
labelY: verticalMidY,
|