@4geit/swg-contact-model

contact model and endpoints

Stats

stars 🌟issues ⚠️updated 🛠created 🐣size 🏋️‍♀️
@4geit/swg-contact-model
Minified + gzip package size for @4geit/swg-contact-model in KB

Readme

@4geit/swg-contact-model npm version


contact model and endpoints with CRUD operators

Installation

  1. A recommended way to install @4geit/swg-contact-model is through npm package manager using the following command:
npm i @4geit/swg-contact-model --save

Or use yarn using the following command:

yarn add @4geit/swg-contact-model
  1. In your swagger file, you need to add a reference to the SwgContactModel definition under the definitions property (e.g. /api/swagger/swagger.yaml) as below:
swagger: "2.0"
# ...
definitions:
  SwgContactModel:
    $ref: ../../node_modules/@4geit/swg-contact-model/swagger.yaml#/definitions/SwgContactModel
# ...
  1. SwgContactModel also comes along with some endpoints you can expose to the API, to do so you will need to add a reference to the SwgContactModel definition under the paths property (e.g. /api/swagger/swagger.yaml) as below:
swagger: "2.0"
# ...
paths:
  /contact:
    $ref: ../../node_modules/@4geit/swg-contact-model/swagger.yaml#/definitions/ContactListPath
  /contact/{id}:
    $ref: ../../node_modules/@4geit/swg-contact-model/swagger.yaml#/definitions/ContactItemPath
  /contact/populate:
    $ref: ../../node_modules/@4geit/swg-contact-model/swagger.yaml#/definitions/PopulatePath
# ...

And you will also need to add the path to the controllers folder of the swg-contact-model package so that swagger-node will find the relevant controller to use. Edit the file /config/default.yaml and add two new paths to the properties mockControllersDirs and controllersDirs as illustrated below:

swagger:
  # ...
  bagpipes:
    _router:
      # ...
      mockControllersDirs:
        # ...
        - node_modules/@4geit/swg-contact-model/mocks
        # ...
      controllersDirs:
        # ...
        - node_modules/@4geit/swg-contact-model/controllers
        # ...

If you find any bugs or have a feature request, please open an issue on github!

The npm package download data comes from npm's download counts api and package details come from npms.io.