Comments (9)
Update: I changed template.yml to this:
- path: request.swift
context: tags
destination: "Sources/Requests/{{ name|upperCamelCase }}.swift"
then update request.swift
template:
public enum {{ operation.operationId|upperCamelCase }} {
public static let service = APIService<Response>(id: "{{ operationId }}", tag: "{{ tag }}", method: "{{ method|uppercase }}", path: "{{ path }}" ... {% endif %})
To:
{% for operation in operations %}
public enum {{ operation.operationId|upperCamelCase }} {
public static let service = APIService<Response>(id: "{{ operation.operationId }}", tag: "{{ operation.tag }}", method: "{{ operation.method|uppercase }}", path: "{{ operation.path }}" .. .{% endif %})
{% endfor %}
Can we do it without adding operation.
prefix?
from swaggen.
Hi @dangthaison91
I'm glad you're getting some good use out of it.
If you'd like to define an operation without always typing operation.
you can make it an include:
{% for operation in operations %}
{% include "Includes/operation.yml" using operation %}
{% endfor %}
And then move the relevant operation code to Includes/operation.yml" within the template. This is enabled by some changes to
include` I made to my fork of Stencil stencilproject/Stencil#114
from swaggen.
It would be great if you could submit your custom template in a PR when you're done! It can be added to Templates/Swift-Moya
from swaggen.
Yeah, I have similar feelings to you about the Swagger Codegen Java project. I've also made quite a few PR's and also got sick of their java interface, so that was the main reason I actually created this
from swaggen.
Thank you so much @yonaskolb. I'd be happy to submit my PR when I've done.
from swaggen.
Hi @dangthaison91, how's your Moya template going? Anything you'd feel comfortable submitting?
from swaggen.
Hi @yonaskolb , I already created my own Moya template but having some problems while generating Models to use with Realm. I used in some company's project but sometimes I have to manual edit/fix errors.
I pushed it to my folk repo, you can get it here: https://github.com/dangthaison91/SwagGen/tree/master/Templates/Swift-Moya
I have created an example but need to remove private stuffs before making it public.
from swaggen.
@dangthaison91 Just you you know I've released 0.6.0. Check the release notes https://github.com/yonaskolb/SwagGen/releases/tag/0.6.0
You might want to merge that into your branch and see if it still works or if it fixes anything for you.
One thing that has changed that I know will affect you is within a template tags
has been renamed to operationsByTag
. tags
is now just a list of tag names
from swaggen.
@yonaskolb Oh, thanks for your reminder. I will check this weekend.
from swaggen.
Related Issues (20)
- illegal hardware instruction swaggen generate HOT 1
- Issue with swagger_2 Xcode 13
- Send multiple requests
- Default language "swift" doesn't work on Linux due to case sensitivity HOT 4
- Enum type ignores modelsuffix HOT 1
- "description" aka doc comments don't get generated nicely
- segmentation fault when attempting to generate from spec that contains `allOf` groups HOT 5
- The spec yaml files in this repo fail lots of Swagger validations
- Too many cases generated when oneOf discriminator has explicit mappings
- oneOf does not generate cases when the type is object HOT 2
- You don’t have permission to save the file “security” in the folder “org.swift.swiftpm” HOT 4
- Issue with decoding when element is nullable array
- SwagGen doesn't process the media type application/json;charset=UTF8
- Version 4.7.0 not available on brew due to failed GH Action HOT 5
- Could not install HOT 3
- [macOS Ventura, Xcode 14.2, M1 Pro] Get an error when install SwagGen HOT 1
- Comparison with OpenAPI generator HOT 1
- When enum case is unrecognised and `enumUndecodableCase`=true, how can I know the value?
- Any plans for async\await from URLSession?
- is development over? HOT 1
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 swaggen.