@speclynx/apidom-ns-openapi-2 4.0.4 → 4.0.5

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
@@ -3,6 +3,10 @@
3
3
  All notable changes to this project will be documented in this file.
4
4
  See [Conventional Commits](https://conventionalcommits.org) for commit guidelines.
5
5
 
6
+ ## [4.0.5](https://github.com/speclynx/apidom/compare/v4.0.4...v4.0.5) (2026-03-13)
7
+
8
+ **Note:** Version bump only for package @speclynx/apidom-ns-openapi-2
9
+
6
10
  ## [4.0.4](https://github.com/speclynx/apidom/compare/v4.0.3...v4.0.4) (2026-03-12)
7
11
 
8
12
  ### Bug Fixes
@@ -28576,9 +28576,9 @@ const mergeVisitors = (visitors, options = {}) => {
28576
28576
  }
28577
28577
 
28578
28578
  // Handle path-based control flow
28579
+ // Note: no break here — other merged visitors must still process this node
28579
28580
  if (proxyPath.shouldStop) {
28580
28581
  skipping[i] = breakSymbol;
28581
- break;
28582
28582
  }
28583
28583
  if (proxyPath.shouldSkip) {
28584
28584
  skipping[i] = currentNode;
@@ -28609,6 +28609,11 @@ const mergeVisitors = (visitors, options = {}) => {
28609
28609
  }
28610
28610
  }
28611
28611
  }
28612
+
28613
+ // stop traversal only when all visitors have stopped
28614
+ if (skipping.every(s => s === breakSymbol)) {
28615
+ path.stop();
28616
+ }
28612
28617
  if (hasChanged) {
28613
28618
  path.replaceWith(currentNode);
28614
28619
  return currentNode;
@@ -28634,9 +28639,9 @@ const mergeVisitors = (visitors, options = {}) => {
28634
28639
  }
28635
28640
 
28636
28641
  // Handle path-based control flow
28642
+ // Note: no break here — other merged visitors must still process this node
28637
28643
  if (proxyPath.shouldStop) {
28638
28644
  skipping[i] = breakSymbol;
28639
- break;
28640
28645
  }
28641
28646
  if (proxyPath.removed) {
28642
28647
  path.remove();
@@ -28656,6 +28661,11 @@ const mergeVisitors = (visitors, options = {}) => {
28656
28661
  skipping[i] = internalSkipSymbol;
28657
28662
  }
28658
28663
  }
28664
+
28665
+ // stop traversal only when all visitors have stopped
28666
+ if (skipping.every(s => s === breakSymbol)) {
28667
+ path.stop();
28668
+ }
28659
28669
  return undefined;
28660
28670
  }
28661
28671
  };
@@ -28684,9 +28694,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
28684
28694
  if (typeof visitFn === 'function') {
28685
28695
  const proxyPath = createPathProxy(path, currentNode);
28686
28696
  const result = await visitFn.call(visitors[i], proxyPath);
28697
+
28698
+ // Handle path-based control flow
28699
+ // Note: no break here — other merged visitors must still process this node
28687
28700
  if (proxyPath.shouldStop) {
28688
28701
  skipping[i] = breakSymbol;
28689
- break;
28690
28702
  }
28691
28703
  if (proxyPath.shouldSkip) {
28692
28704
  skipping[i] = currentNode;
@@ -28716,6 +28728,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
28716
28728
  }
28717
28729
  }
28718
28730
  }
28731
+
28732
+ // stop traversal only when all visitors have stopped
28733
+ if (skipping.every(s => s === breakSymbol)) {
28734
+ path.stop();
28735
+ }
28719
28736
  if (hasChanged) {
28720
28737
  path.replaceWith(currentNode);
28721
28738
  return currentNode;
@@ -28730,9 +28747,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
28730
28747
  if (typeof visitFn === 'function') {
28731
28748
  const proxyPath = createPathProxy(path, currentNode);
28732
28749
  const result = await visitFn.call(visitors[i], proxyPath);
28750
+
28751
+ // Handle path-based control flow
28752
+ // Note: no break here — other merged visitors must still process this node
28733
28753
  if (proxyPath.shouldStop) {
28734
28754
  skipping[i] = breakSymbol;
28735
- break;
28736
28755
  }
28737
28756
  if (proxyPath.removed) {
28738
28757
  path.remove();
@@ -28751,6 +28770,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
28751
28770
  skipping[i] = internalSkipSymbol;
28752
28771
  }
28753
28772
  }
28773
+
28774
+ // stop traversal only when all visitors have stopped
28775
+ if (skipping.every(s => s === breakSymbol)) {
28776
+ path.stop();
28777
+ }
28754
28778
  return undefined;
28755
28779
  }
28756
28780
  };