grunt-swagger-js-codegen

Grunt task for Swagger JS codegen

Usage no npm install needed!

<script type="module">
  import gruntSwaggerJsCodegen from 'https://cdn.skypack.dev/grunt-swagger-js-codegen';
</script>

README

Grunt Task for Swagger JS Codegen

Build Status NPM version Code Climate

Examples

Nodejs generation

See example.

    grunt.initConfig({
        'swagger-js-codegen': {
            queries: {
                options: {
                    apis: [
                        {
                            swagger: 'swagger/_queries',
                            className: 'Model',
                            moduleName: 'Model' // This is the model and file name
                        }
                    ],
                    dest: 'lib'
                },
                dist: {
                }
            }
        }
    });

Angularjs generation

See example.

    grunt.initConfig({
        'swagger-js-codegen': {
            queries: {
                options: {
                    apis: [
                        {
                            swagger: 'swagger/_queries',
                            className: 'Model',
                            moduleName: 'Model', // This is the model and file name
                            angularjs: true
                        }
                    ],
                    dest: 'lib'
                },
                dist: {
                }
            }
        }
    });

Custom generation

    grunt.initConfig({
        'swagger-js-codegen': {
            queries: {
                options: {
                    apis: [
                        {
                            swagger: 'swagger/_queries.json',
                            moduleName: 'Model' // This is the file name
                            className: 'Model',
                            mustache: {
                                moduleName: 'Model' // This is the model name - it should be repeated here if you want to use it in mustache templates
                                customParam: 'foo'  //some custom param used in mustache templates
                            },
                            template: {
                              class: 'custom-angular-class.mustache',
                              method: 'custom-method.mustache',
                              request: 'custom-angular-request.mustache'
                            },
                            custom : true
                        }
                    ],
                    dest: 'lib'
                },
                dist: {
                }
            }
        }
    });