Giter VIP home page Giter VIP logo

Comments (7)

mpashkovskiy avatar mpashkovskiy commented on July 23, 2024 2

@pedrokohler, @sarpik there is a way to persist you descriptions and any other changes during runs. The second argument of init() method could be a callback function. Here is an example:

generator.init(app, function(spec) {
    _.set(spec, 'info.title', 'New Title');
    _.set(spec, 'paths[\'/path\'].get.parameters[0].example', 2);
    return spec;
});

There are several ways to implement it:

  • programmatically: just like in the example
  • with use of JSONPatch: json patch file is stored separately in the repo and is used by callback function. there are some JS libraries simplifying JSON patching like http://jsonpatchjs.com/

from express-oas-generator.

pedrokohler avatar pedrokohler commented on July 23, 2024 2

the _ is lodash

@sarpik I mean, obviously! Sorry about that! LOL!

from express-oas-generator.

kiprasmel avatar kiprasmel commented on July 23, 2024 1

I'm not sure if we've implemented this in the advanced usage example, will take a look soon.

the _ is lodash -- you could instead just use

spec.info.title = 'New Title' etc.:D

from express-oas-generator.

kiprasmel avatar kiprasmel commented on July 23, 2024 1

Haha no problem stuff like this always happens:D

from express-oas-generator.

mpashkovskiy avatar mpashkovskiy commented on July 23, 2024 1

@pedrokohler with advanced usage this is how it looks like:

let app = express();
/** place handleResponses as the very first middleware */
expressOasGenerator.handleResponses(app, {
  predefinedSpec: function(spec) {
    _.set(spec, 'info.title', 'New Title');
    _.set(spec, 'paths[\'/path\'].get.parameters[0].example', 2);
    return spec;
  }
});

/** initialize your `app` and routes */

/** place handleRequests as the very last middleware */
expressOasGenerator.handleRequests();
app.listen(PORT);

from express-oas-generator.

pedrokohler avatar pedrokohler commented on July 23, 2024

@mpashkovskiy you should call this in the default export of the package despite of if you're implementing the advanced usage? Like that:

const generator = require('express-oas-generator');
const { handleResponses, handleRequests } = generator;

generator.init(app, function(spec) {
  _.set(spec, 'info.title', 'New Title');
  _.set(spec, 'paths[\'/path\'].get.parameters[0].example', 2);
  return spec;
});

Also, my linter complains about this _ out of nowhere. What is that supposed to be and where does it come from?

from express-oas-generator.

mpashkovskiy avatar mpashkovskiy commented on July 23, 2024

I think this question is resolved. Isn't it? Feel free to reopen if need any assistance.

from express-oas-generator.

Related Issues (20)

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo 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.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.