Skip to content

Commit 37b935c

Browse files
author
agustin
committed
Merge branch 'master' into bugs/response-codes-panel
2 parents f706f45 + ccd2a78 commit 37b935c

File tree

9 files changed

+52
-28
lines changed

9 files changed

+52
-28
lines changed

dist/scripts/api-console.js

Lines changed: 26 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -146,7 +146,9 @@
146146
Object.keys(schemas)
147147
.map(extractSchema)
148148
.filter(isValidSchema)
149-
.forEach(function (schema) { copyToCodesIfNotPresent(codes, schema.describedBy.responses); });
149+
.forEach(function (schema) {
150+
copyToCodesIfNotPresent(codes, schema.describedBy.responses);
151+
});
150152

151153
return codes;
152154
}
@@ -693,6 +695,7 @@
693695
scope: {
694696
src: '=',
695697
context: '=',
698+
types: '=',
696699
type: '@',
697700
title: '@'
698701
},
@@ -1479,6 +1482,7 @@
14791482
scope: {
14801483
context: '=',
14811484
type: '=',
1485+
types: '=',
14821486
model: '=',
14831487
param: '='
14841488
},
@@ -2691,7 +2695,7 @@
26912695
var errors;
26922696

26932697
value = typeof value !== 'undefined' && value !== null && value.length === 0 ? undefined : value;
2694-
current[validation.id] = value;
2698+
current[validationId] = value;
26952699

26962700
errors = validator(sanitizer(current)).errors;
26972701

@@ -2700,24 +2704,30 @@
27002704
// Note: We want to allow invalid errors for testing purposes
27012705
return value;
27022706
} else {
2703-
clear(control, validationRules[validation.id]);
2707+
clear(control, validationRules[validationId]);
27042708
return value;
27052709
}
27062710
}
27072711

27082712
var validation = $parse($attrs.validate)($scope);
2713+
var validationId = validation.id;
27092714
var sanitationRules = {};
27102715
var validationRules = {};
27112716
var control = $ctrl;
27122717

2713-
sanitationRules[validation.id] = {
2718+
if (validation && validation.type) {
2719+
var declaredType = RAML.Inspector.Types.findType(validation.type[0], $scope.types);
2720+
if (declaredType) { validation = declaredType; }
2721+
}
2722+
2723+
sanitationRules[validationId] = {
27142724
type: validation.type || null,
27152725
repeat: validation.repeat || null
27162726
};
27172727

2718-
sanitationRules[validation.id] = RAML.Utils.filterEmpty(sanitationRules[validation.id]);
2728+
sanitationRules[validationId] = RAML.Utils.filterEmpty(sanitationRules[validationId]);
27192729

2720-
validationRules[validation.id] = {
2730+
validationRules[validationId] = {
27212731
type: validation.type || null,
27222732
minLength: validation.minLength || null,
27232733
maxLength: validation.maxLength || null,
@@ -2729,7 +2739,7 @@
27292739
repeat: validation.repeat || null
27302740
};
27312741

2732-
validationRules[validation.id] = RAML.Utils.filterEmpty(validationRules[validation.id]);
2742+
validationRules[validationId] = RAML.Utils.filterEmpty(validationRules[validationId]);
27332743

27342744
$ctrl.$formatters.unshift(function(value) {
27352745
return validate(value);
@@ -5743,7 +5753,9 @@ RAML.Inspector = (function() {
57435753
* @return {Boolean}
57445754
*/
57455755
var toBoolean = function (value) {
5746-
return [0, false, '', '0', 'false'].indexOf(value) === -1;
5756+
if ([0, false, '0', 'false'].indexOf(value) !== -1) return false;
5757+
if ([1, true, '1', 'true'].indexOf(value) !== -1) return true;
5758+
return null;
57475759
};
57485760

57495761
/**
@@ -5783,7 +5795,7 @@ RAML.Inspector = (function() {
57835795
*/
57845796
var returnValue = function (value) {
57855797
return value;
5786-
}
5798+
};
57875799

57885800
var toUnion = function (value, key, object, configs) {
57895801
var any = null;
@@ -5794,7 +5806,7 @@ RAML.Inspector = (function() {
57945806
});
57955807

57965808
return any;
5797-
}
5809+
};
57985810

57995811
function isNativeType(typeName) {
58005812
typeName = typeName.replace('[]', '');
@@ -6763,7 +6775,7 @@ angular.module('ramlConsoleApp').run(['$templateCache', function($templateCache)
67636775
" </span>\n" +
67646776
" </span>\n" +
67656777
"\n" +
6766-
" <raml-field context=\"context\" type=\"type\" param=\"param.definitions[0]\" model=\"context[type].values[param.definitions[0].id]\"></raml-field>\n" +
6778+
" <raml-field context=\"context\" type=\"type\" types=\"types\" param=\"param.definitions[0]\" model=\"context[type].values[param.definitions[0].id]\"></raml-field>\n" +
67676779
" </p>\n" +
67686780
" </div>\n" +
67696781
"</section>\n"
@@ -7039,7 +7051,7 @@ angular.module('ramlConsoleApp').run(['$templateCache', function($templateCache)
70397051
" </div>\n" +
70407052
"\n" +
70417053
" <div ng-if=\"param.properties\" style=\"padding-left: 10px\">\n" +
7042-
" <raml-field ng-repeat=\"aParam in param.properties\" context=\"context\" type=\"type\" param=\"aParam[0]\" ng-init=\"model[0][aParam[0].name] = [undefined]\" model=\"model[0][aParam[0].name]\"></raml-field>\n" +
7054+
" <raml-field ng-repeat=\"aParam in param.properties\" context=\"context\" type=\"type\" types=\"types\" param=\"aParam[0]\" ng-init=\"model[0][aParam[0].name] = [undefined]\" model=\"model[0][aParam[0].name]\"></raml-field>\n" +
70437055
" </div>\n" +
70447056
"</div>\n"
70457057
);
@@ -7269,7 +7281,7 @@ angular.module('ramlConsoleApp').run(['$templateCache', function($templateCache)
72697281
"\n" +
72707282
" <named-parameters src=\"methodInfo.headers.plain\" context=\"context\" type=\"headers\" title=\"Headers\" enable-custom-parameters></named-parameters>\n" +
72717283
"\n" +
7272-
" <named-parameters src=\"methodInfo.queryParameters\" context=\"context\" type=\"queryParameters\" title=\"Query Parameters\" enable-custom-parameters></named-parameters>\n" +
7284+
" <named-parameters src=\"methodInfo.queryParameters\" context=\"context\" type=\"queryParameters\" types=\"types\" title=\"Query Parameters\" enable-custom-parameters></named-parameters>\n" +
72737285
"\n" +
72747286
" <section ng-if=\"methodInfo.queryString\">\n" +
72757287
" <header class=\"raml-console-sidebar-row raml-console-sidebar-subheader\">\n" +
@@ -7320,7 +7332,7 @@ angular.module('ramlConsoleApp').run(['$templateCache', function($templateCache)
73207332
" </span>\n" +
73217333
" </span>\n" +
73227334
"\n" +
7323-
" <raml-field context=\"context\" type=\"type\" param=\"param.definitions[0]\" model=\"context.bodyContent.definitions[context.bodyContent.selected].values[param.definitions[0].id]\"></raml-field>\n" +
7335+
" <raml-field context=\"context\" type=\"type\" types=\"types\" param=\"param.definitions[0]\" model=\"context.bodyContent.definitions[context.bodyContent.selected].values[param.definitions[0].id]\"></raml-field>\n" +
73247336
" </p>\n" +
73257337
" </div>\n" +
73267338
" </div>\n" +

src/app/directives/documentation.js

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -27,7 +27,9 @@
2727
Object.keys(schemas)
2828
.map(extractSchema)
2929
.filter(isValidSchema)
30-
.forEach(function (schema) { copyToCodesIfNotPresent(codes, schema.describedBy.responses); });
30+
.forEach(function (schema) {
31+
copyToCodesIfNotPresent(codes, schema.describedBy.responses);
32+
});
3133

3234
return codes;
3335
}

src/app/directives/named-parameters.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
scope: {
1010
src: '=',
1111
context: '=',
12+
types: '=',
1213
type: '@',
1314
title: '@'
1415
},

src/app/directives/named-parameters.tpl.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ <h4 class="raml-console-sidebar-subhead">{{title}}</h4>
3030
</span>
3131
</span>
3232

33-
<raml-field context="context" type="type" param="param.definitions[0]" model="context[type].values[param.definitions[0].id]"></raml-field>
33+
<raml-field context="context" type="type" types="types" param="param.definitions[0]" model="context[type].values[param.definitions[0].id]"></raml-field>
3434
</p>
3535
</div>
3636
</section>

src/app/directives/raml-field.js

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,7 @@
99
scope: {
1010
context: '=',
1111
type: '=',
12+
types: '=',
1213
model: '=',
1314
param: '='
1415
},

src/app/directives/raml-field.tpl.html

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,6 +50,6 @@
5050
</div>
5151

5252
<div ng-if="param.properties" style="padding-left: 10px">
53-
<raml-field ng-repeat="aParam in param.properties" context="context" type="type" param="aParam[0]" ng-init="model[0][aParam[0].name] = [undefined]" model="model[0][aParam[0].name]"></raml-field>
53+
<raml-field ng-repeat="aParam in param.properties" context="context" type="type" types="types" param="aParam[0]" ng-init="model[0][aParam[0].name] = [undefined]" model="model[0][aParam[0].name]"></raml-field>
5454
</div>
5555
</div>

src/app/directives/sidebar.tpl.html

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,7 @@ <h4 class="raml-console-sidebar-subhead">Authentication</h4>
5454

5555
<named-parameters src="methodInfo.headers.plain" context="context" type="headers" title="Headers" enable-custom-parameters></named-parameters>
5656

57-
<named-parameters src="methodInfo.queryParameters" context="context" type="queryParameters" title="Query Parameters" enable-custom-parameters></named-parameters>
57+
<named-parameters src="methodInfo.queryParameters" context="context" type="queryParameters" types="types" title="Query Parameters" enable-custom-parameters></named-parameters>
5858

5959
<section ng-if="methodInfo.queryString">
6060
<header class="raml-console-sidebar-row raml-console-sidebar-subheader">
@@ -105,7 +105,7 @@ <h4 class="raml-console-sidebar-subhead">Body</h4>
105105
</span>
106106
</span>
107107

108-
<raml-field context="context" type="type" param="param.definitions[0]" model="context.bodyContent.definitions[context.bodyContent.selected].values[param.definitions[0].id]"></raml-field>
108+
<raml-field context="context" type="type" types="types" param="param.definitions[0]" model="context.bodyContent.definitions[context.bodyContent.selected].values[param.definitions[0].id]"></raml-field>
109109
</p>
110110
</div>
111111
</div>

src/app/directives/validate.js

Lines changed: 12 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -18,7 +18,7 @@
1818
var errors;
1919

2020
value = typeof value !== 'undefined' && value !== null && value.length === 0 ? undefined : value;
21-
current[validation.id] = value;
21+
current[validationId] = value;
2222

2323
errors = validator(sanitizer(current)).errors;
2424

@@ -27,24 +27,30 @@
2727
// Note: We want to allow invalid errors for testing purposes
2828
return value;
2929
} else {
30-
clear(control, validationRules[validation.id]);
30+
clear(control, validationRules[validationId]);
3131
return value;
3232
}
3333
}
3434

3535
var validation = $parse($attrs.validate)($scope);
36+
var validationId = validation.id;
3637
var sanitationRules = {};
3738
var validationRules = {};
3839
var control = $ctrl;
3940

40-
sanitationRules[validation.id] = {
41+
if (validation && validation.type) {
42+
var declaredType = RAML.Inspector.Types.findType(validation.type[0], $scope.types);
43+
if (declaredType) { validation = declaredType; }
44+
}
45+
46+
sanitationRules[validationId] = {
4147
type: validation.type || null,
4248
repeat: validation.repeat || null
4349
};
4450

45-
sanitationRules[validation.id] = RAML.Utils.filterEmpty(sanitationRules[validation.id]);
51+
sanitationRules[validationId] = RAML.Utils.filterEmpty(sanitationRules[validationId]);
4652

47-
validationRules[validation.id] = {
53+
validationRules[validationId] = {
4854
type: validation.type || null,
4955
minLength: validation.minLength || null,
5056
maxLength: validation.maxLength || null,
@@ -56,7 +62,7 @@
5662
repeat: validation.repeat || null
5763
};
5864

59-
validationRules[validation.id] = RAML.Utils.filterEmpty(validationRules[validation.id]);
65+
validationRules[validationId] = RAML.Utils.filterEmpty(validationRules[validationId]);
6066

6167
$ctrl.$formatters.unshift(function(value) {
6268
return validate(value);

src/vendor/raml-sanitize/raml-sanitize.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,9 @@
1616
* @return {Boolean}
1717
*/
1818
var toBoolean = function (value) {
19-
return [0, false, '', '0', 'false'].indexOf(value) === -1;
19+
if ([0, false, '0', 'false'].indexOf(value) !== -1) return false;
20+
if ([1, true, '1', 'true'].indexOf(value) !== -1) return true;
21+
return null;
2022
};
2123

2224
/**
@@ -56,7 +58,7 @@
5658
*/
5759
var returnValue = function (value) {
5860
return value;
59-
}
61+
};
6062

6163
var toUnion = function (value, key, object, configs) {
6264
var any = null;
@@ -67,7 +69,7 @@
6769
});
6870

6971
return any;
70-
}
72+
};
7173

7274
function isNativeType(typeName) {
7375
typeName = typeName.replace('[]', '');

0 commit comments

Comments
 (0)