Skip to content

Commit b88ea37

Browse files
authored
Merge branch 'openapi-ts:main' into main
2 parents f5508a8 + 1655745 commit b88ea37

File tree

11 files changed

+93
-48
lines changed

11 files changed

+93
-48
lines changed

packages/openapi-fetch/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# openapi-fetch
22

3+
## 0.13.7
4+
5+
### Patch Changes
6+
7+
- [#2256](https://github.com/openapi-ts/openapi-typescript/pull/2256) [`30c6da8`](https://github.com/openapi-ts/openapi-typescript/commit/30c6da800a00bda87da66dea6d04807e1379f06a) Thanks [@KajSzy](https://github.com/KajSzy)! - fix dynamic access to methods using wrapAsPathBasedClient
8+
39
## 0.13.6
410

511
### Patch Changes

packages/openapi-fetch/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@augwa/openapi-fetch",
33
"description": "Fast, type-safe fetch client for your OpenAPI schema. Only 6 kb (min). Works with React, Vue, Svelte, or vanilla JS.",
4-
"version": "0.13.6",
4+
"version": "0.13.7",
55
"author": {
66
"name": "Drew Powers",
77
"email": "drew@pow.rs"

packages/openapi-react-query/CHANGELOG.md

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,12 @@
11
# openapi-react-query
22

3+
## 0.4.1
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [[`30c6da8`](https://github.com/openapi-ts/openapi-typescript/commit/30c6da800a00bda87da66dea6d04807e1379f06a)]:
8+
- openapi-fetch@0.13.7
9+
310
## 0.4.0
411

512
### Minor Changes

packages/openapi-react-query/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@augwa/openapi-react-query",
33
"description": "Fast, type-safe @tanstack/react-query client to work with your OpenAPI schema.",
4-
"version": "0.4.0",
4+
"version": "0.4.1",
55
"author": {
66
"name": "Martin Paucot",
77
"email": "contact@martin-paucot.fr"

packages/openapi-typescript/CHANGELOG.md

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,11 @@
11
# openapi-typescript
22

3+
## 7.7.1
4+
5+
### Patch Changes
6+
7+
- [#2260](https://github.com/openapi-ts/openapi-typescript/pull/2260) [`7205e12`](https://github.com/openapi-ts/openapi-typescript/commit/7205e12e07e5fd36a6bb3be44ea911f57bbbeb60) Thanks [@zrosenbauer](https://github.com/zrosenbauer)! - Prevents a `TypeError` due to a bad in operator for `type: "array"` when a `boolean` is set on `items`
8+
39
## 7.7.0
410

511
### Minor Changes

packages/openapi-typescript/package.json

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@augwa/openapi-typescript",
33
"description": "Convert OpenAPI 3.0 & 3.1 schemas to TypeScript",
4-
"version": "7.7.0",
4+
"version": "7.7.1",
55
"author": {
66
"name": "Drew Powers",
77
"email": "drew@pow.rs"
@@ -64,7 +64,7 @@
6464
"ansi-colors": "^4.1.3",
6565
"change-case": "^5.4.4",
6666
"parse-json": "^8.3.0",
67-
"supports-color": "^9.4.0",
67+
"supports-color": "^10.0.0",
6868
"yargs-parser": "^21.1.1"
6969
},
7070
"devDependencies": {

packages/openapi-typescript/src/transform/schema-object.ts

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -322,7 +322,7 @@ function transformSchemaObjectCore(schemaObject: SchemaObject, options: Transfor
322322
}
323323
// standard array type
324324
else if (schemaObject.items) {
325-
if ("type" in schemaObject.items && schemaObject.items.type === "array") {
325+
if (hasKey(schemaObject.items, "type") && schemaObject.items.type === "array") {
326326
itemType = ts.factory.createArrayTypeNode(transformSchemaObject(schemaObject.items, options));
327327
} else {
328328
itemType = transformSchemaObject(schemaObject.items, options);
@@ -580,3 +580,13 @@ function transformSchemaObjectCore(schemaObject: SchemaObject, options: Transfor
580580

581581
return coreObjectType.length ? ts.factory.createTypeLiteralNode(coreObjectType) : undefined;
582582
}
583+
584+
/**
585+
* Check if an object has a key
586+
* @param possibleObject - The object to check
587+
* @param key - The key to check for
588+
* @returns True if the object has the key, false otherwise
589+
*/
590+
function hasKey<K extends string>(possibleObject: unknown, key: K): possibleObject is { [key in K]: unknown } {
591+
return typeof possibleObject === "object" && possibleObject !== null && key in possibleObject;
592+
}

packages/openapi-typescript/test/transform/schema-object/array.test.ts

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,14 @@ describe("transformSchemaObject > array", () => {
1818
// options: DEFAULT_OPTIONS,
1919
},
2020
],
21+
// Prevents: "TypeError: Cannot use 'in' operator to search for 'type' in true"
22+
[
23+
"boolean items",
24+
{
25+
given: { type: "array", items: true },
26+
want: "unknown[]",
27+
},
28+
],
2129
[
2230
"tuple > tuple items",
2331
{

packages/swr-openapi/CHANGELOG.md

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,13 @@
11
# swr-openapi
22

3+
## 5.1.6
4+
5+
### Patch Changes
6+
7+
- Updated dependencies [[`30c6da8`](https://github.com/openapi-ts/openapi-typescript/commit/30c6da800a00bda87da66dea6d04807e1379f06a), [`7205e12`](https://github.com/openapi-ts/openapi-typescript/commit/7205e12e07e5fd36a6bb3be44ea911f57bbbeb60)]:
8+
- openapi-fetch@0.13.7
9+
- openapi-typescript@7.7.1
10+
311
## 5.1.5
412

513
### Patch Changes

packages/swr-openapi/package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
{
22
"name": "@augwa/swr-openapi",
33
"description": "Generate SWR hooks from OpenAPI schemas",
4-
"version": "5.1.5",
4+
"version": "5.1.6",
55
"author": {
66
"name": "Hunter Tunnicliff",
77
"email": "hunter@tunnicliff.co"

0 commit comments

Comments
 (0)