Skip to content

Commit 9da5adc

Browse files
committed
Remove use of deprecated function when run with express 4.x
1 parent 2ffe1c9 commit 9da5adc

File tree

4 files changed

+53
-45
lines changed

4 files changed

+53
-45
lines changed

package.json

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
{
22
"name": "node-red-node-swagger",
3-
"version": "0.1.2",
3+
"version": "0.1.3",
44
"description": "A set of tools for generating Swagger API documentation based on the HTTP nodes deployed in a flow",
55
"license": "Apache",
66
"repository": {
@@ -22,7 +22,7 @@
2222
"Cody Walker <[email protected]>"
2323
],
2424
"dependencies": {
25-
"swagger-ui": "2.1.0",
26-
"i18next-client": "1.10.2"
25+
"swagger-ui": "2.1.3",
26+
"i18next-client": "1.10.3"
2727
}
2828
}

swagger/swagger-ui/swagger-ui.html

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -25,15 +25,14 @@
2525
dom_id: "swagger-ui-container",
2626
validatorUrl: null,
2727
onComplete: function(data) {
28-
console.log('SwaggerUI loaded!');
2928
if(window.swaggerUi.api.apisArray.length == 0){
3029
$('.empty-swagger-doc').show(1000);
3130
} else{
3231
$('.empty-swagger-doc').hide(1000);
3332
}
3433
},
3534
onFailure: function(data) {
36-
console.log("Unable to Load SwaggerUI");
35+
console.log("Unable to load SwaggerUI");
3736
},
3837
});
3938
i18n.init({
@@ -56,13 +55,13 @@
5655
font-size: 14px;
5756
line-height: 150%;
5857
}
59-
58+
6059
.empty-swagger-doc h2 {
6160
font-weight: bold;
6261
font-size: 16px;
6362
text-align: center;
6463
}
65-
64+
6665
.empty-swagger-doc p {
6766
padding: 10px 0px;
6867
}
@@ -86,4 +85,4 @@ <h2 data-i18n>swagger.helpBox.title</h2>
8685
<div id="swagger-ui-container" class="swagger-ui-wrap" style="margin: 10px"></div>
8786

8887
</body>
89-
</html>
88+
</html>

swagger/swagger.html

Lines changed: 24 additions & 24 deletions
Original file line numberDiff line numberDiff line change
@@ -149,7 +149,7 @@
149149
});
150150
},
151151
oneditprepare: function() {
152-
152+
153153
// Configures popover options for all popovers that appear when an editor option is hovered over
154154
$('.popover-right').popover({
155155
placement:"right",
@@ -158,7 +158,7 @@
158158
container: '#main-container',
159159
delay: { show: 500, hide: 50 }
160160
});
161-
161+
162162
//Configures popover options for parameter info link
163163
$('#node-config-input-parameter-info').popover({
164164
placement:"left",
@@ -168,7 +168,7 @@
168168
content: this._("swagger.content.parameter-info"),
169169
delay: { show: 500, hide: 50 }
170170
});
171-
171+
172172
//Configures popover options for response info link
173173
$('#node-config-input-response-info').popover({
174174
placement:"left",
@@ -291,7 +291,7 @@
291291
style: "width: 150px;",
292292
type: "text"
293293
}).val(opts.format).appendTo(row);
294-
294+
295295
if(!opts.propertyRow){
296296
var collFormatSelect = $('<select/>', {
297297
class: "node-swagger-type-collection-format",
@@ -315,7 +315,7 @@
315315
$(this).parent().find(".node-swagger-type-format").show();
316316
$(this).parent().find(".node-swagger-type-format-label").text(formatText);
317317
$(this).parent().find(".node-swagger-type-collection-format").hide();
318-
318+
319319
if (t == "ref") {
320320
$(this).parent().find(".node-swagger-type-format-label").text("");
321321
} else {
@@ -390,7 +390,7 @@
390390
This function is called anytime a new paramater is created.
391391
This is called several times when parsing through the swagger doc.
392392
If expand is true, the inner properties of the parameter will be showing when the editor opens.
393-
*/
393+
*/
394394
var generateParameterLine = function(opts, expand) {
395395
var li = $("<li/>", {
396396
style: "background: #fff; margin:4px 0; border: 1px solid #ccc;"
@@ -632,7 +632,7 @@
632632
This function is called anytime a new response is created.
633633
It is run when parsing through the swagger doc.
634634
If expand is true, the inner properties of the response will be shown when the editor opens.
635-
*/
635+
*/
636636
var generateResponseLine = function(opts, expand) {
637637
var li = $("<li/>", {
638638
style: "background: #fff; margin:4px 0; border: 1px solid #ccc;"
@@ -813,7 +813,7 @@
813813
}, false);
814814
pathParams.splice(pathParams.indexOf(p.name), 1);
815815
} else{//param is no longer a path param
816-
console.log('removing outdated path param: ' + p.name);
816+
//console.log('removing outdated path param: ' + p.name);
817817
delete p;
818818
}
819819
} else{
@@ -833,7 +833,7 @@
833833

834834
//Add path params that weren't found above
835835
pathParams.forEach(function(p){
836-
console.log('adding path param: ' + p);
836+
//console.log('adding path param: ' + p);
837837
generateParameterLine({
838838
name: p,
839839
in : 'path',
@@ -876,7 +876,7 @@
876876
}
877877
return items;
878878
}
879-
879+
880880
//Parse parameters and generate list
881881
var params = [];
882882
$("#node-config-parameter-list li").each(function() {
@@ -900,21 +900,21 @@
900900
var name = $(this).find(".node-swagger-type-name").val();
901901

902902
var row = $(this).find(".node-swagger-type-top-row");
903-
903+
904904
var current = property;
905905
var ctype = row.children(".node-swagger-type-select").val();
906-
906+
907907
if(ctype){
908908
if (ctype != "ref") {
909909
current.type = ctype;
910910
if (current.type == "array") {
911-
911+
912912
var collFormat = row.children(".node-swagger-type-collection-format").val();
913913
if(collFormat)
914914
current.collectionFormat = collFormat;
915-
915+
916916
var nextRow = row.children(".node-swagger-type-row");
917-
917+
918918
current.items = getArrayItems(nextRow);
919919

920920
} else {
@@ -937,20 +937,20 @@
937937
}
938938
} else {
939939
var row = $(this).find(".node-swagger-type-top-row");
940-
940+
941941
var current = param;
942-
942+
943943
var ctype = row.children(".node-swagger-type-select").val();
944-
944+
945945
if(ctype){
946946
if (ctype != "ref") {
947947
current.type = ctype;
948948
if (current.type == "array") {
949949
var collFormat = row.children(".node-swagger-type-collection-format").val();
950950
current.collectionFormat = collFormat;
951-
951+
952952
var nextRow = row.children(".node-swagger-type-row");
953-
953+
954954
current.items = getArrayItems(nextRow);
955955

956956
} else {
@@ -991,18 +991,18 @@
991991

992992
var current = property;
993993
var ctype = row.children(".node-swagger-type-select").val();
994-
994+
995995
if(ctype){
996996
if (ctype != "ref") {
997997
current.type = ctype;
998998
if (current.type == "array") {
999-
999+
10001000
var collFormat = row.children(".node-swagger-type-collection-format").val();
10011001
if(collFormat)
10021002
current.collectionFormat = collFormat;
1003-
1003+
10041004
var nextRow = row.children(".node-swagger-type-row");
1005-
1005+
10061006
current.items = getArrayItems(nextRow);
10071007

10081008
} else {

swagger/swagger.js

Lines changed: 22 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -51,12 +51,12 @@ module.exports = function(RED) {
5151
if (node && node.type === "http in") {
5252
if(checkWiresForHttpResponse(node)){
5353
var swagger = RED.nodes.getNode(node.swaggerDoc);
54-
54+
5555
var url = node.url.replace(/\/:\w*/g, function convToSwaggerPath(x){return '/{' + x.substring(2) + '}';});
5656
if(url.charAt(0) !== '/'){
5757
url = '/' + url;
5858
}
59-
59+
6060
if(!resp.paths[url]){
6161
resp.paths[url] = {};
6262
}
@@ -65,14 +65,14 @@ module.exports = function(RED) {
6565
swaggerPart.summary = swagger.summary || node.name || (node.method+" "+url);
6666
if(swagger.description)
6767
swaggerPart.description = swagger.description;
68-
68+
6969
if(swagger.tags){
7070
swaggerPart.tags = swagger.tags.split(',');
7171
for(var i=0; i < swaggerPart.tags.length; i++){
7272
swaggerPart.tags[i] = swaggerPart.tags[i].trim();
7373
}
7474
}
75-
75+
7676
if(swagger.consumes){
7777
swaggerPart.consumes = swagger.consumes.split(',');
7878
for(var i=0; i < swaggerPart.consumes.length; i++){
@@ -128,7 +128,7 @@ module.exports = function(RED) {
128128
});
129129
res.json(resp);
130130
});
131-
131+
132132
function checkWiresForHttpResponse (node) {
133133
var wires = node.wires[0];
134134
for(var i in wires){
@@ -141,7 +141,7 @@ module.exports = function(RED) {
141141
}
142142
return false;
143143
}
144-
144+
145145
function SwaggerDoc(n){
146146
RED.nodes.createNode(this,n);
147147
this.summary = n.summary;
@@ -154,22 +154,31 @@ module.exports = function(RED) {
154154
this.deprecated = n.deprecated;
155155
}
156156
RED.nodes.registerType("swagger-doc",SwaggerDoc);
157-
158-
157+
158+
159+
function sendFile(res,filename) {
160+
// Use the right function depending on Express 3.x/4.x
161+
if (res.sendFile) {
162+
res.sendFile(filename);
163+
} else {
164+
res.sendfile(filename);
165+
}
166+
}
167+
159168
RED.httpAdmin.get('/swagger-ui/reqs/i18next.min.js', function(req, res){
160169
var filename = path.join(__dirname , '../node_modules/i18next-client/i18next.min.js');
161-
res.sendfile(filename);
170+
sendFile(res,filename);
162171
});
163172
RED.httpAdmin.get('/swagger-ui/reqs/*', function(req, res){
164173
var filename = path.join(__dirname , '../node_modules/swagger-ui/dist', req.params[0]);
165-
res.sendfile(filename);
174+
sendFile(res,filename);
166175
});
167176
RED.httpAdmin.get('/swagger-ui/nls/*', function(req, res){
168177
var filename = path.join(__dirname , 'locales', req.params[0]);
169-
res.sendfile(filename);
178+
sendFile(res,filename);
170179
});
171180
RED.httpAdmin.get('/swagger-ui/*', function(req, res){
172181
var filename = path.join(__dirname , 'swagger-ui', req.params[0]);
173-
res.sendfile(filename);
182+
sendFile(res,filename);
174183
});
175-
}
184+
}

0 commit comments

Comments
 (0)