@speclynx/apidom-reference 4.0.4 → 4.1.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,14 @@
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.1.0](https://github.com/speclynx/apidom/compare/v4.0.5...v4.1.0) (2026-03-16)
7
+
8
+ **Note:** Version bump only for package @speclynx/apidom-reference
9
+
10
+ ## [4.0.5](https://github.com/speclynx/apidom/compare/v4.0.4...v4.0.5) (2026-03-13)
11
+
12
+ **Note:** Version bump only for package @speclynx/apidom-reference
13
+
6
14
  ## [4.0.4](https://github.com/speclynx/apidom/compare/v4.0.3...v4.0.4) (2026-03-12)
7
15
 
8
16
  ### Bug Fixes
@@ -90734,18 +90734,13 @@ const specification = {
90734
90734
  "use strict";
90735
90735
  __webpack_require__.r(__webpack_exports__);
90736
90736
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
90737
- /* harmony export */ ancestorLineageToJSONPointer: () => (/* binding */ ancestorLineageToJSONPointer),
90738
90737
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
90739
90738
  /* harmony export */ });
90740
90739
  /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(55156);
90741
90740
  /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25162);
90742
- /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(44673);
90743
- /* harmony import */ var _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(61198);
90744
- /* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(76332);
90745
- /* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(68201);
90746
- /* harmony import */ var _namespace_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(57195);
90747
-
90748
-
90741
+ /* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(76332);
90742
+ /* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(68201);
90743
+ /* harmony import */ var _namespace_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(57195);
90749
90744
 
90750
90745
 
90751
90746
 
@@ -90753,46 +90748,21 @@ __webpack_require__.r(__webpack_exports__);
90753
90748
  /**
90754
90749
  * @public
90755
90750
  */
90756
- /**
90757
- * Translates visitor ancestor lineage to a JSON Pointer tokens.
90758
- * Ancestor lineage is constructed of following visitor method arguments:
90759
- *
90760
- * - ancestors
90761
- * - parent
90762
- * - element
90763
- * @public
90764
- */
90765
- const ancestorLineageToJSONPointer = elementPath => {
90766
- const jsonPointerTokens = elementPath.reduce((path, element, index) => {
90767
- if ((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isMemberElement)(element)) {
90768
- const token = String((0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__["default"])(element.key));
90769
- path.push(token);
90770
- } else if ((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isArrayElement)(elementPath[index - 2])) {
90771
- const arrayElement = elementPath[index - 2];
90772
- const token = String(arrayElement.content?.indexOf(element) ?? -1);
90773
- path.push(token);
90774
- }
90775
- return path;
90776
- }, []);
90777
- return (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_3__.compile)(jsonPointerTokens);
90778
- };
90779
-
90780
90751
  /**
90781
90752
  * @public
90782
90753
  */
90783
90754
  const createToolbox = () => {
90784
90755
  const namespace = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__["default"]();
90785
90756
  const predicates = {
90786
- ..._predicates_mjs__WEBPACK_IMPORTED_MODULE_5__,
90787
- ..._predicates_mjs__WEBPACK_IMPORTED_MODULE_4__,
90757
+ ..._predicates_mjs__WEBPACK_IMPORTED_MODULE_3__,
90758
+ ..._predicates_mjs__WEBPACK_IMPORTED_MODULE_2__,
90788
90759
  isStringElement: _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isStringElement,
90789
90760
  isArrayElement: _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isArrayElement,
90790
90761
  isObjectElement: _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isObjectElement
90791
90762
  };
90792
- namespace.use(_namespace_mjs__WEBPACK_IMPORTED_MODULE_6__["default"]);
90763
+ namespace.use(_namespace_mjs__WEBPACK_IMPORTED_MODULE_4__["default"]);
90793
90764
  return {
90794
90765
  predicates,
90795
- ancestorLineageToJSONPointer,
90796
90766
  namespace
90797
90767
  };
90798
90768
  };
@@ -97811,9 +97781,9 @@ const mergeVisitors = (visitors, options = {}) => {
97811
97781
  }
97812
97782
 
97813
97783
  // Handle path-based control flow
97784
+ // Note: no break here — other merged visitors must still process this node
97814
97785
  if (proxyPath.shouldStop) {
97815
97786
  skipping[i] = breakSymbol;
97816
- break;
97817
97787
  }
97818
97788
  if (proxyPath.shouldSkip) {
97819
97789
  skipping[i] = currentNode;
@@ -97844,6 +97814,11 @@ const mergeVisitors = (visitors, options = {}) => {
97844
97814
  }
97845
97815
  }
97846
97816
  }
97817
+
97818
+ // stop traversal only when all visitors have stopped
97819
+ if (skipping.every(s => s === breakSymbol)) {
97820
+ path.stop();
97821
+ }
97847
97822
  if (hasChanged) {
97848
97823
  path.replaceWith(currentNode);
97849
97824
  return currentNode;
@@ -97869,9 +97844,9 @@ const mergeVisitors = (visitors, options = {}) => {
97869
97844
  }
97870
97845
 
97871
97846
  // Handle path-based control flow
97847
+ // Note: no break here — other merged visitors must still process this node
97872
97848
  if (proxyPath.shouldStop) {
97873
97849
  skipping[i] = breakSymbol;
97874
- break;
97875
97850
  }
97876
97851
  if (proxyPath.removed) {
97877
97852
  path.remove();
@@ -97891,6 +97866,11 @@ const mergeVisitors = (visitors, options = {}) => {
97891
97866
  skipping[i] = internalSkipSymbol;
97892
97867
  }
97893
97868
  }
97869
+
97870
+ // stop traversal only when all visitors have stopped
97871
+ if (skipping.every(s => s === breakSymbol)) {
97872
+ path.stop();
97873
+ }
97894
97874
  return undefined;
97895
97875
  }
97896
97876
  };
@@ -97919,9 +97899,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
97919
97899
  if (typeof visitFn === 'function') {
97920
97900
  const proxyPath = createPathProxy(path, currentNode);
97921
97901
  const result = await visitFn.call(visitors[i], proxyPath);
97902
+
97903
+ // Handle path-based control flow
97904
+ // Note: no break here — other merged visitors must still process this node
97922
97905
  if (proxyPath.shouldStop) {
97923
97906
  skipping[i] = breakSymbol;
97924
- break;
97925
97907
  }
97926
97908
  if (proxyPath.shouldSkip) {
97927
97909
  skipping[i] = currentNode;
@@ -97951,6 +97933,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
97951
97933
  }
97952
97934
  }
97953
97935
  }
97936
+
97937
+ // stop traversal only when all visitors have stopped
97938
+ if (skipping.every(s => s === breakSymbol)) {
97939
+ path.stop();
97940
+ }
97954
97941
  if (hasChanged) {
97955
97942
  path.replaceWith(currentNode);
97956
97943
  return currentNode;
@@ -97965,9 +97952,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
97965
97952
  if (typeof visitFn === 'function') {
97966
97953
  const proxyPath = createPathProxy(path, currentNode);
97967
97954
  const result = await visitFn.call(visitors[i], proxyPath);
97955
+
97956
+ // Handle path-based control flow
97957
+ // Note: no break here — other merged visitors must still process this node
97968
97958
  if (proxyPath.shouldStop) {
97969
97959
  skipping[i] = breakSymbol;
97970
- break;
97971
97960
  }
97972
97961
  if (proxyPath.removed) {
97973
97962
  path.remove();
@@ -97986,6 +97975,11 @@ const mergeVisitorsAsync = (visitors, options = {}) => {
97986
97975
  skipping[i] = internalSkipSymbol;
97987
97976
  }
97988
97977
  }
97978
+
97979
+ // stop traversal only when all visitors have stopped
97980
+ if (skipping.every(s => s === breakSymbol)) {
97981
+ path.stop();
97982
+ }
97989
97983
  return undefined;
97990
97984
  }
97991
97985
  };