source: node_modules/swagger-client/lib/execute/swagger2/parameter-builders.js@ 65b6638

main
Last change on this file since 65b6638 was d24f17c, checked in by Aleksandar Panovski <apano77@…>, 15 months ago

Initial commit

  • Property mode set to 100644
File size: 1.8 KB
Line 
1"use strict";
2
3exports.__esModule = true;
4exports.default = void 0;
5// These functions will update the request.
6// They'll be given {req, value, paramter, spec, operation}.
7var _default = exports.default = {
8 body: bodyBuilder,
9 header: headerBuilder,
10 query: queryBuilder,
11 path: pathBuilder,
12 formData: formDataBuilder
13}; // Add the body to the request
14function bodyBuilder({
15 req,
16 value
17}) {
18 req.body = value;
19}
20
21// Add a form data object.
22function formDataBuilder({
23 req,
24 value,
25 parameter
26}) {
27 if (value || parameter.allowEmptyValue) {
28 req.form = req.form || {};
29 req.form[parameter.name] = {
30 value,
31 allowEmptyValue: parameter.allowEmptyValue,
32 collectionFormat: parameter.collectionFormat
33 };
34 }
35}
36
37// Add a header to the request
38function headerBuilder({
39 req,
40 parameter,
41 value
42}) {
43 req.headers = req.headers || {};
44 if (typeof value !== 'undefined') {
45 req.headers[parameter.name] = value;
46 }
47}
48
49// Replace path paramters, with values ( ie: the URL )
50function pathBuilder({
51 req,
52 value,
53 parameter
54}) {
55 req.url = req.url.split(`{${parameter.name}}`).join(encodeURIComponent(value));
56}
57
58// Add a query to the `query` object, which will later be stringified into the URL's search
59function queryBuilder({
60 req,
61 value,
62 parameter
63}) {
64 req.query = req.query || {};
65 if (value === false && parameter.type === 'boolean') {
66 value = 'false';
67 }
68 if (value === 0 && ['number', 'integer'].indexOf(parameter.type) > -1) {
69 value = '0';
70 }
71 if (value) {
72 req.query[parameter.name] = {
73 collectionFormat: parameter.collectionFormat,
74 value
75 };
76 } else if (parameter.allowEmptyValue && value !== undefined) {
77 const paramName = parameter.name;
78 req.query[paramName] = req.query[paramName] || {};
79 req.query[paramName].allowEmptyValue = true;
80 }
81}
Note: See TracBrowser for help on using the repository browser.