Skip to content

Commit

Permalink
ensure readOnly/writeOnly are evaluated first (#848)
Browse files Browse the repository at this point in the history
  • Loading branch information
sserrata committed Jun 24, 2024
1 parent e4626d4 commit f0d0fc4
Showing 1 changed file with 36 additions and 24 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -594,6 +594,18 @@ function createEdges({
required,
discriminator,
}: EdgeProps): any {
if (SCHEMA_TYPE === "request") {
if (schema.readOnly && schema.readOnly === true) {
return undefined;
}
}

if (SCHEMA_TYPE === "response") {
if (schema.writeOnly && schema.writeOnly === true) {
return undefined;
}
}

const schemaName = getSchemaName(schema);
if (discriminator !== undefined && discriminator.propertyName === name) {
return createPropertyDiscriminator(
Expand All @@ -619,6 +631,19 @@ function createEdges({
const { mergedSchemas }: { mergedSchemas: SchemaObject } = mergeAllOf(
schema.allOf
);

if (SCHEMA_TYPE === "request") {
if (mergedSchemas.readOnly && mergedSchemas.readOnly === true) {
return undefined;
}
}

if (SCHEMA_TYPE === "response") {
if (mergedSchemas.writeOnly && mergedSchemas.writeOnly === true) {
return undefined;
}
}

const mergedSchemaName = getSchemaName(mergedSchemas);
if (
mergedSchemas.oneOf !== undefined ||
Expand Down Expand Up @@ -664,18 +689,6 @@ function createEdges({
);
}

if (SCHEMA_TYPE === "request") {
if (mergedSchemas.readOnly && mergedSchemas.readOnly === true) {
return undefined;
}
}

if (SCHEMA_TYPE === "response") {
if (mergedSchemas.writeOnly && mergedSchemas.writeOnly === true) {
return undefined;
}
}

return create("SchemaItem", {
collapsible: false,
name,
Expand Down Expand Up @@ -727,18 +740,6 @@ function createEdges({
);
}

if (SCHEMA_TYPE === "request") {
if (schema.readOnly && schema.readOnly === true) {
return undefined;
}
}

if (SCHEMA_TYPE === "response") {
if (schema.writeOnly && schema.writeOnly === true) {
return undefined;
}
}

// primitives and array of non-objects
return create("SchemaItem", {
collapsible: false,
Expand All @@ -758,6 +759,17 @@ export function createNodes(
schemaType: "request" | "response"
): any {
SCHEMA_TYPE = schemaType;
if (SCHEMA_TYPE === "request") {
if (schema.readOnly && schema.readOnly === true) {
return undefined;
}
}

if (SCHEMA_TYPE === "response") {
if (schema.writeOnly && schema.writeOnly === true) {
return undefined;
}
}
const nodes = [];
// if (schema.discriminator !== undefined) {
// return createDiscriminator(schema);
Expand Down

0 comments on commit f0d0fc4

Please sign in to comment.