Skip to content

Commit f442cec

Browse files
committed
fix: use default reference resolver
1 parent 8e9622f commit f442cec

File tree

2 files changed

+24
-24
lines changed

2 files changed

+24
-24
lines changed

src/dereference-document.test.ts

Lines changed: 20 additions & 20 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@ describe("dereferenceDocument", () => {
1818

1919
it("doesnt explode", async () => {
2020
expect.assertions(1);
21-
const document = await dereferenceDocument(workingDocument, defaultResolver);
21+
const document = await dereferenceDocument(workingDocument);
2222
expect(document.methods).toBeDefined();
2323
});
2424

@@ -33,7 +33,7 @@ describe("dereferenceDocument", () => {
3333
{ name: "abc", params: [], result: { name: "cba", schema: { type: "number" } } }
3434
],
3535
openrpc: "1.0.0-rc1",
36-
}, defaultResolver);
36+
});
3737
expect(document.methods).toBeDefined();
3838
});
3939

@@ -43,13 +43,13 @@ describe("dereferenceDocument", () => {
4343
...workingDocument,
4444
"x-methods": {
4545
foobar: {
46-
name: "foobar",
47-
params: [],
48-
result: {
49-
name: "abcfoo",
50-
schema: { type: "number" }
51-
}
52-
}
46+
name: "foobar",
47+
params: [],
48+
result: {
49+
name: "abcfoo",
50+
schema: { type: "number" }
51+
}
52+
}
5353
},
5454
components: {
5555
schemas: {
@@ -102,9 +102,9 @@ describe("dereferenceDocument", () => {
102102
schema: { $ref: "#/components/schemas/bigOlFoo" }
103103
}
104104
});
105-
testDoc.methods.push({"$ref":"#/x-methods/foobar"})
105+
testDoc.methods.push({ "$ref": "#/x-methods/foobar" })
106106

107-
const document = await dereferenceDocument(testDoc, defaultResolver);
107+
const document = await dereferenceDocument(testDoc);
108108
const docMethods = document.methods as MethodObject[];
109109
expect(docMethods).toBeDefined();
110110
expect(docMethods[0]).toBeDefined();
@@ -158,7 +158,7 @@ describe("dereferenceDocument", () => {
158158
}
159159
} as OpenrpcDocument;
160160

161-
const document = await dereferenceDocument(testDoc, defaultResolver);
161+
const document = await dereferenceDocument(testDoc);
162162
expect(document.methods).toBeDefined();
163163
expect(document.methods[0]).toBeDefined();
164164

@@ -204,7 +204,7 @@ describe("dereferenceDocument", () => {
204204
};
205205

206206
try {
207-
await dereferenceDocument(testDoc as OpenrpcDocument, defaultResolver)
207+
await dereferenceDocument(testDoc as OpenrpcDocument)
208208
} catch (e) {
209209
expect(e).toBeInstanceOf(OpenRPCDocumentDereferencingError);
210210
}
@@ -231,7 +231,7 @@ describe("dereferenceDocument", () => {
231231
};
232232

233233
try {
234-
await dereferenceDocument(testDoc as OpenrpcDocument, defaultResolver)
234+
await dereferenceDocument(testDoc as OpenrpcDocument)
235235
} catch (e) {
236236
expect(e).toBeInstanceOf(OpenRPCDocumentDereferencingError);
237237
}
@@ -261,7 +261,7 @@ describe("dereferenceDocument", () => {
261261
};
262262

263263
try {
264-
await dereferenceDocument(testDoc as OpenrpcDocument, defaultResolver)
264+
await dereferenceDocument(testDoc as OpenrpcDocument)
265265
} catch (e) {
266266
expect(e).toBeInstanceOf(OpenRPCDocumentDereferencingError);
267267
}
@@ -299,7 +299,7 @@ describe("dereferenceDocument", () => {
299299
}
300300
};
301301

302-
const result = await dereferenceDocument(testDoc as OpenrpcDocument, defaultResolver) as any;
302+
const result = await dereferenceDocument(testDoc as OpenrpcDocument) as any;
303303

304304
expect(result.methods[0].links[0]).toBe(testDoc.components.links.fooLink)
305305
});
@@ -325,7 +325,7 @@ describe("dereferenceDocument", () => {
325325
]
326326
};
327327

328-
const result = await dereferenceDocument(testDoc as OpenrpcDocument, defaultResolver) as any;
328+
const result = await dereferenceDocument(testDoc as OpenrpcDocument) as any;
329329

330330
expect(result.methods[0].result.schema.type).toBe("string")
331331
});
@@ -361,12 +361,12 @@ describe("dereferenceDocument", () => {
361361
}
362362
};
363363

364-
const result = await dereferenceDocument(testDoc as OpenrpcDocument, defaultResolver) as any;
364+
const result = await dereferenceDocument(testDoc as OpenrpcDocument) as any;
365365

366366
expect(result.methods[0].result.schema.properties.foo).toBe(result.components.schemas.foo);
367367
});
368368

369-
it("throws when a schema cannot be resolved from componnets", async () => {
369+
it("throws when a schema cannot be resolved from components", async () => {
370370
expect.assertions(1);
371371

372372
const testDoc = {
@@ -399,7 +399,7 @@ describe("dereferenceDocument", () => {
399399
};
400400

401401
try {
402-
await dereferenceDocument(testDoc as OpenrpcDocument, defaultResolver) as any;
402+
await dereferenceDocument(testDoc as OpenrpcDocument) as any;
403403
} catch (e) {
404404
expect(e).toBeInstanceOf(OpenRPCDocumentDereferencingError);
405405
}

src/dereference-document.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
import Dereferencer from "@json-schema-tools/dereferencer";
22
import { OpenrpcDocument as OpenRPC, ReferenceObject, ExamplePairingObject, JSONSchema, SchemaComponents, ContentDescriptorComponents, ContentDescriptorObject, OpenrpcDocument, MethodObject, MethodOrReference } from "@open-rpc/meta-schema";
33
import referenceResolver from "@json-schema-tools/reference-resolver";
4-
import safeStringify from "fast-safe-stringify";
4+
import safeStringify from "fast-safe-stringify";
55

66
export type ReferenceResolver = typeof referenceResolver
77
/**
@@ -118,8 +118,8 @@ const handleSchemasInsideContentDescriptorComponents = async (doc: OpenrpcDocume
118118
const handleMethod = async (methodOrRef: MethodOrReference, doc: OpenrpcDocument, resolver: ReferenceResolver): Promise<MethodObject> => {
119119
let method = methodOrRef as MethodObject;
120120

121-
if(methodOrRef.$ref !== undefined){
122-
method = await derefItem({$ref: methodOrRef.$ref}, doc, resolver)
121+
if (methodOrRef.$ref !== undefined) {
122+
method = await derefItem({ $ref: methodOrRef.$ref }, doc, resolver)
123123
}
124124

125125
if (method.tags !== undefined) {
@@ -187,7 +187,7 @@ const handleMethod = async (methodOrRef: MethodOrReference, doc: OpenrpcDocument
187187
* ```
188188
*
189189
*/
190-
export default async function dereferenceDocument(openrpcDocument: OpenRPC, resolver: ReferenceResolver): Promise<OpenRPC> {
190+
export default async function dereferenceDocument(openrpcDocument: OpenRPC, resolver: ReferenceResolver = referenceResolver): Promise<OpenRPC> {
191191
let derefDoc = { ...openrpcDocument };
192192

193193
derefDoc = await handleSchemaComponents(derefDoc);

0 commit comments

Comments
 (0)