Skip to content

Commit

Permalink
Pick and extend to dry.
Browse files Browse the repository at this point in the history
Signed-off-by: dblock <dblock@amazon.com>
  • Loading branch information
dblock committed Jul 24, 2024
1 parent cf81425 commit 3cadc1b
Showing 1 changed file with 9 additions and 16 deletions.
25 changes: 9 additions & 16 deletions tools/src/merger/OpenApiVersionExtractor.ts
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@
* compatible open source license.
*/

import _ from 'lodash'
import _, { extend } from 'lodash'
import { delete_matching_keys, find_refs, write_yaml } from '../helpers'
import { Logger } from '../Logger'
import { type OpenAPIV3 } from 'openapi-types'
Expand Down Expand Up @@ -81,21 +81,14 @@ export default class OpenApiVersionExtractor {
// remove anything that's not referenced
var references: string[] = find_refs(this._spec)

this._spec.components.schemas = _.pickBy(this._spec.components.schemas, (_value, key) =>
_.includes(references, `#/components/schemas/${key}`)
)

this._spec.components.parameters = _.pickBy(this._spec.components.parameters, (_value, key) =>
_.includes(references, `#/components/parameters/${key}`)
)

this._spec.components.responses = _.pickBy(this._spec.components.responses, (_value, key) =>
_.includes(references, `#/components/responses/${key}`)
)

this._spec.components.requestBodies = _.pickBy(this._spec.components.requestBodies, (_value, key) =>
_.includes(references, `#/components/requestBodies/${key}`)
)
this._spec.components = _.reduce(_.map(['parameters', 'requestBodies', 'responses', 'schemas'], (p) =>
{
return {
[p]: _.pickBy(this._spec?.components?.[p], (_value, key) =>
_.includes(references, `#/components/${p}/${key}`))
}
}
), extend)

// collect what's left
var remaining = _.flatMap(['schemas', 'parameters', 'responses', 'requestBodies'], (key) =>
Expand Down

0 comments on commit 3cadc1b

Please sign in to comment.