@team-supercharge/oasg 13.0.0-python-upgrade-5d937276.0 → 13.0.0-react-upgrade-cef0d034.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/README.md +29 -7
  2. package/bin/oasg +10 -9
  3. package/config.schema.yml +18 -3
  4. package/package.json +1 -1
  5. package/targets/feign/generator-config.json +4 -3
  6. package/targets/feign/templates/beanValidation.mustache +2 -7
  7. package/targets/feign/templates/formParams.mustache +2 -1
  8. package/targets/feign/templates/libraries/spring-cloud/clientConfiguration.mustache +118 -0
  9. package/targets/feign/templates/libraries/spring-cloud/pom-sb3.mustache +16 -16
  10. package/targets/feign/templates/libraries/spring-cloud/pom.mustache +16 -16
  11. package/targets/feign-kotlin/generator-config.json +3 -3
  12. package/targets/feign-kotlin/templates/libraries/spring-cloud/pom-sb3.mustache +2 -1
  13. package/targets/flutter/generate.sh +22 -0
  14. package/targets/flutter/generator-config.json +8 -0
  15. package/targets/flutter/publish.sh +26 -0
  16. package/targets/ios/generate.sh +1 -0
  17. package/targets/ios/generator-config.json +7 -0
  18. package/targets/ios/publish.sh +1 -1
  19. package/targets/nestjs/generate.sh +1 -0
  20. package/targets/nestjs/generator-config.json +5 -0
  21. package/targets/nestjs/templates/api.service.mustache +1 -1
  22. package/targets/nestjs/templates/reorder-operations.js +1 -1
  23. package/targets/nestjs/templates/rewrite-path-parameters.js +2 -2
  24. package/targets/react/generator-config.json +12 -0
  25. package/targets/spring/generator-config.json +4 -4
  26. package/targets/spring/templates/libraries/spring-boot/pom-sb3.mustache +247 -0
  27. package/targets/spring/templates/libraries/spring-boot/pom.mustache +257 -0
  28. package/targets/spring-kotlin/generator-config.json +3 -3
  29. package/targets/spring-kotlin/templates/libraries/spring-boot/pom-sb3.mustache +0 -1
  30. package/targets/spring-kotlin/templates/libraries/spring-boot/pom.mustache +0 -1
  31. package/targets/feign-kotlin/templates/libraries/dataClassReqVar.mustache +0 -5
  32. package/targets/feign-kotlin/templates/libraries/spring-cloud/apiInterface.mustache +0 -108
  33. package/targets/react-native/generator-config.json +0 -7
  34. package/targets/spring-kotlin/templates/dataClassReqVar.mustache +0 -5
  35. /package/targets/{react-native → react}/generate.sh +0 -0
  36. /package/targets/{react-native → react}/publish.sh +0 -0
@@ -0,0 +1,247 @@
1
+ {{! attach sources }}
2
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
3
+ <modelVersion>4.0.0</modelVersion>
4
+ <groupId>{{groupId}}</groupId>
5
+ <artifactId>{{artifactId}}</artifactId>
6
+ <packaging>jar</packaging>
7
+ <name>{{artifactId}}</name>
8
+ <version>{{artifactVersion}}</version>
9
+ <properties>
10
+ <java.version>17</java.version>
11
+ <maven.compiler.source>${java.version}</maven.compiler.source>
12
+ <maven.compiler.target>${java.version}</maven.compiler.target>
13
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
14
+ {{#springDocDocumentationProvider}}
15
+ <springdoc.version>2.0.2</springdoc.version>
16
+ {{/springDocDocumentationProvider}}
17
+ {{^springDocDocumentationProvider}}
18
+ {{#swagger2AnnotationLibrary}}
19
+ <swagger-annotations.version>}2.2.7</swagger-annotations.version>
20
+ {{/swagger2AnnotationLibrary}}
21
+ {{/springDocDocumentationProvider}}
22
+ {{#useSwaggerUI}}
23
+ <swagger-ui.version>4.15.5</swagger-ui.version>
24
+ {{/useSwaggerUI}}
25
+ {{#virtualService}}
26
+ <virtualan.version>2.5.2</virtualan.version>
27
+ {{/virtualService}}
28
+ </properties>
29
+ {{#parentOverridden}}
30
+ <parent>
31
+ <groupId>{{{parentGroupId}}}</groupId>
32
+ <artifactId>{{{parentArtifactId}}}</artifactId>
33
+ <version>{{{parentVersion}}}</version>
34
+ </parent>
35
+ {{/parentOverridden}}
36
+ {{^parentOverridden}}
37
+ <parent>
38
+ <groupId>org.springframework.boot</groupId>
39
+ <artifactId>spring-boot-starter-parent</artifactId>
40
+ <version>3.0.0</version>
41
+ <relativePath/> <!-- lookup parent from repository -->
42
+ </parent>
43
+ {{/parentOverridden}}
44
+
45
+ <repositories>
46
+ <repository>
47
+ <id>repository.spring.milestone</id>
48
+ <name>Spring Milestone Repository</name>
49
+ <url>https://repo.spring.io/milestone</url>
50
+ </repository>
51
+ </repositories>
52
+ <pluginRepositories>
53
+ <pluginRepository>
54
+ <id>spring-milestones</id>
55
+ <url>https://repo.spring.io/milestone</url>
56
+ </pluginRepository>
57
+ </pluginRepositories>
58
+
59
+ <build>
60
+ <sourceDirectory>src/main/java</sourceDirectory>
61
+ {{#interfaceOnly}}
62
+ <plugins>
63
+ <plugin>
64
+ <groupId>org.apache.maven.plugins</groupId>
65
+ <artifactId>maven-source-plugin</artifactId>
66
+ <executions>
67
+ <execution>
68
+ <id>attach-sources</id>
69
+ <goals>
70
+ <goal>jar</goal>
71
+ </goals>
72
+ </execution>
73
+ </executions>
74
+ </plugin>
75
+ </plugins>
76
+ {{/interfaceOnly}}
77
+ {{^interfaceOnly}}
78
+ <plugins>
79
+ <plugin>
80
+ <groupId>org.springframework.boot</groupId>
81
+ <artifactId>spring-boot-maven-plugin</artifactId>
82
+ {{#classifier}}
83
+ <configuration>
84
+ <classifier>{{{classifier}}}</classifier>
85
+ </configuration>
86
+ {{/classifier}}
87
+ </plugin>
88
+ {{#apiFirst}}
89
+ <plugin>
90
+ <groupId>org.openapitools</groupId>
91
+ <artifactId>openapi-generator-maven-plugin</artifactId>
92
+ <version>{{{generatorVersion}}}</version>
93
+ <executions>
94
+ <execution>
95
+ <goals>
96
+ <goal>generate</goal>
97
+ </goals>
98
+ <configuration>
99
+ <inputSpec>src/main/resources/openapi.yaml</inputSpec>
100
+ <generatorName>spring</generatorName>
101
+ <apiPackage>{{{apiPackage}}}</apiPackage>
102
+ <modelPackage>{{{modelPackage}}}</modelPackage>
103
+ <generateSupportingFiles>false</generateSupportingFiles>
104
+ {{#modelNamePrefix}}
105
+ <modelNamePrefix>{{{.}}}</modelNamePrefix>
106
+ {{/modelNamePrefix}}
107
+ {{#modelNameSuffix}}
108
+ <modelNameSuffix>{{{.}}}</modelNameSuffix>
109
+ {{/modelNameSuffix}}
110
+ <configOptions>
111
+ {{#configOptions}}
112
+ <{{left}}>{{right}}</{{left}}>
113
+ {{/configOptions}}
114
+ </configOptions>
115
+ </configuration>
116
+ </execution>
117
+ </executions>
118
+ </plugin>
119
+ {{/apiFirst}}
120
+ </plugins>
121
+ {{/interfaceOnly}}
122
+ </build>
123
+ <dependencies>
124
+ <dependency>
125
+ <groupId>org.springframework.boot</groupId>
126
+ <artifactId>spring-boot-starter-web{{#reactive}}flux{{/reactive}}</artifactId>
127
+ </dependency>
128
+ <dependency>
129
+ <groupId>org.springframework.data</groupId>
130
+ <artifactId>spring-data-commons</artifactId>
131
+ </dependency>
132
+ {{#springDocDocumentationProvider}}
133
+ <!--SpringDoc dependencies -->
134
+ {{#useSwaggerUI}}
135
+ <dependency>
136
+ <groupId>org.springdoc</groupId>
137
+ <artifactId>springdoc-openapi-starter-{{#reactive}}webflux{{/reactive}}{{^reactive}}webmvc{{/reactive}}-ui</artifactId>
138
+ <version>${springdoc.version}</version>
139
+ </dependency>
140
+ {{/useSwaggerUI}}
141
+ {{^useSwaggerUI}}
142
+ <dependency>
143
+ <groupId>org.springdoc</groupId>
144
+ <artifactId>springdoc-openapi-starter-{{#reactive}}webflux{{/reactive}}{{^reactive}}webmvc{{/reactive}}-api</artifactId>
145
+ <version>${springdoc.version}</version>
146
+ </dependency>
147
+ {{/useSwaggerUI}}
148
+ {{/springDocDocumentationProvider}}
149
+ {{#useSwaggerUI}}
150
+ {{^springDocDocumentationProvider}}
151
+ <dependency>
152
+ <groupId>org.webjars</groupId>
153
+ <artifactId>swagger-ui</artifactId>
154
+ <version>${swagger-ui.version}</version>
155
+ </dependency>
156
+ <dependency>
157
+ <groupId>org.webjars</groupId>
158
+ <artifactId>webjars-locator-core</artifactId>
159
+ </dependency>
160
+ {{/springDocDocumentationProvider}}
161
+ {{/useSwaggerUI}}
162
+ {{^springDocDocumentationProvider}}
163
+ {{#swagger2AnnotationLibrary}}
164
+ <dependency>
165
+ <groupId>io.swagger.core.v3</groupId>
166
+ <artifactId>swagger-annotations</artifactId>
167
+ <version>${swagger-annotations.version}</version>
168
+ </dependency>
169
+ {{/swagger2AnnotationLibrary}}
170
+ {{/springDocDocumentationProvider}}
171
+ <!-- @Nullable annotation -->
172
+ <dependency>
173
+ <groupId>com.google.code.findbugs</groupId>
174
+ <artifactId>jsr305</artifactId>
175
+ <version>3.0.2</version>
176
+ </dependency>
177
+ <dependency>
178
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
179
+ <artifactId>jackson-dataformat-yaml</artifactId>
180
+ </dependency>
181
+ {{#withXml}}
182
+ <!-- XML processing: Jackson -->
183
+ <dependency>
184
+ <groupId>jakarta.xml.bind</groupId>
185
+ <artifactId>jakarta.xml.bind-api</artifactId>
186
+ </dependency>
187
+ <dependency>
188
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
189
+ <artifactId>jackson-dataformat-xml</artifactId>
190
+ </dependency>
191
+ {{/withXml}}
192
+ <dependency>
193
+ <groupId>com.fasterxml.jackson.datatype</groupId>
194
+ <artifactId>jackson-datatype-jsr310</artifactId>
195
+ </dependency>
196
+ {{#joda}}
197
+ <dependency>
198
+ <groupId>com.fasterxml.jackson.datatype</groupId>
199
+ <artifactId>jackson-datatype-joda</artifactId>
200
+ </dependency>
201
+ {{/joda}}
202
+ {{#openApiNullable}}
203
+ <dependency>
204
+ <groupId>org.openapitools</groupId>
205
+ <artifactId>jackson-databind-nullable</artifactId>
206
+ <version>0.2.6</version>
207
+ </dependency>
208
+ {{/openApiNullable}}
209
+ {{#useBeanValidation}}
210
+ <!-- Bean Validation API support -->
211
+ <dependency>
212
+ <groupId>org.springframework.boot</groupId>
213
+ <artifactId>spring-boot-starter-validation</artifactId>
214
+ </dependency>
215
+ {{/useBeanValidation}}
216
+ {{#virtualService}}
217
+ <!-- START Virtual Service API support -->
218
+ <dependency>
219
+ <groupId>io.virtualan</groupId>
220
+ <artifactId>virtualan-plugin</artifactId>
221
+ <version>${virtualan.version}</version>
222
+ </dependency>
223
+ <!-- HyperSQL DB -->
224
+ <dependency>
225
+ <groupId>org.hsqldb</groupId>
226
+ <artifactId>hsqldb</artifactId>
227
+ </dependency>
228
+ <!-- END Virtual Service API support -->
229
+ {{/virtualService}}
230
+ {{#hateoas}}
231
+ <!-- Spring HATEOAS -->
232
+ <dependency>
233
+ <groupId>org.springframework.boot</groupId>
234
+ <artifactId>spring-boot-starter-hateoas</artifactId>
235
+ </dependency>
236
+ {{/hateoas}}
237
+ <dependency>
238
+ <groupId>com.fasterxml.jackson.core</groupId>
239
+ <artifactId>jackson-databind</artifactId>
240
+ </dependency>
241
+ <dependency>
242
+ <groupId>org.springframework.boot</groupId>
243
+ <artifactId>spring-boot-starter-test</artifactId>
244
+ <scope>test</scope>
245
+ </dependency>
246
+ </dependencies>
247
+ </project>
@@ -0,0 +1,257 @@
1
+ {{! attach sources }}
2
+ <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
3
+ <modelVersion>4.0.0</modelVersion>
4
+ <groupId>{{groupId}}</groupId>
5
+ <artifactId>{{artifactId}}</artifactId>
6
+ <packaging>jar</packaging>
7
+ <name>{{artifactId}}</name>
8
+ <version>{{artifactVersion}}</version>
9
+ <properties>
10
+ <java.version>1.8</java.version>
11
+ <maven.compiler.source>${java.version}</maven.compiler.source>
12
+ <maven.compiler.target>${java.version}</maven.compiler.target>
13
+ <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding>
14
+ {{#springFoxDocumentationProvider}}
15
+ <springfox.version>2.9.2</springfox.version>
16
+ {{/springFoxDocumentationProvider}}
17
+ {{#springDocDocumentationProvider}}
18
+ <springdoc.version>1.6.14</springdoc.version>
19
+ {{/springDocDocumentationProvider}}
20
+ {{^springFoxDocumentationProvider}}
21
+ {{^springDocDocumentationProvider}}
22
+ {{#swagger1AnnotationLibrary}}
23
+ <swagger-annotations.version>1.6.6</swagger-annotations.version>
24
+ {{/swagger1AnnotationLibrary}}
25
+ {{#swagger2AnnotationLibrary}}
26
+ <swagger-annotations.version>2.2.7</swagger-annotations.version>
27
+ {{/swagger2AnnotationLibrary}}
28
+ {{/springDocDocumentationProvider}}
29
+ {{/springFoxDocumentationProvider}}
30
+ {{#virtualService}}
31
+ <virtualan.version>2.5.2</virtualan.version>
32
+ {{/virtualService}}
33
+ {{#useSwaggerUI}}
34
+ <swagger-ui.version>4.15.5</swagger-ui.version>
35
+ {{/useSwaggerUI}}
36
+ </properties>
37
+ {{#parentOverridden}}
38
+ <parent>
39
+ <groupId>{{{parentGroupId}}}</groupId>
40
+ <artifactId>{{{parentArtifactId}}}</artifactId>
41
+ <version>{{{parentVersion}}}</version>
42
+ </parent>
43
+ {{/parentOverridden}}
44
+ {{^parentOverridden}}
45
+ <parent>
46
+ <groupId>org.springframework.boot</groupId>
47
+ <artifactId>spring-boot-starter-parent</artifactId>
48
+ <version>{{#springFoxDocumentationProvider}}2.5.14{{/springFoxDocumentationProvider}}{{^springFoxDocumentationProvider}}2.7.6{{/springFoxDocumentationProvider}}</version>
49
+ <relativePath/> <!-- lookup parent from repository -->
50
+ </parent>
51
+ {{/parentOverridden}}
52
+ <build>
53
+ <sourceDirectory>src/main/java</sourceDirectory>
54
+ {{#interfaceOnly}}
55
+ <plugins>
56
+ <plugin>
57
+ <groupId>org.apache.maven.plugins</groupId>
58
+ <artifactId>maven-source-plugin</artifactId>
59
+ <executions>
60
+ <execution>
61
+ <id>attach-sources</id>
62
+ <goals>
63
+ <goal>jar</goal>
64
+ </goals>
65
+ </execution>
66
+ </executions>
67
+ </plugin>
68
+ </plugins>
69
+ {{/interfaceOnly}}
70
+ {{^interfaceOnly}}
71
+ <plugins>
72
+ <plugin>
73
+ <groupId>org.springframework.boot</groupId>
74
+ <artifactId>spring-boot-maven-plugin</artifactId>
75
+ {{#classifier}}
76
+ <configuration>
77
+ <classifier>{{{classifier}}}</classifier>
78
+ </configuration>
79
+ {{/classifier}}
80
+ </plugin>
81
+ {{#apiFirst}}
82
+ <plugin>
83
+ <groupId>org.openapitools</groupId>
84
+ <artifactId>openapi-generator-maven-plugin</artifactId>
85
+ <version>{{{generatorVersion}}}</version>
86
+ <executions>
87
+ <execution>
88
+ <goals>
89
+ <goal>generate</goal>
90
+ </goals>
91
+ <configuration>
92
+ <inputSpec>src/main/resources/openapi.yaml</inputSpec>
93
+ <generatorName>spring</generatorName>
94
+ <apiPackage>{{{apiPackage}}}</apiPackage>
95
+ <modelPackage>{{{modelPackage}}}</modelPackage>
96
+ <generateSupportingFiles>false</generateSupportingFiles>
97
+ {{#modelNamePrefix}}
98
+ <modelNamePrefix>{{{.}}}</modelNamePrefix>
99
+ {{/modelNamePrefix}}
100
+ {{#modelNameSuffix}}
101
+ <modelNameSuffix>{{{.}}}</modelNameSuffix>
102
+ {{/modelNameSuffix}}
103
+ <configOptions>
104
+ {{#configOptions}}
105
+ <{{left}}>{{right}}</{{left}}>
106
+ {{/configOptions}}
107
+ </configOptions>
108
+ </configuration>
109
+ </execution>
110
+ </executions>
111
+ </plugin>
112
+ {{/apiFirst}}
113
+ </plugins>
114
+ {{/interfaceOnly}}
115
+ </build>
116
+ <dependencies>
117
+ <dependency>
118
+ <groupId>org.springframework.boot</groupId>
119
+ <artifactId>spring-boot-starter-web{{#reactive}}flux{{/reactive}}</artifactId>
120
+ </dependency>
121
+ <dependency>
122
+ <groupId>org.springframework.data</groupId>
123
+ <artifactId>spring-data-commons</artifactId>
124
+ </dependency>
125
+ {{#springDocDocumentationProvider}}
126
+ <!--SpringDoc dependencies -->
127
+ {{#useSwaggerUI}}
128
+ <dependency>
129
+ <groupId>org.springdoc</groupId>
130
+ <artifactId>springdoc-openapi-{{#reactive}}webflux-{{/reactive}}ui</artifactId>
131
+ <version>${springdoc.version}</version>
132
+ </dependency>
133
+ {{/useSwaggerUI}}
134
+ {{^useSwaggerUI}}
135
+ <dependency>
136
+ <groupId>org.springdoc</groupId>
137
+ <artifactId>springdoc-openapi-{{#reactive}}webflux{{/reactive}}{{^reactive}}webmvc{{/reactive}}-core</artifactId>
138
+ <version>${springdoc.version}</version>
139
+ </dependency>
140
+ {{/useSwaggerUI}}
141
+ {{/springDocDocumentationProvider}}
142
+ {{#springFoxDocumentationProvider}}
143
+ <!--SpringFox dependencies -->
144
+ <dependency>
145
+ <groupId>io.springfox</groupId>
146
+ <artifactId>springfox-swagger2</artifactId>
147
+ <version>${springfox.version}</version>
148
+ </dependency>
149
+ {{/springFoxDocumentationProvider}}
150
+ {{#useSwaggerUI}}
151
+ {{^springDocDocumentationProvider}}
152
+ <dependency>
153
+ <groupId>org.webjars</groupId>
154
+ <artifactId>swagger-ui</artifactId>
155
+ <version>${swagger-ui.version}</version>
156
+ </dependency>
157
+ <dependency>
158
+ <groupId>org.webjars</groupId>
159
+ <artifactId>webjars-locator-core</artifactId>
160
+ </dependency>
161
+ {{/springDocDocumentationProvider}}
162
+ {{/useSwaggerUI}}
163
+ {{^springFoxDocumentationProvider}}
164
+ {{^springDocDocumentationProvider}}
165
+ {{#swagger1AnnotationLibrary}}
166
+ <dependency>
167
+ <groupId>io.swagger</groupId>
168
+ <artifactId>swagger-annotations</artifactId>
169
+ <version>${swagger-annotations.version}</version>
170
+ </dependency>
171
+ {{/swagger1AnnotationLibrary}}
172
+ {{#swagger2AnnotationLibrary}}
173
+ <dependency>
174
+ <groupId>io.swagger.core.v3</groupId>
175
+ <artifactId>swagger-annotations</artifactId>
176
+ <version>${swagger-annotations.version}</version>
177
+ </dependency>
178
+ {{/swagger2AnnotationLibrary}}
179
+ {{/springDocDocumentationProvider}}
180
+ {{/springFoxDocumentationProvider}}
181
+ <!-- @Nullable annotation -->
182
+ <dependency>
183
+ <groupId>com.google.code.findbugs</groupId>
184
+ <artifactId>jsr305</artifactId>
185
+ <version>3.0.2</version>
186
+ </dependency>
187
+ <dependency>
188
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
189
+ <artifactId>jackson-dataformat-yaml</artifactId>
190
+ </dependency>
191
+ {{#withXml}}
192
+ <!-- XML processing: Jackson -->
193
+ <dependency>
194
+ <groupId>jakarta.xml.bind</groupId>
195
+ <artifactId>jakarta.xml.bind-api</artifactId>
196
+ </dependency>
197
+ <dependency>
198
+ <groupId>com.fasterxml.jackson.dataformat</groupId>
199
+ <artifactId>jackson-dataformat-xml</artifactId>
200
+ </dependency>
201
+ {{/withXml}}
202
+ <dependency>
203
+ <groupId>com.fasterxml.jackson.datatype</groupId>
204
+ <artifactId>jackson-datatype-jsr310</artifactId>
205
+ </dependency>
206
+ {{#joda}}
207
+ <dependency>
208
+ <groupId>com.fasterxml.jackson.datatype</groupId>
209
+ <artifactId>jackson-datatype-joda</artifactId>
210
+ </dependency>
211
+ {{/joda}}
212
+ {{#openApiNullable}}
213
+ <dependency>
214
+ <groupId>org.openapitools</groupId>
215
+ <artifactId>jackson-databind-nullable</artifactId>
216
+ <version>0.2.6</version>
217
+ </dependency>
218
+ {{/openApiNullable}}
219
+ {{#useBeanValidation}}
220
+ <!-- Bean Validation API support -->
221
+ <dependency>
222
+ <groupId>org.springframework.boot</groupId>
223
+ <artifactId>spring-boot-starter-validation</artifactId>
224
+ </dependency>
225
+ {{/useBeanValidation}}
226
+ {{#virtualService}}
227
+ <!-- START Virtual Service API support -->
228
+ <dependency>
229
+ <groupId>io.virtualan</groupId>
230
+ <artifactId>virtualan-plugin</artifactId>
231
+ <version>${virtualan.version}</version>
232
+ </dependency>
233
+ <!-- HyperSQL DB -->
234
+ <dependency>
235
+ <groupId>org.hsqldb</groupId>
236
+ <artifactId>hsqldb</artifactId>
237
+ </dependency>
238
+ <!-- END Virtual Service API support -->
239
+ {{/virtualService}}
240
+ {{#hateoas}}
241
+ <!-- Spring HATEOAS -->
242
+ <dependency>
243
+ <groupId>org.springframework.boot</groupId>
244
+ <artifactId>spring-boot-starter-hateoas</artifactId>
245
+ </dependency>
246
+ {{/hateoas}}
247
+ <dependency>
248
+ <groupId>com.fasterxml.jackson.core</groupId>
249
+ <artifactId>jackson-databind</artifactId>
250
+ </dependency>
251
+ <dependency>
252
+ <groupId>org.springframework.boot</groupId>
253
+ <artifactId>spring-boot-starter-test</artifactId>
254
+ <scope>test</scope>
255
+ </dependency>
256
+ </dependencies>
257
+ </project>
@@ -18,9 +18,9 @@
18
18
  "java.time.OffsetDateTime": "java.time.Instant",
19
19
  "org.springframework.core.io.Resource": "org.springframework.web.multipart.MultipartFile"
20
20
  },
21
- "inlineSchemaNameDefaults": {
22
- "arrayItemSuffix": "",
23
- "mapItemSuffix": "",
21
+ "inlineSchemaOptions": {
22
+ "ARRAY_ITEM_SUFFIX": "",
23
+ "MAP_ITEM_SUFFIX": "",
24
24
  "SKIP_SCHEMA_REUSE": "true"
25
25
  }
26
26
  }
@@ -1,4 +1,3 @@
1
- {{! optionally removes spring boot plugin if interfaceOnly flag is set }}
2
1
  {{! attach sources }}
3
2
  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4
3
  <modelVersion>4.0.0</modelVersion>
@@ -1,4 +1,3 @@
1
- {{! optionally removes spring boot plugin if interfaceOnly flag is set }}
2
1
  {{! attach sources }}
3
2
  <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/maven-v4_0_0.xsd">
4
3
  <modelVersion>4.0.0</modelVersion>
@@ -1,5 +0,0 @@
1
- {{! generate required nullable properties as optional }}
2
- {{#useBeanValidation}}{{>beanValidation}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swagger2AnnotationLibrary}}
3
- @Schema({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{{.}}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}", {{/example}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}}
4
- @ApiModelProperty({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{{.}}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}", {{/example}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}
5
- @get:JsonProperty("{{{baseName}}}", required = true){{#isInherited}} override{{/isInherited}} {{>modelMutable}} {{{name}}}: {{#isEnum}}{{#isArray}}{{baseType}}<{{/isArray}}{{classname}}.{{{nameInCamelCase}}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{#isReadOnly}}?{{/isReadOnly}}{{#isNullable}}?{{/isNullable}}{{#defaultValue}} = {{{.}}}{{/defaultValue}}{{#isReadOnly}}{{^defaultValue}} = null{{/defaultValue}}{{/isReadOnly}}
@@ -1,108 +0,0 @@
1
- {{! fix left in @RequestMapping }}
2
- /**
3
- * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech) ({{{generatorVersion}}}).
4
- * https://openapi-generator.tech
5
- * Do not edit the class manually.
6
- */
7
- package {{package}}
8
-
9
- {{#imports}}import {{import}}
10
- {{/imports}}
11
- {{#swagger2AnnotationLibrary}}
12
- import io.swagger.v3.oas.annotations.*
13
- import io.swagger.v3.oas.annotations.enums.*
14
- import io.swagger.v3.oas.annotations.media.*
15
- import io.swagger.v3.oas.annotations.responses.*
16
- import io.swagger.v3.oas.annotations.security.*
17
- {{/swagger2AnnotationLibrary}}
18
- {{#swagger1AnnotationLibrary}}
19
- import io.swagger.annotations.Api
20
- import io.swagger.annotations.ApiOperation
21
- import io.swagger.annotations.ApiParam
22
- import io.swagger.annotations.ApiResponse
23
- import io.swagger.annotations.ApiResponses
24
- import io.swagger.annotations.Authorization
25
- import io.swagger.annotations.AuthorizationScope
26
- {{/swagger1AnnotationLibrary}}
27
- import org.springframework.http.HttpStatus
28
- import org.springframework.http.MediaType
29
- import org.springframework.http.ResponseEntity
30
-
31
- import org.springframework.web.bind.annotation.*
32
- {{#useBeanValidation}}
33
- import org.springframework.validation.annotation.Validated
34
- {{/useBeanValidation}}
35
- import org.springframework.web.context.request.NativeWebRequest
36
- import org.springframework.beans.factory.annotation.Autowired
37
-
38
- {{#useBeanValidation}}
39
- import {{javaxPackage}}.validation.constraints.DecimalMax
40
- import {{javaxPackage}}.validation.constraints.DecimalMin
41
- import {{javaxPackage}}.validation.constraints.Email
42
- import {{javaxPackage}}.validation.constraints.Max
43
- import {{javaxPackage}}.validation.constraints.Min
44
- import {{javaxPackage}}.validation.constraints.NotNull
45
- import {{javaxPackage}}.validation.constraints.Pattern
46
- import {{javaxPackage}}.validation.constraints.Size
47
- import {{javaxPackage}}.validation.Valid
48
- {{/useBeanValidation}}
49
-
50
- {{#reactive}}
51
- import kotlinx.coroutines.flow.Flow
52
- {{/reactive}}
53
- import kotlin.collections.List
54
- import kotlin.collections.Map
55
-
56
- {{#useBeanValidation}}
57
- @Validated
58
- {{/useBeanValidation}}
59
- {{#swagger1AnnotationLibrary}}
60
- @Api(value = "{{{baseName}}}", description = "The {{{baseName}}} API")
61
- {{/swagger1AnnotationLibrary}}
62
-
63
- {{#operations}}
64
- interface {{classname}} {
65
- {{#isDelegate}}
66
-
67
- fun getDelegate(): {{classname}}Delegate = object: {{classname}}Delegate {}
68
- {{/isDelegate}}
69
- {{#operation}}
70
-
71
- {{#swagger2AnnotationLibrary}}
72
- @Operation(
73
- summary = "{{{summary}}}",
74
- operationId = "{{{operationId}}}",
75
- description = """{{{unescapedNotes}}}""",
76
- responses = [{{#responses}}
77
- ApiResponse(responseCode = "{{{code}}}", description = "{{{message}}}"{{#baseType}}, content = [Content(schema = Schema(implementation = {{{baseType}}}::class))]{{/baseType}}){{^-last}},{{/-last}}{{/responses}}
78
- ]{{#hasAuthMethods}},
79
- security = [ {{#authMethods}}SecurityRequirement(name = "{{name}}"{{#isOAuth}}, scopes = [ {{#scopes}}"{{scope}}"{{^-last}}, {{/-last}}{{/scopes}} ]{{/isOAuth}}){{^-last}},{{/-last}}{{/authMethods}} ]{{/hasAuthMethods}}
80
- ){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}}
81
- @ApiOperation(
82
- value = "{{{summary}}}",
83
- nickname = "{{{operationId}}}",
84
- notes = "{{{notes}}}"{{#returnBaseType}},
85
- response = {{{.}}}::class{{/returnBaseType}}{{#returnContainer}},
86
- responseContainer = "{{{.}}}"{{/returnContainer}}{{#hasAuthMethods}},
87
- authorizations = [{{#authMethods}}Authorization(value = "{{name}}"{{#isOAuth}}, scopes = [{{#scopes}}AuthorizationScope(scope = "{{scope}}", description = "{{description}}"){{^-last}}, {{/-last}}{{/scopes}}]{{/isOAuth}}){{^-last}}, {{/-last}}{{/authMethods}}]{{/hasAuthMethods}})
88
- @ApiResponses(
89
- value = [{{#responses}}ApiResponse(code = {{{code}}}, message = "{{{message}}}"{{#baseType}}, response = {{{.}}}::class{{/baseType}}{{#containerType}}, responseContainer = "{{{.}}}"{{/containerType}}){{^-last}}, {{/-last}}{{/responses}}]){{/swagger1AnnotationLibrary}}
90
- @RequestMapping(
91
- method = [RequestMethod.{{httpMethod}}],
92
- value = ["{{#lambda.escapeDoubleQuote}}{{path}}{{/lambda.escapeDoubleQuote}}"]{{#singleContentTypes}}{{#hasProduces}},
93
- produces = "{{{vendorExtensions.x-accepts}}}"{{/hasProduces}}{{#hasConsumes}},
94
- consumes = "{{{vendorExtensions.x-content-type}}}"{{/hasConsumes}}{{/singleContentTypes}}{{^singleContentTypes}}{{#hasProduces}},
95
- produces = [{{#produces}}"{{{mediaType}}}"{{^-last}}, {{/-last}}{{/produces}}]{{/hasProduces}}{{#hasConsumes}},
96
- consumes = [{{#consumes}}"{{{mediaType}}}"{{^-last}}, {{/-last}}{{/consumes}}]{{/hasConsumes}}{{/singleContentTypes}}
97
- )
98
- {{#reactive}}{{^isArray}}suspend {{/isArray}}{{/reactive}}fun {{operationId}}({{#allParams}}{{>queryParams}}{{>pathParams}}{{>headerParams}}{{>bodyParams}}{{>formParams}}{{^-last}},{{/-last}}{{/allParams}}): ResponseEntity<{{>returnTypes}}>{{^skipDefaultInterface}} {
99
- {{^isDelegate}}
100
- return {{>returnValue}}
101
- {{/isDelegate}}
102
- {{#isDelegate}}
103
- return getDelegate().{{operationId}}({{#allParams}}{{paramName}}{{^-last}}, {{/-last}}{{/allParams}})
104
- {{/isDelegate}}
105
- }{{/skipDefaultInterface}}
106
- {{/operation}}
107
- }
108
- {{/operations}}
@@ -1,7 +0,0 @@
1
- {
2
- "typescriptThreePlus": "true",
3
- "supportsES6": "true",
4
- "modelPropertyNaming": "original",
5
- "withInterfaces": "true",
6
- "fileNaming": "camelCase"
7
- }
@@ -1,5 +0,0 @@
1
- {{! generate required nullable properties as optional }}
2
- {{#useBeanValidation}}{{>beanValidation}}{{>beanValidationModel}}{{/useBeanValidation}}{{#swagger2AnnotationLibrary}}
3
- @Schema({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{{.}}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}", {{/example}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}description = "{{{description}}}"){{/swagger2AnnotationLibrary}}{{#swagger1AnnotationLibrary}}
4
- @ApiModelProperty({{#example}}example = "{{#lambdaRemoveLineBreak}}{{#lambdaEscapeDoubleQuote}}{{{.}}}{{/lambdaEscapeDoubleQuote}}{{/lambdaRemoveLineBreak}}", {{/example}}required = true, {{#isReadOnly}}readOnly = {{{isReadOnly}}}, {{/isReadOnly}}value = "{{{description}}}"){{/swagger1AnnotationLibrary}}
5
- @get:JsonProperty("{{{baseName}}}", required = true){{#isInherited}} override{{/isInherited}} {{>modelMutable}} {{{name}}}: {{#isEnum}}{{#isArray}}{{baseType}}<{{/isArray}}{{classname}}.{{{nameInCamelCase}}}{{#isArray}}>{{/isArray}}{{/isEnum}}{{^isEnum}}{{{dataType}}}{{/isEnum}}{{#isReadOnly}}?{{/isReadOnly}}{{#isNullable}}?{{/isNullable}}{{#defaultValue}} = {{{.}}}{{/defaultValue}}{{#isReadOnly}}{{^defaultValue}} = null{{/defaultValue}}{{/isReadOnly}}
File without changes
File without changes