@swagger-api/apidom-parser-adapter-openapi-yaml-2 0.98.0 → 0.99.1
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
|
+
## [0.99.1](https://github.com/swagger-api/apidom/compare/v0.99.0...v0.99.1) (2024-04-05)
|
|
7
|
+
|
|
8
|
+
**Note:** Version bump only for package @swagger-api/apidom-parser-adapter-openapi-yaml-2
|
|
9
|
+
|
|
10
|
+
# [0.99.0](https://github.com/swagger-api/apidom/compare/v0.98.3...v0.99.0) (2024-04-03)
|
|
11
|
+
|
|
12
|
+
**Note:** Version bump only for package @swagger-api/apidom-parser-adapter-openapi-yaml-2
|
|
13
|
+
|
|
6
14
|
# [0.98.0](https://github.com/swagger-api/apidom/compare/v0.97.1...v0.98.0) (2024-03-21)
|
|
7
15
|
|
|
8
16
|
**Note:** Version bump only for package @swagger-api/apidom-parser-adapter-openapi-yaml-2
|
|
@@ -17778,6 +17778,7 @@ const cloneNode = node => Object.create(Object.getPrototypeOf(node), Object.getO
|
|
|
17778
17778
|
* If a prior visitor edits a node, no following visitors will see that node.
|
|
17779
17779
|
* `exposeEdits=true` can be used to exoise the edited node from the previous visitors.
|
|
17780
17780
|
*/
|
|
17781
|
+
|
|
17781
17782
|
const mergeAll = (visitors, {
|
|
17782
17783
|
visitFnGetter = getVisitFn,
|
|
17783
17784
|
nodeTypeGetter = getNodeType,
|
|
@@ -17797,6 +17798,14 @@ const mergeAll = (visitors, {
|
|
|
17797
17798
|
const visitFn = visitFnGetter(visitors[i], nodeTypeGetter(currentNode), false);
|
|
17798
17799
|
if (typeof visitFn === 'function') {
|
|
17799
17800
|
const result = visitFn.call(visitors[i], currentNode, ...rest);
|
|
17801
|
+
|
|
17802
|
+
// check if the visitor is async
|
|
17803
|
+
if (typeof (result === null || result === void 0 ? void 0 : result.then) === 'function') {
|
|
17804
|
+
throw new _swagger_api_apidom_error__WEBPACK_IMPORTED_MODULE_0__["default"]('Async visitor not supported in sync mode', {
|
|
17805
|
+
visitor: visitors[i],
|
|
17806
|
+
visitFn
|
|
17807
|
+
});
|
|
17808
|
+
}
|
|
17800
17809
|
if (result === skipVisitingNodeSymbol) {
|
|
17801
17810
|
skipping[i] = node;
|
|
17802
17811
|
} else if (result === breakSymbol) {
|
|
@@ -17822,6 +17831,14 @@ const mergeAll = (visitors, {
|
|
|
17822
17831
|
const visitFn = visitFnGetter(visitors[i], nodeTypeGetter(node), true);
|
|
17823
17832
|
if (typeof visitFn === 'function') {
|
|
17824
17833
|
const result = visitFn.call(visitors[i], node, ...rest);
|
|
17834
|
+
|
|
17835
|
+
// check if the visitor is async
|
|
17836
|
+
if (typeof (result === null || result === void 0 ? void 0 : result.then) === 'function') {
|
|
17837
|
+
throw new _swagger_api_apidom_error__WEBPACK_IMPORTED_MODULE_0__["default"]('Async visitor not supported in sync mode', {
|
|
17838
|
+
visitor: visitors[i],
|
|
17839
|
+
visitFn
|
|
17840
|
+
});
|
|
17841
|
+
}
|
|
17825
17842
|
if (result === breakSymbol) {
|
|
17826
17843
|
skipping[i] = breakSymbol;
|
|
17827
17844
|
} else if (result !== undefined && result !== skipVisitingNodeSymbol) {
|
|
@@ -17836,6 +17853,67 @@ const mergeAll = (visitors, {
|
|
|
17836
17853
|
}
|
|
17837
17854
|
};
|
|
17838
17855
|
};
|
|
17856
|
+
const mergeAllAsync = (visitors, {
|
|
17857
|
+
visitFnGetter = getVisitFn,
|
|
17858
|
+
nodeTypeGetter = getNodeType,
|
|
17859
|
+
breakSymbol = BREAK,
|
|
17860
|
+
deleteNodeSymbol = null,
|
|
17861
|
+
skipVisitingNodeSymbol = false,
|
|
17862
|
+
exposeEdits = false
|
|
17863
|
+
} = {}) => {
|
|
17864
|
+
const skipSymbol = Symbol('skip');
|
|
17865
|
+
const skipping = new Array(visitors.length).fill(skipSymbol);
|
|
17866
|
+
return {
|
|
17867
|
+
async enter(node, ...rest) {
|
|
17868
|
+
let currentNode = node;
|
|
17869
|
+
let hasChanged = false;
|
|
17870
|
+
for (let i = 0; i < visitors.length; i += 1) {
|
|
17871
|
+
if (skipping[i] === skipSymbol) {
|
|
17872
|
+
const visitFn = visitFnGetter(visitors[i], nodeTypeGetter(currentNode), false);
|
|
17873
|
+
if (typeof visitFn === 'function') {
|
|
17874
|
+
// eslint-disable-next-line no-await-in-loop
|
|
17875
|
+
const result = await visitFn.call(visitors[i], currentNode, ...rest);
|
|
17876
|
+
if (result === skipVisitingNodeSymbol) {
|
|
17877
|
+
skipping[i] = node;
|
|
17878
|
+
} else if (result === breakSymbol) {
|
|
17879
|
+
skipping[i] = breakSymbol;
|
|
17880
|
+
} else if (result === deleteNodeSymbol) {
|
|
17881
|
+
return result;
|
|
17882
|
+
} else if (result !== undefined) {
|
|
17883
|
+
if (exposeEdits) {
|
|
17884
|
+
currentNode = result;
|
|
17885
|
+
hasChanged = true;
|
|
17886
|
+
} else {
|
|
17887
|
+
return result;
|
|
17888
|
+
}
|
|
17889
|
+
}
|
|
17890
|
+
}
|
|
17891
|
+
}
|
|
17892
|
+
}
|
|
17893
|
+
return hasChanged ? currentNode : undefined;
|
|
17894
|
+
},
|
|
17895
|
+
async leave(node, ...rest) {
|
|
17896
|
+
for (let i = 0; i < visitors.length; i += 1) {
|
|
17897
|
+
if (skipping[i] === skipSymbol) {
|
|
17898
|
+
const visitFn = visitFnGetter(visitors[i], nodeTypeGetter(node), true);
|
|
17899
|
+
if (typeof visitFn === 'function') {
|
|
17900
|
+
// eslint-disable-next-line no-await-in-loop
|
|
17901
|
+
const result = await visitFn.call(visitors[i], node, ...rest);
|
|
17902
|
+
if (result === breakSymbol) {
|
|
17903
|
+
skipping[i] = breakSymbol;
|
|
17904
|
+
} else if (result !== undefined && result !== skipVisitingNodeSymbol) {
|
|
17905
|
+
return result;
|
|
17906
|
+
}
|
|
17907
|
+
}
|
|
17908
|
+
} else if (skipping[i] === node) {
|
|
17909
|
+
skipping[i] = skipSymbol;
|
|
17910
|
+
}
|
|
17911
|
+
}
|
|
17912
|
+
return undefined;
|
|
17913
|
+
}
|
|
17914
|
+
};
|
|
17915
|
+
};
|
|
17916
|
+
mergeAll[Symbol.for('nodejs.util.promisify.custom')] = mergeAllAsync;
|
|
17839
17917
|
|
|
17840
17918
|
/* eslint-disable no-continue, no-param-reassign */
|
|
17841
17919
|
/**
|
|
@@ -18004,6 +18082,7 @@ visitor, {
|
|
|
18004
18082
|
}
|
|
18005
18083
|
let result;
|
|
18006
18084
|
if (!Array.isArray(node)) {
|
|
18085
|
+
var _result;
|
|
18007
18086
|
if (!nodePredicate(node)) {
|
|
18008
18087
|
throw new _swagger_api_apidom_error__WEBPACK_IMPORTED_MODULE_0__["default"](`Invalid AST Node: ${String(node)}`, {
|
|
18009
18088
|
node
|
|
@@ -18025,6 +18104,14 @@ visitor, {
|
|
|
18025
18104
|
// retrieve result
|
|
18026
18105
|
result = visitFn.call(visitor, node, key, parent, path, ancestors);
|
|
18027
18106
|
}
|
|
18107
|
+
|
|
18108
|
+
// check if the visitor is async
|
|
18109
|
+
if (typeof ((_result = result) === null || _result === void 0 ? void 0 : _result.then) === 'function') {
|
|
18110
|
+
throw new _swagger_api_apidom_error__WEBPACK_IMPORTED_MODULE_0__["default"]('Async visitor not supported in sync mode', {
|
|
18111
|
+
visitor,
|
|
18112
|
+
visitFn
|
|
18113
|
+
});
|
|
18114
|
+
}
|
|
18028
18115
|
if (result === breakSymbol) {
|
|
18029
18116
|
break;
|
|
18030
18117
|
}
|
|
@@ -20122,7 +20209,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
20122
20209
|
/* harmony export */ createRefractor: () => (/* binding */ createRefractor),
|
|
20123
20210
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
20124
20211
|
/* harmony export */ });
|
|
20125
|
-
/* harmony import */ var
|
|
20212
|
+
/* harmony import */ var _plugins_dispatcher_index_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(49915);
|
|
20126
20213
|
/* harmony import */ var _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(35956);
|
|
20127
20214
|
/* harmony import */ var _clone_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(14831);
|
|
20128
20215
|
/* harmony import */ var _predicates_index_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(70060);
|
|
@@ -20155,7 +20242,7 @@ const refract = (value, {
|
|
|
20155
20242
|
* Run plugins only when necessary.
|
|
20156
20243
|
* Running plugins visitors means extra single traversal === performance hit.
|
|
20157
20244
|
*/
|
|
20158
|
-
return (0,
|
|
20245
|
+
return (0,_plugins_dispatcher_index_mjs__WEBPACK_IMPORTED_MODULE_2__.dispatchPluginsSync)(element, plugins, {
|
|
20159
20246
|
toolboxCreator: _toolbox_mjs__WEBPACK_IMPORTED_MODULE_3__["default"],
|
|
20160
20247
|
visitorOptions: {
|
|
20161
20248
|
nodeTypeGetter: _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_4__.getNodeType
|
|
@@ -20170,13 +20257,14 @@ const createRefractor = Type => (value, options = {}) => refract(value, {
|
|
|
20170
20257
|
|
|
20171
20258
|
/***/ }),
|
|
20172
20259
|
|
|
20173
|
-
/***/
|
|
20260
|
+
/***/ 49915:
|
|
20174
20261
|
/***/ ((__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) => {
|
|
20175
20262
|
|
|
20176
20263
|
"use strict";
|
|
20177
20264
|
__webpack_require__.r(__webpack_exports__);
|
|
20178
20265
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
20179
|
-
/* harmony export */
|
|
20266
|
+
/* harmony export */ dispatchPluginsAsync: () => (/* binding */ dispatchPluginsAsync),
|
|
20267
|
+
/* harmony export */ dispatchPluginsSync: () => (/* binding */ dispatchPluginsSync)
|
|
20180
20268
|
/* harmony export */ });
|
|
20181
20269
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(81515);
|
|
20182
20270
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(85379);
|
|
@@ -20195,9 +20283,7 @@ const defaultDispatchPluginsOptions = {
|
|
|
20195
20283
|
exposeEdits: true
|
|
20196
20284
|
}
|
|
20197
20285
|
};
|
|
20198
|
-
|
|
20199
|
-
// eslint-disable-next-line import/prefer-default-export
|
|
20200
|
-
const dispatchPlugins = (element, plugins, options = {}) => {
|
|
20286
|
+
const dispatchPluginsSync = (element, plugins, options = {}) => {
|
|
20201
20287
|
if (plugins.length === 0) return element;
|
|
20202
20288
|
const mergedOptions = (0,ramda__WEBPACK_IMPORTED_MODULE_2__["default"])(defaultDispatchPluginsOptions, options);
|
|
20203
20289
|
const {
|
|
@@ -20214,6 +20300,26 @@ const dispatchPlugins = (element, plugins, options = {}) => {
|
|
|
20214
20300
|
pluginsSpecs.forEach((0,ramda_adjunct__WEBPACK_IMPORTED_MODULE_5__["default"])(['post'], []));
|
|
20215
20301
|
return newElement;
|
|
20216
20302
|
};
|
|
20303
|
+
const dispatchPluginsAsync = async (element, plugins, options = {}) => {
|
|
20304
|
+
if (plugins.length === 0) return element;
|
|
20305
|
+
const mergedOptions = (0,ramda__WEBPACK_IMPORTED_MODULE_2__["default"])(defaultDispatchPluginsOptions, options);
|
|
20306
|
+
const {
|
|
20307
|
+
toolboxCreator,
|
|
20308
|
+
visitorOptions
|
|
20309
|
+
} = mergedOptions;
|
|
20310
|
+
const toolbox = toolboxCreator();
|
|
20311
|
+
const pluginsSpecs = plugins.map(plugin => plugin(toolbox));
|
|
20312
|
+
const mergeAllVisitorsAsync = _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_3__.mergeAll[Symbol.for('nodejs.util.promisify.custom')];
|
|
20313
|
+
const visitAsync = _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_1__.visit[Symbol.for('nodejs.util.promisify.custom')];
|
|
20314
|
+
const mergedPluginsVisitor = mergeAllVisitorsAsync(pluginsSpecs.map((0,ramda__WEBPACK_IMPORTED_MODULE_4__["default"])({}, 'visitor')), {
|
|
20315
|
+
...visitorOptions
|
|
20316
|
+
});
|
|
20317
|
+
await Promise.allSettled(pluginsSpecs.map((0,ramda_adjunct__WEBPACK_IMPORTED_MODULE_5__["default"])(['pre'], [])));
|
|
20318
|
+
const newElement = await visitAsync(element, mergedPluginsVisitor, visitorOptions);
|
|
20319
|
+
await Promise.allSettled(pluginsSpecs.map((0,ramda_adjunct__WEBPACK_IMPORTED_MODULE_5__["default"])(['post'], [])));
|
|
20320
|
+
return newElement;
|
|
20321
|
+
};
|
|
20322
|
+
dispatchPluginsSync[Symbol.for('nodejs.util.promisify.custom')] = dispatchPluginsAsync;
|
|
20217
20323
|
|
|
20218
20324
|
/***/ }),
|
|
20219
20325
|
|
|
@@ -21357,7 +21463,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
21357
21463
|
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(88326);
|
|
21358
21464
|
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(27155);
|
|
21359
21465
|
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(35956);
|
|
21360
|
-
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(
|
|
21466
|
+
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(49915);
|
|
21361
21467
|
/* harmony import */ var _specification_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(53785);
|
|
21362
21468
|
/* harmony import */ var _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(13720);
|
|
21363
21469
|
/* harmony import */ var _toolbox_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(20363);
|
|
@@ -21390,7 +21496,7 @@ const refract = (value, {
|
|
|
21390
21496
|
/**
|
|
21391
21497
|
* Running plugins visitors means extra single traversal === performance hit.
|
|
21392
21498
|
*/
|
|
21393
|
-
return (0,_swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__.
|
|
21499
|
+
return (0,_swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__.dispatchPluginsSync)(rootVisitor.element, plugins, {
|
|
21394
21500
|
toolboxCreator: _toolbox_mjs__WEBPACK_IMPORTED_MODULE_6__["default"],
|
|
21395
21501
|
visitorOptions: {
|
|
21396
21502
|
keyMap: _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_7__.keyMap,
|
|
@@ -25474,7 +25580,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
25474
25580
|
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(88326);
|
|
25475
25581
|
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(27155);
|
|
25476
25582
|
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(35956);
|
|
25477
|
-
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(
|
|
25583
|
+
/* harmony import */ var _swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(49915);
|
|
25478
25584
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(14864);
|
|
25479
25585
|
/* harmony import */ var _specification_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(38219);
|
|
25480
25586
|
/* harmony import */ var _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(97530);
|
|
@@ -25505,7 +25611,7 @@ const refract = (value, {
|
|
|
25505
25611
|
/**
|
|
25506
25612
|
* Running plugins visitors means extra single traversal === performance hit.
|
|
25507
25613
|
*/
|
|
25508
|
-
return (0,_swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__.
|
|
25614
|
+
return (0,_swagger_api_apidom_core__WEBPACK_IMPORTED_MODULE_5__.dispatchPluginsSync)(rootVisitor.element, plugins, {
|
|
25509
25615
|
toolboxCreator: _toolbox_mjs__WEBPACK_IMPORTED_MODULE_6__["default"],
|
|
25510
25616
|
visitorOptions: {
|
|
25511
25617
|
keyMap: _traversal_visitor_mjs__WEBPACK_IMPORTED_MODULE_7__.keyMap,
|