@redocly/openapi-core 2.44.2 → 2.45.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.
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-visitor.d.ts","sourceRoot":"","sources":["../../src/bundle/bundle-visitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAwB,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAY9E,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQnE,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAKnE,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,4OA4F7E;AAED,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,0BAAmC,EACnC,sBAAmC,GACpC,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,QAAQ,CAAC;IACvB,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,0BAA0B,CAAC,EAAE,YAAY,CAAC;IAC1C,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;CACjD,6BAyPA"}
1
+ {"version":3,"file":"bundle-visitor.d.ts","sourceRoot":"","sources":["../../src/bundle/bundle-visitor.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,oBAAoB,CAAC;AACvD,OAAO,EAAwB,KAAK,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AAY9E,OAAO,EAAE,KAAK,cAAc,EAAE,KAAK,QAAQ,EAAE,MAAM,eAAe,CAAC;AAQnE,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAEpE,OAAO,EAAE,KAAK,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAKnE,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,4OA4F7E;AAED,wBAAgB,iBAAiB,CAAC,EAChC,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,0BAAmC,EACnC,sBAAmC,GACpC,EAAE;IACD,OAAO,EAAE,gBAAgB,CAAC;IAC1B,WAAW,EAAE,OAAO,CAAC;IACrB,YAAY,EAAE,QAAQ,CAAC;IACvB,cAAc,EAAE,cAAc,CAAC;IAC/B,WAAW,EAAE,OAAO,CAAC;IACrB,0BAA0B,CAAC,EAAE,YAAY,CAAC;IAC1C,sBAAsB,CAAC,EAAE,sBAAsB,CAAC;CACjD,6BA4QA"}
@@ -102,6 +102,8 @@ export function mapTypeToComponent(typeName, version) {
102
102
  export function makeBundleVisitor({ version, dereference, rootDocument, resolvedRefMap, keepUrlRefs, componentRenamingConflicts = 'warn', componentNamesStrategy = 'basename', }) {
103
103
  let components;
104
104
  let rootLocation;
105
+ // a composed $ref in the chain is the effective target, so the composition survives bundling
106
+ const effectiveTarget = (resolved) => resolved.chain?.[0] ?? { node: resolved.node, location: resolved.location };
105
107
  const firstSchemaLocationByName = new Map();
106
108
  const schemaComponentType = mapTypeToComponent('Schema', version);
107
109
  const visitor = {
@@ -111,15 +113,16 @@ export function makeBundleVisitor({ version, dereference, rootDocument, resolved
111
113
  reportUnresolvedRef(resolved, ctx.report, ctx.location);
112
114
  return;
113
115
  }
114
- if (resolved.location.source === rootDocument.source &&
115
- resolved.location.source === ctx.location.source &&
116
+ const target = effectiveTarget(resolved);
117
+ if (target.location.source === rootDocument.source &&
118
+ target.location.source === ctx.location.source &&
116
119
  ctx.type.name !== 'scalar' &&
117
120
  !dereference) {
118
121
  // Normalize explicit self-file refs (api.yaml#/x -> #/x). Already-internal refs
119
122
  // stay as authored: rewriting them would collapse $ref chains, and AsyncAPI 3
120
123
  // operation messages must point to channel messages, not to components.
121
- if (parseRef(node.$ref).uri !== null && node.$ref !== resolved.location.pointer) {
122
- node.$ref = resolved.location.pointer;
124
+ if (parseRef(node.$ref).uri !== null && node.$ref !== target.location.pointer) {
125
+ node.$ref = target.location.pointer;
123
126
  }
124
127
  return;
125
128
  }
@@ -128,15 +131,15 @@ export function makeBundleVisitor({ version, dereference, rootDocument, resolved
128
131
  }
129
132
  const componentType = mapTypeToComponent(ctx.type.name, version);
130
133
  if (!componentType) {
131
- replaceRef(node, resolved, ctx);
134
+ replaceRef(node, target, ctx);
132
135
  }
133
136
  else {
134
137
  if (dereference) {
135
- saveComponent(componentType, resolved, ctx);
136
- replaceRef(node, resolved, ctx);
138
+ saveComponent(componentType, target, ctx);
139
+ replaceRef(node, target, ctx);
137
140
  }
138
141
  else {
139
- node.$ref = saveComponent(componentType, resolved, ctx);
142
+ node.$ref = saveComponent(componentType, target, ctx);
140
143
  resolveBundledComponent(node, resolved, ctx);
141
144
  }
142
145
  }
@@ -194,7 +197,7 @@ export function makeBundleVisitor({ version, dereference, rootDocument, resolved
194
197
  reportUnresolvedRef(resolved, ctx.report, ctx.location.child('defaultMapping'));
195
198
  return;
196
199
  }
197
- discriminator.defaultMapping = saveComponent(schemaComponentType, resolved, ctx);
200
+ discriminator.defaultMapping = saveComponent(schemaComponentType, effectiveTarget(resolved), ctx);
198
201
  },
199
202
  DiscriminatorMapping: {
200
203
  leave(mapping, ctx) {
@@ -208,21 +211,25 @@ export function makeBundleVisitor({ version, dereference, rootDocument, resolved
208
211
  reportUnresolvedRef(resolved, ctx.report, ctx.location.child(name));
209
212
  return;
210
213
  }
211
- mapping[name] = saveComponent(schemaComponentType, resolved, ctx);
214
+ mapping[name] = saveComponent(schemaComponentType, effectiveTarget(resolved), ctx);
212
215
  }
213
216
  },
214
217
  },
215
218
  };
216
219
  }
220
+ // Registers the rewritten pointer in the map with the same resolution the original ref had.
217
221
  function resolveBundledComponent(node, resolved, ctx) {
218
- const newRefId = makeRefId(ctx.location.source.absoluteRef, node.$ref);
219
- resolvedRefMap.set(newRefId, {
220
- document: rootDocument,
222
+ const resolvedRef = {
223
+ resolved: true,
221
224
  isRemote: false,
222
225
  node: resolved.node,
226
+ chain: resolved.chain,
227
+ document: rootDocument,
223
228
  nodePointer: node.$ref,
224
- resolved: true,
225
- });
229
+ };
230
+ resolvedRefMap.set(makeRefId(ctx.location.source.absoluteRef, node.$ref), resolvedRef);
231
+ // saved components are walked again as part of the bundled document
232
+ resolvedRefMap.set(makeRefId(rootDocument.source.absoluteRef, node.$ref), resolvedRef);
226
233
  }
227
234
  function saveComponent(componentType, target, ctx) {
228
235
  components[componentType] = components[componentType] || {};
@@ -239,10 +246,12 @@ export function makeBundleVisitor({ version, dereference, rootDocument, resolved
239
246
  }
240
247
  }
241
248
  function isEqualOrEqualRef(node, target, ctx) {
242
- if (isRef(node) &&
243
- ctx.resolve(node, rootLocation.absolutePointer).location?.absolutePointer ===
244
- target.location.absolutePointer) {
245
- return true;
249
+ if (isRef(node)) {
250
+ const resolved = ctx.resolve(node, rootLocation.absolutePointer);
251
+ const effectiveLocation = resolved.location && effectiveTarget(resolved).location;
252
+ if (effectiveLocation?.absolutePointer === target.location.absolutePointer) {
253
+ return true;
254
+ }
246
255
  }
247
256
  return dequal(node, target.node);
248
257
  }
@@ -1 +1 @@
1
- {"version":3,"file":"bundle-visitor.js","sourceRoot":"","sources":["../../src/bundle/bundle-visitor.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"bundle-visitor.js","sourceRoot":"","sources":["../../src/bundle/bundle-visitor.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,oBAAoB,EAAyB,MAAM,iBAAiB,CAAC;AAC9E,OAAO,EACL,aAAa,EACb,UAAU,EACV,eAAe,EACf,KAAK,EACL,QAAQ,EACR,eAAe,EACf,WAAW,EAEX,YAAY,GACb,MAAM,iBAAiB,CAAC;AAEzB,OAAO,EAAE,mBAAmB,EAAE,MAAM,uCAAuC,CAAC;AAE5E,OAAO,EAAE,MAAM,EAAE,MAAM,oBAAoB,CAAC;AAC5C,OAAO,EAAE,aAAa,EAAE,MAAM,6BAA6B,CAAC;AAC5D,OAAO,EAAE,QAAQ,EAAE,MAAM,uBAAuB,CAAC;AACjD,OAAO,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAC;AACpD,OAAO,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAQ1D,MAAM,UAAU,kBAAkB,CAAC,QAAgB,EAAE,OAAyB;IAC5E,QAAQ,OAAO,EAAE,CAAC;QAChB,KAAK,MAAM;YACT,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,QAAQ;oBACX,OAAO,SAAS,CAAC;gBACnB,KAAK,WAAW;oBACd,OAAO,YAAY,CAAC;gBACtB,KAAK,UAAU;oBACb,OAAO,WAAW,CAAC;gBACrB,KAAK,SAAS;oBACZ,OAAO,UAAU,CAAC;gBACpB,KAAK,aAAa;oBAChB,OAAO,eAAe,CAAC;gBACzB,KAAK,QAAQ;oBACX,OAAO,SAAS,CAAC;gBACnB,KAAK,gBAAgB;oBACnB,OAAO,iBAAiB,CAAC;gBAC3B,KAAK,MAAM;oBACT,OAAO,OAAO,CAAC;gBACjB,KAAK,UAAU;oBACb,OAAO,WAAW,CAAC;gBACrB,KAAK,eAAe;oBAClB,OAAO,YAAY,CAAC;gBACtB;oBACE,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,KAAK,MAAM;YACT,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,QAAQ;oBACX,OAAO,aAAa,CAAC;gBACvB,KAAK,WAAW;oBACd,OAAO,YAAY,CAAC;gBACtB,KAAK,UAAU;oBACb,OAAO,WAAW,CAAC;gBACrB;oBACE,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,KAAK,QAAQ;YACX,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,QAAQ;oBACX,OAAO,SAAS,CAAC;gBACnB,KAAK,WAAW;oBACd,OAAO,YAAY,CAAC;gBACtB;oBACE,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,KAAK,QAAQ;YACX,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,QAAQ;oBACX,OAAO,SAAS,CAAC;gBACnB,KAAK,WAAW;oBACd,OAAO,YAAY,CAAC;gBACtB;oBACE,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,KAAK,SAAS;YACZ,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,uCAAuC,CAAC;gBAC7C,KAAK,mDAAmD;oBACtD,OAAO,YAAY,CAAC;gBACtB;oBACE,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,KAAK,UAAU;YACb,QAAQ,QAAQ,EAAE,CAAC;gBACjB;oBACE,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,KAAK,UAAU;YACb,QAAQ,QAAQ,EAAE,CAAC;gBACjB,KAAK,mBAAmB;oBACtB,OAAO,oBAAoB,CAAC;gBAC9B,KAAK,QAAQ;oBACX,OAAO,SAAS,CAAC;gBACnB,KAAK,SAAS;oBACZ,OAAO,UAAU,CAAC;gBACpB,KAAK,MAAM;oBACT,OAAO,OAAO,CAAC;gBACjB,KAAK,aAAa;oBAChB,OAAO,QAAQ,CAAC;gBAClB,KAAK,gBAAgB;oBACnB,OAAO,uBAAuB,CAAC;gBACjC,KAAK,KAAK;oBACR,OAAO,MAAM,CAAC;gBAChB;oBACE,OAAO,IAAI,CAAC;YAChB,CAAC;QACH,KAAK,SAAS,CAAC,CAAC,yCAAyC;QACzD;YACE,OAAO,IAAI,CAAC;IAChB,CAAC;AACH,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,EAChC,OAAO,EACP,WAAW,EACX,YAAY,EACZ,cAAc,EACd,WAAW,EACX,0BAA0B,GAAG,MAAM,EACnC,sBAAsB,GAAG,UAAU,GASpC;IACC,IAAI,UAA2C,CAAC;IAChD,IAAI,YAAsB,CAAC;IAE3B,6FAA6F;IAC7F,MAAM,eAAe,GAAG,CAAC,QAAqC,EAAmB,EAAE,CACjF,QAAQ,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,QAAQ,EAAE,QAAQ,CAAC,QAAS,EAAE,CAAC;IAE/E,MAAM,yBAAyB,GAAG,IAAI,GAAG,EAAoB,CAAC;IAE9D,MAAM,mBAAmB,GAAG,kBAAkB,CAAC,QAAQ,EAAE,OAAO,CAAE,CAAC;IAEnE,MAAM,OAAO,GAA8B;QACzC,GAAG,EAAE;YACH,KAAK,CAAC,IAAI,EAAE,GAAG,EAAE,QAAQ;gBACvB,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACtD,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;oBACxD,OAAO;gBACT,CAAC;gBAED,MAAM,MAAM,GAAG,eAAe,CAAC,QAAQ,CAAC,CAAC;gBAEzC,IACE,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,YAAY,CAAC,MAAM;oBAC9C,MAAM,CAAC,QAAQ,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,CAAC,MAAM;oBAC9C,GAAG,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ;oBAC1B,CAAC,WAAW,EACZ,CAAC;oBACD,gFAAgF;oBAChF,8EAA8E;oBAC9E,wEAAwE;oBACxE,IAAI,QAAQ,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,GAAG,KAAK,IAAI,IAAI,IAAI,CAAC,IAAI,KAAK,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,CAAC;wBAC9E,IAAI,CAAC,IAAI,GAAG,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC;oBACtC,CAAC;oBAED,OAAO;gBACT,CAAC;gBAED,IAAI,WAAW,IAAI,aAAa,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC;oBAC5C,OAAO;gBACT,CAAC;gBAED,MAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,IAAI,CAAC,IAAI,EAAE,OAAO,CAAC,CAAC;gBACjE,IAAI,CAAC,aAAa,EAAE,CAAC;oBACnB,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;gBAChC,CAAC;qBAAM,CAAC;oBACN,IAAI,WAAW,EAAE,CAAC;wBAChB,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;wBAC1C,UAAU,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;oBAChC,CAAC;yBAAM,CAAC;wBACN,IAAI,CAAC,IAAI,GAAG,aAAa,CAAC,aAAa,EAAE,MAAM,EAAE,GAAG,CAAC,CAAC;wBACtD,uBAAuB,CAAC,IAAI,EAAE,QAAQ,EAAE,GAAG,CAAC,CAAC;oBAC/C,CAAC;gBACH,CAAC;YACH,CAAC;SACF;QACD,OAAO,EAAE;YACP,KAAK,CAAC,IAAS,EAAE,GAAgB;gBAC/B,IAAI,eAAe,CAAC,IAAI,CAAC,IAAI,IAAI,CAAC,KAAK,KAAK,SAAS,EAAE,CAAC;oBACtD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC;oBAE3D,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;wBACtD,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,CAAC;wBACxD,OAAO;oBACT,CAAC;oBAED,IAAI,WAAW,IAAI,aAAa,CAAC,IAAI,CAAC,aAAa,CAAC,EAAE,CAAC;wBACrD,OAAO;oBACT,CAAC;oBAED,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,IAAI,CAAC,aAAa,EAAE,CAAC,CAAC,IAAI,CAAC;oBAC5D,OAAQ,IAAoB,CAAC,aAAa,CAAC;gBAC7C,CAAC;YACH,CAAC;SACF;QACD,IAAI,EAAE;YACJ,KAAK,CAAC,IAAS,EAAE,GAAgB;gBAC/B,YAAY,GAAG,GAAG,CAAC,QAAQ,CAAC;gBAC5B,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;oBACvB,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBACvD,CAAC;qBAAM,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;oBAC9B,UAAU,GAAG,IAAI,CAAC;gBACpB,CAAC;qBAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAChC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBACvD,CAAC;qBAAM,IAAI,OAAO,KAAK,QAAQ,EAAE,CAAC;oBAChC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBACvD,CAAC;qBAAM,IAAI,OAAO,KAAK,SAAS,EAAE,CAAC;oBACjC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBACvD,CAAC;qBAAM,IAAI,OAAO,KAAK,UAAU,EAAE,CAAC;oBAClC,UAAU,GAAG,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,UAAU,IAAI,EAAE,CAAC;gBACvD,CAAC;YACH,CAAC;SACF;KACF,CAAC;IAEF,IAAI,OAAO,KAAK,MAAM,EAAE,CAAC;QACvB,OAAO,CAAC,aAAa,GAAG;YACtB,KAAK,CAAC,aAAgC,EAAE,GAAgB;gBACtD,IACE,OAAO,aAAa,CAAC,cAAc,KAAK,QAAQ;oBAChD,CAAC,YAAY,CAAC,aAAa,CAAC,cAAc,CAAC,EAC3C,CAAC;oBACD,OAAO;gBACT,CAAC;gBAED,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,aAAa,CAAC,cAAc,EAAE,CAAC,CAAC;gBACrE,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;oBACtD,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,CAAC;oBAChF,OAAO;gBACT,CAAC;gBAED,aAAa,CAAC,cAAc,GAAG,aAAa,CAC1C,mBAAmB,EACnB,eAAe,CAAC,QAAQ,CAAC,EACzB,GAAG,CACJ,CAAC;YACJ,CAAC;YACD,oBAAoB,EAAE;gBACpB,KAAK,CAAC,OAAO,EAAE,GAAG;oBAChB,KAAK,MAAM,IAAI,IAAI,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC;wBACxC,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;wBAC3B,IAAI,CAAC,YAAY,CAAC,IAAI,CAAC,EAAE,CAAC;4BACxB,SAAS;wBACX,CAAC;wBACD,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC;wBACvC,IAAI,CAAC,QAAQ,CAAC,QAAQ,IAAI,QAAQ,CAAC,IAAI,KAAK,SAAS,EAAE,CAAC;4BACtD,mBAAmB,CAAC,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,CAAC;4BACpE,OAAO;wBACT,CAAC;wBAED,OAAO,CAAC,IAAI,CAAC,GAAG,aAAa,CAAC,mBAAmB,EAAE,eAAe,CAAC,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;oBACrF,CAAC;gBACH,CAAC;aACF;SACF,CAAC;IACJ,CAAC;IAED,4FAA4F;IAC5F,SAAS,uBAAuB,CAC9B,IAAY,EACZ,QAAqC,EACrC,GAAgB;QAEhB,MAAM,WAAW,GAAG;YAClB,QAAQ,EAAE,IAAa;YACvB,QAAQ,EAAE,KAAK;YACf,IAAI,EAAE,QAAQ,CAAC,IAAI;YACnB,KAAK,EAAE,QAAQ,CAAC,KAAK;YACrB,QAAQ,EAAE,YAAY;YACtB,WAAW,EAAE,IAAI,CAAC,IAAI;SACvB,CAAC;QACF,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,GAAG,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;QACvF,oEAAoE;QACpE,cAAc,CAAC,GAAG,CAAC,SAAS,CAAC,YAAY,CAAC,MAAM,CAAC,WAAW,EAAE,IAAI,CAAC,IAAI,CAAC,EAAE,WAAW,CAAC,CAAC;IACzF,CAAC;IAED,SAAS,aAAa,CAAC,aAAqB,EAAE,MAAuB,EAAE,GAAgB;QACrF,UAAU,CAAC,aAAa,CAAC,GAAG,UAAU,CAAC,aAAa,CAAC,IAAI,EAAE,CAAC;QAC5D,MAAM,IAAI,GAAG,gBAAgB,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,CAAC,CAAC;QAC1D,UAAU,CAAC,aAAa,CAAC,CAAC,IAAI,CAAC,GAAG,MAAM,CAAC,IAAI,CAAC;QAC9C,IACE,OAAO,KAAK,MAAM;YAClB,OAAO,KAAK,QAAQ;YACpB,OAAO,KAAK,QAAQ;YACpB,OAAO,KAAK,UAAU,EACtB,CAAC;YACD,OAAO,gBAAgB,aAAa,IAAI,IAAI,EAAE,CAAC;QACjD,CAAC;aAAM,CAAC;YACN,OAAO,KAAK,aAAa,IAAI,IAAI,EAAE,CAAC;QACtC,CAAC;IACH,CAAC;IAED,SAAS,iBAAiB,CAAC,IAAa,EAAE,MAAuB,EAAE,GAAgB;QACjF,IAAI,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;YAChB,MAAM,QAAQ,GAAG,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,YAAY,CAAC,eAAe,CAAC,CAAC;YACjE,MAAM,iBAAiB,GAAG,QAAQ,CAAC,QAAQ,IAAI,eAAe,CAAC,QAAQ,CAAC,CAAC,QAAQ,CAAC;YAClF,IAAI,iBAAiB,EAAE,eAAe,KAAK,MAAM,CAAC,QAAQ,CAAC,eAAe,EAAE,CAAC;gBAC3E,OAAO,IAAI,CAAC;YACd,CAAC;QACH,CAAC;QAED,OAAO,MAAM,CAAC,IAAI,EAAE,MAAM,CAAC,IAAI,CAAC,CAAC;IACnC,CAAC;IAED,SAAS,sBAAsB,CAC7B,MAAuB,EACvB,eAAgC,EAChC,GAAgB;QAEhB,MAAM,EAAE,IAAI,EAAE,GAAG,MAAM,CAAC;QACxB,MAAM,KAAK,GAAG,aAAa,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;QACnF,MAAM,GAAG,GAAG,YAAY,CAAC,KAAK,CAAC,CAAC,OAAO,CAAC,IAAI,MAAM,CAAC,KAAK,oBAAoB,GAAG,EAAE,GAAG,CAAC,EAAE,GAAG,CAAC,CAAC;QAC5F,MAAM,aAAa,GAAG,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAErD,IAAI,KAAK,KAAK,EAAE,EAAE,CAAC;YACjB,OAAO;gBACL,GAAG;gBACH,OAAO,EAAE;oBACP,OAAO,EAAE,6EAA6E;oBACtF,QAAQ,EAAE,MAAM,CAAC,QAAQ;oBACzB,aAAa,EAAE,OAAO;iBACvB;aACF,CAAC;QACJ,CAAC;QAED,IAAI,eAAe,CAAC,GAAG,CAAC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,GAAG,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,CAAC;YAClF,OAAO;gBACL,GAAG;gBACH,OAAO,EAAE;oBACP,OAAO,EACL,UAAU,KAAK,8BAA8B,GAAG,MAAM;wBACtD,2DAA2D;oBAC7D,QAAQ,EAAE,aAAa;oBACvB,IAAI,EAAE,yBAAyB,CAAC,GAAG,CAAC,GAAG,CAAC;oBACxC,aAAa,EAAE,0BAA0B;iBAC1C;aACF,CAAC;QACJ,CAAC;QACD,OAAO,EAAE,GAAG,EAAE,CAAC;IACjB,CAAC;IAED,SAAS,yBAAyB,CAChC,MAAuB,EACvB,eAAgC,EAChC,GAAgB;QAEhB,MAAM,QAAQ,GACZ,eAAe,CAAC,MAAM,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;QAC9F,IAAI,IAAI,GAAG,QAAQ,CAAC;QACpB,KACE,IAAI,QAAQ,GAAG,CAAC,EAChB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,iBAAiB,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,MAAM,EAAE,GAAG,CAAC,EAC/E,QAAQ,EAAE,EACV,CAAC;YACD,IAAI,GAAG,GAAG,QAAQ,IAAI,QAAQ,EAAE,CAAC;QACnC,CAAC;QACD,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,CAAC;IAC5B,CAAC;IAED,SAAS,gBAAgB,CAAC,MAAuB,EAAE,aAAqB,EAAE,GAAgB;QACxF,MAAM,eAAe,GAAG,UAAU,CAAC,aAAa,CAAC,CAAC;QAElD,IAAI,sBAAsB,KAAK,OAAO,IAAI,aAAa,KAAK,mBAAmB,EAAE,CAAC;YAChF,MAAM,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,sBAAsB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;YAC9E,IAAI,CAAC,OAAO,EAAE,CAAC;gBACb,yBAAyB,CAAC,GAAG,CAAC,GAAG,EAAE,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;gBACnE,OAAO,GAAG,CAAC;YACb,CAAC;YACD,MAAM,EAAE,IAAI,EAAE,GAAG,yBAAyB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;YACzE,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,EAAE,CAAC;gBAC3B,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;gBACpB,yBAAyB,CAAC,GAAG,CAAC,IAAI,EAAE,MAAM,CAAC,QAAQ,CAAC,CAAC;YACvD,CAAC;YACD,OAAO,IAAI,CAAC;QACd,CAAC;QAED,MAAM,EAAE,IAAI,EAAE,QAAQ,EAAE,GAAG,yBAAyB,CAAC,MAAM,EAAE,eAAe,EAAE,GAAG,CAAC,CAAC;QACnF,IAAI,CAAC,eAAe,CAAC,IAAI,CAAC,IAAI,QAAQ,KAAK,IAAI,EAAE,CAAC;YAChD,GAAG,CAAC,MAAM,CAAC;gBACT,OAAO,EAAE,gFAAgF,QAAQ,OAAO,IAAI,GAAG;gBAC/G,QAAQ,EAAE,GAAG,CAAC,QAAQ;gBACtB,aAAa,EAAE,0BAA0B;aAC1C,CAAC,CAAC;QACL,CAAC;QACD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,OAAO,CAAC;AACjB,CAAC"}
@@ -3,6 +3,7 @@ import type { Oas3Example, OasRef } from './typings/openapi.js';
3
3
  import type { ResolveResult, UserContext } from './walk.js';
4
4
  export declare function joinPointer(base: string, key: string | number): string;
5
5
  export declare function isRef(node: unknown): node is OasRef;
6
+ export declare function isRefWithSiblings(node: unknown): node is OasRef & Record<string, unknown>;
6
7
  export declare function isExternalValue(node: unknown): node is Oas3Example & {
7
8
  externalValue: string;
8
9
  };
@@ -1 +1 @@
1
- {"version":3,"file":"ref-utils.d.ts","sourceRoot":"","sources":["../src/ref-utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGhE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE5D,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,UAG7D;AAED,wBAAgB,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAEnD;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,WAAW,GAAG;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,CAE9F;AAED,qBAAa,QAAQ;IAEV,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;gBADf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM;IAGxB,KAAK,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,MAAM;IAUvD,GAAG;;;IAIH,IAAI,eAAe,WAElB;CACF;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAShE;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAK/E;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAM/E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,YAE3C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,UAG9C;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,UAItC;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,WAOxC;AAED,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKlE;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,WAW3C;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,WAEnC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,WAAW,QAUrF"}
1
+ {"version":3,"file":"ref-utils.d.ts","sourceRoot":"","sources":["../src/ref-utils.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,cAAc,CAAC;AAC3C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,sBAAsB,CAAC;AAGhE,OAAO,KAAK,EAAE,aAAa,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AAE5D,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,UAG7D;AAED,wBAAgB,KAAK,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,CAEnD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,MAAM,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAEzF;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,IAAI,WAAW,GAAG;IAAE,aAAa,EAAE,MAAM,CAAA;CAAE,CAE9F;AAED,qBAAa,QAAQ;IAEV,MAAM,EAAE,MAAM;IACd,OAAO,EAAE,MAAM;gBADf,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,MAAM;IAGxB,KAAK,CAAC,UAAU,EAAE,CAAC,MAAM,GAAG,MAAM,CAAC,EAAE,GAAG,MAAM,GAAG,MAAM;IAUvD,GAAG;;;IAIH,IAAI,eAAe,WAElB;CACF;AAED,wBAAgB,uBAAuB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAShE;AAED,wBAAgB,qBAAqB,CAAC,CAAC,SAAS,MAAM,GAAG,MAAM,EAAE,QAAQ,EAAE,CAAC,GAAG,CAAC,CAK/E;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG;IAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,MAAM,EAAE,CAAA;CAAE,CAM/E;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,YAE3C;AAED,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,UAG9C;AAED,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,UAItC;AAED,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,WAOxC;AAED,wBAAgB,MAAM,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAQ/C;AAED,wBAAgB,WAAW,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,GAAG,MAAM,CAKlE;AAED,wBAAgB,YAAY,CAAC,OAAO,EAAE,MAAM,WAW3C;AAED,wBAAgB,QAAQ,CAAC,GAAG,EAAE,MAAM,WAEnC;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,EAAE,GAAG,EAAE,WAAW,QAWrF"}
package/lib/ref-utils.js CHANGED
@@ -9,6 +9,9 @@ export function joinPointer(base, key) {
9
9
  export function isRef(node) {
10
10
  return isPlainObject(node) && typeof node.$ref === 'string';
11
11
  }
12
+ export function isRefWithSiblings(node) {
13
+ return isRef(node) && Object.keys(node).length > 1;
14
+ }
12
15
  export function isExternalValue(node) {
13
16
  return isPlainObject(node) && typeof node.externalValue === 'string';
14
17
  }
@@ -98,15 +101,13 @@ export function isAnchor(ref) {
98
101
  return /^#[A-Za-z][A-Za-z0-9\-_:.]*$/.test(ref);
99
102
  }
100
103
  export function replaceRef(ref, resolved, ctx) {
101
- if (!isPlainObject(resolved.node)) {
104
+ if (!isPlainObject(resolved.node) && ctx.parent) {
102
105
  ctx.parent[ctx.key] = resolved.node;
106
+ return;
103
107
  }
104
- else {
105
- // eslint-disable-next-line @typescript-eslint/ban-ts-comment
106
- // @ts-ignore
107
- delete ref.$ref;
108
- const obj = Object.assign({}, resolved.node, ref);
109
- Object.assign(ref, obj); // assign ref itself again so ref fields take precedence
108
+ delete ref.$ref;
109
+ if (isPlainObject(resolved.node)) {
110
+ Object.assign(ref, { ...resolved.node, ...ref }); // ref fields take precedence
110
111
  }
111
112
  }
112
113
  //# sourceMappingURL=ref-utils.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ref-utils.js","sourceRoot":"","sources":["../src/ref-utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ref-utils.js","sourceRoot":"","sources":["../src/ref-utils.ts"],"names":[],"mappings":"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"}
package/lib/resolve.d.ts CHANGED
@@ -1,6 +1,7 @@
1
1
  import type { YAMLNode, LoadOptions } from 'yaml-ast-parser';
2
2
  import type { ResolveConfig } from './config/types.js';
3
3
  import { YamlParseError } from './errors/yaml-parse-error.js';
4
+ import { Location } from './ref-utils.js';
4
5
  import { type NormalizedNodeType } from './types/index.js';
5
6
  export type CollectedRefs = Map<string, Document>;
6
7
  export declare class Source {
@@ -31,6 +32,11 @@ export declare class BaseResolver {
31
32
  parseDocument(source: Source, isRoot?: boolean): Document;
32
33
  resolveDocument<T = unknown>(base: string | null, ref: string, isRoot?: boolean): Promise<Document<T> | ResolveError | YamlParseError>;
33
34
  }
35
+ export type ResolvedRefChainHop = {
36
+ node: unknown;
37
+ document: Document;
38
+ location: Location;
39
+ };
34
40
  export type ResolvedRef = {
35
41
  resolved: false;
36
42
  isRemote: boolean;
@@ -39,6 +45,7 @@ export type ResolvedRef = {
39
45
  source?: Source;
40
46
  error?: ResolveError | YamlParseError;
41
47
  node?: any;
48
+ chain?: undefined;
42
49
  } | {
43
50
  resolved: true;
44
51
  node: any;
@@ -46,6 +53,7 @@ export type ResolvedRef = {
46
53
  nodePointer: string;
47
54
  isRemote: boolean;
48
55
  error?: undefined;
56
+ chain?: ResolvedRefChainHop[];
49
57
  };
50
58
  export type ResolvedRefMap = Map<string, ResolvedRef>;
51
59
  export declare function resolveDocument(opts: {
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,iBAAiB,CAAC;AAE7D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,EAAE,cAAc,EAAE,MAAM,8BAA8B,CAAC;AAY9D,OAAO,EAA8B,KAAK,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AASvF,MAAM,MAAM,aAAa,GAAG,GAAG,CAAC,MAAM,EAAyB,QAAQ,CAAC,CAAC;AAEzE,qBAAa,MAAM;;IAER,WAAW,EAAE,MAAM;IACnB,IAAI,EAAE,MAAM;IACZ,QAAQ,CAAC,EAAE,MAAM;gBAFjB,WAAW,EAAE,MAAM,EACnB,IAAI,EAAE,MAAM,EACZ,QAAQ,CAAC,EAAE,MAAM,YAAA;IAO1B,MAAM,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,WAAW,GAAG,SAAS,KAAK,QAAQ;IAkB/E,QAAQ;CAMT;AAED,qBAAa,YAAa,SAAQ,KAAK;IAClB,aAAa,EAAE,KAAK;gBAApB,aAAa,EAAE,KAAK;CAKxC;AAED,MAAM,MAAM,QAAQ,CAAC,CAAC,GAAG,OAAO,IAAI;IAClC,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,EAAE,CAAC,CAAC;CACX,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,CAAC,GAAG,OAAO,EAChD,YAAY,EAAE,MAAM,EACpB,WAAW,EAAE,MAAM,GAClB,QAAQ,CAAC,CAAC,CAAC,CAcb;AAED,qBAAa,YAAY;IAGX,SAAS,CAAC,MAAM,EAAE,aAAa;IAF3C,KAAK,EAAE,GAAG,CAAC,MAAM,EAAE,OAAO,CAAC,QAAQ,GAAG,YAAY,CAAC,CAAC,CAAa;gBAE3C,MAAM,GAAE,aAAyC;IAEvE,QAAQ;IAIR,kBAAkB,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM;IAYtD,eAAe,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAmB3D,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,GAAE,OAAe,GAAG,QAAQ;IAwB1D,eAAe,CAAC,CAAC,GAAG,OAAO,EAC/B,IAAI,EAAE,MAAM,GAAG,IAAI,EACnB,GAAG,EAAE,MAAM,EACX,MAAM,GAAE,OAAe,GACtB,OAAO,CAAC,QAAQ,CAAC,CAAC,CAAC,GAAG,YAAY,GAAG,cAAc,CAAC;CAgBxD;AAED,MAAM,MAAM,WAAW,GACnB;IACE,QAAQ,EAAE,KAAK,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,EAAE,QAAQ,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,YAAY,GAAG,cAAc,CAAC;IACtC,IAAI,CAAC,EAAE,GAAG,CAAC;CACZ,GACD;IACE,QAAQ,EAAE,IAAI,CAAC;IACf,IAAI,EAAE,GAAG,CAAC;IACV,QAAQ,EAAE,QAAQ,CAAC;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,OAAO,CAAC;IAClB,KAAK,CAAC,EAAE,SAAS,CAAC;CACnB,CAAC;AAEN,MAAM,MAAM,cAAc,GAAG,GAAG,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;AA2BtD,wBAAsB,eAAe,CAAC,IAAI,EAAE;IAC1C,YAAY,EAAE,QAAQ,CAAC;IACvB,mBAAmB,EAAE,YAAY,CAAC;IAClC,QAAQ,EAAE,kBAAkB,CAAC;CAC9B,GAAG,OAAO,CAAC,cAAc,CAAC,CA4P1B"}
1
+ {"version":3,"file":"resolve.d.ts","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
package/lib/resolve.js CHANGED
@@ -3,7 +3,7 @@ import * as path from 'node:path';
3
3
  import { YamlParseError } from './errors/yaml-parse-error.js';
4
4
  import { isGraphqlRef } from './graphql/detect-graphql.js';
5
5
  import { parseYaml } from './js-yaml/index.js';
6
- import { isRef, joinPointer, escapePointerFragment, parseRef, isAbsoluteUrl, isAnchor, isExternalValue, } from './ref-utils.js';
6
+ import { isRef, joinPointer, escapePointerFragment, parseRef, isAbsoluteUrl, isAnchor, isExternalValue, isRefWithSiblings, Location, } from './ref-utils.js';
7
7
  import { isNamedType, SpecExtension } from './types/index.js';
8
8
  import { getOwn } from './utils/get-own.js';
9
9
  import { isPlainObject } from './utils/is-plain-object.js';
@@ -240,6 +240,10 @@ export async function resolveDocument(opts) {
240
240
  }).then((resolvedRef) => {
241
241
  if (resolvedRef.resolved) {
242
242
  resolveRefsInParallel(resolvedRef.node, resolvedRef.document, resolvedRef.nodePointer, type);
243
+ // chain hops carry sibling keys that can contain refs of their own
244
+ for (const chainHop of resolvedRef.chain ?? []) {
245
+ resolveRefsInParallel(chainHop.node, chainHop.document, chainHop.location.pointer, type);
246
+ }
243
247
  }
244
248
  });
245
249
  resolvePromises.push(promise);
@@ -316,6 +320,8 @@ export async function resolveDocument(opts) {
316
320
  }
317
321
  else if (isRef(target)) {
318
322
  resolvedRef = await followRef(targetDoc, target, pushRef(refStack, target));
323
+ // a chain collected while traversing into a ref does not belong to the outer ref
324
+ resolvedRef.chain = undefined;
319
325
  targetDoc = resolvedRef.document || targetDoc;
320
326
  if (isPlainObject(resolvedRef.node)) {
321
327
  target = resolvedRef.node[segment];
@@ -339,7 +345,19 @@ export async function resolveDocument(opts) {
339
345
  resolvedRef.document = targetDoc;
340
346
  const refId = makeRefId(document.source.absoluteRef, ref.$ref);
341
347
  if (resolvedRef.document && isRef(target)) {
348
+ // a $ref with sibling keys is a composition, not an alias — record it as a chain hop
349
+ const chainHop = isRefWithSiblings(target)
350
+ ? {
351
+ node: target,
352
+ document: resolvedRef.document,
353
+ location: new Location(resolvedRef.document.source, resolvedRef.nodePointer),
354
+ }
355
+ : undefined;
342
356
  resolvedRef = await followRef(resolvedRef.document, target, pushRef(refStack, target));
357
+ if (chainHop && resolvedRef.resolved) {
358
+ // rebuilt, not mutated: the chain array is shared with the inner recursion's map entry
359
+ resolvedRef = { ...resolvedRef, chain: [chainHop, ...(resolvedRef.chain ?? [])] };
360
+ }
343
361
  }
344
362
  resolvedRefMap.set(refId, resolvedRef);
345
363
  return { ...resolvedRef };
@@ -1 +1 @@
1
- {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"resolve.js","sourceRoot":"","sources":["../src/resolve.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"no-required-schema-properties-undefined.d.ts","sourceRoot":"","sources":["../../../src/rules/common/no-required-schema-properties-undefined.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAIjG,eAAO,MAAM,mCAAmC,EAC5C,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,UAAU,GACV,WA8CH,CAAC"}
1
+ {"version":3,"file":"no-required-schema-properties-undefined.d.ts","sourceRoot":"","sources":["../../../src/rules/common/no-required-schema-properties-undefined.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,QAAQ,EAAE,MAAM,mBAAmB,CAAC;AAIjG,eAAO,MAAM,mCAAmC,EAC5C,QAAQ,GACR,QAAQ,GACR,UAAU,GACV,UAAU,GACV,WAsFH,CAAC"}
@@ -1,14 +1,49 @@
1
+ import { isNotEmptyArray } from '../../utils/is-not-empty-array.js';
2
+ import { isPlainObject } from '../../utils/is-plain-object.js';
1
3
  import { resolveSchema, schemaHasProperty } from '../utils.js';
2
4
  export const NoRequiredSchemaPropertiesUndefined = () => {
3
5
  const parents = [];
6
+ const validatedRefNodes = new Set();
7
+ const reportUndefinedRequired = (schema, schemaLocation, ctx) => {
8
+ if (!isNotEmptyArray(schema.required))
9
+ return;
10
+ for (const [i, requiredProperty] of schema.required.entries()) {
11
+ if (!schemaHasProperty(schema, requiredProperty, ctx, new Set(), schemaLocation)) {
12
+ ctx.report({
13
+ message: `Required property '${requiredProperty}' is not defined.`,
14
+ location: schemaLocation.child(['required', i]),
15
+ reference: 'https://redocly.com/docs/cli/rules/common/no-required-schema-properties-undefined',
16
+ });
17
+ }
18
+ }
19
+ };
4
20
  return {
21
+ ref: {
22
+ leave(refNode, ctx, resolved) {
23
+ if (ctx.type.name !== 'Schema')
24
+ return;
25
+ // composed $refs are never visited as Schema nodes, so the `required` sibling
26
+ // keywords of the ref itself and of the chain hops are validated here
27
+ const composedSchemas = [
28
+ { node: refNode, location: ctx.location },
29
+ ...(resolved.chain ?? []),
30
+ ];
31
+ for (const { node, location } of composedSchemas) {
32
+ if (!isPlainObject(node) || validatedRefNodes.has(node)) {
33
+ continue;
34
+ }
35
+ validatedRefNodes.add(node);
36
+ reportUndefinedRequired(node, location, ctx);
37
+ }
38
+ },
39
+ },
5
40
  Schema: {
6
41
  leave(_) {
7
42
  parents.pop();
8
43
  },
9
44
  enter(currentSchema, ctx) {
10
45
  parents.push(currentSchema);
11
- if (!currentSchema.required)
46
+ if (!isNotEmptyArray(currentSchema.required))
12
47
  return;
13
48
  const isCompositionChild = (parent, child) => {
14
49
  const matchesChild = (s) => resolveSchema(s, ctx).schema === child;
@@ -1 +1 @@
1
- {"version":3,"file":"no-required-schema-properties-undefined.js","sourceRoot":"","sources":["../../../src/rules/common/no-required-schema-properties-undefined.ts"],"names":[],"mappings":"AAEA,OAAO,EAAkB,aAAa,EAAE,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAE/E,MAAM,CAAC,MAAM,mCAAmC,GAK9B,GAAG,EAAE;IACrB,MAAM,OAAO,GAAgB,EAAE,CAAC;IAChC,OAAO;QACL,MAAM,EAAE;YACN,KAAK,CAAC,CAAY;gBAChB,OAAO,CAAC,GAAG,EAAE,CAAC;YAChB,CAAC;YACD,KAAK,CAAC,aAAwB,EAAE,GAAgB;gBAC9C,OAAO,CAAC,IAAI,CAAC,aAAa,CAAC,CAAC;gBAC5B,IAAI,CAAC,aAAa,CAAC,QAAQ;oBAAE,OAAO;gBAEpC,MAAM,kBAAkB,GAAG,CAAC,MAAiB,EAAE,KAAgB,EAAW,EAAE;oBAC1E,MAAM,YAAY,GAAG,CAAC,CAAY,EAAE,EAAE,CAAC,aAAa,CAAC,CAAC,EAAE,GAAG,CAAC,CAAC,MAAM,KAAK,KAAK,CAAC;oBAC9E,OAAO,CAAC,CAAC,CACP,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;wBAChC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC;wBAChC,MAAM,CAAC,KAAK,EAAE,IAAI,CAAC,YAAY,CAAC,CACjC,CAAC;gBACJ,CAAC,CAAC;gBAEF,MAAM,mBAAmB,GAAG,CAAC,CAAS,EAAE,KAAgB,EAAyB,EAAE;oBACjF,IAAI,CAAC,GAAG,CAAC;wBAAE,OAAO,SAAS,CAAC;oBAC5B,MAAM,MAAM,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;oBAC1B,OAAO,kBAAkB,CAAC,MAAM,EAAE,KAAK,CAAC;wBACtC,CAAC,CAAC,CAAC,mBAAmB,CAAC,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC,IAAI,MAAM,CAAC;wBAChD,CAAC,CAAC,SAAS,CAAC;gBAChB,CAAC,CAAC;gBAEF,MAAM,eAAe,GAAG,mBAAmB,CAAC,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,aAAa,CAAC,CAAC;gBAE/E,KAAK,MAAM,CAAC,CAAC,EAAE,gBAAgB,CAAC,IAAI,aAAa,CAAC,QAAQ,CAAC,OAAO,EAAE,EAAE,CAAC;oBACrE,IACE,CAAC,iBAAiB,CAAC,aAAa,EAAE,gBAAgB,EAAE,GAAG,CAAC;wBACxD,CAAC,iBAAiB,CAAC,eAAe,EAAE,gBAAgB,EAAE,GAAG,CAAC,EAC1D,CAAC;wBACD,GAAG,CAAC,MAAM,CAAC;4BACT,OAAO,EAAE,sBAAsB,gBAAgB,mBAAmB;4BAClE,QAAQ,EAAE,GAAG,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,UAAU,EAAE,CAAC,CAAC,CAAC;4BAC7C,SAAS,EACP,mFAAmF;yBACtF,CAAC,CAAC;oBACL,CAAC;gBACH,CAAC;YACH,CAAC;SACF;KACF,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"no-required-schema-properties-undefined.js","sourceRoot":"","sources":["../../../src/rules/common/no-required-schema-properties-undefined.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
1
  import type { Context as AjvContext } from '@redocly/ajv/dist/2020.js';
2
2
  import { Location } from '../ref-utils.js';
3
+ import type { ResolvedRefChainHop } from '../resolve.js';
3
4
  import type { Async2Operation } from '../typings/asyncapi2.js';
4
5
  import type { Async3Operation } from '../typings/asyncapi3.js';
5
6
  import type { Oas3Schema, Oas3Tag, Oas3_2Tag, Oas3_1Schema, OasRef, Referenced } from '../typings/openapi.js';
@@ -13,6 +14,7 @@ export type AnySchema = Oas3Schema | Oas3_1Schema | (Oas2Schema & {
13
14
  export declare const resolveSchema: <T extends NonUndefined>(schemaOrRef: Referenced<T> | undefined, ctx: UserContext, location?: Location) => {
14
15
  schema?: T;
15
16
  location?: Location;
17
+ chain?: ResolvedRefChainHop[];
16
18
  };
17
19
  export declare const schemaHasProperty: (schemaOrRef: Referenced<AnySchema> | undefined, propertyName: string, ctx: UserContext, visited?: Set<AnySchema | OasRef>, resolveLocation?: Location) => boolean;
18
20
  export declare function oasTypeOf(value: unknown): "string" | "number" | "bigint" | "boolean" | "symbol" | "undefined" | "object" | "function" | "integer" | "array" | "null";
@@ -1 +1 @@
1
- {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/rules/utils.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,2BAA2B,CAAC;AAGvE,OAAO,EAAS,QAAQ,EAAE,MAAM,iBAAiB,CAAC;AAClD,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,yBAAyB,CAAC;AACrF,OAAO,KAAK,EAAE,eAAe,EAAwB,MAAM,yBAAyB,CAAC;AACrF,OAAO,KAAK,EAEV,UAAU,EACV,OAAO,EACP,SAAS,EACT,YAAY,EACZ,MAAM,EACN,UAAU,EACX,MAAM,uBAAuB,CAAC;AAC/B,OAAO,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,uBAAuB,CAAC;AAKjE,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,EAAE,KAAK,YAAY,EAAE,MAAM,UAAU,CAAC;AAE7C,MAAM,MAAM,SAAS,GACjB,UAAU,GACV,YAAY,GACZ,CAAC,UAAU,GAAG;IAAE,KAAK,CAAC,EAAE,SAAS,CAAC;IAAC,KAAK,CAAC,EAAE,SAAS,CAAA;CAAE,CAAC,CAAC;AAE5D,eAAO,MAAM,aAAa,GAAI,CAAC,SAAS,YAAY,EAClD,aAAa,UAAU,CAAC,CAAC,CAAC,GAAG,SAAS,EACtC,KAAK,WAAW,EAChB,WAAW,QAAQ,KAClB;IACD,MAAM,CAAC,EAAE,CAAC,CAAC;IACX,QAAQ,CAAC,EAAE,QAAQ,CAAC;CAUrB,CAAC;AAEF,eAAO,MAAM,iBAAiB,GAC5B,aAAa,UAAU,CAAC,SAAS,CAAC,GAAG,SAAS,EAC9C,cAAc,MAAM,EACpB,KAAK,WAAW,EAChB,UAAS,GAAG,CAAC,SAAS,GAAG,MAAM,CAAa,EAC5C,kBAAkB,QAAQ,KACzB,OAkCF,CAAC;AAEF,wBAAgB,SAAS,CAAC,KAAK,EAAE,OAAO,8HAUvC;AAED,KAAK,gBAAgB,GAAG,eAAe,GAAG,eAAe,CAAC;AAG1D,wBAAgB,uBAAuB,CAAC,IAAI,EAAE;IAAE,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,SAAS,GAAG,OAAO,CAGzF;AAED,wBAAgB,uBAAuB,CACrC,SAAS,EAAE,gBAAgB,GAAG,SAAS,EACvC,OAAO,EAAE,WAAW,CAAC,SAAS,CAAC,EAC/B,WAAW,CAAC,EAAE,MAAM,GACnB,OAAO,CAQT;AAED;;;;;;GAMG;AACH,wBAAgB,qBAAqB,CAAC,KAAK,EAAE,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,OAAO,GAAG,OAAO,CAiB9F;AAED,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAExE;AAED,wBAAgB,0BAA0B,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,MAAM,EAAE,GAAG,MAAM,CAIjF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,MAAM,CAEjE;AAED,wBAAgB,0BAA0B,CAAC,EACzC,SAAS,EACT,KAAK,EACL,GAAG,EACH,SAAS,GACV,EAAE;IACD,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,GAAG,CAAC;IACX,GAAG,EAAE,WAAW,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,QAkBA;AAED,wBAAgB,+BAA+B,CAAC,EAC9C,UAAU,EACV,KAAK,EACL,GAAG,EACH,SAAS,GACV,EAAE;IACD,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,KAAK,EAAE,GAAG,CAAC;IACX,GAAG,EAAE,WAAW,CAAC;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,QAoBA;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAkBtE;AAED,wBAAgB,yBAAyB,CACvC,OAAO,EAAE,OAAO,GACf;IAAE,KAAK,EAAE,OAAO,CAAC;IAAC,KAAK,EAAE,WAAW,GAAG,OAAO,CAAA;CAAE,GAAG,SAAS,CAK9D;AAED,wBAAgB,eAAe,CAAC,EAC9B,OAAO,EACP,MAAM,EACN,OAAO,EACP,SAAS,GACV,EAAE;IACD,OAAO,EAAE,GAAG,CAAC;IACb,MAAM,EAAE,UAAU,CAAC,UAAU,GAAG,YAAY,CAAC,CAAC;IAC9C,OAAO,EAAE;QACP,QAAQ,EAAE,QAAQ,CAAC;QACnB,GAAG,EAAE,WAAW,CAAC;QACjB,SAAS,EAAE,YAAY,CAAC;QACxB,yBAAyB,EAAE,OAAO,CAAC;QACnC,UAAU,CAAC,EAAE,UAAU,CAAC;KACzB,CAAC;IACF,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,QAuCA;AAID,wBAAgB,sBAAsB,CACpC,UAAU,EAAE,MAAM,EAAE,EACpB,aAAa,EAAE,MAAM,EACrB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,QAAQ,GAAG,SAAS,EACjC,EAAE,MAAM,EAAE,QAAQ,EAAE,EAAE,WAAW,EACjC,iBAAiB,CAAC,EAAE,MAAM,QAqB3B;AAED,wBAAgB,qBAAqB,CAAC,EACpC,aAAa,EACb,SAAS,EACT,MAAM,EACN,SAAS,GACV,EAAE;IACD,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,MAAM,EAAE,WAAW,CAAC,QAAQ,CAAC,CAAC;IAC9B,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,QAgBA;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,OAAO,GAAG,OAAO,GAAG,SAAS,EAAE,UAAU,EAAE,OAAO,GAAG,MAAM,CAE1F"}
1
+ {"version":3,"file":"utils.d.ts","sourceRoot":"","sources":["../../src/rules/utils.ts"],"names":[],"mappings":"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"}
@@ -8,16 +8,12 @@ export const resolveSchema = (schemaOrRef, ctx, location) => {
8
8
  if (isRef(schemaOrRef)) {
9
9
  const resolved = ctx.resolve(schemaOrRef, location?.source.absoluteRef);
10
10
  return resolved
11
- ? { schema: resolved.node, location: resolved.location }
11
+ ? { schema: resolved.node, location: resolved.location, chain: resolved.chain }
12
12
  : { schema: undefined, location };
13
13
  }
14
14
  return { schema: schemaOrRef, location };
15
15
  };
16
- export const schemaHasProperty = (schemaOrRef, propertyName, ctx, visited = new Set(), resolveLocation) => {
17
- const { schema, location } = resolveSchema(schemaOrRef, ctx, resolveLocation);
18
- if (!schema || visited.has(schema))
19
- return false;
20
- visited.add(schema);
16
+ const schemaDefinesProperty = (schema, propertyName, ctx, visited, location) => {
21
17
  if (schema.properties && getOwn(schema.properties, propertyName) !== undefined) {
22
18
  return true;
23
19
  }
@@ -34,6 +30,34 @@ export const schemaHasProperty = (schemaOrRef, propertyName, ctx, visited = new
34
30
  }
35
31
  return false;
36
32
  };
33
+ export const schemaHasProperty = (schemaOrRef, propertyName, ctx, visited = new Set(), resolveLocation) => {
34
+ // a $ref can carry sibling keywords that compose the target, so check them first
35
+ if (isRef(schemaOrRef) &&
36
+ schemaDefinesProperty(schemaOrRef, propertyName, ctx, visited, resolveLocation)) {
37
+ return true;
38
+ }
39
+ const { schema, location, chain } = resolveSchema(schemaOrRef, ctx, resolveLocation);
40
+ if (!schema)
41
+ return false;
42
+ if (!visited.has(schema)) {
43
+ visited.add(schema);
44
+ if (schemaDefinesProperty(schema, propertyName, ctx, visited, location)) {
45
+ return true;
46
+ }
47
+ }
48
+ // composed $refs the resolution chased through contribute their sibling keywords too,
49
+ // even when the chain end was already visited through another branch
50
+ for (const chainHop of chain ?? []) {
51
+ if (!isPlainObject(chainHop.node) || visited.has(chainHop.node)) {
52
+ continue;
53
+ }
54
+ visited.add(chainHop.node);
55
+ if (schemaDefinesProperty(chainHop.node, propertyName, ctx, visited, chainHop.location)) {
56
+ return true;
57
+ }
58
+ }
59
+ return false;
60
+ };
37
61
  export function oasTypeOf(value) {
38
62
  if (Array.isArray(value)) {
39
63
  return 'array';
@@ -1 +1 @@
1
- {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/rules/utils.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"utils.js","sourceRoot":"","sources":["../../src/rules/utils.ts"],"names":[],"mappings":"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"}
package/lib/walk.d.ts CHANGED
@@ -2,7 +2,7 @@ import type { Config, RuleSeverity } from './config/index.js';
2
2
  import { YamlParseError } from './errors/yaml-parse-error.js';
3
3
  import type { SpecVersion } from './oas-types.js';
4
4
  import { Location } from './ref-utils.js';
5
- import type { ResolveError, Source, ResolvedRefMap, Document } from './resolve.js';
5
+ import type { ResolveError, Source, ResolvedRefMap, ResolvedRefChainHop, Document } from './resolve.js';
6
6
  import { type NormalizedNodeType } from './types/index.js';
7
7
  import type { Referenced } from './typings/openapi.js';
8
8
  import type { NormalizedOasVisitors, BaseVisitor } from './visitors.js';
@@ -12,10 +12,12 @@ export type ResolveResult<T extends NonUndefined> = {
12
12
  node: T;
13
13
  location: Location;
14
14
  error?: ResolveError | YamlParseError;
15
+ chain?: ResolvedRefChainHop[];
15
16
  } | {
16
17
  node: undefined;
17
18
  location: undefined;
18
19
  error?: ResolveError | YamlParseError;
20
+ chain?: ResolvedRefChainHop[];
19
21
  };
20
22
  export type ResolveFn = <T extends NonUndefined>(node: Referenced<T>, from?: string) => ResolveResult<T>;
21
23
  export type UserContext = {
package/lib/walk.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"walk.d.ts","sourceRoot":"","sources":["../src/walk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"walk.d.ts","sourceRoot":"","sources":["../src/walk.ts"],"names":[],"mappings":"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"}
package/lib/walk.js CHANGED
@@ -1,5 +1,5 @@
1
1
  import { YamlParseError } from './errors/yaml-parse-error.js';
2
- import { Location, isRef } from './ref-utils.js';
2
+ import { Location, isRef, isRefWithSiblings } from './ref-utils.js';
3
3
  import { isNamedType, SpecExtension } from './types/index.js';
4
4
  import { getOwn } from './utils/get-own.js';
5
5
  import { isPlainObject } from './utils/is-plain-object.js';
@@ -26,6 +26,8 @@ function collectParentsLocations(ctx) {
26
26
  export function walkDocument(opts) {
27
27
  const { document, rootType, normalizedVisitors, resolvedRefMap, ctx } = opts;
28
28
  const seenNodesPerType = {};
29
+ const walkedComposedRefs = new Set();
30
+ const composedRefWalkId = (type, location) => `${type.name}::${location.absolutePointer}`;
29
31
  const ignoredNodes = new Set();
30
32
  // Pre-compute combined enter/leave arrays per type to avoid per-node array allocations
31
33
  const anyEnter = normalizedVisitors.any.enter;
@@ -51,20 +53,26 @@ export function walkDocument(opts) {
51
53
  node: undefined,
52
54
  };
53
55
  }
54
- const { resolved, node, document, nodePointer, error } = resolvedRef;
56
+ const { resolved, node, document, nodePointer, error, chain } = resolvedRef;
55
57
  const newLocation = resolved
56
58
  ? new Location(document.source, nodePointer)
57
59
  : error instanceof YamlParseError
58
60
  ? new Location(error.source, '')
59
61
  : undefined;
60
- return { location: newLocation, node, error };
62
+ return { location: newLocation, node, error, chain };
61
63
  };
62
64
  const rawLocation = location;
63
65
  let currentLocation = location;
64
66
  const nodeIsRef = isRef(node);
65
- const { node: resolvedNode, location: resolvedLocation, error } = resolve(node);
67
+ const { node: resolvedNode, location: resolvedLocation, error, chain: resolvedChain, } = resolve(node);
66
68
  const enteredContexts = new Set();
67
- if (nodeIsRef) {
69
+ // a composed $ref can be reached twice: as a chain hop and at its own place in the tree;
70
+ // ref visitors and sibling keys are processed only on the first visit
71
+ const composedRefAlreadyWalked = isRefWithSiblings(node) && walkedComposedRefs.has(composedRefWalkId(type, location));
72
+ if (isRefWithSiblings(node)) {
73
+ walkedComposedRefs.add(composedRefWalkId(type, location));
74
+ }
75
+ if (nodeIsRef && !composedRefAlreadyWalked) {
68
76
  const refEnterVisitors = normalizedVisitors.ref.enter;
69
77
  for (const { visit: visitor, ruleId, severity, message, context } of refEnterVisitors) {
70
78
  enteredContexts.add(context);
@@ -82,13 +90,36 @@ export function walkDocument(opts) {
82
90
  specVersion: ctx.specVersion,
83
91
  config: ctx.config,
84
92
  getVisitorData: () => getVisitorDataFn(ruleId),
85
- }, { node: resolvedNode, location: resolvedLocation, error });
93
+ }, { node: resolvedNode, location: resolvedLocation, error, chain: resolvedChain });
86
94
  if (resolvedLocation?.source.absoluteRef && ctx.refTypes) {
87
95
  ctx.refTypes.set(resolvedLocation?.source.absoluteRef, type);
88
96
  }
89
97
  }
90
98
  }
91
99
  if (resolvedNode !== undefined && resolvedLocation && type.name !== 'scalar') {
100
+ const walkProp = (propName, value, loc, valueParent) => {
101
+ let propType = getOwn(type.properties, propName);
102
+ if (propType === undefined)
103
+ propType = type.additionalProperties;
104
+ if (typeof propType === 'function')
105
+ propType = propType(value, propName);
106
+ if (propType === undefined &&
107
+ type.extensionsPrefix &&
108
+ propName.startsWith(type.extensionsPrefix)) {
109
+ propType = SpecExtension;
110
+ }
111
+ if (!isNamedType(propType) && propType?.directResolveAs) {
112
+ propType = propType.directResolveAs;
113
+ value = { $ref: value };
114
+ }
115
+ if (propType && propType.name === undefined && propType.resolvable !== false) {
116
+ propType = { name: 'scalar', properties: {} };
117
+ }
118
+ if (!isNamedType(propType) || (propType.name === 'scalar' && !isRef(value))) {
119
+ return;
120
+ }
121
+ walkNode(value, propType, loc.child([propName]), valueParent, propName);
122
+ };
92
123
  currentLocation = resolvedLocation;
93
124
  const isNodeSeen = seenNodesPerType[type.name]?.has?.(resolvedNode);
94
125
  let visitedBySome = false;
@@ -177,41 +208,26 @@ export function walkDocument(opts) {
177
208
  else if (type.extensionsPrefix) {
178
209
  props.push(...Object.keys(resolvedNode).filter((k) => k.startsWith(type.extensionsPrefix)));
179
210
  }
180
- if (nodeIsRef) {
181
- props.push(...Object.keys(node).filter((k) => k !== '$ref' && !props.includes(k))); // properties on the same level as $ref
182
- }
183
211
  for (const propName of props) {
184
- let value = resolvedNode[propName];
185
- let loc = resolvedLocation;
186
- if (value === undefined) {
187
- value = node[propName];
188
- loc = location; // properties on the same level as $ref should resolve against original location, not target
189
- }
190
- let propType = getOwn(type.properties, propName);
191
- if (propType === undefined)
192
- propType = type.additionalProperties;
193
- if (typeof propType === 'function')
194
- propType = propType(value, propName);
195
- if (propType === undefined &&
196
- type.extensionsPrefix &&
197
- propName.startsWith(type.extensionsPrefix)) {
198
- propType = SpecExtension;
199
- }
200
- if (!isNamedType(propType) && propType?.directResolveAs) {
201
- propType = propType.directResolveAs;
202
- value = { $ref: value };
212
+ const resolvedValue = resolvedNode[propName];
213
+ if (resolvedValue !== undefined) {
214
+ walkProp(propName, resolvedValue, resolvedLocation, resolvedNode);
203
215
  }
204
- if (propType && propType.name === undefined && propType.resolvable !== false) {
205
- propType = { name: 'scalar', properties: {} };
206
- }
207
- if (isRef(node[propName]) && propType?.name === 'scalar') {
208
- walkNode(node[propName], propType, location.child([propName]), node, propName);
209
- continue;
210
- }
211
- if (!isNamedType(propType) || (propType.name === 'scalar' && !isRef(value))) {
212
- continue;
213
- }
214
- walkNode(value, propType, loc.child([propName]), resolvedNode, propName);
216
+ }
217
+ }
218
+ }
219
+ if (nodeIsRef && resolvedChain?.length) {
220
+ // walk the composed $ref the resolution passed through; the rest of the chain follows
221
+ const chainHop = resolvedChain[0];
222
+ if (!walkedComposedRefs.has(composedRefWalkId(type, chainHop.location))) {
223
+ walkNode(chainHop.node, type, chainHop.location, undefined, key);
224
+ }
225
+ }
226
+ if (isRefWithSiblings(node) && !composedRefAlreadyWalked) {
227
+ // walk the keys written next to $ref; they resolve against the ref's own location
228
+ for (const propName of Object.keys(node)) {
229
+ if (propName !== '$ref' && node[propName] !== resolvedNode?.[propName]) {
230
+ walkProp(propName, node[propName], location, node);
215
231
  }
216
232
  }
217
233
  }
@@ -238,7 +254,7 @@ export function walkDocument(opts) {
238
254
  }
239
255
  }
240
256
  currentLocation = location;
241
- if (nodeIsRef) {
257
+ if (nodeIsRef && !composedRefAlreadyWalked) {
242
258
  const refLeaveVisitors = normalizedVisitors.ref.leave;
243
259
  for (const { visit: visitor, ruleId, severity, context, message } of refLeaveVisitors) {
244
260
  if (enteredContexts.has(context)) {
@@ -256,7 +272,7 @@ export function walkDocument(opts) {
256
272
  specVersion: ctx.specVersion,
257
273
  config: ctx.config,
258
274
  getVisitorData: () => getVisitorDataFn(ruleId),
259
- }, { node: resolvedNode, location: resolvedLocation, error });
275
+ }, { node: resolvedNode, location: resolvedLocation, error, chain: resolvedChain });
260
276
  }
261
277
  }
262
278
  }
package/lib/walk.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"walk.js","sourceRoot":"","sources":["../src/walk.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"walk.js","sourceRoot":"","sources":["../src/walk.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@redocly/openapi-core",
3
- "version": "2.44.2",
3
+ "version": "2.45.0",
4
4
  "description": "",
5
5
  "type": "module",
6
6
  "types": "lib/index.d.ts",