@speclynx/apidom-ns-openapi-3-0 5.1.0 → 5.1.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,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
+ ## [5.1.1](https://github.com/speclynx/apidom/compare/v5.1.0...v5.1.1) (2026-08-19)
7
+
8
+ **Note:** Version bump only for package @speclynx/apidom-ns-openapi-3-0
9
+
6
10
  # [5.1.0](https://github.com/speclynx/apidom/compare/v5.0.2...v5.1.0) (2026-08-09)
7
11
 
8
12
  ### Bug Fixes
@@ -25514,6 +25514,7 @@ const resolveSpecification = specification => {
25514
25514
  __webpack_require__.r(__webpack_exports__);
25515
25515
  /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5162);
25516
25516
  /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(6911);
25517
+ /* harmony import */ var _util_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(977);
25517
25518
 
25518
25519
 
25519
25520
  /**
@@ -25541,7 +25542,7 @@ const serializer = element => {
25541
25542
  node.forEach((value, key) => {
25542
25543
  const k = serialize(key);
25543
25544
  const v = serialize(value);
25544
- if (typeof k === 'string') obj[k] = v;
25545
+ if (typeof k === 'string') (0,_util_mjs__WEBPACK_IMPORTED_MODULE_2__["default"])(obj, k, v);
25545
25546
  });
25546
25547
  return obj;
25547
25548
  }
@@ -25566,6 +25567,38 @@ const serializer = element => {
25566
25567
  /* harmony export */ ]);
25567
25568
 
25568
25569
 
25570
+ /***/ },
25571
+
25572
+ /***/ 977
25573
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
25574
+
25575
+ __webpack_require__.r(__webpack_exports__);
25576
+ /**
25577
+ * Defines a key on a plain object being built from an ApiDOM element tree.
25578
+ *
25579
+ * A "__proto__" key must be defined rather than assigned: assignment invokes
25580
+ * the prototype setter, which drops the member from the result and hands
25581
+ * document content to consumers as the object's prototype. Every other key
25582
+ * takes the plain assignment fast path.
25583
+ */
25584
+ const setProperty = (target, key, value) => {
25585
+ if (key === '__proto__') {
25586
+ Object.defineProperty(target, key, {
25587
+ value,
25588
+ enumerable: true,
25589
+ writable: true,
25590
+ configurable: true
25591
+ });
25592
+ } else {
25593
+ target[key] = value;
25594
+ }
25595
+ };
25596
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (setProperty);
25597
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, [
25598
+ /* harmony export */ "default", 0, /* export default binding */ __WEBPACK_DEFAULT_EXPORT__
25599
+ /* harmony export */ ]);
25600
+
25601
+
25569
25602
  /***/ },
25570
25603
 
25571
25604
  /***/ 6663
@@ -25611,6 +25644,8 @@ class KeyValuePair {
25611
25644
 
25612
25645
  __webpack_require__.r(__webpack_exports__);
25613
25646
  /* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(8138);
25647
+ /* harmony import */ var _util_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(4883);
25648
+
25614
25649
 
25615
25650
  /**
25616
25651
  * Lightweight meta container for Element metadata.
@@ -25627,7 +25662,7 @@ class Metadata {
25627
25662
  return this[name];
25628
25663
  }
25629
25664
  set(name, value) {
25630
- this[name] = value;
25665
+ ;(0,_util_mjs__WEBPACK_IMPORTED_MODULE_1__["default"])(this, name, value);
25631
25666
  }
25632
25667
  hasKey(name) {
25633
25668
  return Object.hasOwn(this, name);
@@ -25660,7 +25695,19 @@ class Metadata {
25660
25695
  */
25661
25696
  cloneShallow() {
25662
25697
  const clone = new Metadata();
25663
- Object.assign(clone, this);
25698
+
25699
+ // Object.assign is the fast path but invokes the prototype setter for a
25700
+ // "__proto__" key, hijacking the clone's prototype. That key can only come
25701
+ // from untrusted input, so check for it once and fall back to a guarded
25702
+ // copy. Copying property descriptors instead would carry writable:false
25703
+ // over from a frozen source and hand back an unmodifiable clone.
25704
+ if (!Object.hasOwn(this, '__proto__')) {
25705
+ Object.assign(clone, this);
25706
+ } else {
25707
+ for (const key of Object.keys(this)) {
25708
+ (0,_util_mjs__WEBPACK_IMPORTED_MODULE_1__["default"])(clone, key, this[key]);
25709
+ }
25710
+ }
25664
25711
  return clone;
25665
25712
  }
25666
25713
 
@@ -28145,6 +28192,8 @@ __webpack_require__.r(__webpack_exports__);
28145
28192
  /* harmony import */ var _CollectionElement_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(4536);
28146
28193
  /* harmony import */ var _MemberElement_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(1770);
28147
28194
  /* harmony import */ var _ObjectSlice_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(8504);
28195
+ /* harmony import */ var _util_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(4883);
28196
+
28148
28197
 
28149
28198
 
28150
28199
 
@@ -28169,7 +28218,7 @@ class ObjectElement extends _CollectionElement_mjs__WEBPACK_IMPORTED_MODULE_0__[
28169
28218
  }
28170
28219
  toValue() {
28171
28220
  return this._content.reduce((results, el) => {
28172
- results[el.key.toValue()] = el.value ? el.value.toValue() : undefined;
28221
+ ;(0,_util_mjs__WEBPACK_IMPORTED_MODULE_3__["default"])(results, el.key.toValue(), el.value ? el.value.toValue() : undefined);
28173
28222
  return results;
28174
28223
  }, {});
28175
28224
  }
@@ -28533,6 +28582,8 @@ _Metadata_mjs__WEBPACK_IMPORTED_MODULE_18__["default"].prototype.cloneDeepElemen
28533
28582
  __webpack_require__.r(__webpack_exports__);
28534
28583
  /* harmony import */ var _elements_SourceMap_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(5810);
28535
28584
  /* harmony import */ var _elements_Style_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(9686);
28585
+ /* harmony import */ var _util_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(4883);
28586
+
28536
28587
 
28537
28588
 
28538
28589
  /**
@@ -28720,12 +28771,12 @@ class JSONSerialiser {
28720
28771
  let hasEntries = false;
28721
28772
  for (const [key, value] of Object.entries(element.meta)) {
28722
28773
  if (value instanceof this.namespace.elements.Element) {
28723
- meta[key] = this.serialise(value);
28774
+ (0,_util_mjs__WEBPACK_IMPORTED_MODULE_2__["default"])(meta, key, this.serialise(value));
28724
28775
  hasEntries = true;
28725
28776
  } else if (value !== undefined) {
28726
28777
  // refract primitives to maintain JSON Refract spec compatibility
28727
28778
  const refracted = element.refract(value);
28728
- meta[key] = this.serialise(refracted);
28779
+ (0,_util_mjs__WEBPACK_IMPORTED_MODULE_2__["default"])(meta, key, this.serialise(refracted));
28729
28780
  rawKeys.push(key);
28730
28781
  hasEntries = true;
28731
28782
  }
@@ -28739,7 +28790,7 @@ class JSONSerialiser {
28739
28790
  const result = {};
28740
28791
  obj.forEach((value, key) => {
28741
28792
  if (value) {
28742
- result[key.toValue()] = this.serialise(value);
28793
+ (0,_util_mjs__WEBPACK_IMPORTED_MODULE_2__["default"])(result, key.toValue(), this.serialise(value));
28743
28794
  }
28744
28795
  });
28745
28796
  if (Object.keys(result).length === 0) {
@@ -28759,6 +28810,38 @@ class JSONSerialiser {
28759
28810
  /* harmony export */ ]);
28760
28811
 
28761
28812
 
28813
+ /***/ },
28814
+
28815
+ /***/ 4883
28816
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
28817
+
28818
+ __webpack_require__.r(__webpack_exports__);
28819
+ /**
28820
+ * Defines a key on a plain object or class instance built from untrusted input.
28821
+ *
28822
+ * A "__proto__" key must be defined rather than assigned: assignment invokes the
28823
+ * prototype setter, which drops the member from the result and replaces the
28824
+ * target's prototype with the incoming value. Every other key takes the plain
28825
+ * assignment fast path.
28826
+ */
28827
+ const setProperty = (target, key, value) => {
28828
+ if (key === '__proto__') {
28829
+ Object.defineProperty(target, key, {
28830
+ value,
28831
+ enumerable: true,
28832
+ writable: true,
28833
+ configurable: true
28834
+ });
28835
+ } else {
28836
+ target[key] = value;
28837
+ }
28838
+ };
28839
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (setProperty);
28840
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, [
28841
+ /* harmony export */ "default", 0, /* export default binding */ __WEBPACK_DEFAULT_EXPORT__
28842
+ /* harmony export */ ]);
28843
+
28844
+
28762
28845
  /***/ },
28763
28846
 
28764
28847
  /***/ 3437