Skip to content

Commit 9f34aec

Browse files
committed
schema refactoring
1 parent 545551f commit 9f34aec

File tree

1 file changed

+90
-78
lines changed

1 file changed

+90
-78
lines changed

schemas/nswag.json

Lines changed: 90 additions & 78 deletions
Original file line numberDiff line numberDiff line change
@@ -1,108 +1,120 @@
11
{
22
"$schema": "http://json-schema.org/draft-07/schema#",
33
"type": "object",
4-
"properties": {
5-
"runtime": {
6-
"type": "string",
7-
"enum": [
8-
"Default",
9-
"WinX64",
10-
"WinX86",
11-
"NetCore10",
12-
"NetCore11",
13-
"NetCore20",
14-
"NetCore21",
15-
"NetCore22",
16-
"NetCore30",
17-
"Debug"
18-
]
19-
},
20-
"defaultVariables": {
21-
"type": [
22-
"string",
23-
"null"
24-
]
4+
"allOf": [
5+
{
6+
"$ref": "#/definitions/nswagDocument"
257
},
26-
"documentGenerator": {
8+
{
9+
"properties": {
10+
"codeGenerators": {
11+
"$ref": "#/definitions/codeGenerators"
12+
}
13+
}
14+
}
15+
],
16+
"definitions": {
17+
"nswagDocument": {
2718
"type": "object",
2819
"properties": {
29-
"fromDocument": {
20+
"runtime": {
21+
"type": "string",
22+
"enum": [
23+
"Default",
24+
"WinX64",
25+
"WinX86",
26+
"NetCore10",
27+
"NetCore11",
28+
"NetCore20",
29+
"NetCore21",
30+
"NetCore22",
31+
"NetCore30",
32+
"Debug"
33+
]
34+
},
35+
"defaultVariables": {
36+
"type": [
37+
"string",
38+
"null"
39+
]
40+
},
41+
"documentGenerator": {
3042
"type": "object",
3143
"properties": {
32-
"json": {
33-
"type": "string",
34-
"description": "Path to file or JSON text."
44+
"fromDocument": {
45+
"type": "object",
46+
"properties": {
47+
"json": {
48+
"type": "string",
49+
"description": "Path to file or JSON text."
50+
},
51+
"url": {
52+
"type": "string",
53+
"description": "Document URL. Dont used if 'json' property is set."
54+
},
55+
"output": {
56+
"type": "null"
57+
}
58+
},
59+
"anyOf": [
60+
{
61+
"required": [
62+
"json"
63+
]
64+
},
65+
{
66+
"required": [
67+
"url"
68+
]
69+
}
70+
]
3571
},
36-
"url": {
37-
"type": "string",
38-
"description": "Document URL. Dont used if 'json' property is set."
72+
"jsonSchemaToOpenApi": {
73+
"properties": {
74+
"name": {
75+
"type": "string",
76+
"description": "Name of schema`"
77+
},
78+
"schema": {
79+
"type": "string",
80+
"description": "Path to file or text of schema."
81+
}
82+
},
83+
"required": [
84+
"name",
85+
"schema"
86+
]
3987
},
40-
"output": {
41-
"type": "null"
88+
"preprocessors": {
89+
"additionalProperties": {
90+
"type": "object"
91+
},
92+
"description": "List of using preprocessors."
4293
}
4394
},
4495
"anyOf": [
4596
{
4697
"required": [
47-
"json"
98+
"fromDocument"
4899
]
49100
},
50101
{
51102
"required": [
52-
"url"
103+
"jsonSchemaToOpenApi"
53104
]
54-
}
55-
]
56-
},
57-
"jsonSchemaToOpenApi": {
58-
"properties": {
59-
"name": {
60-
"type": "string",
61-
"description": "Name of schema`"
62105
},
63-
"schema": {
64-
"type": "string",
65-
"description": "Path to file or text of schema."
106+
{
107+
"required": [
108+
"preprocessors"
109+
]
66110
}
67-
},
68-
"required": [
69-
"name",
70-
"schema"
71111
]
72-
},
73-
"preprocessors": {
74-
"additionalProperties": {
75-
"type": "object"
76-
},
77-
"description": "List of using preprocessors."
78112
}
79113
},
80-
"anyOf": [
81-
{
82-
"required": [
83-
"fromDocument"
84-
]
85-
},
86-
{
87-
"required": [
88-
"jsonSchemaToOpenApi"
89-
]
90-
},
91-
{
92-
"required": [
93-
"preprocessors"
94-
]
95-
}
114+
"required": [
115+
"codeGenerators"
96116
]
97117
},
98-
"codeGenerators": {
99-
"$ref": "#/definitions/codeGenerators"
100-
}
101-
},
102-
"required": [
103-
"codeGenerators"
104-
],
105-
"definitions": {
106118
"codeGenerators": {
107119
"description": "Generator used for code generation.",
108120
"type": "object",

0 commit comments

Comments
 (0)