8042f1a985
- Add the CoreOS icon font
49 lines
No EOL
1.3 KiB
JavaScript
49 lines
No EOL
1.3 KiB
JavaScript
/**
|
|
* An element which displays a single layer representing an image in the image view.
|
|
*/
|
|
angular.module('quay').directive('imageViewLayer', function () {
|
|
var directiveDefinitionObject = {
|
|
priority: 0,
|
|
templateUrl: '/static/directives/image-view-layer.html',
|
|
replace: false,
|
|
transclude: true,
|
|
restrict: 'C',
|
|
scope: {
|
|
'repository': '=repository',
|
|
'image': '=image',
|
|
'images': '=images'
|
|
},
|
|
controller: function($scope, $element) {
|
|
$scope.getDockerfileCommand = function(command) {
|
|
if (!command) { return ''; }
|
|
|
|
// ["/bin/sh", "-c", "#(nop) RUN foo"]
|
|
var commandPrefix = '#(nop)'
|
|
|
|
if (command.length != 3) { return ''; }
|
|
if (command[0] != '/bin/sh' || command[1] != '-c') { return ''; }
|
|
|
|
var cmd = command[2];
|
|
if (cmd.substring(0, commandPrefix.length) != commandPrefix) {
|
|
return 'RUN ' + cmd;
|
|
}
|
|
|
|
return command[2].substr(commandPrefix.length + 1);
|
|
};
|
|
|
|
$scope.getClass = function() {
|
|
var index = $.inArray($scope.image, $scope.images);
|
|
if (index < 0) {
|
|
return 'first';
|
|
}
|
|
|
|
if (index == $scope.images.length - 1) {
|
|
return 'last';
|
|
}
|
|
|
|
return '';
|
|
};
|
|
}
|
|
};
|
|
return directiveDefinitionObject;
|
|
}); |