@deeeed/metamask-harness 0.45.1 → 0.46.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 CHANGED
@@ -2,6 +2,17 @@
2
2
 
3
3
  ## Unreleased
4
4
 
5
+ ## 0.46.0 - 2026-09-04
6
+
7
+ ### Added
8
+
9
+ - Add parameterized Mobile Pro TWAP, Chase, and Scale recipes plus an offline advanced-orders QA walkthrough. Advanced-order recipes keep the current account when omitted, use stated provider/network/market defaults, default to testnet, and allow explicit mainnet selection.
10
+
11
+ ### Fixed
12
+
13
+ - Make Mobile Perps start-state navigation keep an already-matching market, keep advanced-order controls reachable, select a market visibly from Perps Home, and clean matching active TWAP plus active or backgrounded Chase strategies with ordinary orders and positions; teardown now defaults to a verified Hyperliquid testnet environment, honors its declared timeout while canceling strategies, and TWAP placement defaults above the provider minimum.
14
+ - Position active TWAP and Chase evidence inside the viewport before capture.
15
+
5
16
  ## 0.45.1 - 2026-09-01
6
17
 
7
18
  ### Fixed
@@ -645,7 +645,10 @@ const COMMANDS = {
645
645
  if (walkSiblings === undefined) walkSiblings = true;
646
646
  var current = fiber;
647
647
  while (current) {
648
- var sn = current.stateNode;
648
+ var rawStateNode = current.stateNode;
649
+ var sn = rawStateNode && rawStateNode.canonical && rawStateNode.canonical.publicInstance
650
+ ? rawStateNode.canonical.publicInstance
651
+ : rawStateNode;
649
652
  if (sn) {
650
653
  if (typeof sn.scrollTo === 'function') { sn.scrollTo({ y: opts.offset, animated: opts.animated }); return true; }
651
654
  if (typeof sn.scrollToOffset === 'function') { sn.scrollToOffset({ offset: opts.offset, animated: opts.animated }); return true; }
@@ -657,7 +660,10 @@ const COMMANDS = {
657
660
  }
658
661
  function findMeasurable(fiber) {
659
662
  if (!fiber) return null;
660
- var sn = fiber.stateNode;
663
+ var rawStateNode = fiber.stateNode;
664
+ var sn = rawStateNode && rawStateNode.canonical && rawStateNode.canonical.publicInstance
665
+ ? rawStateNode.canonical.publicInstance
666
+ : rawStateNode;
661
667
  if (sn && typeof sn.measureLayout === 'function') return sn;
662
668
  return findMeasurable(fiber.child);
663
669
  }
@@ -666,7 +672,10 @@ const COMMANDS = {
666
672
  var target = opts.intoView ? findMeasurable(anchor) : null;
667
673
  var current = anchor ? anchor.return : null;
668
674
  while (current) {
669
- var sn = current.stateNode;
675
+ var rawStateNode = current.stateNode;
676
+ var sn = rawStateNode && rawStateNode.canonical && rawStateNode.canonical.publicInstance
677
+ ? rawStateNode.canonical.publicInstance
678
+ : rawStateNode;
670
679
  var currentProps = current.memoizedProps;
671
680
  if (sn) {
672
681
  if (typeof sn.scrollTo === 'function' && !(currentProps && currentProps.horizontal === true)) {