3
3
const { partition } = require ( 'ramda' ) ;
4
4
const { addSourceMap } = require ( '../source-map' ) ;
5
5
const { isOpenApiExtension } = require ( '../predicates' ) ;
6
- const parseOpenApiExtension = require ( './open-api-extension' ) ;
6
+ const { parseOpenApiExtension, parseOpenApiExtensions } = require ( './open-api-extension' ) ;
7
7
8
8
// parseContact :: (Options, JsonNode) -> Element
9
9
const parseContact = ( { namespace, sourceMap } , node ) => {
10
10
const contactKeyElement = new namespace . elements . String ( 'contact' ) ;
11
- const contactElement = new namespace . elements . Object ( ) ;
11
+ let contactElement = new namespace . elements . Object ( ) ;
12
12
const { MemberElement } = namespace . elements . Element . prototype ;
13
13
const [ openApiExtensions , properties ] = partition ( isOpenApiExtension ( { } ) , node . value . properties ) ;
14
14
@@ -22,9 +22,9 @@ const parseContact = ({ namespace, sourceMap }, node) => {
22
22
) )
23
23
} ) ;
24
24
25
- openApiExtensions . forEach ( propertyNode => {
26
- contactElement . content . push ( parseOpenApiExtension ( { namespace, sourceMap } , propertyNode ) ) ;
27
- } ) ;
25
+ contactElement = contactElement . concat (
26
+ parseOpenApiExtensions ( { namespace, sourceMap } , openApiExtensions )
27
+ ) ;
28
28
29
29
contactElement . classes . push ( 'contact' ) ;
30
30
@@ -37,7 +37,7 @@ const parseContact = ({ namespace, sourceMap }, node) => {
37
37
// parseLicense :: (Options, JsonNode) -> Element
38
38
const parseLicense = ( { namespace, sourceMap } , node ) => {
39
39
const licenseKeyElement = new namespace . elements . String ( 'license' ) ;
40
- const licenseElement = new namespace . elements . Object ( ) ;
40
+ let licenseElement = new namespace . elements . Object ( ) ;
41
41
const { MemberElement } = namespace . elements . Element . prototype ;
42
42
const [ openApiExtensions , properties ] = partition ( isOpenApiExtension ( { } ) , node . value . properties ) ;
43
43
@@ -51,9 +51,9 @@ const parseLicense = ({ namespace, sourceMap }, node) => {
51
51
) )
52
52
} ) ;
53
53
54
- openApiExtensions . forEach ( propertyNode => {
55
- licenseElement . content . push ( parseOpenApiExtension ( { namespace, sourceMap } , propertyNode ) ) ;
56
- } ) ;
54
+ licenseElement = licenseElement . concat (
55
+ parseOpenApiExtensions ( { namespace, sourceMap } , openApiExtensions )
56
+ ) ;
57
57
58
58
licenseElement . classes . push ( 'license' ) ;
59
59
0 commit comments