@speclynx/apidom-parser-adapter-openapi-json-3-1 2.13.0 → 3.0.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.
|
@@ -20327,7 +20327,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
20327
20327
|
* @public
|
|
20328
20328
|
*/
|
|
20329
20329
|
const emptyElement = element => {
|
|
20330
|
-
const meta = !element.isMetaEmpty ?
|
|
20330
|
+
const meta = !element.isMetaEmpty ? element.meta.cloneDeep() : undefined;
|
|
20331
20331
|
const attributes = !element.isAttributesEmpty ? (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(element.attributes) : undefined;
|
|
20332
20332
|
|
|
20333
20333
|
// @ts-ignore
|
|
@@ -20343,7 +20343,7 @@ const getMergeFunction = (keyElement, options) => {
|
|
|
20343
20343
|
};
|
|
20344
20344
|
const getMetaMergeFunction = options => {
|
|
20345
20345
|
if (typeof options.customMetaMerge !== 'function') {
|
|
20346
|
-
return targetMeta =>
|
|
20346
|
+
return targetMeta => targetMeta.cloneDeep();
|
|
20347
20347
|
}
|
|
20348
20348
|
return options.customMetaMerge;
|
|
20349
20349
|
};
|
|
@@ -20415,8 +20415,20 @@ const deepmerge = (targetElement, sourceElement, options) => {
|
|
|
20415
20415
|
const mergedElement = sourceIsArrayElement && typeof mergedOptions.arrayElementMerge === 'function' ? mergedOptions.arrayElementMerge(targetElement, sourceElement, mergedOptions) : mergedOptions.objectElementMerge(targetElement, sourceElement, mergedOptions);
|
|
20416
20416
|
|
|
20417
20417
|
// merging meta & attributes
|
|
20418
|
-
|
|
20419
|
-
|
|
20418
|
+
if (!targetElement.isMetaEmpty && !sourceElement.isMetaEmpty) {
|
|
20419
|
+
mergedElement.meta = getMetaMergeFunction(mergedOptions)(targetElement.meta, sourceElement.meta);
|
|
20420
|
+
} else if (!targetElement.isMetaEmpty) {
|
|
20421
|
+
mergedElement.meta = targetElement.meta.cloneDeep();
|
|
20422
|
+
} else if (!sourceElement.isMetaEmpty) {
|
|
20423
|
+
mergedElement.meta = sourceElement.meta.cloneDeep();
|
|
20424
|
+
}
|
|
20425
|
+
if (!targetElement.isAttributesEmpty && !sourceElement.isAttributesEmpty) {
|
|
20426
|
+
mergedElement.attributes = getAttributesMergeFunction(mergedOptions)(targetElement.attributes, sourceElement.attributes);
|
|
20427
|
+
} else if (!targetElement.isAttributesEmpty) {
|
|
20428
|
+
mergedElement.attributes = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(targetElement.attributes);
|
|
20429
|
+
} else if (!sourceElement.isAttributesEmpty) {
|
|
20430
|
+
mergedElement.attributes = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(sourceElement.attributes);
|
|
20431
|
+
}
|
|
20420
20432
|
return mergedElement;
|
|
20421
20433
|
};
|
|
20422
20434
|
deepmerge.all = (list, options) => {
|
|
@@ -20755,6 +20767,105 @@ class KeyValuePair {
|
|
|
20755
20767
|
|
|
20756
20768
|
/***/ },
|
|
20757
20769
|
|
|
20770
|
+
/***/ 51844
|
|
20771
|
+
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
20772
|
+
|
|
20773
|
+
"use strict";
|
|
20774
|
+
__webpack_require__.r(__webpack_exports__);
|
|
20775
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
20776
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
20777
|
+
/* harmony export */ });
|
|
20778
|
+
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8138);
|
|
20779
|
+
|
|
20780
|
+
/**
|
|
20781
|
+
* Lightweight meta container for Element metadata.
|
|
20782
|
+
*
|
|
20783
|
+
* Data is stored as own properties on the instance; methods live on the prototype.
|
|
20784
|
+
* `Object.keys()`, `Object.entries()`, etc. only see data properties.
|
|
20785
|
+
*
|
|
20786
|
+
* @public
|
|
20787
|
+
*/
|
|
20788
|
+
class Metadata {
|
|
20789
|
+
// Set via prototype assignment in registration.ts to avoid circular dependency
|
|
20790
|
+
|
|
20791
|
+
get(name) {
|
|
20792
|
+
return this[name];
|
|
20793
|
+
}
|
|
20794
|
+
set(name, value) {
|
|
20795
|
+
this[name] = value;
|
|
20796
|
+
}
|
|
20797
|
+
hasKey(name) {
|
|
20798
|
+
return Object.hasOwn(this, name);
|
|
20799
|
+
}
|
|
20800
|
+
keys() {
|
|
20801
|
+
return Object.keys(this);
|
|
20802
|
+
}
|
|
20803
|
+
remove(name) {
|
|
20804
|
+
delete this[name];
|
|
20805
|
+
}
|
|
20806
|
+
get isEmpty() {
|
|
20807
|
+
return Object.keys(this).length === 0;
|
|
20808
|
+
}
|
|
20809
|
+
get isFrozen() {
|
|
20810
|
+
return Object.isFrozen(this);
|
|
20811
|
+
}
|
|
20812
|
+
freeze() {
|
|
20813
|
+
for (const value of Object.values(this)) {
|
|
20814
|
+
if (value instanceof this.Element) {
|
|
20815
|
+
value.freeze();
|
|
20816
|
+
} else if (Array.isArray(value) || value !== null && typeof value === 'object') {
|
|
20817
|
+
Object.freeze(value);
|
|
20818
|
+
}
|
|
20819
|
+
}
|
|
20820
|
+
Object.freeze(this);
|
|
20821
|
+
}
|
|
20822
|
+
|
|
20823
|
+
/**
|
|
20824
|
+
* Creates a shallow clone. Same references, new container.
|
|
20825
|
+
*/
|
|
20826
|
+
cloneShallow() {
|
|
20827
|
+
const clone = new Metadata();
|
|
20828
|
+
Object.assign(clone, this);
|
|
20829
|
+
return clone;
|
|
20830
|
+
}
|
|
20831
|
+
|
|
20832
|
+
/**
|
|
20833
|
+
* Merges another Metadata into a new instance.
|
|
20834
|
+
* Arrays are concatenated, all other values are overwritten by source.
|
|
20835
|
+
*/
|
|
20836
|
+
merge(source) {
|
|
20837
|
+
const result = this.cloneShallow();
|
|
20838
|
+
for (const [key, value] of Object.entries(source)) {
|
|
20839
|
+
const existing = result.get(key);
|
|
20840
|
+
if (Array.isArray(existing) && Array.isArray(value)) {
|
|
20841
|
+
result.set(key, [...existing, ...value]);
|
|
20842
|
+
} else {
|
|
20843
|
+
result.set(key, value);
|
|
20844
|
+
}
|
|
20845
|
+
}
|
|
20846
|
+
return result;
|
|
20847
|
+
}
|
|
20848
|
+
|
|
20849
|
+
/**
|
|
20850
|
+
* Creates a deep clone. Elements are deep cloned,
|
|
20851
|
+
* all other values are deep cloned via ramda clone.
|
|
20852
|
+
*/
|
|
20853
|
+
cloneDeep() {
|
|
20854
|
+
const copy = new Metadata();
|
|
20855
|
+
for (const [key, value] of Object.entries(this)) {
|
|
20856
|
+
if (value instanceof this.Element) {
|
|
20857
|
+
copy.set(key, this.cloneDeepElement(value));
|
|
20858
|
+
} else {
|
|
20859
|
+
copy.set(key, (0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(value));
|
|
20860
|
+
}
|
|
20861
|
+
}
|
|
20862
|
+
return copy;
|
|
20863
|
+
}
|
|
20864
|
+
}
|
|
20865
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Metadata);
|
|
20866
|
+
|
|
20867
|
+
/***/ },
|
|
20868
|
+
|
|
20758
20869
|
/***/ 55156
|
|
20759
20870
|
(__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
|
|
20760
20871
|
|
|
@@ -21401,7 +21512,7 @@ const cloneShallowElement = element => {
|
|
|
21401
21512
|
const copy = new Ctor();
|
|
21402
21513
|
copy.element = element.element;
|
|
21403
21514
|
if (!element.isMetaEmpty) {
|
|
21404
|
-
copy.meta =
|
|
21515
|
+
copy.meta = element.meta.cloneDeep();
|
|
21405
21516
|
}
|
|
21406
21517
|
if (!element.isAttributesEmpty) {
|
|
21407
21518
|
copy.attributes = cloneDeep(element.attributes);
|
|
@@ -21429,8 +21540,8 @@ const cloneShallowElement = element => {
|
|
|
21429
21540
|
|
|
21430
21541
|
/**
|
|
21431
21542
|
* Creates a shallow clone of an ApiDOM Element, KeyValuePair, or ObjectSlice.
|
|
21432
|
-
* The element itself is cloned, but content references are shared
|
|
21433
|
-
*
|
|
21543
|
+
* The element itself is cloned, but content references are shared.
|
|
21544
|
+
* Meta and attributes are deep cloned to preserve semantic information.
|
|
21434
21545
|
* @public
|
|
21435
21546
|
*/
|
|
21436
21547
|
const cloneShallow = value => {
|
|
@@ -22505,7 +22616,7 @@ class CollectionElement extends _Element_mjs__WEBPACK_IMPORTED_MODULE_0__["defau
|
|
|
22505
22616
|
* Search the tree recursively and find the element with the matching ID.
|
|
22506
22617
|
*/
|
|
22507
22618
|
getById(id) {
|
|
22508
|
-
return this.find(item => item.id
|
|
22619
|
+
return this.find(item => item.id === id).first;
|
|
22509
22620
|
}
|
|
22510
22621
|
|
|
22511
22622
|
/**
|
|
@@ -22535,18 +22646,24 @@ class CollectionElement extends _Element_mjs__WEBPACK_IMPORTED_MODULE_0__["defau
|
|
|
22535
22646
|
"use strict";
|
|
22536
22647
|
__webpack_require__.r(__webpack_exports__);
|
|
22537
22648
|
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
22649
|
+
/* harmony export */ Metadata: () => (/* reexport safe */ _Metadata_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]),
|
|
22538
22650
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
22539
22651
|
/* harmony export */ });
|
|
22540
22652
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(53654);
|
|
22541
|
-
/* harmony import */ var
|
|
22542
|
-
/* harmony import */ var
|
|
22653
|
+
/* harmony import */ var _Metadata_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(51844);
|
|
22654
|
+
/* harmony import */ var _KeyValuePair_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(36663);
|
|
22655
|
+
/* harmony import */ var _ObjectSlice_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(38504);
|
|
22656
|
+
|
|
22543
22657
|
|
|
22544
22658
|
|
|
22659
|
+
// shared singleton for frozen elements with no meta — avoids allocation on every access
|
|
22660
|
+
const FROZEN_EMPTY_METADATA = Object.freeze(new _Metadata_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]());
|
|
22545
22661
|
|
|
22546
22662
|
/**
|
|
22547
22663
|
* Valid content types for an Element.
|
|
22548
22664
|
* @public
|
|
22549
22665
|
*/
|
|
22666
|
+
|
|
22550
22667
|
/**
|
|
22551
22668
|
* Base Element class that all ApiDOM elements extend.
|
|
22552
22669
|
*
|
|
@@ -22644,7 +22761,7 @@ class Element {
|
|
|
22644
22761
|
_attributes;
|
|
22645
22762
|
|
|
22646
22763
|
// ============================================================
|
|
22647
|
-
// Prototype-assigned properties (set in
|
|
22764
|
+
// Prototype-assigned properties (set in registration.ts)
|
|
22648
22765
|
// Using 'declare' allows TypeScript to know about these
|
|
22649
22766
|
// without generating runtime code.
|
|
22650
22767
|
// ============================================================
|
|
@@ -22705,13 +22822,13 @@ class Element {
|
|
|
22705
22822
|
}
|
|
22706
22823
|
|
|
22707
22824
|
// KeyValuePair
|
|
22708
|
-
if (value instanceof
|
|
22825
|
+
if (value instanceof _KeyValuePair_mjs__WEBPACK_IMPORTED_MODULE_2__["default"]) {
|
|
22709
22826
|
this._content = value;
|
|
22710
22827
|
return;
|
|
22711
22828
|
}
|
|
22712
22829
|
|
|
22713
22830
|
// ObjectSlice - extract elements array
|
|
22714
|
-
if (value instanceof
|
|
22831
|
+
if (value instanceof _ObjectSlice_mjs__WEBPACK_IMPORTED_MODULE_3__["default"]) {
|
|
22715
22832
|
this._content = value.elements;
|
|
22716
22833
|
return;
|
|
22717
22834
|
}
|
|
@@ -22732,24 +22849,22 @@ class Element {
|
|
|
22732
22849
|
|
|
22733
22850
|
/**
|
|
22734
22851
|
* Metadata about this element (id, classes, title, description, links).
|
|
22735
|
-
* Lazily creates
|
|
22852
|
+
* Lazily creates a Metadata instance if not set.
|
|
22736
22853
|
*/
|
|
22737
22854
|
get meta() {
|
|
22738
22855
|
if (!this._meta) {
|
|
22739
|
-
if (this.isFrozen)
|
|
22740
|
-
|
|
22741
|
-
meta.freeze();
|
|
22742
|
-
return meta;
|
|
22743
|
-
}
|
|
22744
|
-
this._meta = new this.ObjectElement();
|
|
22856
|
+
if (this.isFrozen) return FROZEN_EMPTY_METADATA;
|
|
22857
|
+
this._meta = new _Metadata_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]();
|
|
22745
22858
|
}
|
|
22746
22859
|
return this._meta;
|
|
22747
22860
|
}
|
|
22748
22861
|
set meta(value) {
|
|
22749
|
-
if (value instanceof
|
|
22862
|
+
if (value instanceof _Metadata_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]) {
|
|
22750
22863
|
this._meta = value;
|
|
22751
|
-
} else {
|
|
22752
|
-
|
|
22864
|
+
} else if (value && typeof value === 'object') {
|
|
22865
|
+
const meta = new _Metadata_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]();
|
|
22866
|
+
Object.assign(meta, value);
|
|
22867
|
+
this._meta = meta;
|
|
22753
22868
|
}
|
|
22754
22869
|
}
|
|
22755
22870
|
|
|
@@ -22782,10 +22897,8 @@ class Element {
|
|
|
22782
22897
|
|
|
22783
22898
|
/** Unique identifier for this element. */
|
|
22784
22899
|
get id() {
|
|
22785
|
-
if (this.isFrozen) {
|
|
22786
|
-
return this.getMetaProperty('id', '');
|
|
22787
|
-
}
|
|
22788
22900
|
if (!this.hasMetaProperty('id')) {
|
|
22901
|
+
if (this.isFrozen) return '';
|
|
22789
22902
|
this.setMetaProperty('id', '');
|
|
22790
22903
|
}
|
|
22791
22904
|
return this.meta.get('id');
|
|
@@ -22796,10 +22909,8 @@ class Element {
|
|
|
22796
22909
|
|
|
22797
22910
|
/** CSS-like class names. */
|
|
22798
22911
|
get classes() {
|
|
22799
|
-
if (this.isFrozen) {
|
|
22800
|
-
return this.getMetaProperty('classes', []);
|
|
22801
|
-
}
|
|
22802
22912
|
if (!this.hasMetaProperty('classes')) {
|
|
22913
|
+
if (this.isFrozen) return [];
|
|
22803
22914
|
this.setMetaProperty('classes', []);
|
|
22804
22915
|
}
|
|
22805
22916
|
return this.meta.get('classes');
|
|
@@ -22810,11 +22921,13 @@ class Element {
|
|
|
22810
22921
|
|
|
22811
22922
|
/** Hyperlinks associated with this element. */
|
|
22812
22923
|
get links() {
|
|
22813
|
-
if (this.isFrozen) {
|
|
22814
|
-
return this.getMetaProperty('links', []);
|
|
22815
|
-
}
|
|
22816
22924
|
if (!this.hasMetaProperty('links')) {
|
|
22817
|
-
this.
|
|
22925
|
+
if (this.isFrozen) {
|
|
22926
|
+
const empty = new this.ArrayElement();
|
|
22927
|
+
empty.freeze();
|
|
22928
|
+
return empty;
|
|
22929
|
+
}
|
|
22930
|
+
this.setMetaProperty('links', new this.ArrayElement());
|
|
22818
22931
|
}
|
|
22819
22932
|
return this.meta.get('links');
|
|
22820
22933
|
}
|
|
@@ -22834,7 +22947,7 @@ class Element {
|
|
|
22834
22947
|
if (Array.isArray(content)) {
|
|
22835
22948
|
return content;
|
|
22836
22949
|
}
|
|
22837
|
-
if (content instanceof
|
|
22950
|
+
if (content instanceof _KeyValuePair_mjs__WEBPACK_IMPORTED_MODULE_2__["default"]) {
|
|
22838
22951
|
const children = [];
|
|
22839
22952
|
if (content.key) children.push(content.key);
|
|
22840
22953
|
if (content.value) children.push(content.value);
|
|
@@ -22864,7 +22977,6 @@ class Element {
|
|
|
22864
22977
|
|
|
22865
22978
|
// Freeze meta and attributes
|
|
22866
22979
|
if (this._meta) {
|
|
22867
|
-
this._meta.parent = this;
|
|
22868
22980
|
this._meta.freeze();
|
|
22869
22981
|
}
|
|
22870
22982
|
if (this._attributes) {
|
|
@@ -22899,7 +23011,7 @@ class Element {
|
|
|
22899
23011
|
if (_content instanceof Element) {
|
|
22900
23012
|
return _content.toValue();
|
|
22901
23013
|
}
|
|
22902
|
-
if (_content instanceof
|
|
23014
|
+
if (_content instanceof _KeyValuePair_mjs__WEBPACK_IMPORTED_MODULE_2__["default"]) {
|
|
22903
23015
|
return _content.toValue();
|
|
22904
23016
|
}
|
|
22905
23017
|
if (Array.isArray(_content)) {
|
|
@@ -22955,7 +23067,7 @@ class Element {
|
|
|
22955
23067
|
* @throws Error if this element has no ID
|
|
22956
23068
|
*/
|
|
22957
23069
|
toRef(path) {
|
|
22958
|
-
const idValue = this.id
|
|
23070
|
+
const idValue = this.id;
|
|
22959
23071
|
if (idValue === '') {
|
|
22960
23072
|
throw new Error('Cannot create reference to an element without an ID');
|
|
22961
23073
|
}
|
|
@@ -22967,26 +23079,16 @@ class Element {
|
|
|
22967
23079
|
}
|
|
22968
23080
|
|
|
22969
23081
|
/**
|
|
22970
|
-
* Gets a meta property.
|
|
23082
|
+
* Gets a meta property value.
|
|
22971
23083
|
*
|
|
22972
23084
|
* When the property doesn't exist:
|
|
22973
|
-
* - With defaultValue: returns
|
|
23085
|
+
* - With defaultValue: returns the provided default value
|
|
22974
23086
|
* - Without defaultValue: returns undefined
|
|
22975
|
-
*
|
|
22976
|
-
* Note: Each call with a default creates a new instance. Use setMetaProperty
|
|
22977
|
-
* first if you need reference equality across multiple accesses.
|
|
22978
23087
|
*/
|
|
22979
23088
|
|
|
22980
23089
|
getMetaProperty(name, defaultValue) {
|
|
22981
23090
|
if (!this.hasMetaProperty(name)) {
|
|
22982
|
-
|
|
22983
|
-
return undefined;
|
|
22984
|
-
}
|
|
22985
|
-
const element = this.refract(defaultValue);
|
|
22986
|
-
if (element && this.isFrozen) {
|
|
22987
|
-
element.freeze();
|
|
22988
|
-
}
|
|
22989
|
-
return element;
|
|
23091
|
+
return defaultValue;
|
|
22990
23092
|
}
|
|
22991
23093
|
return this.meta.get(name);
|
|
22992
23094
|
}
|
|
@@ -22999,20 +23101,17 @@ class Element {
|
|
|
22999
23101
|
}
|
|
23000
23102
|
|
|
23001
23103
|
/**
|
|
23002
|
-
*
|
|
23104
|
+
* Checks whether a meta property exists.
|
|
23003
23105
|
*/
|
|
23004
23106
|
hasMetaProperty(name) {
|
|
23005
|
-
|
|
23006
|
-
return this.meta.hasKey(name);
|
|
23007
|
-
}
|
|
23008
|
-
return false;
|
|
23107
|
+
return this._meta !== undefined && this._meta.hasKey(name);
|
|
23009
23108
|
}
|
|
23010
23109
|
|
|
23011
23110
|
/**
|
|
23012
23111
|
* Checks if meta is empty.
|
|
23013
23112
|
*/
|
|
23014
23113
|
get isMetaEmpty() {
|
|
23015
|
-
return this._meta === undefined || this.
|
|
23114
|
+
return this._meta === undefined || this._meta.isEmpty;
|
|
23016
23115
|
}
|
|
23017
23116
|
|
|
23018
23117
|
/**
|
|
@@ -23038,7 +23137,7 @@ class Element {
|
|
|
23038
23137
|
}
|
|
23039
23138
|
|
|
23040
23139
|
/**
|
|
23041
|
-
*
|
|
23140
|
+
* Checks whether an attributes property exists.
|
|
23042
23141
|
*/
|
|
23043
23142
|
hasAttributesProperty(name) {
|
|
23044
23143
|
if (!this.isAttributesEmpty) {
|
|
@@ -23057,6 +23156,7 @@ class Element {
|
|
|
23057
23156
|
|
|
23058
23157
|
// Re-export types for convenience
|
|
23059
23158
|
|
|
23159
|
+
|
|
23060
23160
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (Element);
|
|
23061
23161
|
|
|
23062
23162
|
/***/ },
|
|
@@ -23495,6 +23595,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
23495
23595
|
/* harmony import */ var _elements_Style_mjs__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(49686);
|
|
23496
23596
|
/* harmony import */ var _ObjectSlice_mjs__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(38504);
|
|
23497
23597
|
/* harmony import */ var _KeyValuePair_mjs__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(36663);
|
|
23598
|
+
/* harmony import */ var _Metadata_mjs__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(51844);
|
|
23599
|
+
/* harmony import */ var _clone_index_mjs__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(12111);
|
|
23600
|
+
|
|
23601
|
+
|
|
23498
23602
|
|
|
23499
23603
|
|
|
23500
23604
|
|
|
@@ -23554,14 +23658,16 @@ function refract(value) {
|
|
|
23554
23658
|
}
|
|
23555
23659
|
|
|
23556
23660
|
// Set up prototype assignments for circular dependency resolution.
|
|
23557
|
-
// These allow Element instances to
|
|
23558
|
-
//
|
|
23661
|
+
// These allow Element and Metadata instances to reference classes they can't import
|
|
23662
|
+
// directly (which would cause circular imports).
|
|
23559
23663
|
// Using 'declare' in the class definitions enables type-safe access to these properties.
|
|
23560
23664
|
_primitives_Element_mjs__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.ObjectElement = _primitives_ObjectElement_mjs__WEBPACK_IMPORTED_MODULE_8__["default"];
|
|
23561
23665
|
_primitives_Element_mjs__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.ArrayElement = _primitives_ArrayElement_mjs__WEBPACK_IMPORTED_MODULE_6__["default"];
|
|
23562
23666
|
_primitives_Element_mjs__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.RefElement = _elements_RefElement_mjs__WEBPACK_IMPORTED_MODULE_10__["default"];
|
|
23563
23667
|
_primitives_Element_mjs__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.MemberElement = _primitives_MemberElement_mjs__WEBPACK_IMPORTED_MODULE_7__["default"];
|
|
23564
23668
|
_primitives_Element_mjs__WEBPACK_IMPORTED_MODULE_0__["default"].prototype.refract = refract;
|
|
23669
|
+
_Metadata_mjs__WEBPACK_IMPORTED_MODULE_18__["default"].prototype.Element = _primitives_Element_mjs__WEBPACK_IMPORTED_MODULE_0__["default"];
|
|
23670
|
+
_Metadata_mjs__WEBPACK_IMPORTED_MODULE_18__["default"].prototype.cloneDeepElement = element => (0,_clone_index_mjs__WEBPACK_IMPORTED_MODULE_19__.cloneDeep)(element);
|
|
23565
23671
|
|
|
23566
23672
|
/**
|
|
23567
23673
|
* Contains all of the element classes, and related structures and methods
|
|
@@ -23626,7 +23732,13 @@ class JSONSerialiser {
|
|
|
23626
23732
|
element: element.element
|
|
23627
23733
|
};
|
|
23628
23734
|
if (!element.isMetaEmpty) {
|
|
23629
|
-
|
|
23735
|
+
const serialisedMeta = this.serialiseMeta(element);
|
|
23736
|
+
if (serialisedMeta) {
|
|
23737
|
+
payload.meta = serialisedMeta.meta;
|
|
23738
|
+
if (serialisedMeta.rawKeys.length > 0) {
|
|
23739
|
+
payload.__meta_raw__ = serialisedMeta.rawKeys;
|
|
23740
|
+
}
|
|
23741
|
+
}
|
|
23630
23742
|
}
|
|
23631
23743
|
if (!element.isAttributesEmpty) {
|
|
23632
23744
|
payload.attributes = this.serialiseObject(element.attributes);
|
|
@@ -23673,7 +23785,7 @@ class JSONSerialiser {
|
|
|
23673
23785
|
element.element = value.element;
|
|
23674
23786
|
}
|
|
23675
23787
|
|
|
23676
|
-
// Extract
|
|
23788
|
+
// Extract special meta keys without mutating input, filter remaining meta
|
|
23677
23789
|
let mappingsDoc;
|
|
23678
23790
|
let stylesDoc;
|
|
23679
23791
|
let metaToDeserialize = value.meta;
|
|
@@ -23687,8 +23799,15 @@ class JSONSerialiser {
|
|
|
23687
23799
|
stylesDoc = __styles__;
|
|
23688
23800
|
metaToDeserialize = Object.keys(rest).length > 0 ? rest : undefined;
|
|
23689
23801
|
}
|
|
23802
|
+
|
|
23803
|
+
// determine which meta keys were raw primitives before serialization
|
|
23804
|
+
const rawKeys = value.__meta_raw__ ? new Set(value.__meta_raw__) : undefined;
|
|
23690
23805
|
if (metaToDeserialize) {
|
|
23691
|
-
|
|
23806
|
+
for (const [key, doc] of Object.entries(metaToDeserialize)) {
|
|
23807
|
+
const deserialized = this.deserialise(doc);
|
|
23808
|
+
// unwrap keys that were raw primitives before serialization
|
|
23809
|
+
element.setMetaProperty(key, rawKeys?.has(key) ? deserialized.toValue() : deserialized);
|
|
23810
|
+
}
|
|
23692
23811
|
}
|
|
23693
23812
|
|
|
23694
23813
|
// Restore source position from __mappings__
|
|
@@ -23751,6 +23870,27 @@ class JSONSerialiser {
|
|
|
23751
23870
|
}
|
|
23752
23871
|
return content;
|
|
23753
23872
|
}
|
|
23873
|
+
serialiseMeta(element) {
|
|
23874
|
+
const meta = {};
|
|
23875
|
+
const rawKeys = [];
|
|
23876
|
+
let hasEntries = false;
|
|
23877
|
+
for (const [key, value] of Object.entries(element.meta)) {
|
|
23878
|
+
if (value instanceof this.namespace.elements.Element) {
|
|
23879
|
+
meta[key] = this.serialise(value);
|
|
23880
|
+
hasEntries = true;
|
|
23881
|
+
} else if (value !== undefined) {
|
|
23882
|
+
// refract primitives to maintain JSON Refract spec compatibility
|
|
23883
|
+
const refracted = element.refract(value);
|
|
23884
|
+
meta[key] = this.serialise(refracted);
|
|
23885
|
+
rawKeys.push(key);
|
|
23886
|
+
hasEntries = true;
|
|
23887
|
+
}
|
|
23888
|
+
}
|
|
23889
|
+
return hasEntries ? {
|
|
23890
|
+
meta,
|
|
23891
|
+
rawKeys
|
|
23892
|
+
} : undefined;
|
|
23893
|
+
}
|
|
23754
23894
|
serialiseObject(obj) {
|
|
23755
23895
|
const result = {};
|
|
23756
23896
|
obj.forEach((value, key) => {
|
|
@@ -25872,7 +26012,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
25872
26012
|
*/
|
|
25873
26013
|
class FallbackVisitor extends _Visitor_mjs__WEBPACK_IMPORTED_MODULE_1__["default"] {
|
|
25874
26014
|
enter(path) {
|
|
25875
|
-
this.element = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.cloneDeep)(path.node);
|
|
26015
|
+
this.element = this.consume ? path.node : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.cloneDeep)(path.node);
|
|
25876
26016
|
path.stop();
|
|
25877
26017
|
}
|
|
25878
26018
|
}
|
|
@@ -25912,7 +26052,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
25912
26052
|
*/
|
|
25913
26053
|
class SpecificationVisitor extends _Visitor_mjs__WEBPACK_IMPORTED_MODULE_6__["default"] {
|
|
25914
26054
|
specObj;
|
|
25915
|
-
passingOptionsNames = ['specObj', 'parent'];
|
|
26055
|
+
passingOptionsNames = ['specObj', 'parent', 'consume'];
|
|
25916
26056
|
constructor({
|
|
25917
26057
|
specObj,
|
|
25918
26058
|
...rest
|
|
@@ -25958,7 +26098,7 @@ class SpecificationVisitor extends _Visitor_mjs__WEBPACK_IMPORTED_MODULE_6__["de
|
|
|
25958
26098
|
*/
|
|
25959
26099
|
const visitor = this.retrieveVisitorInstance(specPath, options);
|
|
25960
26100
|
if (visitor instanceof _FallbackVisitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"] && visitor?.constructor === _FallbackVisitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]) {
|
|
25961
|
-
return (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__.cloneDeep)(element);
|
|
26101
|
+
return this.consume ? element : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__.cloneDeep)(element);
|
|
25962
26102
|
}
|
|
25963
26103
|
(0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_5__.traverse)(element, visitor, options);
|
|
25964
26104
|
return visitor.element;
|
|
@@ -25977,7 +26117,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
25977
26117
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
25978
26118
|
/* harmony export */ });
|
|
25979
26119
|
/* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(28400);
|
|
25980
|
-
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(
|
|
26120
|
+
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(12111);
|
|
25981
26121
|
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(25810);
|
|
25982
26122
|
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(49686);
|
|
25983
26123
|
|
|
@@ -25992,19 +26132,21 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
25992
26132
|
*/
|
|
25993
26133
|
class Visitor {
|
|
25994
26134
|
element;
|
|
26135
|
+
consume = false;
|
|
26136
|
+
consumeSafe = false;
|
|
25995
26137
|
constructor(options) {
|
|
25996
26138
|
Object.assign(this, options);
|
|
25997
26139
|
}
|
|
25998
26140
|
copyMetaAndAttributes(from, to) {
|
|
25999
|
-
if (!from.isMetaEmpty
|
|
26000
|
-
|
|
26001
|
-
|
|
26002
|
-
to.meta = (
|
|
26141
|
+
if (!from.isMetaEmpty && !to.isMetaEmpty) {
|
|
26142
|
+
to.meta = to.meta.merge(from.meta);
|
|
26143
|
+
} else if (!from.isMetaEmpty) {
|
|
26144
|
+
to.meta = from.meta.cloneDeep();
|
|
26003
26145
|
}
|
|
26004
|
-
if (!from.isAttributesEmpty
|
|
26005
|
-
|
|
26006
|
-
|
|
26007
|
-
to.attributes = (0,
|
|
26146
|
+
if (!from.isAttributesEmpty && !to.isAttributesEmpty) {
|
|
26147
|
+
to.attributes = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_0__["default"])(to.attributes, from.attributes);
|
|
26148
|
+
} else if (!from.isAttributesEmpty) {
|
|
26149
|
+
to.attributes = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(from.attributes);
|
|
26008
26150
|
}
|
|
26009
26151
|
_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"].transfer(from, to);
|
|
26010
26152
|
_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__["default"].transfer(from, to);
|
|
@@ -26114,12 +26256,13 @@ class FixedFieldsVisitor extends _SpecificationVisitor_mjs__WEBPACK_IMPORTED_MOD
|
|
|
26114
26256
|
const keyValue = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_3__["default"])(key);
|
|
26115
26257
|
if ((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.isStringElement)(key) && fields.includes(keyValue) && !this.ignoredFields.includes(keyValue)) {
|
|
26116
26258
|
const fixedFieldElement = this.toRefractedElement([...specPath, 'fixedFields', keyValue], value);
|
|
26117
|
-
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"]((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), fixedFieldElement);
|
|
26259
|
+
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"](this.consume ? key : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), fixedFieldElement);
|
|
26118
26260
|
this.copyMetaAndAttributes(memberElement, newMemberElement);
|
|
26119
|
-
newMemberElement.classes.push('fixed-field');
|
|
26120
26261
|
this.element.content.push(newMemberElement);
|
|
26262
|
+
// consume: release processed generic subtree
|
|
26263
|
+
if (this.consume && this.consumeSafe && !memberElement.isFrozen) memberElement.value = undefined;
|
|
26121
26264
|
} else if (!this.ignoredFields.includes(keyValue)) {
|
|
26122
|
-
this.element.content.push((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
26265
|
+
this.element.content.push(this.consume ? memberElement : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
26123
26266
|
}
|
|
26124
26267
|
});
|
|
26125
26268
|
this.copyMetaAndAttributes(objectElement, this.element);
|
|
@@ -26208,12 +26351,14 @@ class PatternedFieldsVisitor extends _SpecificationVisitor_mjs__WEBPACK_IMPORTED
|
|
|
26208
26351
|
if (!this.ignoredFields.includes(keyValue) && this.fieldPatternPredicate(keyValue)) {
|
|
26209
26352
|
const specPath = this.specPath(value);
|
|
26210
26353
|
const patternedFieldElement = this.toRefractedElement(specPath, value);
|
|
26211
|
-
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"]((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), patternedFieldElement);
|
|
26354
|
+
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"](this.consume ? key : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), patternedFieldElement);
|
|
26212
26355
|
this.copyMetaAndAttributes(memberElement, newMemberElement);
|
|
26213
26356
|
newMemberElement.classes.push('patterned-field');
|
|
26214
26357
|
this.element.content.push(newMemberElement);
|
|
26358
|
+
// consume: release processed generic subtree
|
|
26359
|
+
if (this.consume && this.consumeSafe && !memberElement.isFrozen) memberElement.value = undefined;
|
|
26215
26360
|
} else if (!this.ignoredFields.includes(keyValue)) {
|
|
26216
|
-
this.element.content.push((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
26361
|
+
this.element.content.push(this.consume ? memberElement : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
26217
26362
|
}
|
|
26218
26363
|
});
|
|
26219
26364
|
this.copyMetaAndAttributes(objectElement, this.element);
|
|
@@ -26771,13 +26916,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
26771
26916
|
/* harmony import */ var ramda_adjunct__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(33031);
|
|
26772
26917
|
/* harmony import */ var ramda_adjunct__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(68894);
|
|
26773
26918
|
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(25162);
|
|
26774
|
-
/* harmony import */ var
|
|
26775
|
-
/* harmony import */ var
|
|
26776
|
-
/* harmony import */ var
|
|
26777
|
-
/* harmony import */ var
|
|
26778
|
-
/* harmony import */ var
|
|
26779
|
-
/* harmony import */ var _elements_JSONSchema_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(94686);
|
|
26780
|
-
/* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(86059);
|
|
26919
|
+
/* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(44673);
|
|
26920
|
+
/* harmony import */ var _generics_FixedFieldsVisitor_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(55320);
|
|
26921
|
+
/* harmony import */ var _bases_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(89033);
|
|
26922
|
+
/* harmony import */ var _elements_JSONSchema_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(94686);
|
|
26923
|
+
/* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(86059);
|
|
26781
26924
|
|
|
26782
26925
|
|
|
26783
26926
|
|
|
@@ -26792,10 +26935,11 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
26792
26935
|
/**
|
|
26793
26936
|
* @public
|
|
26794
26937
|
*/
|
|
26795
|
-
class JSONSchemaVisitor extends
|
|
26938
|
+
class JSONSchemaVisitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_7__.JSONSchemaVisitorBase {
|
|
26796
26939
|
constructor(options) {
|
|
26797
26940
|
super(options);
|
|
26798
|
-
this.element = new
|
|
26941
|
+
this.element = new _elements_JSONSchema_mjs__WEBPACK_IMPORTED_MODULE_8__["default"]();
|
|
26942
|
+
this.consumeSafe = true;
|
|
26799
26943
|
this.specPath = (0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(['document', 'objects', 'JSONSchema']);
|
|
26800
26944
|
}
|
|
26801
26945
|
get defaultDialectIdentifier() {
|
|
@@ -26808,27 +26952,27 @@ class JSONSchemaVisitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_9__.JSONSche
|
|
|
26808
26952
|
|
|
26809
26953
|
// for further processing consider this JSONSchema Element as parent for all sub-schemas
|
|
26810
26954
|
this.parent = this.element;
|
|
26811
|
-
return
|
|
26955
|
+
return _generics_FixedFieldsVisitor_mjs__WEBPACK_IMPORTED_MODULE_6__["default"].prototype.ObjectElement.call(this, path);
|
|
26812
26956
|
}
|
|
26813
26957
|
handleDialectIdentifier(objectElement) {
|
|
26814
26958
|
// handle $schema keyword in embedded resources
|
|
26815
26959
|
if ((0,ramda_adjunct__WEBPACK_IMPORTED_MODULE_2__["default"])(this.parent) && !(0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__.isStringElement)(objectElement.get('$schema'))) {
|
|
26816
26960
|
// no parent available and no $schema is defined, set default $schema
|
|
26817
26961
|
this.element.meta.set('inheritedDialectIdentifier', this.defaultDialectIdentifier);
|
|
26818
|
-
} else if ((0,
|
|
26962
|
+
} else if ((0,_predicates_mjs__WEBPACK_IMPORTED_MODULE_9__.isJSONSchemaElement)(this.parent) && !(0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__.isStringElement)(objectElement.get('$schema'))) {
|
|
26819
26963
|
// parent is available and no $schema is defined, set parent $schema
|
|
26820
|
-
const inheritedDialectIdentifier = (0,ramda__WEBPACK_IMPORTED_MODULE_1__["default"])(
|
|
26964
|
+
const inheritedDialectIdentifier = (0,ramda__WEBPACK_IMPORTED_MODULE_1__["default"])(this.parent.meta.get('inheritedDialectIdentifier'), (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__["default"])(this.parent.$schema));
|
|
26821
26965
|
this.element.meta.set('inheritedDialectIdentifier', inheritedDialectIdentifier);
|
|
26822
26966
|
}
|
|
26823
26967
|
}
|
|
26824
26968
|
handleSchemaIdentifier(objectElement, identifierKeyword = 'id') {
|
|
26825
26969
|
// handle schema identifier in embedded resources
|
|
26826
|
-
// fetch parent's ancestorsSchemaIdentifiers
|
|
26827
|
-
const ancestorsSchemaIdentifiers = this.parent !== undefined ? (
|
|
26970
|
+
// fetch parent's ancestorsSchemaIdentifiers (stored as plain string[])
|
|
26971
|
+
const ancestorsSchemaIdentifiers = this.parent !== undefined ? [...(this.parent.meta.get('ancestorsSchemaIdentifiers') ?? [])] : [];
|
|
26828
26972
|
// get current schema identifier
|
|
26829
|
-
const schemaIdentifier = (0,
|
|
26973
|
+
const schemaIdentifier = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__["default"])(objectElement.get(identifierKeyword));
|
|
26830
26974
|
|
|
26831
|
-
// remember schema identifier if it's a non-empty
|
|
26975
|
+
// remember schema identifier if it's a non-empty string
|
|
26832
26976
|
if ((0,ramda_adjunct__WEBPACK_IMPORTED_MODULE_3__["default"])(schemaIdentifier)) {
|
|
26833
26977
|
ancestorsSchemaIdentifiers.push(schemaIdentifier);
|
|
26834
26978
|
}
|
|
@@ -31553,7 +31697,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
31553
31697
|
*/
|
|
31554
31698
|
class FallbackVisitor extends _Visitor_mjs__WEBPACK_IMPORTED_MODULE_1__["default"] {
|
|
31555
31699
|
enter(path) {
|
|
31556
|
-
this.element = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.cloneDeep)(path.node);
|
|
31700
|
+
this.element = this.consume ? path.node : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.cloneDeep)(path.node);
|
|
31557
31701
|
path.stop();
|
|
31558
31702
|
}
|
|
31559
31703
|
}
|
|
@@ -31619,8 +31763,9 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
31619
31763
|
*/
|
|
31620
31764
|
class SpecificationVisitor extends _Visitor_mjs__WEBPACK_IMPORTED_MODULE_6__["default"] {
|
|
31621
31765
|
specObj;
|
|
31622
|
-
passingOptionsNames = ['specObj', 'openApiGenericElement', 'openApiSemanticElement'];
|
|
31766
|
+
passingOptionsNames = ['specObj', 'openApiGenericElement', 'sourceContext', 'openApiSemanticElement', 'consume'];
|
|
31623
31767
|
openApiGenericElement;
|
|
31768
|
+
sourceContext;
|
|
31624
31769
|
openApiSemanticElement;
|
|
31625
31770
|
constructor({
|
|
31626
31771
|
specObj,
|
|
@@ -31675,7 +31820,7 @@ class SpecificationVisitor extends _Visitor_mjs__WEBPACK_IMPORTED_MODULE_6__["de
|
|
|
31675
31820
|
*/
|
|
31676
31821
|
const visitor = this.retrieveVisitorInstance(specPath, options);
|
|
31677
31822
|
if (visitor instanceof _FallbackVisitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"] && visitor?.constructor === _FallbackVisitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]) {
|
|
31678
|
-
return (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__.cloneDeep)(element);
|
|
31823
|
+
return this.consume ? element : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__.cloneDeep)(element);
|
|
31679
31824
|
}
|
|
31680
31825
|
(0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_5__.traverse)(element, visitor, {
|
|
31681
31826
|
nodeTypeGetter: _speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_5__.getNodePrimitiveType
|
|
@@ -31696,7 +31841,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
31696
31841
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
31697
31842
|
/* harmony export */ });
|
|
31698
31843
|
/* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(28400);
|
|
31699
|
-
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(
|
|
31844
|
+
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(12111);
|
|
31700
31845
|
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(25810);
|
|
31701
31846
|
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(49686);
|
|
31702
31847
|
|
|
@@ -31711,19 +31856,21 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
31711
31856
|
*/
|
|
31712
31857
|
class Visitor {
|
|
31713
31858
|
element;
|
|
31859
|
+
consume = false;
|
|
31860
|
+
consumeSafe = false;
|
|
31714
31861
|
constructor(options = {}) {
|
|
31715
31862
|
Object.assign(this, options);
|
|
31716
31863
|
}
|
|
31717
31864
|
copyMetaAndAttributes(from, to) {
|
|
31718
|
-
if (!from.isMetaEmpty
|
|
31719
|
-
|
|
31720
|
-
|
|
31721
|
-
to.meta = (
|
|
31865
|
+
if (!from.isMetaEmpty && !to.isMetaEmpty) {
|
|
31866
|
+
to.meta = to.meta.merge(from.meta);
|
|
31867
|
+
} else if (!from.isMetaEmpty) {
|
|
31868
|
+
to.meta = from.meta.cloneDeep();
|
|
31722
31869
|
}
|
|
31723
|
-
if (!from.isAttributesEmpty
|
|
31724
|
-
|
|
31725
|
-
|
|
31726
|
-
to.attributes = (0,
|
|
31870
|
+
if (!from.isAttributesEmpty && !to.isAttributesEmpty) {
|
|
31871
|
+
to.attributes = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_0__["default"])(to.attributes, from.attributes);
|
|
31872
|
+
} else if (!from.isAttributesEmpty) {
|
|
31873
|
+
to.attributes = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(from.attributes);
|
|
31727
31874
|
}
|
|
31728
31875
|
_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"].transfer(from, to);
|
|
31729
31876
|
_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__["default"].transfer(from, to);
|
|
@@ -31845,15 +31992,20 @@ class FixedFieldsVisitor extends _SpecificationVisitor_mjs__WEBPACK_IMPORTED_MOD
|
|
|
31845
31992
|
const keyValue = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_3__["default"])(key);
|
|
31846
31993
|
if ((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.isStringElement)(key) && fields.includes(keyValue) && !this.ignoredFields.includes(keyValue)) {
|
|
31847
31994
|
const fixedFieldElement = this.toRefractedElement([...specPath, 'fixedFields', keyValue], value);
|
|
31848
|
-
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"]((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), fixedFieldElement);
|
|
31995
|
+
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"](this.consume ? key : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), fixedFieldElement);
|
|
31849
31996
|
this.copyMetaAndAttributes(memberElement, newMemberElement);
|
|
31850
|
-
newMemberElement.classes.push('fixed-field');
|
|
31851
31997
|
this.element.content.push(newMemberElement);
|
|
31998
|
+
// consume: release processed generic subtree
|
|
31999
|
+
if (this.consume && this.consumeSafe && !memberElement.isFrozen) memberElement.value = undefined;
|
|
31852
32000
|
} else if (this.canSupportSpecificationExtensions && this.specificationExtensionPredicate(memberElement)) {
|
|
31853
32001
|
const extensionElement = this.toRefractedElement(['document', 'extension'], memberElement);
|
|
31854
32002
|
this.element.content.push(extensionElement);
|
|
32003
|
+
// consume: release processed generic subtree
|
|
32004
|
+
if (this.consume && this.consumeSafe && !memberElement.isFrozen) {
|
|
32005
|
+
memberElement.value = undefined;
|
|
32006
|
+
}
|
|
31855
32007
|
} else if (!this.ignoredFields.includes(keyValue)) {
|
|
31856
|
-
this.element.content.push((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
32008
|
+
this.element.content.push(this.consume ? memberElement : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
31857
32009
|
}
|
|
31858
32010
|
});
|
|
31859
32011
|
this.copyMetaAndAttributes(objectElement, this.element);
|
|
@@ -32035,12 +32187,14 @@ class PatternedFieldsVisitor extends _SpecificationVisitor_mjs__WEBPACK_IMPORTED
|
|
|
32035
32187
|
} else if (!this.ignoredFields.includes(keyValue) && this.fieldPatternPredicate(keyValue)) {
|
|
32036
32188
|
const specPath = this.specPath(value);
|
|
32037
32189
|
const patternedFieldElement = this.toRefractedElement(specPath, value);
|
|
32038
|
-
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"]((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), patternedFieldElement);
|
|
32190
|
+
const newMemberElement = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__["default"](this.consume ? key : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(key), patternedFieldElement);
|
|
32039
32191
|
this.copyMetaAndAttributes(memberElement, newMemberElement);
|
|
32040
32192
|
newMemberElement.classes.push('patterned-field');
|
|
32041
32193
|
this.element.content.push(newMemberElement);
|
|
32194
|
+
// consume: release processed generic subtree
|
|
32195
|
+
if (this.consume && this.consumeSafe && !memberElement.isFrozen) memberElement.value = undefined;
|
|
32042
32196
|
} else if (!this.ignoredFields.includes(keyValue)) {
|
|
32043
|
-
this.element.content.push((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
32197
|
+
this.element.content.push(this.consume ? memberElement : (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.cloneDeep)(memberElement));
|
|
32044
32198
|
}
|
|
32045
32199
|
});
|
|
32046
32200
|
this.copyMetaAndAttributes(objectElement, this.element);
|
|
@@ -32903,6 +33057,7 @@ class ComponentsVisitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_2__.BaseFixe
|
|
|
32903
33057
|
this.element = new _elements_Components_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]();
|
|
32904
33058
|
this.specPath = (0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(['document', 'objects', 'Components']);
|
|
32905
33059
|
this.canSupportSpecificationExtensions = true;
|
|
33060
|
+
this.consumeSafe = true;
|
|
32906
33061
|
}
|
|
32907
33062
|
}
|
|
32908
33063
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (ComponentsVisitor);
|
|
@@ -33341,6 +33496,7 @@ class OpenApi3_0Visitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_1__.BaseFixe
|
|
|
33341
33496
|
this.element = new _elements_OpenApi3_0_mjs__WEBPACK_IMPORTED_MODULE_2__["default"]();
|
|
33342
33497
|
this.specPath = (0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(['document', 'objects', 'OpenApi']);
|
|
33343
33498
|
this.canSupportSpecificationExtensions = true;
|
|
33499
|
+
this.consumeSafe = true;
|
|
33344
33500
|
}
|
|
33345
33501
|
ObjectElement(path) {
|
|
33346
33502
|
_bases_mjs__WEBPACK_IMPORTED_MODULE_1__.BaseFixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
@@ -34231,11 +34387,10 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
34231
34387
|
/* harmony export */ });
|
|
34232
34388
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29498);
|
|
34233
34389
|
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25162);
|
|
34234
|
-
/* harmony import */ var
|
|
34235
|
-
/* harmony import */ var
|
|
34236
|
-
/* harmony import */ var
|
|
34237
|
-
/* harmony import */ var
|
|
34238
|
-
/* harmony import */ var _bases_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(74367);
|
|
34390
|
+
/* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(44673);
|
|
34391
|
+
/* harmony import */ var _elements_PathItem_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(98557);
|
|
34392
|
+
/* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(32131);
|
|
34393
|
+
/* harmony import */ var _bases_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(74367);
|
|
34239
34394
|
|
|
34240
34395
|
|
|
34241
34396
|
|
|
@@ -34248,22 +34403,21 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
34248
34403
|
/**
|
|
34249
34404
|
* @public
|
|
34250
34405
|
*/
|
|
34251
|
-
class PathItemVisitor extends
|
|
34406
|
+
class PathItemVisitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_5__.BaseFixedFieldsVisitor {
|
|
34252
34407
|
constructor(options) {
|
|
34253
34408
|
super(options);
|
|
34254
|
-
this.element = new
|
|
34409
|
+
this.element = new _elements_PathItem_mjs__WEBPACK_IMPORTED_MODULE_3__["default"]();
|
|
34255
34410
|
this.specPath = (0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(['document', 'objects', 'PathItem']);
|
|
34411
|
+
this.consumeSafe = true;
|
|
34256
34412
|
}
|
|
34257
34413
|
ObjectElement(path) {
|
|
34258
|
-
|
|
34414
|
+
_bases_mjs__WEBPACK_IMPORTED_MODULE_5__.BaseFixedFieldsVisitor.prototype.ObjectElement.call(this, path);
|
|
34259
34415
|
|
|
34260
34416
|
// decorate Operation elements with HTTP method
|
|
34261
|
-
this.element.filter(
|
|
34417
|
+
this.element.filter(_predicates_mjs__WEBPACK_IMPORTED_MODULE_4__.isOperationElement)
|
|
34262
34418
|
// @ts-ignore
|
|
34263
34419
|
.forEach((operationElement, httpMethodElementCI) => {
|
|
34264
|
-
|
|
34265
|
-
httpMethodElementCS.content = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_3__["default"])(httpMethodElementCS).toUpperCase();
|
|
34266
|
-
operationElement.meta.set('http-method', httpMethodElementCS);
|
|
34420
|
+
operationElement.meta.set('http-method', (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__["default"])(httpMethodElementCI).toUpperCase());
|
|
34267
34421
|
});
|
|
34268
34422
|
|
|
34269
34423
|
// mark this PathItemElement with reference metadata
|
|
@@ -34286,7 +34440,7 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
34286
34440
|
/* harmony export */ });
|
|
34287
34441
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(53679);
|
|
34288
34442
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(29498);
|
|
34289
|
-
/* harmony import */ var
|
|
34443
|
+
/* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(44673);
|
|
34290
34444
|
/* harmony import */ var _elements_Paths_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(8535);
|
|
34291
34445
|
/* harmony import */ var _predicates_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(32131);
|
|
34292
34446
|
/* harmony import */ var _bases_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(74367);
|
|
@@ -34307,6 +34461,7 @@ class PathsVisitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_5__.BasePatterned
|
|
|
34307
34461
|
this.element = new _elements_Paths_mjs__WEBPACK_IMPORTED_MODULE_3__["default"]();
|
|
34308
34462
|
this.specPath = (0,ramda__WEBPACK_IMPORTED_MODULE_1__["default"])(['document', 'objects', 'PathItem']);
|
|
34309
34463
|
this.canSupportSpecificationExtensions = true;
|
|
34464
|
+
this.consumeSafe = true;
|
|
34310
34465
|
this.fieldPatternPredicate = ramda__WEBPACK_IMPORTED_MODULE_0__["default"];
|
|
34311
34466
|
}
|
|
34312
34467
|
ObjectElement(path) {
|
|
@@ -34318,7 +34473,7 @@ class PathsVisitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_5__.BasePatterned
|
|
|
34318
34473
|
.forEach((pathItemElement, key) => {
|
|
34319
34474
|
key.classes.push('openapi-path-template');
|
|
34320
34475
|
key.classes.push('path-template');
|
|
34321
|
-
pathItemElement.meta.set('path', (0,
|
|
34476
|
+
pathItemElement.meta.set('path', (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__["default"])(key));
|
|
34322
34477
|
});
|
|
34323
34478
|
}
|
|
34324
34479
|
}
|
|
@@ -36618,7 +36773,8 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
36618
36773
|
const refract = (value, {
|
|
36619
36774
|
element = 'openApi3_1',
|
|
36620
36775
|
plugins = [],
|
|
36621
|
-
specificationObj = _specification_mjs__WEBPACK_IMPORTED_MODULE_5__["default"]
|
|
36776
|
+
specificationObj = _specification_mjs__WEBPACK_IMPORTED_MODULE_5__["default"],
|
|
36777
|
+
consume = false
|
|
36622
36778
|
} = {}) => {
|
|
36623
36779
|
const genericElement = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__.refract)(value);
|
|
36624
36780
|
const resolvedSpec = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_1__.resolveSpecification)(specificationObj);
|
|
@@ -36635,7 +36791,8 @@ const refract = (value, {
|
|
|
36635
36791
|
*/
|
|
36636
36792
|
const RootVisitorClass = (0,ramda__WEBPACK_IMPORTED_MODULE_4__["default"])(specPath, resolvedSpec);
|
|
36637
36793
|
const rootVisitor = new RootVisitorClass({
|
|
36638
|
-
specObj: resolvedSpec
|
|
36794
|
+
specObj: resolvedSpec,
|
|
36795
|
+
consume
|
|
36639
36796
|
});
|
|
36640
36797
|
(0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_3__.traverse)(genericElement, rootVisitor, {
|
|
36641
36798
|
nodeTypeGetter: _speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_3__.getNodePrimitiveType
|
|
@@ -38157,9 +38314,13 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
38157
38314
|
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
38158
38315
|
/* harmony export */ });
|
|
38159
38316
|
/* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(29498);
|
|
38160
|
-
/* harmony import */ var
|
|
38161
|
-
/* harmony import */ var
|
|
38162
|
-
/* harmony import */ var
|
|
38317
|
+
/* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25162);
|
|
38318
|
+
/* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(44673);
|
|
38319
|
+
/* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(58368);
|
|
38320
|
+
/* harmony import */ var _elements_OpenApi3_1_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(81793);
|
|
38321
|
+
/* harmony import */ var _bases_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(43027);
|
|
38322
|
+
|
|
38323
|
+
|
|
38163
38324
|
|
|
38164
38325
|
|
|
38165
38326
|
|
|
@@ -38171,18 +38332,25 @@ __webpack_require__.r(__webpack_exports__);
|
|
|
38171
38332
|
* @public
|
|
38172
38333
|
*/
|
|
38173
38334
|
|
|
38174
|
-
class OpenApi3_1Visitor extends
|
|
38335
|
+
class OpenApi3_1Visitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_5__.BaseFixedFieldsVisitor {
|
|
38175
38336
|
constructor(options) {
|
|
38176
38337
|
super(options);
|
|
38177
|
-
this.element = new
|
|
38338
|
+
this.element = new _elements_OpenApi3_1_mjs__WEBPACK_IMPORTED_MODULE_4__["default"]();
|
|
38178
38339
|
this.specPath = (0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(['document', 'objects', 'OpenApi']);
|
|
38179
38340
|
this.canSupportSpecificationExtensions = true;
|
|
38341
|
+
this.consumeSafe = true;
|
|
38180
38342
|
this.openApiSemanticElement = this.element;
|
|
38181
38343
|
}
|
|
38182
38344
|
ObjectElement(path) {
|
|
38183
38345
|
const objectElement = path.node;
|
|
38184
38346
|
this.openApiGenericElement = objectElement;
|
|
38185
|
-
|
|
38347
|
+
// precompute values from generic root before consume may release fields
|
|
38348
|
+
if ((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isStringElement)(objectElement.get('jsonSchemaDialect'))) {
|
|
38349
|
+
this.sourceContext = {
|
|
38350
|
+
jsonSchemaDialect: (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__["default"])(objectElement.get('jsonSchemaDialect'))
|
|
38351
|
+
};
|
|
38352
|
+
}
|
|
38353
|
+
_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_3__["default"].prototype.ObjectElement.call(this, path);
|
|
38186
38354
|
}
|
|
38187
38355
|
}
|
|
38188
38356
|
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (OpenApi3_1Visitor);
|
|
@@ -38870,8 +39038,8 @@ class SchemaVisitor extends _bases_mjs__WEBPACK_IMPORTED_MODULE_8__.BaseSchemaVi
|
|
|
38870
39038
|
(0,_predicates_mjs__WEBPACK_IMPORTED_MODULE_5__.isJsonSchemaDialectElement)(this.openApiSemanticElement.jsonSchemaDialect)) {
|
|
38871
39039
|
// @ts-ignore
|
|
38872
39040
|
jsonSchemaDialect = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__["default"])(this.openApiSemanticElement.jsonSchemaDialect);
|
|
38873
|
-
} else if (this.
|
|
38874
|
-
jsonSchemaDialect =
|
|
39041
|
+
} else if (this.sourceContext?.jsonSchemaDialect !== undefined) {
|
|
39042
|
+
jsonSchemaDialect = this.sourceContext.jsonSchemaDialect;
|
|
38875
39043
|
} else {
|
|
38876
39044
|
jsonSchemaDialect = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_2__["default"])(this.jsonSchemaDefaultDialect);
|
|
38877
39045
|
}
|
|
@@ -39218,8 +39386,9 @@ const parse = async source => {
|
|
|
39218
39386
|
if (source.trim().length === 0) {
|
|
39219
39387
|
return parseResult;
|
|
39220
39388
|
}
|
|
39221
|
-
|
|
39389
|
+
let pojo = JSON.parse(source);
|
|
39222
39390
|
const element = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.refract)(pojo);
|
|
39391
|
+
pojo = null; // allow GC to reclaim POJO
|
|
39223
39392
|
element.classes.push('result');
|
|
39224
39393
|
parseResult.push(element);
|
|
39225
39394
|
return parseResult;
|
|
@@ -41193,7 +41362,10 @@ const parse = async (source, options = {}) => {
|
|
|
41193
41362
|
result
|
|
41194
41363
|
} = parseResultElement;
|
|
41195
41364
|
if ((0,ramda_adjunct__WEBPACK_IMPORTED_MODULE_2__["default"])(result)) {
|
|
41196
|
-
const openApiElement = (0,_speclynx_apidom_ns_openapi_3_1__WEBPACK_IMPORTED_MODULE_6__.refractOpenApi3_1)(result,
|
|
41365
|
+
const openApiElement = (0,_speclynx_apidom_ns_openapi_3_1__WEBPACK_IMPORTED_MODULE_6__.refractOpenApi3_1)(result, {
|
|
41366
|
+
consume: true,
|
|
41367
|
+
...refractorOpts
|
|
41368
|
+
});
|
|
41197
41369
|
openApiElement.classes.push('result');
|
|
41198
41370
|
parseResultElement.replaceResult(openApiElement);
|
|
41199
41371
|
}
|