@speclynx/apidom-overlay 4.12.0 → 4.13.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.
@@ -35433,8 +35433,11 @@ __webpack_require__.r(__webpack_exports__);
35433
35433
  /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(97071);
35434
35434
  /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(23321);
35435
35435
  /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(78894);
35436
- /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(25810);
35437
- /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(36663);
35436
+ /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(84660);
35437
+ /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(40094);
35438
+ /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(4823);
35439
+ /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(25810);
35440
+ /* harmony import */ var _registration_mjs__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(36663);
35438
35441
 
35439
35442
 
35440
35443
  const isNull = value => value === null;
@@ -35494,7 +35497,7 @@ class Namespace {
35494
35497
  _attributeElementArrayKeys = [];
35495
35498
  constructor(options) {
35496
35499
  this.Element = _registration_mjs__WEBPACK_IMPORTED_MODULE_1__["default"];
35497
- this.KeyValuePair = _registration_mjs__WEBPACK_IMPORTED_MODULE_12__["default"];
35500
+ this.KeyValuePair = _registration_mjs__WEBPACK_IMPORTED_MODULE_15__["default"];
35498
35501
  if (!options || !options.noDefault) {
35499
35502
  this.useDefault();
35500
35503
  }
@@ -35523,7 +35526,7 @@ class Namespace {
35523
35526
  */
35524
35527
  useDefault() {
35525
35528
  // Set up classes for default elements
35526
- this.register('null', _registration_mjs__WEBPACK_IMPORTED_MODULE_2__["default"]).register('string', _registration_mjs__WEBPACK_IMPORTED_MODULE_3__["default"]).register('number', _registration_mjs__WEBPACK_IMPORTED_MODULE_4__["default"]).register('boolean', _registration_mjs__WEBPACK_IMPORTED_MODULE_5__["default"]).register('array', _registration_mjs__WEBPACK_IMPORTED_MODULE_6__["default"]).register('object', _registration_mjs__WEBPACK_IMPORTED_MODULE_8__["default"]).register('member', _registration_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]).register('ref', _registration_mjs__WEBPACK_IMPORTED_MODULE_10__["default"]).register('link', _registration_mjs__WEBPACK_IMPORTED_MODULE_9__["default"]).register('sourceMap', _registration_mjs__WEBPACK_IMPORTED_MODULE_11__["default"]);
35529
+ this.register('null', _registration_mjs__WEBPACK_IMPORTED_MODULE_2__["default"]).register('string', _registration_mjs__WEBPACK_IMPORTED_MODULE_3__["default"]).register('number', _registration_mjs__WEBPACK_IMPORTED_MODULE_4__["default"]).register('boolean', _registration_mjs__WEBPACK_IMPORTED_MODULE_5__["default"]).register('array', _registration_mjs__WEBPACK_IMPORTED_MODULE_6__["default"]).register('object', _registration_mjs__WEBPACK_IMPORTED_MODULE_8__["default"]).register('member', _registration_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]).register('ref', _registration_mjs__WEBPACK_IMPORTED_MODULE_10__["default"]).register('link', _registration_mjs__WEBPACK_IMPORTED_MODULE_9__["default"]).register('sourceMap', _registration_mjs__WEBPACK_IMPORTED_MODULE_14__["default"]).register('annotation', _registration_mjs__WEBPACK_IMPORTED_MODULE_11__["default"]).register('comment', _registration_mjs__WEBPACK_IMPORTED_MODULE_12__["default"]).register('parseResult', _registration_mjs__WEBPACK_IMPORTED_MODULE_13__["default"]);
35527
35530
 
35528
35531
  // Add instance detection functions to convert existing objects into
35529
35532
  // the corresponding refract elements.
@@ -64979,6 +64982,199 @@ const refractSecurityRequirement = (value, options = {}) => refract(value, {
64979
64982
  });
64980
64983
  /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (refract);
64981
64984
 
64985
+ /***/ },
64986
+
64987
+ /***/ 60574
64988
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
64989
+
64990
+ "use strict";
64991
+ __webpack_require__.r(__webpack_exports__);
64992
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
64993
+ /* harmony export */ ContactElement: () => (/* reexport safe */ _elements_Contact_mjs__WEBPACK_IMPORTED_MODULE_5__["default"]),
64994
+ /* harmony export */ DefinitionsElement: () => (/* reexport safe */ _elements_Definitions_mjs__WEBPACK_IMPORTED_MODULE_22__["default"]),
64995
+ /* harmony export */ ExampleElement: () => (/* reexport safe */ _elements_Example_mjs__WEBPACK_IMPORTED_MODULE_16__["default"]),
64996
+ /* harmony export */ ExternalDocumentationElement: () => (/* reexport safe */ _elements_ExternalDocumentation_mjs__WEBPACK_IMPORTED_MODULE_10__["default"]),
64997
+ /* harmony export */ HeaderElement: () => (/* reexport safe */ _elements_Header_mjs__WEBPACK_IMPORTED_MODULE_17__["default"]),
64998
+ /* harmony export */ HeadersElement: () => (/* reexport safe */ _elements_Headers_mjs__WEBPACK_IMPORTED_MODULE_15__["default"]),
64999
+ /* harmony export */ InfoElement: () => (/* reexport safe */ _elements_Info_mjs__WEBPACK_IMPORTED_MODULE_4__["default"]),
65000
+ /* harmony export */ ItemsElement: () => (/* reexport safe */ _elements_Items_mjs__WEBPACK_IMPORTED_MODULE_12__["default"]),
65001
+ /* harmony export */ LicenseElement: () => (/* reexport safe */ _elements_License_mjs__WEBPACK_IMPORTED_MODULE_6__["default"]),
65002
+ /* harmony export */ OperationElement: () => (/* reexport safe */ _elements_Operation_mjs__WEBPACK_IMPORTED_MODULE_9__["default"]),
65003
+ /* harmony export */ ParameterElement: () => (/* reexport safe */ _elements_Parameter_mjs__WEBPACK_IMPORTED_MODULE_11__["default"]),
65004
+ /* harmony export */ ParametersDefinitionsElement: () => (/* reexport safe */ _elements_ParametersDefinitions_mjs__WEBPACK_IMPORTED_MODULE_23__["default"]),
65005
+ /* harmony export */ PathItemElement: () => (/* reexport safe */ _elements_PathItem_mjs__WEBPACK_IMPORTED_MODULE_8__["default"]),
65006
+ /* harmony export */ PathsElement: () => (/* reexport safe */ _elements_Paths_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]),
65007
+ /* harmony export */ ReferenceElement: () => (/* reexport safe */ _elements_Reference_mjs__WEBPACK_IMPORTED_MODULE_19__["default"]),
65008
+ /* harmony export */ ResponseElement: () => (/* reexport safe */ _elements_Response_mjs__WEBPACK_IMPORTED_MODULE_14__["default"]),
65009
+ /* harmony export */ ResponsesDefinitionsElement: () => (/* reexport safe */ _elements_ResponsesDefinitions_mjs__WEBPACK_IMPORTED_MODULE_24__["default"]),
65010
+ /* harmony export */ ResponsesElement: () => (/* reexport safe */ _elements_Responses_mjs__WEBPACK_IMPORTED_MODULE_13__["default"]),
65011
+ /* harmony export */ SchemaElement: () => (/* reexport safe */ _elements_Schema_mjs__WEBPACK_IMPORTED_MODULE_20__["default"]),
65012
+ /* harmony export */ ScopesElement: () => (/* reexport safe */ _elements_Scopes_mjs__WEBPACK_IMPORTED_MODULE_27__["default"]),
65013
+ /* harmony export */ SecurityDefinitionsElement: () => (/* reexport safe */ _elements_SecurityDefinitions_mjs__WEBPACK_IMPORTED_MODULE_25__["default"]),
65014
+ /* harmony export */ SecurityRequirementElement: () => (/* reexport safe */ _elements_SecurityRequirement_mjs__WEBPACK_IMPORTED_MODULE_28__["default"]),
65015
+ /* harmony export */ SecuritySchemeElement: () => (/* reexport safe */ _elements_SecurityScheme_mjs__WEBPACK_IMPORTED_MODULE_26__["default"]),
65016
+ /* harmony export */ SwaggerElement: () => (/* reexport safe */ _elements_Swagger_mjs__WEBPACK_IMPORTED_MODULE_2__["default"]),
65017
+ /* harmony export */ SwaggerVersionElement: () => (/* reexport safe */ _elements_SwaggerVersion_mjs__WEBPACK_IMPORTED_MODULE_3__["default"]),
65018
+ /* harmony export */ TagElement: () => (/* reexport safe */ _elements_Tag_mjs__WEBPACK_IMPORTED_MODULE_18__["default"]),
65019
+ /* harmony export */ XmlElement: () => (/* reexport safe */ _elements_Xml_mjs__WEBPACK_IMPORTED_MODULE_21__["default"])
65020
+ /* harmony export */ });
65021
+ /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(60572);
65022
+ /* harmony import */ var ramda_adjunct__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(34606);
65023
+ /* harmony import */ var _elements_Swagger_mjs__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(25077);
65024
+ /* harmony import */ var _elements_SwaggerVersion_mjs__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(85263);
65025
+ /* harmony import */ var _elements_Info_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(60135);
65026
+ /* harmony import */ var _elements_Contact_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(22389);
65027
+ /* harmony import */ var _elements_License_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(67684);
65028
+ /* harmony import */ var _elements_Paths_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(38253);
65029
+ /* harmony import */ var _elements_PathItem_mjs__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(83419);
65030
+ /* harmony import */ var _elements_Operation_mjs__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(87162);
65031
+ /* harmony import */ var _elements_ExternalDocumentation_mjs__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(65292);
65032
+ /* harmony import */ var _elements_Parameter_mjs__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(52508);
65033
+ /* harmony import */ var _elements_Items_mjs__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(52445);
65034
+ /* harmony import */ var _elements_Responses_mjs__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(31297);
65035
+ /* harmony import */ var _elements_Response_mjs__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(96730);
65036
+ /* harmony import */ var _elements_Headers_mjs__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(35811);
65037
+ /* harmony import */ var _elements_Example_mjs__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(523);
65038
+ /* harmony import */ var _elements_Header_mjs__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(53188);
65039
+ /* harmony import */ var _elements_Tag_mjs__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(19561);
65040
+ /* harmony import */ var _elements_Reference_mjs__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(94170);
65041
+ /* harmony import */ var _elements_Schema_mjs__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(89750);
65042
+ /* harmony import */ var _elements_Xml_mjs__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(73418);
65043
+ /* harmony import */ var _elements_Definitions_mjs__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(50703);
65044
+ /* harmony import */ var _elements_ParametersDefinitions_mjs__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(15783);
65045
+ /* harmony import */ var _elements_ResponsesDefinitions_mjs__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(23133);
65046
+ /* harmony import */ var _elements_SecurityDefinitions_mjs__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(35553);
65047
+ /* harmony import */ var _elements_SecurityScheme_mjs__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(63100);
65048
+ /* harmony import */ var _elements_Scopes_mjs__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(91408);
65049
+ /* harmony import */ var _elements_SecurityRequirement_mjs__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(66234);
65050
+ /* harmony import */ var _specification_mjs__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(59845);
65051
+
65052
+
65053
+
65054
+ /**
65055
+ * OpenAPI 2.0 specification elements.
65056
+ */
65057
+
65058
+
65059
+
65060
+
65061
+
65062
+
65063
+
65064
+
65065
+
65066
+
65067
+
65068
+
65069
+
65070
+
65071
+
65072
+
65073
+
65074
+
65075
+
65076
+
65077
+
65078
+
65079
+
65080
+
65081
+
65082
+
65083
+
65084
+
65085
+ /**
65086
+ * @public
65087
+ */
65088
+ // Resolve specification to dereference $ref pointers
65089
+ const resolvedSpec = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_0__.resolveSpecification)(_specification_mjs__WEBPACK_IMPORTED_MODULE_29__["default"]);
65090
+
65091
+ // Extract fixed fields as list of { name, alias?, $visitor }
65092
+ const getFixedFields = fixedFieldsSpec => {
65093
+ return Object.entries(fixedFieldsSpec).map(([name, fieldSpec]) => {
65094
+ if ((0,ramda_adjunct__WEBPACK_IMPORTED_MODULE_1__["default"])(fieldSpec)) {
65095
+ return {
65096
+ name,
65097
+ ...fieldSpec
65098
+ };
65099
+ }
65100
+ return {
65101
+ name,
65102
+ $visitor: fieldSpec
65103
+ };
65104
+ });
65105
+ };
65106
+
65107
+ // OpenAPI 2.0 specification elements
65108
+ Object.defineProperty(_elements_Swagger_mjs__WEBPACK_IMPORTED_MODULE_2__["default"], 'fixedFields', {
65109
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Swagger.fixedFields),
65110
+ enumerable: true
65111
+ });
65112
+ Object.defineProperty(_elements_Info_mjs__WEBPACK_IMPORTED_MODULE_4__["default"], 'fixedFields', {
65113
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Info.fixedFields),
65114
+ enumerable: true
65115
+ });
65116
+ Object.defineProperty(_elements_Contact_mjs__WEBPACK_IMPORTED_MODULE_5__["default"], 'fixedFields', {
65117
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Contact.fixedFields),
65118
+ enumerable: true
65119
+ });
65120
+ Object.defineProperty(_elements_License_mjs__WEBPACK_IMPORTED_MODULE_6__["default"], 'fixedFields', {
65121
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.License.fixedFields),
65122
+ enumerable: true
65123
+ });
65124
+ Object.defineProperty(_elements_PathItem_mjs__WEBPACK_IMPORTED_MODULE_8__["default"], 'fixedFields', {
65125
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.PathItem.fixedFields),
65126
+ enumerable: true
65127
+ });
65128
+ Object.defineProperty(_elements_Operation_mjs__WEBPACK_IMPORTED_MODULE_9__["default"], 'fixedFields', {
65129
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Operation.fixedFields),
65130
+ enumerable: true
65131
+ });
65132
+ Object.defineProperty(_elements_ExternalDocumentation_mjs__WEBPACK_IMPORTED_MODULE_10__["default"], 'fixedFields', {
65133
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.ExternalDocumentation.fixedFields),
65134
+ enumerable: true
65135
+ });
65136
+ Object.defineProperty(_elements_Parameter_mjs__WEBPACK_IMPORTED_MODULE_11__["default"], 'fixedFields', {
65137
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Parameter.fixedFields),
65138
+ enumerable: true
65139
+ });
65140
+ Object.defineProperty(_elements_Items_mjs__WEBPACK_IMPORTED_MODULE_12__["default"], 'fixedFields', {
65141
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Items.fixedFields),
65142
+ enumerable: true
65143
+ });
65144
+ Object.defineProperty(_elements_Responses_mjs__WEBPACK_IMPORTED_MODULE_13__["default"], 'fixedFields', {
65145
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Responses.fixedFields),
65146
+ enumerable: true
65147
+ });
65148
+ Object.defineProperty(_elements_Response_mjs__WEBPACK_IMPORTED_MODULE_14__["default"], 'fixedFields', {
65149
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Response.fixedFields),
65150
+ enumerable: true
65151
+ });
65152
+ Object.defineProperty(_elements_Header_mjs__WEBPACK_IMPORTED_MODULE_17__["default"], 'fixedFields', {
65153
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Header.fixedFields),
65154
+ enumerable: true
65155
+ });
65156
+ Object.defineProperty(_elements_Tag_mjs__WEBPACK_IMPORTED_MODULE_18__["default"], 'fixedFields', {
65157
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Tag.fixedFields),
65158
+ enumerable: true
65159
+ });
65160
+ Object.defineProperty(_elements_Reference_mjs__WEBPACK_IMPORTED_MODULE_19__["default"], 'fixedFields', {
65161
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Reference.fixedFields),
65162
+ enumerable: true
65163
+ });
65164
+ Object.defineProperty(_elements_Schema_mjs__WEBPACK_IMPORTED_MODULE_20__["default"], 'fixedFields', {
65165
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.Schema.fixedFields),
65166
+ enumerable: true
65167
+ });
65168
+ Object.defineProperty(_elements_Xml_mjs__WEBPACK_IMPORTED_MODULE_21__["default"], 'fixedFields', {
65169
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.XML.fixedFields),
65170
+ enumerable: true
65171
+ });
65172
+ Object.defineProperty(_elements_SecurityScheme_mjs__WEBPACK_IMPORTED_MODULE_26__["default"], 'fixedFields', {
65173
+ get: () => getFixedFields(resolvedSpec.visitors.document.objects.SecurityScheme.fixedFields),
65174
+ enumerable: true
65175
+ });
65176
+
65177
+
64982
65178
  /***/ },
64983
65179
 
64984
65180
  /***/ 72880
@@ -91667,23 +91863,23 @@ class BundleStrategy {
91667
91863
 
91668
91864
  /***/ },
91669
91865
 
91670
- /***/ 5138
91866
+ /***/ 95416
91671
91867
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
91672
91868
 
91673
91869
  "use strict";
91674
91870
  __webpack_require__.r(__webpack_exports__);
91675
91871
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
91676
- /* harmony export */ OpenAPI3_0BundleVisitor: () => (/* reexport safe */ _visitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]),
91872
+ /* harmony export */ OpenAPI2BundleVisitor: () => (/* reexport safe */ _visitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]),
91677
91873
  /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
91678
91874
  /* harmony export */ });
91679
91875
  /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(12111);
91680
91876
  /* harmony import */ var _speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(80796);
91681
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(43151);
91682
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(32131);
91877
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(3677);
91878
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(26365);
91683
91879
  /* harmony import */ var _Reference_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(82302);
91684
91880
  /* harmony import */ var _ReferenceSet_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(88526);
91685
91881
  /* harmony import */ var _BundleStrategy_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(73723);
91686
- /* harmony import */ var _visitor_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(98968);
91882
+ /* harmony import */ var _visitor_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(61210);
91687
91883
 
91688
91884
 
91689
91885
 
@@ -91697,21 +91893,21 @@ __webpack_require__.r(__webpack_exports__);
91697
91893
  /**
91698
91894
  * @public
91699
91895
  */
91700
- class OpenAPI3_0BundleStrategy extends _BundleStrategy_mjs__WEBPACK_IMPORTED_MODULE_6__["default"] {
91896
+ class OpenAPI2BundleStrategy extends _BundleStrategy_mjs__WEBPACK_IMPORTED_MODULE_6__["default"] {
91701
91897
  constructor(options) {
91702
91898
  super({
91703
91899
  ...(options ?? {}),
91704
- name: 'openapi-3-0'
91900
+ name: 'openapi-2'
91705
91901
  });
91706
91902
  }
91707
91903
  canBundle(file) {
91708
91904
  // assert by media type
91709
91905
  if (file.mediaType !== 'text/plain') {
91710
- return _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_2__["default"].includes(file.mediaType);
91906
+ return _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_2__["default"].includes(file.mediaType);
91711
91907
  }
91712
91908
 
91713
91909
  // assert by inspecting ApiDOM
91714
- return (0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_3__.isOpenApi3_0Element)(file.parseResult?.result);
91910
+ return (0,_speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_3__.isSwaggerElement)(file.parseResult?.result);
91715
91911
  }
91716
91912
  async bundle(file, options) {
91717
91913
  const immutableRefSet = options.bundle.refSet ?? new _ReferenceSet_mjs__WEBPACK_IMPORTED_MODULE_5__["default"]();
@@ -91764,11 +91960,11 @@ class OpenAPI3_0BundleStrategy extends _BundleStrategy_mjs__WEBPACK_IMPORTED_MOD
91764
91960
  }
91765
91961
  }
91766
91962
 
91767
- /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (OpenAPI3_0BundleStrategy);
91963
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (OpenAPI2BundleStrategy);
91768
91964
 
91769
91965
  /***/ },
91770
91966
 
91771
- /***/ 98968
91967
+ /***/ 61210
91772
91968
  (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
91773
91969
 
91774
91970
  "use strict";
@@ -91784,32 +91980,24 @@ __webpack_require__.r(__webpack_exports__);
91784
91980
  /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(37205);
91785
91981
  /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(44673);
91786
91982
  /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(16280);
91787
- /* harmony import */ var _speclynx_apidom_error__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(44641);
91788
- /* harmony import */ var _speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(80796);
91789
- /* harmony import */ var _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(12020);
91790
- /* harmony import */ var _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(61198);
91791
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(30609);
91792
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(64708);
91793
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(32131);
91794
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(21314);
91795
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(29881);
91796
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(23806);
91797
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(23031);
91798
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(63842);
91799
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(87455);
91800
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(55122);
91801
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(71117);
91802
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(72257);
91803
- /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(69511);
91804
- /* harmony import */ var _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(89693);
91805
- /* harmony import */ var _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(34968);
91806
- /* harmony import */ var _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(55086);
91807
- /* harmony import */ var _errors_MaximumResolveDepthError_mjs__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(10476);
91808
- /* harmony import */ var _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(18917);
91809
- /* harmony import */ var _parse_index_mjs__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(85533);
91810
- /* harmony import */ var _Reference_mjs__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(82302);
91811
- /* harmony import */ var _util_mjs__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(78814);
91812
-
91983
+ /* harmony import */ var _speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(80796);
91984
+ /* harmony import */ var _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(12020);
91985
+ /* harmony import */ var _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(61198);
91986
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(61500);
91987
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(86059);
91988
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(59014);
91989
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(3498);
91990
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(26365);
91991
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(72880);
91992
+ /* harmony import */ var _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(60574);
91993
+ /* harmony import */ var _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(89693);
91994
+ /* harmony import */ var _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(34968);
91995
+ /* harmony import */ var _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(55086);
91996
+ /* harmony import */ var _errors_MaximumResolveDepthError_mjs__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(10476);
91997
+ /* harmony import */ var _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(18917);
91998
+ /* harmony import */ var _parse_index_mjs__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(85533);
91999
+ /* harmony import */ var _Reference_mjs__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(82302);
92000
+ /* harmony import */ var _util_mjs__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(78814);
91813
92001
 
91814
92002
 
91815
92003
 
@@ -91826,41 +92014,31 @@ __webpack_require__.r(__webpack_exports__);
91826
92014
 
91827
92015
  /**
91828
92016
  * Maps the `referenced-element` meta value (set during refraction) to the
91829
- * Components Object field where the referenced element should be hoisted.
91830
- * Field names are sourced from the Components Object fixed fields so they
91831
- * cannot drift from the namespace definition.
92017
+ * top-level Swagger Object field where the referenced element should be
92018
+ * hoisted. Unlike OpenAPI 3.x, OpenAPI 2.0 has no single Components Object;
92019
+ * reusable definitions live directly under the document root. Field names are
92020
+ * sourced from the Swagger Object fixed fields so they cannot drift from the
92021
+ * namespace definition.
91832
92022
  */
91833
- const cf = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__.fixedFields)(_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_12__["default"], {
92023
+ const sf = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__.fixedFields)(_speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_17__.SwaggerElement, {
91834
92024
  indexed: true
91835
92025
  });
91836
- const componentFieldByReferencedElement = {
91837
- schema: cf.schemas.name,
91838
- response: cf.responses.name,
91839
- parameter: cf.parameters.name,
91840
- example: cf.examples.name,
91841
- requestBody: cf.requestBodies.name,
91842
- header: cf.headers.name,
91843
- securityScheme: cf.securitySchemes.name,
91844
- link: cf.links.name,
91845
- callback: cf.callbacks.name
92026
+ const fieldByReferencedElement = {
92027
+ schema: sf.definitions.name,
92028
+ parameter: sf.parameters.name,
92029
+ response: sf.responses.name
91846
92030
  };
91847
92031
 
91848
92032
  /**
91849
- * Maps a Components Object field to the named-content element the namespace
91850
- * uses for it, so a bundle-created field matches a parsed/refracted one
91851
- * (e.g. carries the `components-schemas` class) rather than being a generic
92033
+ * Maps a top-level Swagger Object field to the named-content element the
92034
+ * namespace uses for it, so a bundle-created field matches a parsed/refracted
92035
+ * one (e.g. carries the `definitions` class) rather than being a generic
91852
92036
  * object.
91853
92037
  */
91854
- const componentFieldElementByField = {
91855
- [cf.schemas.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_23__["default"],
91856
- [cf.responses.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_22__["default"],
91857
- [cf.parameters.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_20__["default"],
91858
- [cf.examples.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_17__["default"],
91859
- [cf.requestBodies.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_21__["default"],
91860
- [cf.headers.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_18__["default"],
91861
- [cf.securitySchemes.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_24__["default"],
91862
- [cf.links.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_19__["default"],
91863
- [cf.callbacks.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_16__["default"]
92038
+ const fieldElementByField = {
92039
+ [sf.definitions.name]: _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_17__.DefinitionsElement,
92040
+ [sf.parameters.name]: _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_17__.ParametersDefinitionsElement,
92041
+ [sf.responses.name]: _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_17__.ResponsesDefinitionsElement
91864
92042
  };
91865
92043
 
91866
92044
  /**
@@ -91870,7 +92048,7 @@ const componentFieldElementByField = {
91870
92048
  /**
91871
92049
  * @public
91872
92050
  */
91873
- class OpenAPI3_0BundleVisitor {
92051
+ class OpenAPI2BundleVisitor {
91874
92052
  reference;
91875
92053
  options;
91876
92054
 
@@ -91880,7 +92058,7 @@ class OpenAPI3_0BundleVisitor {
91880
92058
  * Derived from the shared refSet's root reference.
91881
92059
  */
91882
92060
  get entryURI() {
91883
- return _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.stripHash(this.reference.refSet?.rootRef?.uri ?? '');
92061
+ return _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.stripHash(this.reference.refSet?.rootRef?.uri ?? '');
91884
92062
  }
91885
92063
 
91886
92064
  /**
@@ -91892,8 +92070,8 @@ class OpenAPI3_0BundleVisitor {
91892
92070
 
91893
92071
  /**
91894
92072
  * The entry document element. Hoisted external fragments are placed into its
91895
- * `components` object. The `canBundle` guard guarantees it is an
91896
- * OpenApi3_0Element.
92073
+ * top-level definition fields. The `canBundle` guard guarantees it is a
92074
+ * SwaggerElement.
91897
92075
  */
91898
92076
  get entryResult() {
91899
92077
  return this.entryParseResult.result;
@@ -91907,8 +92085,8 @@ class OpenAPI3_0BundleVisitor {
91907
92085
  assignments;
91908
92086
 
91909
92087
  /**
91910
- * Component names already reserved per Components Object field. Reserved
91911
- * before recursion so collision suffixing (`Pet`, `Pet-2`, ...) accounts for
92088
+ * Component names already reserved per definition field. Reserved before
92089
+ * recursion so collision suffixing (`Pet`, `Pet-2`, ...) accounts for
91912
92090
  * components that are still being bundled.
91913
92091
  */
91914
92092
  reservedNames;
@@ -91923,9 +92101,9 @@ class OpenAPI3_0BundleVisitor {
91923
92101
 
91924
92102
  /**
91925
92103
  * Canonical URIs of Path Item Objects currently being inlined. Path Items
91926
- * are not hoisted into Components Object (no `components.pathItems` in
91927
- * OpenAPI 3.0), so the `assignments` map can't break their cycles. This
91928
- * stack guards against circular external Path Item references.
92104
+ * are not a top-level definition field in OpenAPI 2.0, so the `assignments`
92105
+ * map can't break their cycles. This stack guards against circular external
92106
+ * Path Item references.
91929
92107
  */
91930
92108
  inlineStack;
91931
92109
  constructor({
@@ -91955,12 +92133,12 @@ class OpenAPI3_0BundleVisitor {
91955
92133
  byType.set(type, refracted);
91956
92134
  }
91957
92135
  toBaseURI(uri) {
91958
- return _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.resolve(this.reference.uri, _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.sanitize(_util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.stripHash(uri)));
92136
+ return _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.resolve(this.reference.uri, _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.sanitize(_util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.stripHash(uri)));
91959
92137
  }
91960
92138
  async toReference(uri) {
91961
92139
  // detect maximum depth of resolution
91962
92140
  if (this.reference.depth >= this.options.resolve.maxDepth) {
91963
- throw new _errors_MaximumResolveDepthError_mjs__WEBPACK_IMPORTED_MODULE_28__["default"](`Maximum resolution depth of ${this.options.resolve.maxDepth} has been exceeded by file "${this.reference.uri}"`, {
92141
+ throw new _errors_MaximumResolveDepthError_mjs__WEBPACK_IMPORTED_MODULE_21__["default"](`Maximum resolution depth of ${this.options.resolve.maxDepth} has been exceeded by file "${this.reference.uri}"`, {
91964
92142
  maxDepth: this.options.resolve.maxDepth,
91965
92143
  uri: this.reference.uri
91966
92144
  });
@@ -91974,14 +92152,14 @@ class OpenAPI3_0BundleVisitor {
91974
92152
  if (refSet.has(baseURI)) {
91975
92153
  return refSet.find((0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(baseURI, 'uri'));
91976
92154
  }
91977
- const parseResult = await (0,_parse_index_mjs__WEBPACK_IMPORTED_MODULE_30__["default"])(_util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.unsanitize(baseURI), {
92155
+ const parseResult = await (0,_parse_index_mjs__WEBPACK_IMPORTED_MODULE_23__["default"])(_util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.unsanitize(baseURI), {
91978
92156
  ...this.options,
91979
92157
  parse: {
91980
92158
  ...this.options.parse,
91981
92159
  mediaType: 'text/plain'
91982
92160
  }
91983
92161
  });
91984
- const reference = new _Reference_mjs__WEBPACK_IMPORTED_MODULE_31__["default"]({
92162
+ const reference = new _Reference_mjs__WEBPACK_IMPORTED_MODULE_24__["default"]({
91985
92163
  uri: baseURI,
91986
92164
  value: parseResult,
91987
92165
  depth: this.reference.depth + 1
@@ -91991,12 +92169,12 @@ class OpenAPI3_0BundleVisitor {
91991
92169
  }
91992
92170
 
91993
92171
  /**
91994
- * Normalizes a self-file reference (e.g. `./root.json#/components/schemas/Pet`)
91995
- * to a bare fragment (`#/components/schemas/Pet`) so the bundled document stays
92172
+ * Normalizes a self-file reference (e.g. `./root.json#/definitions/Pet`)
92173
+ * to a bare fragment (`#/definitions/Pet`) so the bundled document stays
91996
92174
  * transferable. Bare fragments are returned unchanged.
91997
92175
  */
91998
92176
  normalizeSelfFileRef(ref) {
91999
- return ref.startsWith('#') ? ref : _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.getHash(ref);
92177
+ return ref.startsWith('#') ? ref : _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.getHash(ref);
92000
92178
  }
92001
92179
 
92002
92180
  /**
@@ -92015,13 +92193,13 @@ class OpenAPI3_0BundleVisitor {
92015
92193
  // breach (MaximumBundleDepthError, which also extends BundleError) is a
92016
92194
  // resolution failure and flows through below — wrapped and subject to
92017
92195
  // continueOnError, like dereferencing.
92018
- if (error instanceof _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_25__["default"] && !(error instanceof _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_27__["default"])) {
92196
+ if (error instanceof _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_18__["default"] && !(error instanceof _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_20__["default"])) {
92019
92197
  throw error;
92020
92198
  }
92021
92199
  const {
92022
92200
  continueOnError
92023
92201
  } = this.options.bundle;
92024
- const isEntryDocument = _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.stripHash(this.reference.refSet?.rootRef?.uri ?? '') === this.reference.uri;
92202
+ const isEntryDocument = _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.stripHash(this.reference.refSet?.rootRef?.uri ?? '') === this.reference.uri;
92025
92203
  const uri = this.reference.uri;
92026
92204
  const type = referencingElement.element;
92027
92205
  const codeFrame = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_7__["default"])(referencingElement);
@@ -92035,12 +92213,12 @@ class OpenAPI3_0BundleVisitor {
92035
92213
  codeFrame
92036
92214
  };
92037
92215
  let unresolvedError;
92038
- if (error instanceof _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_26__["default"]) {
92216
+ if (error instanceof _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_19__["default"]) {
92039
92217
  // @ts-ignore
92040
92218
  error.trace = [hop, ...error.trace];
92041
92219
  unresolvedError = error;
92042
92220
  } else {
92043
- unresolvedError = new _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_26__["default"](message, {
92221
+ unresolvedError = new _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_19__["default"](message, {
92044
92222
  cause: error,
92045
92223
  type,
92046
92224
  uri,
@@ -92056,21 +92234,16 @@ class OpenAPI3_0BundleVisitor {
92056
92234
  }
92057
92235
 
92058
92236
  /**
92059
- * Lazily creates the Components Object (and the requested field within it)
92060
- * on the entry document, returning the field where a fragment is hoisted.
92237
+ * Lazily creates the requested top-level definition field on the entry
92238
+ * document, returning the field where a fragment is hoisted.
92061
92239
  */
92062
- ensureComponentsField(field) {
92240
+ ensureField(field) {
92063
92241
  const entryResult = this.entryResult;
92064
- let components = entryResult.components;
92065
- if (!(0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isObjectElement)(components)) {
92066
- components = new _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_12__["default"]();
92067
- entryResult.components = components;
92068
- }
92069
- let fieldElement = components.get(field);
92242
+ let fieldElement = entryResult.get(field);
92070
92243
  if (!(0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isObjectElement)(fieldElement)) {
92071
- const FieldElement = componentFieldElementByField[field] ?? _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__["default"];
92244
+ const FieldElement = fieldElementByField[field] ?? _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__["default"];
92072
92245
  fieldElement = new FieldElement();
92073
- components.set(field, fieldElement);
92246
+ entryResult.set(field, fieldElement);
92074
92247
  }
92075
92248
  return fieldElement;
92076
92249
  }
@@ -92080,7 +92253,7 @@ class OpenAPI3_0BundleVisitor {
92080
92253
  * falling back to the referenced file's basename.
92081
92254
  */
92082
92255
  basenameOf(jsonPointer, baseURI) {
92083
- const tokens = (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__.parse)(jsonPointer).tree;
92256
+ const tokens = (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__.parse)(jsonPointer).tree;
92084
92257
  let candidate = tokens.length > 0 ? tokens[tokens.length - 1] : '';
92085
92258
  if (candidate === '') {
92086
92259
  const lastSlash = baseURI.lastIndexOf('/');
@@ -92099,7 +92272,7 @@ class OpenAPI3_0BundleVisitor {
92099
92272
  */
92100
92273
  baseName(element, field, jsonPointer, baseURI) {
92101
92274
  // strategy specific options take precedence over the top-level bundle options
92102
- const componentNamesStrategy = this.options.bundle.strategyOpts['openapi-3-0']?.componentNamesStrategy ?? this.options.bundle.componentNamesStrategy;
92275
+ const componentNamesStrategy = this.options.bundle.strategyOpts['openapi-2']?.componentNamesStrategy ?? this.options.bundle.componentNamesStrategy;
92103
92276
  if (typeof componentNamesStrategy === 'function') {
92104
92277
  const resolved = componentNamesStrategy({
92105
92278
  element,
@@ -92115,7 +92288,7 @@ class OpenAPI3_0BundleVisitor {
92115
92288
  if (componentNamesStrategy === 'title') {
92116
92289
  const title = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isObjectElement)(element) ? (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__["default"])(element.get('title')) : undefined;
92117
92290
  if (typeof title === 'string' && title.trim() !== '') {
92118
- const name = (0,_util_mjs__WEBPACK_IMPORTED_MODULE_32__.sanitizeComponentName)((0,_util_mjs__WEBPACK_IMPORTED_MODULE_32__.toPascalCase)(title));
92291
+ const name = (0,_util_mjs__WEBPACK_IMPORTED_MODULE_25__.sanitizeComponentName)((0,_util_mjs__WEBPACK_IMPORTED_MODULE_25__.toPascalCase)(title));
92119
92292
  if (name !== '') return name;
92120
92293
  }
92121
92294
  // fall back to basename when no usable title is present
@@ -92125,16 +92298,21 @@ class OpenAPI3_0BundleVisitor {
92125
92298
 
92126
92299
  /**
92127
92300
  * Computes a collision-free component name within the target field. A name is
92128
- * taken if it's already placed in components or reserved by a component that
92301
+ * taken if it's already placed in the field or reserved by a component that
92129
92302
  * is still being bundled (reserved before recursion).
92130
92303
  */
92131
92304
  uniqueName(candidate, field) {
92132
- const fieldElement = this.ensureComponentsField(field);
92305
+ const fieldElement = this.ensureField(field);
92133
92306
  const reserved = this.reservedNames.get(field) ?? new Set();
92134
- return (0,_util_mjs__WEBPACK_IMPORTED_MODULE_32__.uniqueName)(candidate, name => fieldElement.hasKey(name) || reserved.has(name));
92307
+ return (0,_util_mjs__WEBPACK_IMPORTED_MODULE_25__.uniqueName)(candidate, name => fieldElement.hasKey(name) || reserved.has(name));
92135
92308
  }
92136
- async ReferenceElement(path) {
92137
- const referencingElement = path.node;
92309
+
92310
+ /**
92311
+ * Bundles a Reference Object (parameters/responses) or a JSON Reference
92312
+ * Object (schemas). The two reference flavors differ only in their predicate
92313
+ * and refraction helpers, so the shared logic is parameterized here.
92314
+ */
92315
+ async bundleReference(path, referencingElement, isSemanticReference, isReferenceLike, refractReferenceFn, label) {
92138
92316
  const $ref = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__["default"])(referencingElement.$ref);
92139
92317
  const retrievalURI = this.toBaseURI($ref);
92140
92318
  const isInternalReference = this.entryURI === retrievalURI;
@@ -92152,16 +92330,16 @@ class OpenAPI3_0BundleVisitor {
92152
92330
  path.skip();
92153
92331
  return;
92154
92332
  }
92155
- const $refBaseURI = _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.resolve(retrievalURI, $ref);
92156
- const jsonPointer = _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__.URIFragmentIdentifier.fromURIReference($refBaseURI);
92333
+ const $refBaseURI = _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.resolve(retrievalURI, $ref);
92334
+ const jsonPointer = _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__.URIFragmentIdentifier.fromURIReference($refBaseURI);
92157
92335
 
92158
- // the target bucket depends on the referencing context, so it's part of the
92336
+ // the target field depends on the referencing context, so it's part of the
92159
92337
  // identity: the same external target referenced as e.g. both a parameter and
92160
- // a response must be hoisted into both components fields. The refractor sets
92161
- // `referenced-element` for every Reference Object position; the `schemas`
92338
+ // a response must be hoisted into both fields. The refractor sets
92339
+ // `referenced-element` for every Reference Object position; the `schema`
92162
92340
  // fallback is a defensive default for the (unexpected) untagged case.
92163
92341
  const referencedElementType = referencingElement.meta.get('referenced-element');
92164
- const field = componentFieldByReferencedElement[referencedElementType] ?? componentFieldByReferencedElement.schema;
92342
+ const field = fieldByReferencedElement[referencedElementType] ?? fieldByReferencedElement.schema;
92165
92343
  const canonicalKey = `${field}\t${retrievalURI}#${jsonPointer}`;
92166
92344
 
92167
92345
  // already hoisted (or being hoisted) — just rewrite the pointer.
@@ -92181,7 +92359,7 @@ class OpenAPI3_0BundleVisitor {
92181
92359
  try {
92182
92360
  // detect maximum depth of bundling
92183
92361
  if (this.reference.depth >= this.options.bundle.maxDepth) {
92184
- throw new _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_27__["default"](`Maximum bundle depth of "${this.options.bundle.maxDepth}" has been exceeded in file "${this.reference.uri}"`, {
92362
+ throw new _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_20__["default"](`Maximum bundle depth of "${this.options.bundle.maxDepth}" has been exceeded in file "${this.reference.uri}"`, {
92185
92363
  maxDepth: this.options.bundle.maxDepth,
92186
92364
  uri: this.reference.uri
92187
92365
  });
@@ -92189,21 +92367,21 @@ class OpenAPI3_0BundleVisitor {
92189
92367
  const reference = await this.toReference($ref);
92190
92368
 
92191
92369
  // possibly non-semantic fragment
92192
- let referencedElement = (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__.evaluate)(reference.value.result, jsonPointer);
92370
+ let referencedElement = (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_9__.evaluate)(reference.value.result, jsonPointer);
92193
92371
 
92194
92372
  // apply semantics to the fragment so nested references become Reference Objects
92195
- if (referencedElement.element !== referencedElementType && !(0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_14__.isReferenceElement)(referencedElement)) {
92373
+ if (referencedElement.element !== referencedElementType && !isSemanticReference(referencedElement)) {
92196
92374
  const cached = this.getRefracted(referencedElement, referencedElementType);
92197
92375
  if (cached !== undefined) {
92198
92376
  referencedElement = cached;
92199
- } else if ((0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_15__.isReferenceLikeElement)(referencedElement)) {
92377
+ } else if (isReferenceLike(referencedElement)) {
92200
92378
  const sourceElement = referencedElement;
92201
- referencedElement = (0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_13__.refractReference)(referencedElement);
92379
+ referencedElement = refractReferenceFn(referencedElement);
92202
92380
  referencedElement.meta.set('referenced-element', referencedElementType);
92203
92381
  this.setRefracted(sourceElement, referencedElementType, referencedElement);
92204
92382
  } else {
92205
92383
  const sourceElement = referencedElement;
92206
- referencedElement = (0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_13__["default"])(referencedElement, {
92384
+ referencedElement = (0,_speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_13__["default"])(referencedElement, {
92207
92385
  element: referencedElementType
92208
92386
  });
92209
92387
  this.setRefracted(sourceElement, referencedElementType, referencedElement);
@@ -92211,16 +92389,16 @@ class OpenAPI3_0BundleVisitor {
92211
92389
  }
92212
92390
  const preferredName = this.baseName(referencedElement, field, jsonPointer, retrievalURI);
92213
92391
  const componentName = this.uniqueName(preferredName, field);
92214
- const internalPointer = `#/components/${field}/${(0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__.escape)(componentName)}`;
92392
+ const internalPointer = `#/${field}/${(0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__.escape)(componentName)}`;
92215
92393
 
92216
92394
  // a rename means two distinct targets resolved to the same name; each
92217
92395
  // keeps its own component (and origin), so report the rename per severity.
92218
92396
  // strategy specific options take precedence over the top-level bundle options
92219
- const onComponentNameCollision = this.options.bundle.strategyOpts['openapi-3-0']?.onComponentNameCollision ?? this.options.bundle.onComponentNameCollision;
92397
+ const onComponentNameCollision = this.options.bundle.strategyOpts['openapi-2']?.onComponentNameCollision ?? this.options.bundle.onComponentNameCollision;
92220
92398
  if (componentName !== preferredName && onComponentNameCollision !== 'off') {
92221
- const message = `Component "${preferredName}" in components/${field} is referenced with the same name but different content. Renamed to "${componentName}".`;
92399
+ const message = `Component "${preferredName}" in ${field} is referenced with the same name but different content. Renamed to "${componentName}".`;
92222
92400
  if (onComponentNameCollision === 'error') {
92223
- throw new _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_25__["default"](message);
92401
+ throw new _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_18__["default"](message);
92224
92402
  }
92225
92403
  const annotation = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__["default"](message);
92226
92404
  annotation.classes.push('warning');
@@ -92237,7 +92415,7 @@ class OpenAPI3_0BundleVisitor {
92237
92415
 
92238
92416
  // own a copy of the fragment and bundle its own external references
92239
92417
  const hoistedElement = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__.cloneDeep)(referencedElement);
92240
- const visitor = new OpenAPI3_0BundleVisitor({
92418
+ const visitor = new OpenAPI2BundleVisitor({
92241
92419
  reference,
92242
92420
  options: this.options,
92243
92421
  assignments: this.assignments,
@@ -92245,7 +92423,7 @@ class OpenAPI3_0BundleVisitor {
92245
92423
  refractCache: this.refractCache,
92246
92424
  inlineStack: this.inlineStack
92247
92425
  });
92248
- const bundledElement = await (0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_9__.traverseAsync)(hoistedElement, visitor, {
92426
+ const bundledElement = await (0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_8__.traverseAsync)(hoistedElement, visitor, {
92249
92427
  mutable: true
92250
92428
  });
92251
92429
 
@@ -92254,23 +92432,738 @@ class OpenAPI3_0BundleVisitor {
92254
92432
  bundledElement.meta.set('ref-origin', reference.uri);
92255
92433
  }
92256
92434
 
92257
- // place the bundled fragment into the entry document's components
92258
- this.ensureComponentsField(field).set(componentName, bundledElement);
92435
+ // place the bundled fragment into the entry document's definitions
92436
+ this.ensureField(field).set(componentName, bundledElement);
92259
92437
 
92260
92438
  // rewrite the referencing element to point at the hoisted fragment
92261
92439
  referencingElement.set('$ref', internalPointer);
92262
92440
  path.skip();
92263
92441
  } catch (error) {
92264
- this.handleError(`Error while bundling Reference Object. Cannot resolve $ref "${$ref}": ${error.message}`, error, referencingElement, '$ref', $ref, path);
92442
+ this.handleError(`Error while bundling ${label}. Cannot resolve $ref "${$ref}": ${error.message}`, error, referencingElement, '$ref', $ref, path);
92265
92443
  path.skip();
92266
92444
  }
92267
92445
  }
92268
92446
 
92269
92447
  /**
92270
- * Path Item Object is not a Components Object field in OpenAPI 3.0
92271
- * (unlike 3.1 which has `components.pathItems`). An external Path Item
92272
- * reference therefore cannot be hoisted; it is inlined in place instead,
92273
- * after bundling its own external references.
92448
+ * Reference Object covers reusable Parameter and Response Objects, which are
92449
+ * hoisted into the top-level `parameters` and `responses` fields.
92450
+ */
92451
+ async ReferenceElement(path) {
92452
+ await this.bundleReference(path, path.node, _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_15__.isReferenceElement, _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_16__.isReferenceLikeElement, _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_13__.refractReference, 'Reference Object');
92453
+ }
92454
+
92455
+ /**
92456
+ * JSON Reference Object covers reusable Schema Objects, which are hoisted
92457
+ * into the top-level `definitions` field.
92458
+ */
92459
+ async JSONReferenceElement(path) {
92460
+ await this.bundleReference(path, path.node, _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_12__.isJSONReferenceElement, _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_14__.isJSONReferenceLikeElement, _speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_11__.refractJSONReference, 'JSON Reference Object');
92461
+ }
92462
+
92463
+ /**
92464
+ * Path Item Object is not a top-level definition field in OpenAPI 2.0, so an
92465
+ * external Path Item reference cannot be hoisted; it is inlined in place
92466
+ * instead, after bundling its own external references.
92467
+ */
92468
+ async PathItemElement(path) {
92469
+ const pathItemElement = path.node;
92470
+
92471
+ // ignore Path Item Objects without a $ref field
92472
+ if (!(0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isStringElement)(pathItemElement.$ref)) {
92473
+ return;
92474
+ }
92475
+ const $ref = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__["default"])(pathItemElement.$ref);
92476
+ const retrievalURI = this.toBaseURI($ref);
92477
+ const isInternalReference = this.entryURI === retrievalURI;
92478
+ const isExternalReference = !isInternalReference;
92479
+ if (isInternalReference) {
92480
+ // normalize self-file references to a bare fragment so the bundled
92481
+ // document stays transferable; bare fragments are left untouched
92482
+ pathItemElement.set('$ref', this.normalizeSelfFileRef($ref));
92483
+ return;
92484
+ }
92485
+
92486
+ // honor the resolve.external switch
92487
+ if (!this.options.resolve.external && isExternalReference) {
92488
+ return;
92489
+ }
92490
+ const $refBaseURI = _util_url_mjs__WEBPACK_IMPORTED_MODULE_22__.resolve(retrievalURI, $ref);
92491
+ const jsonPointer = _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__.URIFragmentIdentifier.fromURIReference($refBaseURI);
92492
+ const canonicalKey = `${retrievalURI}#${jsonPointer}`;
92493
+
92494
+ // a circular external Path Item reference cannot be inlined without
92495
+ // recursing forever; leave the $ref in place to break the cycle
92496
+ if (this.inlineStack.has(canonicalKey)) {
92497
+ return;
92498
+ }
92499
+ try {
92500
+ // detect maximum depth of bundling
92501
+ if (this.reference.depth >= this.options.bundle.maxDepth) {
92502
+ throw new _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_20__["default"](`Maximum bundle depth of "${this.options.bundle.maxDepth}" has been exceeded in file "${this.reference.uri}"`, {
92503
+ maxDepth: this.options.bundle.maxDepth,
92504
+ uri: this.reference.uri
92505
+ });
92506
+ }
92507
+ const reference = await this.toReference($ref);
92508
+ let referencedElement = (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_9__.evaluate)(reference.value.result, jsonPointer);
92509
+
92510
+ // apply Path Item semantics to the referenced fragment
92511
+ if (!(0,_speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_15__.isPathItemElement)(referencedElement)) {
92512
+ const cached = this.getRefracted(referencedElement, 'pathItem');
92513
+ if (cached !== undefined) {
92514
+ referencedElement = cached;
92515
+ } else {
92516
+ const sourceElement = referencedElement;
92517
+ referencedElement = (0,_speclynx_apidom_ns_openapi_2__WEBPACK_IMPORTED_MODULE_13__.refractPathItem)(referencedElement);
92518
+ this.setRefracted(sourceElement, 'pathItem', referencedElement);
92519
+ }
92520
+ }
92521
+
92522
+ // own a copy and bundle the external references it contains
92523
+ const inlinedElement = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__.cloneDeep)(referencedElement);
92524
+ this.inlineStack.add(canonicalKey);
92525
+ const visitor = new OpenAPI2BundleVisitor({
92526
+ reference,
92527
+ options: this.options,
92528
+ assignments: this.assignments,
92529
+ reservedNames: this.reservedNames,
92530
+ refractCache: this.refractCache,
92531
+ inlineStack: this.inlineStack
92532
+ });
92533
+ let bundledElement;
92534
+ try {
92535
+ bundledElement = await (0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_8__.traverseAsync)(inlinedElement, visitor, {
92536
+ mutable: true
92537
+ });
92538
+ } finally {
92539
+ this.inlineStack.delete(canonicalKey);
92540
+ }
92541
+
92542
+ // merge sibling fields from the referencing Path Item over the referenced
92543
+ // one. The referencing `$ref` is being resolved away and is skipped; the
92544
+ // referenced element keeps its own `$ref` if one survived (i.e. it was
92545
+ // left in place to break a circular external Path Item chain).
92546
+ pathItemElement.forEach((_value, keyElement, item) => {
92547
+ const key = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__["default"])(keyElement);
92548
+ if (key === '$ref') return;
92549
+ bundledElement.remove(key);
92550
+ bundledElement.content.push(item);
92551
+ });
92552
+ bundledElement.meta.set('ref-origin', reference.uri);
92553
+ path.replaceWith(bundledElement);
92554
+ } catch (error) {
92555
+ this.handleError(`Error while bundling Path Item Object. Cannot resolve $ref "${$ref}": ${error.message}`, error, pathItemElement, '$ref', $ref, path);
92556
+ }
92557
+ }
92558
+ }
92559
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (OpenAPI2BundleVisitor);
92560
+
92561
+ /***/ },
92562
+
92563
+ /***/ 5138
92564
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
92565
+
92566
+ "use strict";
92567
+ __webpack_require__.r(__webpack_exports__);
92568
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
92569
+ /* harmony export */ OpenAPI3_0BundleVisitor: () => (/* reexport safe */ _visitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]),
92570
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
92571
+ /* harmony export */ });
92572
+ /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(12111);
92573
+ /* harmony import */ var _speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(80796);
92574
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(43151);
92575
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(32131);
92576
+ /* harmony import */ var _Reference_mjs__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(82302);
92577
+ /* harmony import */ var _ReferenceSet_mjs__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(88526);
92578
+ /* harmony import */ var _BundleStrategy_mjs__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(73723);
92579
+ /* harmony import */ var _visitor_mjs__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(98968);
92580
+
92581
+
92582
+
92583
+
92584
+
92585
+
92586
+
92587
+ /**
92588
+ * @public
92589
+ */
92590
+ /**
92591
+ * @public
92592
+ */
92593
+ class OpenAPI3_0BundleStrategy extends _BundleStrategy_mjs__WEBPACK_IMPORTED_MODULE_6__["default"] {
92594
+ constructor(options) {
92595
+ super({
92596
+ ...(options ?? {}),
92597
+ name: 'openapi-3-0'
92598
+ });
92599
+ }
92600
+ canBundle(file) {
92601
+ // assert by media type
92602
+ if (file.mediaType !== 'text/plain') {
92603
+ return _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_2__["default"].includes(file.mediaType);
92604
+ }
92605
+
92606
+ // assert by inspecting ApiDOM
92607
+ return (0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_3__.isOpenApi3_0Element)(file.parseResult?.result);
92608
+ }
92609
+ async bundle(file, options) {
92610
+ const immutableRefSet = options.bundle.refSet ?? new _ReferenceSet_mjs__WEBPACK_IMPORTED_MODULE_5__["default"]();
92611
+ const mutableRefSet = new _ReferenceSet_mjs__WEBPACK_IMPORTED_MODULE_5__["default"]();
92612
+ let refSet = immutableRefSet;
92613
+ let reference;
92614
+
92615
+ // determine the initial reference
92616
+ if (!immutableRefSet.has(file.uri)) {
92617
+ reference = new _Reference_mjs__WEBPACK_IMPORTED_MODULE_4__["default"]({
92618
+ uri: file.uri,
92619
+ value: file.parseResult
92620
+ });
92621
+ immutableRefSet.add(reference);
92622
+ } else {
92623
+ // pre-computed refSet was provided as configuration option
92624
+ reference = immutableRefSet.find(ref => ref.uri === file.uri);
92625
+ }
92626
+
92627
+ /**
92628
+ * Clone refSet due the bundling process being mutable.
92629
+ * We don't want to mutate the original refSet and the references.
92630
+ */
92631
+ if (options.bundle.immutable) {
92632
+ immutableRefSet.refs.map(ref => new _Reference_mjs__WEBPACK_IMPORTED_MODULE_4__["default"]({
92633
+ ...ref,
92634
+ value: (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_0__.cloneDeep)(ref.value)
92635
+ })).forEach(ref => mutableRefSet.add(ref));
92636
+ reference = mutableRefSet.find(ref => ref.uri === file.uri);
92637
+ refSet = mutableRefSet;
92638
+ }
92639
+ const visitor = new _visitor_mjs__WEBPACK_IMPORTED_MODULE_7__["default"]({
92640
+ reference: reference,
92641
+ options
92642
+ });
92643
+ await (0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_1__.traverseAsync)(refSet.rootRef.value, visitor, {
92644
+ mutable: true
92645
+ });
92646
+ const parseResult = reference.value;
92647
+
92648
+ /**
92649
+ * Release all memory if this refSet was not provided as a configuration option.
92650
+ * If provided as configuration option, then provider is responsible for cleanup.
92651
+ */
92652
+ if (options.bundle.refSet === null) {
92653
+ immutableRefSet.clean();
92654
+ }
92655
+ mutableRefSet.clean();
92656
+ return parseResult;
92657
+ }
92658
+ }
92659
+
92660
+ /* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (OpenAPI3_0BundleStrategy);
92661
+
92662
+ /***/ },
92663
+
92664
+ /***/ 98968
92665
+ (__unused_webpack___webpack_module__, __webpack_exports__, __webpack_require__) {
92666
+
92667
+ "use strict";
92668
+ __webpack_require__.r(__webpack_exports__);
92669
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
92670
+ /* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
92671
+ /* harmony export */ });
92672
+ /* harmony import */ var ramda__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(6352);
92673
+ /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(25162);
92674
+ /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(12111);
92675
+ /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(97071);
92676
+ /* harmony import */ var _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(84660);
92677
+ /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(37205);
92678
+ /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(44673);
92679
+ /* harmony import */ var _speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(16280);
92680
+ /* harmony import */ var _speclynx_apidom_error__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(44641);
92681
+ /* harmony import */ var _speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(80796);
92682
+ /* harmony import */ var _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(12020);
92683
+ /* harmony import */ var _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__ = __webpack_require__(61198);
92684
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_12__ = __webpack_require__(30609);
92685
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_13__ = __webpack_require__(64708);
92686
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_14__ = __webpack_require__(32131);
92687
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_15__ = __webpack_require__(21314);
92688
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_16__ = __webpack_require__(29881);
92689
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_17__ = __webpack_require__(23806);
92690
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_18__ = __webpack_require__(23031);
92691
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_19__ = __webpack_require__(63842);
92692
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_20__ = __webpack_require__(87455);
92693
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_21__ = __webpack_require__(55122);
92694
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_22__ = __webpack_require__(71117);
92695
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_23__ = __webpack_require__(72257);
92696
+ /* harmony import */ var _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_24__ = __webpack_require__(69511);
92697
+ /* harmony import */ var _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_25__ = __webpack_require__(89693);
92698
+ /* harmony import */ var _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_26__ = __webpack_require__(34968);
92699
+ /* harmony import */ var _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_27__ = __webpack_require__(55086);
92700
+ /* harmony import */ var _errors_MaximumResolveDepthError_mjs__WEBPACK_IMPORTED_MODULE_28__ = __webpack_require__(10476);
92701
+ /* harmony import */ var _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(18917);
92702
+ /* harmony import */ var _parse_index_mjs__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(85533);
92703
+ /* harmony import */ var _Reference_mjs__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(82302);
92704
+ /* harmony import */ var _util_mjs__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(78814);
92705
+
92706
+
92707
+
92708
+
92709
+
92710
+
92711
+
92712
+
92713
+
92714
+
92715
+
92716
+
92717
+
92718
+
92719
+
92720
+ /**
92721
+ * Maps the `referenced-element` meta value (set during refraction) to the
92722
+ * Components Object field where the referenced element should be hoisted.
92723
+ * Field names are sourced from the Components Object fixed fields so they
92724
+ * cannot drift from the namespace definition.
92725
+ */
92726
+ const cf = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_5__.fixedFields)(_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_12__["default"], {
92727
+ indexed: true
92728
+ });
92729
+ const componentFieldByReferencedElement = {
92730
+ schema: cf.schemas.name,
92731
+ response: cf.responses.name,
92732
+ parameter: cf.parameters.name,
92733
+ example: cf.examples.name,
92734
+ requestBody: cf.requestBodies.name,
92735
+ header: cf.headers.name,
92736
+ securityScheme: cf.securitySchemes.name,
92737
+ link: cf.links.name,
92738
+ callback: cf.callbacks.name
92739
+ };
92740
+
92741
+ /**
92742
+ * Maps a Components Object field to the named-content element the namespace
92743
+ * uses for it, so a bundle-created field matches a parsed/refracted one
92744
+ * (e.g. carries the `components-schemas` class) rather than being a generic
92745
+ * object.
92746
+ */
92747
+ const componentFieldElementByField = {
92748
+ [cf.schemas.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_23__["default"],
92749
+ [cf.responses.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_22__["default"],
92750
+ [cf.parameters.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_20__["default"],
92751
+ [cf.examples.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_17__["default"],
92752
+ [cf.requestBodies.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_21__["default"],
92753
+ [cf.headers.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_18__["default"],
92754
+ [cf.securitySchemes.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_24__["default"],
92755
+ [cf.links.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_19__["default"],
92756
+ [cf.callbacks.name]: _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_16__["default"]
92757
+ };
92758
+
92759
+ /**
92760
+ * @public
92761
+ */
92762
+
92763
+ /**
92764
+ * @public
92765
+ */
92766
+ class OpenAPI3_0BundleVisitor {
92767
+ reference;
92768
+ options;
92769
+
92770
+ /**
92771
+ * The base URI (without hash) of the entry document. A reference is
92772
+ * considered internal when it resolves to this URI and external otherwise.
92773
+ * Derived from the shared refSet's root reference.
92774
+ */
92775
+ get entryURI() {
92776
+ return _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.stripHash(this.reference.refSet?.rootRef?.uri ?? '');
92777
+ }
92778
+
92779
+ /**
92780
+ * The entry parse result. Derived from the shared refSet's root reference.
92781
+ */
92782
+ get entryParseResult() {
92783
+ return this.reference.refSet.rootRef.value;
92784
+ }
92785
+
92786
+ /**
92787
+ * The entry document element. Hoisted external fragments are placed into its
92788
+ * `components` object. The `canBundle` guard guarantees it is an
92789
+ * OpenApi3_0Element.
92790
+ */
92791
+ get entryResult() {
92792
+ return this.entryParseResult.result;
92793
+ }
92794
+
92795
+ /**
92796
+ * Shared across the entry document and every external document visitor.
92797
+ * Guarantees each external fragment is hoisted exactly once and gives us a
92798
+ * stable internal pointer to rewrite every referencing element to.
92799
+ */
92800
+ assignments;
92801
+
92802
+ /**
92803
+ * Component names already reserved per Components Object field. Reserved
92804
+ * before recursion so collision suffixing (`Pet`, `Pet-2`, ...) accounts for
92805
+ * components that are still being bundled.
92806
+ */
92807
+ reservedNames;
92808
+
92809
+ /**
92810
+ * Caches refracted fragments keyed by source element and target element type.
92811
+ * The type is part of the key because the same source can be refracted into
92812
+ * different semantic elements depending on the referencing context (e.g. a
92813
+ * generic object referenced once as a Parameter and once as a Response).
92814
+ */
92815
+ refractCache;
92816
+
92817
+ /**
92818
+ * Canonical URIs of Path Item Objects currently being inlined. Path Items
92819
+ * are not hoisted into Components Object (no `components.pathItems` in
92820
+ * OpenAPI 3.0), so the `assignments` map can't break their cycles. This
92821
+ * stack guards against circular external Path Item references.
92822
+ */
92823
+ inlineStack;
92824
+ constructor({
92825
+ reference,
92826
+ options,
92827
+ assignments = new Map(),
92828
+ reservedNames = new Map(),
92829
+ refractCache = new WeakMap(),
92830
+ inlineStack = new Set()
92831
+ }) {
92832
+ this.reference = reference;
92833
+ this.options = options;
92834
+ this.inlineStack = inlineStack;
92835
+ this.assignments = assignments;
92836
+ this.reservedNames = reservedNames;
92837
+ this.refractCache = refractCache;
92838
+ }
92839
+ getRefracted(source, type) {
92840
+ return this.refractCache.get(source)?.get(type);
92841
+ }
92842
+ setRefracted(source, type, refracted) {
92843
+ let byType = this.refractCache.get(source);
92844
+ if (byType === undefined) {
92845
+ byType = new Map();
92846
+ this.refractCache.set(source, byType);
92847
+ }
92848
+ byType.set(type, refracted);
92849
+ }
92850
+ toBaseURI(uri) {
92851
+ return _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.resolve(this.reference.uri, _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.sanitize(_util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.stripHash(uri)));
92852
+ }
92853
+ async toReference(uri) {
92854
+ // detect maximum depth of resolution
92855
+ if (this.reference.depth >= this.options.resolve.maxDepth) {
92856
+ throw new _errors_MaximumResolveDepthError_mjs__WEBPACK_IMPORTED_MODULE_28__["default"](`Maximum resolution depth of ${this.options.resolve.maxDepth} has been exceeded by file "${this.reference.uri}"`, {
92857
+ maxDepth: this.options.resolve.maxDepth,
92858
+ uri: this.reference.uri
92859
+ });
92860
+ }
92861
+ const baseURI = this.toBaseURI(uri);
92862
+ const {
92863
+ refSet
92864
+ } = this.reference;
92865
+
92866
+ // we've already processed this Reference in past
92867
+ if (refSet.has(baseURI)) {
92868
+ return refSet.find((0,ramda__WEBPACK_IMPORTED_MODULE_0__["default"])(baseURI, 'uri'));
92869
+ }
92870
+ const parseResult = await (0,_parse_index_mjs__WEBPACK_IMPORTED_MODULE_30__["default"])(_util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.unsanitize(baseURI), {
92871
+ ...this.options,
92872
+ parse: {
92873
+ ...this.options.parse,
92874
+ mediaType: 'text/plain'
92875
+ }
92876
+ });
92877
+ const reference = new _Reference_mjs__WEBPACK_IMPORTED_MODULE_31__["default"]({
92878
+ uri: baseURI,
92879
+ value: parseResult,
92880
+ depth: this.reference.depth + 1
92881
+ });
92882
+ refSet.add(reference);
92883
+ return reference;
92884
+ }
92885
+
92886
+ /**
92887
+ * Normalizes a self-file reference (e.g. `./root.json#/components/schemas/Pet`)
92888
+ * to a bare fragment (`#/components/schemas/Pet`) so the bundled document stays
92889
+ * transferable. Bare fragments are returned unchanged.
92890
+ */
92891
+ normalizeSelfFileRef(ref) {
92892
+ return ref.startsWith('#') ? ref : _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.getHash(ref);
92893
+ }
92894
+
92895
+ /**
92896
+ * Handles an error according to the `bundle.continueOnError` option.
92897
+ *
92898
+ * For new errors: wraps in UnresolvableReferenceError with structured
92899
+ * context. For errors already wrapped by a nested visitor: prepends the
92900
+ * current hop to the trace.
92901
+ *
92902
+ * Inner/intermediate visitors always throw to let the trace accumulate. Only
92903
+ * the entry document visitor respects continueOnError (callback/swallow/throw).
92904
+ */
92905
+ handleError(message, error, referencingElement, refFieldName, refFieldValue, visitorPath) {
92906
+ // a collision reported as `error` is a deliberate hard stop with no
92907
+ // resolution-failure analog, so pass it through unchanged. A maxDepth
92908
+ // breach (MaximumBundleDepthError, which also extends BundleError) is a
92909
+ // resolution failure and flows through below — wrapped and subject to
92910
+ // continueOnError, like dereferencing.
92911
+ if (error instanceof _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_25__["default"] && !(error instanceof _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_27__["default"])) {
92912
+ throw error;
92913
+ }
92914
+ const {
92915
+ continueOnError
92916
+ } = this.options.bundle;
92917
+ const isEntryDocument = _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.stripHash(this.reference.refSet?.rootRef?.uri ?? '') === this.reference.uri;
92918
+ const uri = this.reference.uri;
92919
+ const type = referencingElement.element;
92920
+ const codeFrame = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_7__["default"])(referencingElement);
92921
+ const location = visitorPath.formatPath();
92922
+ const hop = {
92923
+ uri,
92924
+ type,
92925
+ refFieldName,
92926
+ refFieldValue,
92927
+ location,
92928
+ codeFrame
92929
+ };
92930
+ let unresolvedError;
92931
+ if (error instanceof _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_26__["default"]) {
92932
+ // @ts-ignore
92933
+ error.trace = [hop, ...error.trace];
92934
+ unresolvedError = error;
92935
+ } else {
92936
+ unresolvedError = new _errors_UnresolvableReferenceError_mjs__WEBPACK_IMPORTED_MODULE_26__["default"](message, {
92937
+ cause: error,
92938
+ type,
92939
+ uri,
92940
+ location,
92941
+ codeFrame,
92942
+ refFieldName,
92943
+ refFieldValue,
92944
+ trace: []
92945
+ });
92946
+ }
92947
+ if (!isEntryDocument || continueOnError === false) throw unresolvedError;
92948
+ if (typeof continueOnError === 'function') continueOnError(unresolvedError);
92949
+ }
92950
+
92951
+ /**
92952
+ * Lazily creates the Components Object (and the requested field within it)
92953
+ * on the entry document, returning the field where a fragment is hoisted.
92954
+ */
92955
+ ensureComponentsField(field) {
92956
+ const entryResult = this.entryResult;
92957
+ let components = entryResult.components;
92958
+ if (!(0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isObjectElement)(components)) {
92959
+ components = new _speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_12__["default"]();
92960
+ entryResult.components = components;
92961
+ }
92962
+ let fieldElement = components.get(field);
92963
+ if (!(0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isObjectElement)(fieldElement)) {
92964
+ const FieldElement = componentFieldElementByField[field] ?? _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_3__["default"];
92965
+ fieldElement = new FieldElement();
92966
+ components.set(field, fieldElement);
92967
+ }
92968
+ return fieldElement;
92969
+ }
92970
+
92971
+ /**
92972
+ * Derives a component name from the referenced JSON Pointer's last token,
92973
+ * falling back to the referenced file's basename.
92974
+ */
92975
+ basenameOf(jsonPointer, baseURI) {
92976
+ const tokens = (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__.parse)(jsonPointer).tree;
92977
+ let candidate = tokens.length > 0 ? tokens[tokens.length - 1] : '';
92978
+ if (candidate === '') {
92979
+ const lastSlash = baseURI.lastIndexOf('/');
92980
+ const lastDot = baseURI.lastIndexOf('.');
92981
+ const fileName = baseURI.slice(lastSlash + 1);
92982
+ // strip the extension only when the last dot belongs to the file name
92983
+ candidate = lastDot > lastSlash ? baseURI.slice(lastSlash + 1, lastDot) : fileName;
92984
+ }
92985
+ if (candidate === '') candidate = 'Schema';
92986
+ return candidate;
92987
+ }
92988
+
92989
+ /**
92990
+ * Computes the base component name (before collision suffixing) according to
92991
+ * the configured naming strategy.
92992
+ */
92993
+ baseName(element, field, jsonPointer, baseURI) {
92994
+ // strategy specific options take precedence over the top-level bundle options
92995
+ const componentNamesStrategy = this.options.bundle.strategyOpts['openapi-3-0']?.componentNamesStrategy ?? this.options.bundle.componentNamesStrategy;
92996
+ if (typeof componentNamesStrategy === 'function') {
92997
+ const resolved = componentNamesStrategy({
92998
+ element,
92999
+ field,
93000
+ jsonPointer,
93001
+ baseURI
93002
+ });
93003
+ if (typeof resolved === 'string' && resolved !== '') {
93004
+ return resolved;
93005
+ }
93006
+ return this.basenameOf(jsonPointer, baseURI);
93007
+ }
93008
+ if (componentNamesStrategy === 'title') {
93009
+ const title = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isObjectElement)(element) ? (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__["default"])(element.get('title')) : undefined;
93010
+ if (typeof title === 'string' && title.trim() !== '') {
93011
+ const name = (0,_util_mjs__WEBPACK_IMPORTED_MODULE_32__.sanitizeComponentName)((0,_util_mjs__WEBPACK_IMPORTED_MODULE_32__.toPascalCase)(title));
93012
+ if (name !== '') return name;
93013
+ }
93014
+ // fall back to basename when no usable title is present
93015
+ }
93016
+ return this.basenameOf(jsonPointer, baseURI);
93017
+ }
93018
+
93019
+ /**
93020
+ * Computes a collision-free component name within the target field. A name is
93021
+ * taken if it's already placed in components or reserved by a component that
93022
+ * is still being bundled (reserved before recursion).
93023
+ */
93024
+ uniqueName(candidate, field) {
93025
+ const fieldElement = this.ensureComponentsField(field);
93026
+ const reserved = this.reservedNames.get(field) ?? new Set();
93027
+ return (0,_util_mjs__WEBPACK_IMPORTED_MODULE_32__.uniqueName)(candidate, name => fieldElement.hasKey(name) || reserved.has(name));
93028
+ }
93029
+ async ReferenceElement(path) {
93030
+ const referencingElement = path.node;
93031
+ const $ref = (0,_speclynx_apidom_core__WEBPACK_IMPORTED_MODULE_6__["default"])(referencingElement.$ref);
93032
+ const retrievalURI = this.toBaseURI($ref);
93033
+ const isInternalReference = this.entryURI === retrievalURI;
93034
+ const isExternalReference = !isInternalReference;
93035
+ if (isInternalReference) {
93036
+ // normalize self-file references to a bare fragment so the bundled
93037
+ // document stays transferable; bare fragments are left untouched
93038
+ referencingElement.set('$ref', this.normalizeSelfFileRef($ref));
93039
+ path.skip();
93040
+ return;
93041
+ }
93042
+
93043
+ // honor the resolve.external switch
93044
+ if (!this.options.resolve.external && isExternalReference) {
93045
+ path.skip();
93046
+ return;
93047
+ }
93048
+ const $refBaseURI = _util_url_mjs__WEBPACK_IMPORTED_MODULE_29__.resolve(retrievalURI, $ref);
93049
+ const jsonPointer = _speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__.URIFragmentIdentifier.fromURIReference($refBaseURI);
93050
+
93051
+ // the target bucket depends on the referencing context, so it's part of the
93052
+ // identity: the same external target referenced as e.g. both a parameter and
93053
+ // a response must be hoisted into both components fields. The refractor sets
93054
+ // `referenced-element` for every Reference Object position; the `schemas`
93055
+ // fallback is a defensive default for the (unexpected) untagged case.
93056
+ const referencedElementType = referencingElement.meta.get('referenced-element');
93057
+ const field = componentFieldByReferencedElement[referencedElementType] ?? componentFieldByReferencedElement.schema;
93058
+ const canonicalKey = `${field}\t${retrievalURI}#${jsonPointer}`;
93059
+
93060
+ // already hoisted (or being hoisted) — just rewrite the pointer.
93061
+ //
93062
+ // this is also how circular references terminate: the assignment is
93063
+ // reserved BEFORE recursing into the fragment (see below), so a reference
93064
+ // that cycles back (directly or indirectly) finds its pointer already
93065
+ // reserved here and is rewritten without recursing. Cycles are deliberately
93066
+ // preserved as internal `$ref`s pointing at each other — that is valid,
93067
+ // serializable output; resolving the cycle (if desired) is dereferencing's
93068
+ // job, not bundling's.
93069
+ if (this.assignments.has(canonicalKey)) {
93070
+ referencingElement.set('$ref', this.assignments.get(canonicalKey));
93071
+ path.skip();
93072
+ return;
93073
+ }
93074
+ try {
93075
+ // detect maximum depth of bundling
93076
+ if (this.reference.depth >= this.options.bundle.maxDepth) {
93077
+ throw new _errors_MaximumBundleDepthError_mjs__WEBPACK_IMPORTED_MODULE_27__["default"](`Maximum bundle depth of "${this.options.bundle.maxDepth}" has been exceeded in file "${this.reference.uri}"`, {
93078
+ maxDepth: this.options.bundle.maxDepth,
93079
+ uri: this.reference.uri
93080
+ });
93081
+ }
93082
+ const reference = await this.toReference($ref);
93083
+
93084
+ // possibly non-semantic fragment
93085
+ let referencedElement = (0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_10__.evaluate)(reference.value.result, jsonPointer);
93086
+
93087
+ // apply semantics to the fragment so nested references become Reference Objects
93088
+ if (referencedElement.element !== referencedElementType && !(0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_14__.isReferenceElement)(referencedElement)) {
93089
+ const cached = this.getRefracted(referencedElement, referencedElementType);
93090
+ if (cached !== undefined) {
93091
+ referencedElement = cached;
93092
+ } else if ((0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_15__.isReferenceLikeElement)(referencedElement)) {
93093
+ const sourceElement = referencedElement;
93094
+ referencedElement = (0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_13__.refractReference)(referencedElement);
93095
+ referencedElement.meta.set('referenced-element', referencedElementType);
93096
+ this.setRefracted(sourceElement, referencedElementType, referencedElement);
93097
+ } else {
93098
+ const sourceElement = referencedElement;
93099
+ referencedElement = (0,_speclynx_apidom_ns_openapi_3_0__WEBPACK_IMPORTED_MODULE_13__["default"])(referencedElement, {
93100
+ element: referencedElementType
93101
+ });
93102
+ this.setRefracted(sourceElement, referencedElementType, referencedElement);
93103
+ }
93104
+ }
93105
+ const preferredName = this.baseName(referencedElement, field, jsonPointer, retrievalURI);
93106
+ const componentName = this.uniqueName(preferredName, field);
93107
+ const internalPointer = `#/components/${field}/${(0,_speclynx_apidom_json_pointer__WEBPACK_IMPORTED_MODULE_11__.escape)(componentName)}`;
93108
+
93109
+ // a rename means two distinct targets resolved to the same name; each
93110
+ // keeps its own component (and origin), so report the rename per severity.
93111
+ // strategy specific options take precedence over the top-level bundle options
93112
+ const onComponentNameCollision = this.options.bundle.strategyOpts['openapi-3-0']?.onComponentNameCollision ?? this.options.bundle.onComponentNameCollision;
93113
+ if (componentName !== preferredName && onComponentNameCollision !== 'off') {
93114
+ const message = `Component "${preferredName}" in components/${field} is referenced with the same name but different content. Renamed to "${componentName}".`;
93115
+ if (onComponentNameCollision === 'error') {
93116
+ throw new _errors_BundleError_mjs__WEBPACK_IMPORTED_MODULE_25__["default"](message);
93117
+ }
93118
+ const annotation = new _speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_4__["default"](message);
93119
+ annotation.classes.push('warning');
93120
+ annotation.code = 'bundle-component-name-collision';
93121
+ // append (never prepend) so the result element stays ahead of annotations
93122
+ this.entryParseResult.content.push(annotation);
93123
+ }
93124
+
93125
+ // reserve the assignment and component name before recursing so cyclic
93126
+ // references terminate
93127
+ this.assignments.set(canonicalKey, internalPointer);
93128
+ if (!this.reservedNames.has(field)) this.reservedNames.set(field, new Set());
93129
+ this.reservedNames.get(field).add(componentName);
93130
+
93131
+ // own a copy of the fragment and bundle its own external references
93132
+ const hoistedElement = (0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_2__.cloneDeep)(referencedElement);
93133
+ const visitor = new OpenAPI3_0BundleVisitor({
93134
+ reference,
93135
+ options: this.options,
93136
+ assignments: this.assignments,
93137
+ reservedNames: this.reservedNames,
93138
+ refractCache: this.refractCache,
93139
+ inlineStack: this.inlineStack
93140
+ });
93141
+ const bundledElement = await (0,_speclynx_apidom_traverse__WEBPACK_IMPORTED_MODULE_9__.traverseAsync)(hoistedElement, visitor, {
93142
+ mutable: true
93143
+ });
93144
+
93145
+ // annotate the hoisted fragment with info about its origin
93146
+ if ((0,_speclynx_apidom_datamodel__WEBPACK_IMPORTED_MODULE_1__.isElement)(bundledElement)) {
93147
+ bundledElement.meta.set('ref-origin', reference.uri);
93148
+ }
93149
+
93150
+ // place the bundled fragment into the entry document's components
93151
+ this.ensureComponentsField(field).set(componentName, bundledElement);
93152
+
93153
+ // rewrite the referencing element to point at the hoisted fragment
93154
+ referencingElement.set('$ref', internalPointer);
93155
+ path.skip();
93156
+ } catch (error) {
93157
+ this.handleError(`Error while bundling Reference Object. Cannot resolve $ref "${$ref}": ${error.message}`, error, referencingElement, '$ref', $ref, path);
93158
+ path.skip();
93159
+ }
93160
+ }
93161
+
93162
+ /**
93163
+ * Path Item Object is not a Components Object field in OpenAPI 3.0
93164
+ * (unlike 3.1 which has `components.pathItems`). An external Path Item
93165
+ * reference therefore cannot be hoisted; it is inlined in place instead,
93166
+ * after bundling its own external references.
92274
93167
  */
92275
93168
  async PathItemElement(path) {
92276
93169
  const pathItemElement = path.node;
@@ -92549,48 +93442,48 @@ const uniqueName = (candidate, isTaken) => {
92549
93442
  "use strict";
92550
93443
  __webpack_require__.r(__webpack_exports__);
92551
93444
  /* harmony export */ __webpack_require__.d(__webpack_exports__, {
92552
- /* harmony export */ BundleError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.BundleError),
92553
- /* harmony export */ BundleStrategy: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.BundleStrategy),
92554
- /* harmony export */ DereferenceAncestorLineage: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.DereferenceAncestorLineage),
92555
- /* harmony export */ DereferenceError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.DereferenceError),
92556
- /* harmony export */ DereferenceStrategy: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.DereferenceStrategy),
92557
- /* harmony export */ EvaluationElementIdError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.EvaluationElementIdError),
92558
- /* harmony export */ EvaluationJsonSchema$anchorError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.EvaluationJsonSchema$anchorError),
92559
- /* harmony export */ EvaluationJsonSchemaUriError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.EvaluationJsonSchemaUriError),
92560
- /* harmony export */ File: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.File),
92561
- /* harmony export */ HTTPResolver: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.HTTPResolver),
92562
- /* harmony export */ InvalidJsonSchema$anchorError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.InvalidJsonSchema$anchorError),
92563
- /* harmony export */ JsonSchema$anchorError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.JsonSchema$anchorError),
92564
- /* harmony export */ JsonSchemaURIError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.JsonSchemaURIError),
92565
- /* harmony export */ MaximumBundleDepthError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.MaximumBundleDepthError),
92566
- /* harmony export */ MaximumDereferenceDepthError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.MaximumDereferenceDepthError),
92567
- /* harmony export */ MaximumResolveDepthError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.MaximumResolveDepthError),
92568
- /* harmony export */ ParseError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.ParseError),
92569
- /* harmony export */ Parser: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.Parser),
92570
- /* harmony export */ ParserError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.ParserError),
92571
- /* harmony export */ PluginError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.PluginError),
92572
- /* harmony export */ Reference: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.Reference),
92573
- /* harmony export */ ReferenceSet: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.ReferenceSet),
92574
- /* harmony export */ ResolveError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.ResolveError),
92575
- /* harmony export */ ResolveStrategy: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.ResolveStrategy),
92576
- /* harmony export */ Resolver: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.Resolver),
92577
- /* harmony export */ ResolverError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.ResolverError),
92578
- /* harmony export */ UnmatchedBundleStrategyError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.UnmatchedBundleStrategyError),
92579
- /* harmony export */ UnmatchedDereferenceStrategyError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.UnmatchedDereferenceStrategyError),
92580
- /* harmony export */ UnmatchedParserError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.UnmatchedParserError),
92581
- /* harmony export */ UnmatchedResolveStrategyError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.UnmatchedResolveStrategyError),
92582
- /* harmony export */ UnmatchedResolverError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.UnmatchedResolverError),
92583
- /* harmony export */ UnresolvableReferenceError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.UnresolvableReferenceError),
92584
- /* harmony export */ bundle: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.bundle),
92585
- /* harmony export */ dereference: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.dereference),
92586
- /* harmony export */ dereferenceApiDOM: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.dereferenceApiDOM),
92587
- /* harmony export */ mergeOptions: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.mergeOptions),
92588
- /* harmony export */ options: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.options),
92589
- /* harmony export */ parse: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.parse),
92590
- /* harmony export */ readFile: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.readFile),
92591
- /* harmony export */ resolve: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.resolve),
92592
- /* harmony export */ resolveApiDOM: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.resolveApiDOM),
92593
- /* harmony export */ url: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_35__.url)
93445
+ /* harmony export */ BundleError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.BundleError),
93446
+ /* harmony export */ BundleStrategy: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.BundleStrategy),
93447
+ /* harmony export */ DereferenceAncestorLineage: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.DereferenceAncestorLineage),
93448
+ /* harmony export */ DereferenceError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.DereferenceError),
93449
+ /* harmony export */ DereferenceStrategy: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.DereferenceStrategy),
93450
+ /* harmony export */ EvaluationElementIdError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.EvaluationElementIdError),
93451
+ /* harmony export */ EvaluationJsonSchema$anchorError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.EvaluationJsonSchema$anchorError),
93452
+ /* harmony export */ EvaluationJsonSchemaUriError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.EvaluationJsonSchemaUriError),
93453
+ /* harmony export */ File: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.File),
93454
+ /* harmony export */ HTTPResolver: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.HTTPResolver),
93455
+ /* harmony export */ InvalidJsonSchema$anchorError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.InvalidJsonSchema$anchorError),
93456
+ /* harmony export */ JsonSchema$anchorError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.JsonSchema$anchorError),
93457
+ /* harmony export */ JsonSchemaURIError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.JsonSchemaURIError),
93458
+ /* harmony export */ MaximumBundleDepthError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.MaximumBundleDepthError),
93459
+ /* harmony export */ MaximumDereferenceDepthError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.MaximumDereferenceDepthError),
93460
+ /* harmony export */ MaximumResolveDepthError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.MaximumResolveDepthError),
93461
+ /* harmony export */ ParseError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.ParseError),
93462
+ /* harmony export */ Parser: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.Parser),
93463
+ /* harmony export */ ParserError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.ParserError),
93464
+ /* harmony export */ PluginError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.PluginError),
93465
+ /* harmony export */ Reference: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.Reference),
93466
+ /* harmony export */ ReferenceSet: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.ReferenceSet),
93467
+ /* harmony export */ ResolveError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.ResolveError),
93468
+ /* harmony export */ ResolveStrategy: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.ResolveStrategy),
93469
+ /* harmony export */ Resolver: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.Resolver),
93470
+ /* harmony export */ ResolverError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.ResolverError),
93471
+ /* harmony export */ UnmatchedBundleStrategyError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.UnmatchedBundleStrategyError),
93472
+ /* harmony export */ UnmatchedDereferenceStrategyError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.UnmatchedDereferenceStrategyError),
93473
+ /* harmony export */ UnmatchedParserError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.UnmatchedParserError),
93474
+ /* harmony export */ UnmatchedResolveStrategyError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.UnmatchedResolveStrategyError),
93475
+ /* harmony export */ UnmatchedResolverError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.UnmatchedResolverError),
93476
+ /* harmony export */ UnresolvableReferenceError: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.UnresolvableReferenceError),
93477
+ /* harmony export */ bundle: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.bundle),
93478
+ /* harmony export */ dereference: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.dereference),
93479
+ /* harmony export */ dereferenceApiDOM: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.dereferenceApiDOM),
93480
+ /* harmony export */ mergeOptions: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.mergeOptions),
93481
+ /* harmony export */ options: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.options),
93482
+ /* harmony export */ parse: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.parse),
93483
+ /* harmony export */ readFile: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.readFile),
93484
+ /* harmony export */ resolve: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.resolve),
93485
+ /* harmony export */ resolveApiDOM: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.resolveApiDOM),
93486
+ /* harmony export */ url: () => (/* reexport safe */ _index_mjs__WEBPACK_IMPORTED_MODULE_36__.url)
92594
93487
  /* harmony export */ });
92595
93488
  /* harmony import */ var _resolve_resolvers_file_index_node_mjs__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(79948);
92596
93489
  /* harmony import */ var _resolve_resolvers_http_axios_index_mjs__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(352);
@@ -92624,10 +93517,12 @@ __webpack_require__.r(__webpack_exports__);
92624
93517
  /* harmony import */ var _dereference_strategies_asyncapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_29__ = __webpack_require__(35070);
92625
93518
  /* harmony import */ var _dereference_strategies_arazzo_1_index_mjs__WEBPACK_IMPORTED_MODULE_30__ = __webpack_require__(880);
92626
93519
  /* harmony import */ var _dereference_strategies_overlay_1_index_mjs__WEBPACK_IMPORTED_MODULE_31__ = __webpack_require__(67689);
92627
- /* harmony import */ var _bundle_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(5138);
92628
- /* harmony import */ var _bundle_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(58091);
92629
- /* harmony import */ var _index_mjs__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(30306);
92630
- /* harmony import */ var _index_mjs__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(37013);
93520
+ /* harmony import */ var _bundle_strategies_openapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_32__ = __webpack_require__(95416);
93521
+ /* harmony import */ var _bundle_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_33__ = __webpack_require__(5138);
93522
+ /* harmony import */ var _bundle_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_34__ = __webpack_require__(58091);
93523
+ /* harmony import */ var _index_mjs__WEBPACK_IMPORTED_MODULE_35__ = __webpack_require__(30306);
93524
+ /* harmony import */ var _index_mjs__WEBPACK_IMPORTED_MODULE_36__ = __webpack_require__(37013);
93525
+
92631
93526
 
92632
93527
 
92633
93528
 
@@ -92663,7 +93558,7 @@ __webpack_require__.r(__webpack_exports__);
92663
93558
 
92664
93559
 
92665
93560
 
92666
- _index_mjs__WEBPACK_IMPORTED_MODULE_34__["default"].parse.parsers = [new _parse_parsers_openapi_json_2_index_mjs__WEBPACK_IMPORTED_MODULE_9__["default"]({
93561
+ _index_mjs__WEBPACK_IMPORTED_MODULE_35__["default"].parse.parsers = [new _parse_parsers_openapi_json_2_index_mjs__WEBPACK_IMPORTED_MODULE_9__["default"]({
92667
93562
  allowEmpty: true,
92668
93563
  sourceMap: false
92669
93564
  }), new _parse_parsers_openapi_yaml_2_index_mjs__WEBPACK_IMPORTED_MODULE_10__["default"]({
@@ -92711,14 +93606,14 @@ _index_mjs__WEBPACK_IMPORTED_MODULE_34__["default"].parse.parsers = [new _parse_
92711
93606
  }), new _parse_parsers_binary_index_node_mjs__WEBPACK_IMPORTED_MODULE_24__["default"]({
92712
93607
  allowEmpty: true
92713
93608
  })];
92714
- _index_mjs__WEBPACK_IMPORTED_MODULE_34__["default"].resolve.resolvers = [new _resolve_resolvers_file_index_node_mjs__WEBPACK_IMPORTED_MODULE_0__["default"](), new _resolve_resolvers_http_axios_index_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]({
93609
+ _index_mjs__WEBPACK_IMPORTED_MODULE_35__["default"].resolve.resolvers = [new _resolve_resolvers_file_index_node_mjs__WEBPACK_IMPORTED_MODULE_0__["default"](), new _resolve_resolvers_http_axios_index_mjs__WEBPACK_IMPORTED_MODULE_1__["default"]({
92715
93610
  timeout: 5000,
92716
93611
  redirects: 5,
92717
93612
  withCredentials: false
92718
93613
  })];
92719
- _index_mjs__WEBPACK_IMPORTED_MODULE_34__["default"].resolve.strategies = [new _resolve_strategies_openapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_2__["default"](), new _resolve_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_3__["default"](), new _resolve_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_4__["default"](), new _resolve_strategies_asyncapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_5__["default"](), new _resolve_strategies_arazzo_1_index_mjs__WEBPACK_IMPORTED_MODULE_6__["default"](), new _resolve_strategies_overlay_1_index_mjs__WEBPACK_IMPORTED_MODULE_7__["default"](), new _resolve_strategies_apidom_index_mjs__WEBPACK_IMPORTED_MODULE_8__["default"]()];
92720
- _index_mjs__WEBPACK_IMPORTED_MODULE_34__["default"].dereference.strategies = [new _dereference_strategies_openapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_26__["default"](), new _dereference_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_27__["default"](), new _dereference_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_28__["default"](), new _dereference_strategies_asyncapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_29__["default"](), new _dereference_strategies_arazzo_1_index_mjs__WEBPACK_IMPORTED_MODULE_30__["default"](), new _dereference_strategies_overlay_1_index_mjs__WEBPACK_IMPORTED_MODULE_31__["default"](), new _dereference_strategies_apidom_index_mjs__WEBPACK_IMPORTED_MODULE_25__["default"]()];
92721
- _index_mjs__WEBPACK_IMPORTED_MODULE_34__["default"].bundle.strategies = [new _bundle_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_32__["default"](), new _bundle_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_33__["default"]()];
93614
+ _index_mjs__WEBPACK_IMPORTED_MODULE_35__["default"].resolve.strategies = [new _resolve_strategies_openapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_2__["default"](), new _resolve_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_3__["default"](), new _resolve_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_4__["default"](), new _resolve_strategies_asyncapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_5__["default"](), new _resolve_strategies_arazzo_1_index_mjs__WEBPACK_IMPORTED_MODULE_6__["default"](), new _resolve_strategies_overlay_1_index_mjs__WEBPACK_IMPORTED_MODULE_7__["default"](), new _resolve_strategies_apidom_index_mjs__WEBPACK_IMPORTED_MODULE_8__["default"]()];
93615
+ _index_mjs__WEBPACK_IMPORTED_MODULE_35__["default"].dereference.strategies = [new _dereference_strategies_openapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_26__["default"](), new _dereference_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_27__["default"](), new _dereference_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_28__["default"](), new _dereference_strategies_asyncapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_29__["default"](), new _dereference_strategies_arazzo_1_index_mjs__WEBPACK_IMPORTED_MODULE_30__["default"](), new _dereference_strategies_overlay_1_index_mjs__WEBPACK_IMPORTED_MODULE_31__["default"](), new _dereference_strategies_apidom_index_mjs__WEBPACK_IMPORTED_MODULE_25__["default"]()];
93616
+ _index_mjs__WEBPACK_IMPORTED_MODULE_35__["default"].bundle.strategies = [new _bundle_strategies_openapi_2_index_mjs__WEBPACK_IMPORTED_MODULE_32__["default"](), new _bundle_strategies_openapi_3_0_index_mjs__WEBPACK_IMPORTED_MODULE_33__["default"](), new _bundle_strategies_openapi_3_1_index_mjs__WEBPACK_IMPORTED_MODULE_34__["default"]()];
92722
93617
 
92723
93618
 
92724
93619
  /***/ },