@speclynx/apidom-parser-adapter-arazzo-json-1 4.7.1 → 4.8.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
|
@@ -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.8.0](https://github.com/speclynx/apidom/compare/v4.7.1...v4.8.0) (2026-04-17)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @speclynx/apidom-parser-adapter-arazzo-json-1
|
|
9
|
+
|
|
6
10
|
## [4.7.1](https://github.com/speclynx/apidom/compare/v4.7.0...v4.7.1) (2026-04-16)
|
|
7
11
|
|
|
8
12
|
**Note:** Version bump only for package @speclynx/apidom-parser-adapter-arazzo-json-1
|
|
@@ -33182,10 +33182,12 @@ function* traverseGenerator(root, visitor, options) {
|
|
|
33182
33182
|
nodePredicate,
|
|
33183
33183
|
nodeCloneFn,
|
|
33184
33184
|
detectCycles,
|
|
33185
|
+
skipVisited,
|
|
33185
33186
|
mutable,
|
|
33186
33187
|
mutationFn
|
|
33187
33188
|
} = options;
|
|
33188
33189
|
const keyMapIsFunction = typeof keyMap === 'function';
|
|
33190
|
+
const visitedNodes = skipVisited ? new WeakSet() : null;
|
|
33189
33191
|
let stack;
|
|
33190
33192
|
let inArray = Array.isArray(root);
|
|
33191
33193
|
let keys = [root];
|
|
@@ -33271,6 +33273,14 @@ function* traverseGenerator(root, visitor, options) {
|
|
|
33271
33273
|
continue;
|
|
33272
33274
|
}
|
|
33273
33275
|
|
|
33276
|
+
// Skip already-visited nodes (handles DAG structures from cloneShallow)
|
|
33277
|
+
if (skipVisited && !isLeaving) {
|
|
33278
|
+
if (visitedNodes.has(node)) {
|
|
33279
|
+
continue;
|
|
33280
|
+
}
|
|
33281
|
+
visitedNodes.add(node);
|
|
33282
|
+
}
|
|
33283
|
+
|
|
33274
33284
|
// Always create Path for the current node (needed for parentPath chain)
|
|
33275
33285
|
currentPath = new _Path_mjs__WEBPACK_IMPORTED_MODULE_2__.Path(node, parent, parentPath, key, inArray);
|
|
33276
33286
|
const visitFn = (0,_visitors_mjs__WEBPACK_IMPORTED_MODULE_3__.getVisitFn)(visitor, nodeTypeGetter(node), isLeaving);
|
|
@@ -33414,6 +33424,7 @@ const traverse = (root, visitor, options = {}) => {
|
|
|
33414
33424
|
nodePredicate: options.nodePredicate ?? _visitors_mjs__WEBPACK_IMPORTED_MODULE_3__.isNode,
|
|
33415
33425
|
nodeCloneFn: options.nodeCloneFn ?? _visitors_mjs__WEBPACK_IMPORTED_MODULE_3__.cloneNode,
|
|
33416
33426
|
detectCycles: options.detectCycles ?? true,
|
|
33427
|
+
skipVisited: options.skipVisited ?? false,
|
|
33417
33428
|
mutable: options.mutable ?? false,
|
|
33418
33429
|
mutationFn: options.mutationFn ?? _visitors_mjs__WEBPACK_IMPORTED_MODULE_3__.mutateNode
|
|
33419
33430
|
};
|
|
@@ -33445,6 +33456,7 @@ const traverseAsync = async (root, visitor, options = {}) => {
|
|
|
33445
33456
|
nodePredicate: options.nodePredicate ?? _visitors_mjs__WEBPACK_IMPORTED_MODULE_3__.isNode,
|
|
33446
33457
|
nodeCloneFn: options.nodeCloneFn ?? _visitors_mjs__WEBPACK_IMPORTED_MODULE_3__.cloneNode,
|
|
33447
33458
|
detectCycles: options.detectCycles ?? true,
|
|
33459
|
+
skipVisited: options.skipVisited ?? false,
|
|
33448
33460
|
mutable: options.mutable ?? false,
|
|
33449
33461
|
mutationFn: options.mutationFn ?? _visitors_mjs__WEBPACK_IMPORTED_MODULE_3__.mutateNode
|
|
33450
33462
|
};
|