Skip to content

Commit 675225e

Browse files
committed
Fix #380
1 parent 89e60e5 commit 675225e

File tree

4 files changed

+38
-26
lines changed

4 files changed

+38
-26
lines changed

dist/scripts/api-console.js

Lines changed: 19 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -126,11 +126,14 @@
126126
restrict: 'E',
127127
templateUrl: 'directives/documentation.tpl.html',
128128
controller: ['$scope', function($scope) {
129-
var defaultSchemaKey = Object.keys($scope.securitySchemes).sort()[0];
130-
var defaultSchema = $scope.securitySchemes[defaultSchemaKey];
131-
132129
$scope.markedOptions = RAML.Settings.marked;
133-
$scope.documentationSchemeSelected = defaultSchema;
130+
131+
$scope.$watch('securitySchemes', function() {
132+
var defaultSchemaKey = Object.keys($scope.securitySchemes).sort()[0];
133+
var defaultSchema = $scope.securitySchemes[defaultSchemaKey];
134+
135+
$scope.documentationSchemeSelected = defaultSchema;
136+
});
134137

135138
function mergeResponseCodes(methodCodes, schemas) {
136139
var extractSchema = function (key) { return schemas.hasOwnProperty(key) ? schemas[key] : undefined; };
@@ -169,8 +172,10 @@
169172
});
170173
}
171174
}
172-
$scope.fullResponses = mergeResponseCodes($scope.methodInfo.responses || {}, $scope.methodInfo.securitySchemes());
173-
$scope.fullResponseCodes = Object.keys($scope.fullResponses);
175+
$scope.$watch('methodInfo', function () {
176+
$scope.fullResponses = mergeResponseCodes($scope.methodInfo.responses || {}, $scope.methodInfo.securitySchemes());
177+
$scope.fullResponseCodes = Object.keys($scope.fullResponses);
178+
});
174179

175180
$scope.isSchemeSelected = function isSchemeSelected(scheme) {
176181
return scheme.id === $scope.documentationSchemeSelected.id;
@@ -393,17 +398,16 @@
393398
},
394399
controller: ['$scope', function($scope) {
395400
$scope.getBeatifiedExample = $scope.getBeatifiedExampleRef();
396-
$scope.examples = transformExample($scope.exampleContainer);
397-
$scope.currentExample = 0;
398-
399-
$scope.isXML = $scope.exampleContainer.name === 'application/xml';
400401

401402
$scope.changeExample = function(example) {
402403
$scope.currentExample = example;
403404
};
404405

405406
$scope.$watch('exampleContainer', function (value) {
406407
$scope.examples = transformExample(value);
408+
$scope.currentExample = 0;
409+
410+
$scope.isXML = value.name === 'application/xml';
407411
});
408412
}]
409413
};
@@ -2630,9 +2634,11 @@
26302634
type: '='
26312635
},
26322636
controller: ['$scope', function ($scope) {
2633-
$scope.properties = {
2634-
body: [$scope.type]
2635-
};
2637+
$scope.$watch('type', function () {
2638+
$scope.properties = {
2639+
body: [$scope.type]
2640+
};
2641+
});
26362642
}]
26372643
};
26382644
};

src/app/directives/documentation.js

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,11 +6,14 @@
66
restrict: 'E',
77
templateUrl: 'directives/documentation.tpl.html',
88
controller: ['$scope', function($scope) {
9-
var defaultSchemaKey = Object.keys($scope.securitySchemes).sort()[0];
10-
var defaultSchema = $scope.securitySchemes[defaultSchemaKey];
11-
129
$scope.markedOptions = RAML.Settings.marked;
13-
$scope.documentationSchemeSelected = defaultSchema;
10+
11+
$scope.$watch('securitySchemes', function() {
12+
var defaultSchemaKey = Object.keys($scope.securitySchemes).sort()[0];
13+
var defaultSchema = $scope.securitySchemes[defaultSchemaKey];
14+
15+
$scope.documentationSchemeSelected = defaultSchema;
16+
});
1417

1518
function mergeResponseCodes(methodCodes, schemas) {
1619
var extractSchema = function (key) { return schemas.hasOwnProperty(key) ? schemas[key] : undefined; };
@@ -49,8 +52,10 @@
4952
});
5053
}
5154
}
52-
$scope.fullResponses = mergeResponseCodes($scope.methodInfo.responses || {}, $scope.methodInfo.securitySchemes());
53-
$scope.fullResponseCodes = Object.keys($scope.fullResponses);
55+
$scope.$watch('methodInfo', function () {
56+
$scope.fullResponses = mergeResponseCodes($scope.methodInfo.responses || {}, $scope.methodInfo.securitySchemes());
57+
$scope.fullResponseCodes = Object.keys($scope.fullResponses);
58+
});
5459

5560
$scope.isSchemeSelected = function isSchemeSelected(scheme) {
5661
return scheme.id === $scope.documentationSchemeSelected.id;

src/app/directives/examples.js

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -11,17 +11,16 @@
1111
},
1212
controller: ['$scope', function($scope) {
1313
$scope.getBeatifiedExample = $scope.getBeatifiedExampleRef();
14-
$scope.examples = transformExample($scope.exampleContainer);
15-
$scope.currentExample = 0;
16-
17-
$scope.isXML = $scope.exampleContainer.name === 'application/xml';
1814

1915
$scope.changeExample = function(example) {
2016
$scope.currentExample = example;
2117
};
2218

2319
$scope.$watch('exampleContainer', function (value) {
2420
$scope.examples = transformExample(value);
21+
$scope.currentExample = 0;
22+
23+
$scope.isXML = value.name === 'application/xml';
2524
});
2625
}]
2726
};

src/app/directives/type-properties.js

Lines changed: 5 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -10,9 +10,11 @@
1010
type: '='
1111
},
1212
controller: ['$scope', function ($scope) {
13-
$scope.properties = {
14-
body: [$scope.type]
15-
};
13+
$scope.$watch('type', function () {
14+
$scope.properties = {
15+
body: [$scope.type]
16+
};
17+
});
1618
}]
1719
};
1820
};

0 commit comments

Comments
 (0)