Comments (7)
It's working now (I see next was updated, nice!) Thanks!
from openapi-typescript.
@jeffpyke thanks for filing an issue! Yes that’s something being worked on for a 2.0
release of this library, which will be in beta soon.
You can preview an alpha build now with npx @manifoldco/swagger-to-ts@next …
.
The short version is that 1.0 tried to be “too smart” and abstract too much, but it results in errors like you’re seeing. 2.0 is a rewrite that is “dumber” in the sense that it perfectly mirrors your schema (and the library itself is also easier to maintain). You can follow progress on the roadmap.
Hopefully it’ll be released soon! Also, if you find that the @next
build doesn’t solve your problem, I’d love to get early feedback to make sure it does for the release (replying to this ticket is fine)
from openapi-typescript.
Thanks @DangoDev , I tried that and saw this error.
',' expected. (57:35)
"MyObject2": [object Object];
Please let me know if this is a known issue. If not I can provide a more detailed bug repro.
from openapi-typescript.
Hm. I’m actually surprised you’re seeing that on the @next
branch. Would you mind posting the full schema you’re using (or at least the part that errs)? Your example looks pretty similar to the test here which is passing currently: https://github.com/manifoldco/swagger-to-ts/blob/master/tests/v2/index.test.ts#L179
from openapi-typescript.
By the way, is there a way to remove the "definitions" namespace?
e.g.
definitions:
MyObject:
properties:
foo:
$ref: "#/definitions/FloatArray
FloatArray:
type: "array"
items:
type: "number"
format: "float"
becomes
export interface definitions {
MyObject: ...
}
preferred:
export interface MyObject: ...
from openapi-typescript.
By the way, is there a way to remove the "definitions" namespace?
Good question! You can actually change the name with type aliasing. E.g.
import { definitions } from './my-schema';
export type MyObject = definitions;
Or
import { definitions as MyObject } from './my-schema';
Or you can even combine schemas if you have to manage multiple:
import { definitions as schema1 } from './schema1';
import { definitions as schema2 } from './schema2';
export interface MyObject {
schema1: schema1;
schema2: schema2;
}
from openapi-typescript.
@manifoldco/[email protected]
was released! 🎉 This is a library rewrite that fixes these issues and adds OpenAPI 3.0 support. With the tests added I believe this resolves the issue. If that’s not the case, please re-open, or file another issue. Thanks!
(I know this is a repeat message and you’ve already been pinged for this; I’m just repeating for archival purposes, for people that search closed issues)
from openapi-typescript.
Related Issues (20)
- Error when compiling for CJS: "The current file is a CommonJS module..."
- Generated types causes compiler errors HOT 2
- [email protected] require('openapi-typescript') cannot export the astToString method HOT 3
- use openapiTS and astToString generate file type error in V7 HOT 1
- "Unexpected end of JSON input" with bun.js HOT 6
- Unauthorized errors when using openapi-fetch with SvelteKit HOT 3
- Filter invalid characters when transforming names from openapi to typescript
- typescript-fetch: dynamic fetch url
- FreeForm Object is generated as empty object HOT 1
- Feature clarification request: multiple schemas HOT 5
- Types missing for parameters with duplicate names but different locations HOT 1
- The 'styleguide' field is deprecated warning printed to console on every call to openapiTS() HOT 2
- Reduce the size of the package (v7) HOT 3
- Integration with tanstack-query HOT 2
- Change client headers HOT 1
- Header in createClient not considered when resolving request HOT 1
- Only generate models and export at root level HOT 1
- How to allow `DEPTH_ZERO_SELF_SIGNED_CERT`? HOT 1
- Converts anyOf: type: object to Record<string, never> HOT 3
- openapi-typescript cmd idle when using redocly.yaml HOT 2
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from openapi-typescript.