ea 0.6.26 → 0.6.27

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.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 523062f8a2bc8628a3c5b35aa5a074057307e4405b1d87ebf4150e471e592e29
4
- data.tar.gz: 5ea75aecf1ed9a73b9a387e424073e1e7cc83e0161d9a2ab4db2c270136eea33
3
+ metadata.gz: 87b351667d7dc67e44be0352d005c0c06355be968b18dcf359ce7a3cf6a68e4f
4
+ data.tar.gz: 3a0f0868f7d7365ae17e3325fae1de7298d2683e61e7a8ca4be1febd4e6126bc
5
5
  SHA512:
6
- metadata.gz: f1e366645ba375c9fd3701e97d7da847753bfa2719d52887f9df5b563f352b8b7d0172b3396967ff38529473f49f91d289dc8ea12937defc4ad3dba72f5ac4e7
7
- data.tar.gz: 5389a63e4b5833ae5361e1d058059ecd4346f34de7e4965d4801dba2fc586ed43477729b81fc2a0e0897150d3853a82dbcd5d01f5b8f9caaf6a345e47159a034
6
+ metadata.gz: 6a8eb52cd341a1363ab9436b5c5ec3ba628a0f15c575ca108f3aea4e0d67d496f68ecbb3c2ea6406a96c0023f448bb408bd7616164fa372e9363c3567c685993
7
+ data.tar.gz: e685e2e88013ff81821438148b9fa5d3b38037200466903ec4771fa718b62c838c43a488b8ffffd58f1aec1f497781d67d6f84a2292224f76e4a2ac05f1aeb05
@@ -408,6 +408,22 @@ module Ea
408
408
  [bend[0], target_y]]
409
409
  elsif intermediate.any?
410
410
  points = [source_point, *intermediate, target_point]
411
+ # Generalizations with the parent ABOVE keep their stored
412
+ # interior bends verbatim but re-dock the endpoints onto
413
+ # the box edges AT THE ADJACENT BEND's x (hand-verified:
414
+ # stored (542,975)(541,807)(543,807)(486,757) draws as
415
+ # (541,975)(541,807)(543,807)(543,757) — only the two
416
+ # endpoints move; the stale final x is replaced by the
417
+ # last bend's trunk x).
418
+ if connector.connector_type == "Generalization"
419
+ src_b = bounds_from_rect(source_placement)
420
+ tgt_b = bounds_from_rect(target_placement)
421
+ if tgt_b.y + tgt_b.height <= src_b.y
422
+ points[0] = [points[1][0].clamp(src_b.x, src_b.x + src_b.width), src_b.y]
423
+ points[-1] = [points[-2][0].clamp(tgt_b.x, tgt_b.x + tgt_b.width),
424
+ tgt_b.y + tgt_b.height]
425
+ end
426
+ end
411
427
  elsif source_port || target_port
412
428
  # Exact ports are known — the SX/SY bend heuristics in
413
429
  # sx_sy_ex_ey_waypoints would double-apply the offsets.
data/lib/ea/version.rb CHANGED
@@ -4,5 +4,5 @@ module Ea
4
4
  # Gem release version. Extracted to its own file so the
5
5
  # `gem-release` tool's `gem bump` can find and update it via the
6
6
  # standard `lib/<gem>/version.rb` convention.
7
- VERSION = "0.6.26"
7
+ VERSION = "0.6.27"
8
8
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: ea
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.6.26
4
+ version: 0.6.27
5
5
  platform: ruby
6
6
  authors:
7
7
  - Ribose Inc.