@speclynx/apidom-parser-adapter-arazzo-json-1 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-parser-adapter-arazzo-json-1
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
@@ -33698,9 +33698,9 @@ const mergeVisitors = (visitors, options = {}) => {
33698
33698
  }
33699
33699
 
33700
33700
  // Handle path-based control flow
33701
+ // Note: no break here — other merged visitors must still process this node
33701
33702
  if (proxyPath.shouldStop) {
33702
33703
  skipping[i] = breakSymbol;
33703
- break;
33704
33704
  }
33705
33705
  if (proxyPath.shouldSkip) {
33706
33706
  skipping[i] = currentNode;
@@ -33731,6 +33731,11 @@ const mergeVisitors = (visitors, options = {}) => {
33731
33731
  }
33732
33732
  }
33733
33733
  }
33734
+
33735
+ // stop traversal only when all visitors have stopped
33736
+ if (skipping.every(s => s === breakSymbol)) {
33737
+ path.stop();
33738
+ }
33734
33739
  if (hasChanged) {
33735
33740
  path.replaceWith(currentNode);
33736
33741
  return currentNode;
@@ -33756,9 +33761,9 @@ const mergeVisitors = (visitors, options = {}) => {
33756
33761
  }
33757
33762
 
33758
33763
  // Handle path-based control flow
33764
+ // Note: no break here — other merged visitors must still process this node
33759
33765
  if (proxyPath.shouldStop) {
33760
33766
  skipping[i] = breakSymbol;
33761
- break;
33762
33767
  }
33763
33768
  if (proxyPath.removed) {
33764
33769
  path.remove();
@@ -33778,6 +33783,11 @@ const mergeVisitors = (visitors, options = {}) => {
33778
33783
  skipping[i] = internalSkipSymbol;
33779
33784
  }
33780
33785
  }
33786
+
33787
+ // stop traversal only when all visitors have stopped
33788
+ if (skipping.every(s => s === breakSymbol)) {
33789
+ path.stop();
33790
+ }
33781
33791
  return undefined;
33782
33792
  }
33783
33793
  };
@@ -33806,9 +33816,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
33806
33816
  if (typeof visitFn === 'function') {
33807
33817
  const proxyPath = createPathProxy(path, currentNode);
33808
33818
  const result = await visitFn.call(visitors[i], proxyPath);
33819
+
33820
+ // Handle path-based control flow
33821
+ // Note: no break here — other merged visitors must still process this node
33809
33822
  if (proxyPath.shouldStop) {
33810
33823
  skipping[i] = breakSymbol;
33811
- break;
33812
33824
  }
33813
33825
  if (proxyPath.shouldSkip) {
33814
33826
  skipping[i] = currentNode;
@@ -33838,6 +33850,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
33838
33850
  }
33839
33851
  }
33840
33852
  }
33853
+
33854
+ // stop traversal only when all visitors have stopped
33855
+ if (skipping.every(s => s === breakSymbol)) {
33856
+ path.stop();
33857
+ }
33841
33858
  if (hasChanged) {
33842
33859
  path.replaceWith(currentNode);
33843
33860
  return currentNode;
@@ -33852,9 +33869,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
33852
33869
  if (typeof visitFn === 'function') {
33853
33870
  const proxyPath = createPathProxy(path, currentNode);
33854
33871
  const result = await visitFn.call(visitors[i], proxyPath);
33872
+
33873
+ // Handle path-based control flow
33874
+ // Note: no break here — other merged visitors must still process this node
33855
33875
  if (proxyPath.shouldStop) {
33856
33876
  skipping[i] = breakSymbol;
33857
- break;
33858
33877
  }
33859
33878
  if (proxyPath.removed) {
33860
33879
  path.remove();
@@ -33873,6 +33892,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
33873
33892
  skipping[i] = internalSkipSymbol;
33874
33893
  }
33875
33894
  }
33895
+
33896
+ // stop traversal only when all visitors have stopped
33897
+ if (skipping.every(s => s === breakSymbol)) {
33898
+ path.stop();
33899
+ }
33876
33900
  return undefined;
33877
33901
  }
33878
33902
  };