@opra/cli 1.0.0-alpha.14 → 1.0.0-alpha.16

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.
@@ -90,19 +90,23 @@ async function generateHttpController(controller) {
90
90
  queryParams.push(...Object.values(queryParamsMap));
91
91
  headerParams.push(...Object.values(headerParamsMap));
92
92
  }
93
+ /** Process path parameters and add as function arguments */
93
94
  let argIndex = 0;
94
95
  for (const prm of pathParams) {
95
- let typeName;
96
+ let typeDef;
96
97
  if (prm.type) {
97
98
  const xt = await this.generateDataType(prm.type, 'typeDef', file);
98
- typeName = xt.kind === 'embedded' ? xt.code : xt.typeName;
99
+ typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
99
100
  }
100
101
  else
101
- typeName = `any`;
102
+ typeDef = `any`;
103
+ if (prm.isArray)
104
+ typeDef += '[]';
102
105
  if (argIndex++ > 0)
103
106
  operationBlock.head += ', ';
104
- operationBlock.head += `${prm.name}: ${typeName}`;
107
+ operationBlock.head += `${prm.name}: ${typeDef}`;
105
108
  }
109
+ /** Process requestBody and add as function argument ($body) */
106
110
  let hasBody = false;
107
111
  if (operation.requestBody?.content.length) {
108
112
  if (argIndex++ > 0)
@@ -126,6 +130,8 @@ async function generateHttpController(controller) {
126
130
  typeDef = `DTO<${typeDef}>`;
127
131
  }
128
132
  }
133
+ if (typeDef && content.isArray)
134
+ typeDef += '[]';
129
135
  typeDef = typeDef || 'undefined';
130
136
  if (!typeArr.includes(typeDef))
131
137
  typeArr.push(typeDef);
@@ -149,7 +155,9 @@ async function generateHttpController(controller) {
149
155
  operationBlock.head += `${prm.name}${prm.required ? '' : '?'}: `;
150
156
  if (prm.type) {
151
157
  const xt = await this.generateDataType(prm.type, 'typeDef', file);
152
- const typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
158
+ let typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
159
+ if (prm.isArray)
160
+ typeDef += '[]';
153
161
  operationBlock.head += `${typeDef};\n`;
154
162
  }
155
163
  else
@@ -167,7 +175,9 @@ async function generateHttpController(controller) {
167
175
  operationBlock.head += `${prm.name}${prm.required ? '' : '?'}: `;
168
176
  if (prm.type) {
169
177
  const xt = await this.generateDataType(prm.type, 'typeDef', file);
170
- const typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
178
+ let typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
179
+ if (prm.isArray)
180
+ typeDef += '[]';
171
181
  operationBlock.head += `${typeDef};\n`;
172
182
  }
173
183
  else
@@ -198,6 +208,8 @@ async function generateHttpController(controller) {
198
208
  }
199
209
  }
200
210
  }
211
+ if (typeDef && resp.isArray)
212
+ typeDef += '[]';
201
213
  if (resp.contentType && type_is_1.default.is(String(resp.contentType), [common_1.MimeTypes.opra_response_json])) {
202
214
  file.addImport('@opra/common', ['OperationResult']);
203
215
  typeDef = typeDef ? `OperationResult<${typeDef}>` : 'OperationResult';
@@ -86,19 +86,23 @@ export async function generateHttpController(controller) {
86
86
  queryParams.push(...Object.values(queryParamsMap));
87
87
  headerParams.push(...Object.values(headerParamsMap));
88
88
  }
89
+ /** Process path parameters and add as function arguments */
89
90
  let argIndex = 0;
90
91
  for (const prm of pathParams) {
91
- let typeName;
92
+ let typeDef;
92
93
  if (prm.type) {
93
94
  const xt = await this.generateDataType(prm.type, 'typeDef', file);
94
- typeName = xt.kind === 'embedded' ? xt.code : xt.typeName;
95
+ typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
95
96
  }
96
97
  else
97
- typeName = `any`;
98
+ typeDef = `any`;
99
+ if (prm.isArray)
100
+ typeDef += '[]';
98
101
  if (argIndex++ > 0)
99
102
  operationBlock.head += ', ';
100
- operationBlock.head += `${prm.name}: ${typeName}`;
103
+ operationBlock.head += `${prm.name}: ${typeDef}`;
101
104
  }
105
+ /** Process requestBody and add as function argument ($body) */
102
106
  let hasBody = false;
103
107
  if (operation.requestBody?.content.length) {
104
108
  if (argIndex++ > 0)
@@ -122,6 +126,8 @@ export async function generateHttpController(controller) {
122
126
  typeDef = `DTO<${typeDef}>`;
123
127
  }
124
128
  }
129
+ if (typeDef && content.isArray)
130
+ typeDef += '[]';
125
131
  typeDef = typeDef || 'undefined';
126
132
  if (!typeArr.includes(typeDef))
127
133
  typeArr.push(typeDef);
@@ -145,7 +151,9 @@ export async function generateHttpController(controller) {
145
151
  operationBlock.head += `${prm.name}${prm.required ? '' : '?'}: `;
146
152
  if (prm.type) {
147
153
  const xt = await this.generateDataType(prm.type, 'typeDef', file);
148
- const typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
154
+ let typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
155
+ if (prm.isArray)
156
+ typeDef += '[]';
149
157
  operationBlock.head += `${typeDef};\n`;
150
158
  }
151
159
  else
@@ -163,7 +171,9 @@ export async function generateHttpController(controller) {
163
171
  operationBlock.head += `${prm.name}${prm.required ? '' : '?'}: `;
164
172
  if (prm.type) {
165
173
  const xt = await this.generateDataType(prm.type, 'typeDef', file);
166
- const typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
174
+ let typeDef = xt.kind === 'embedded' ? xt.code : xt.typeName;
175
+ if (prm.isArray)
176
+ typeDef += '[]';
167
177
  operationBlock.head += `${typeDef};\n`;
168
178
  }
169
179
  else
@@ -194,6 +204,8 @@ export async function generateHttpController(controller) {
194
204
  }
195
205
  }
196
206
  }
207
+ if (typeDef && resp.isArray)
208
+ typeDef += '[]';
197
209
  if (resp.contentType && typeIs.is(String(resp.contentType), [MimeTypes.opra_response_json])) {
198
210
  file.addImport('@opra/common', ['OperationResult']);
199
211
  typeDef = typeDef ? `OperationResult<${typeDef}>` : 'OperationResult';
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opra/cli",
3
- "version": "1.0.0-alpha.14",
3
+ "version": "1.0.0-alpha.16",
4
4
  "description": "Opra CLI tools",
5
5
  "author": "Panates",
6
6
  "license": "MIT",
@@ -32,8 +32,8 @@
32
32
  },
33
33
  "dependencies": {
34
34
  "@browsery/type-is": "^1.6.18-r3",
35
- "@opra/client": "^1.0.0-alpha.14",
36
- "@opra/common": "^1.0.0-alpha.14",
35
+ "@opra/client": "^1.0.0-alpha.16",
36
+ "@opra/common": "^1.0.0-alpha.16",
37
37
  "chalk": "^5.3.0",
38
38
  "commander": "^12.0.0",
39
39
  "js-string-escape": "^1.0.1",