MCPcopy Create free account
hub / github.com/loopbackio/loopback-next / resolveSchema

Function resolveSchema

packages/openapi-v3/src/generate-schema.ts:17–42  ·  view source on GitHub ↗
(
  fn?: Function,
  schema: SchemaObject = {},
)

Source from the content-addressed store, hash-verified

15 * @param schema - The schema object provided in an parameter object
16 */
17export function resolveSchema(
18 fn?: Function,
19 schema: SchemaObject = {},
20): SchemaObject {
21 let resolvedSchema: SchemaObject = {};
22
23 if (typeof fn === 'function') {
24 if (fn === String) {
25 resolvedSchema = {type: 'string'};
26 } else if (fn === Number) {
27 resolvedSchema = {type: 'number'};
28 } else if (fn === Boolean) {
29 resolvedSchema = {type: 'boolean'};
30 } else if (fn === Date) {
31 resolvedSchema = {type: 'string', format: 'date-time'};
32 } else if (fn === Object) {
33 resolvedSchema = {type: 'object'};
34 } else if (fn === Array) {
35 resolvedSchema = {type: 'array'};
36 } else {
37 resolvedSchema = {$ref: `#/components/schemas/${fn.name}`};
38 }
39 }
40
41 return Object.assign(schema, resolvedSchema);
42}

Callers 4

processSchemaExtensionsFunction · 0.90
requestBodyFunction · 0.90
paramFunction · 0.90

Calls

no outgoing calls

Tested by

no test coverage detected