VerHuh?, v1.1.5
by Zaiste
HTML
<link rel="stylesheet" href="//cdn.jsdelivr.net/foundation/4.3.1/css/foundation.min.css">
<script src="//cdnjs.cloudflare.com/ajax/libs/angular.js/1.1.5/angular.min.js"></script>
<h1>Ver Huh?</h1>
<hr/>
<input type="text" ng-model="project.name" />
<ul>
<li ng-repeat="t in project.tags">
{{t.name}}
<a href="{{t.zipball_url}}">(zip)</a>
<a href='#'>(commit)</a>
</li>
</ul>
CSS
li:first-child {
background-color: #CBE86B;
font-weight: bold;
}
li {
}
JavaScript
var app = angular.module('app', []);
var official = {
clojure: 'clojure/clojure',
rails: 'rails/rails',
"angular.js": 'angular/angular.js',
"ring-json": "ring-clojure/ring-json",
"ring": "ring-clojure/ring",
}
app.controller('Ctrl', function ($scope, $timeout, Github) {
$scope.project = {};
var timeout;
$scope.$watch('project.name', function (newVal) {
if (newVal) {
if (timeout) $timeout.cancel(timeout);
if (official.hasOwnProperty(newVal)) newVal = official[newVal];
timeout = $timeout(function () {
$scope.project.tags = Github.tags(newVal).then(function (data, status, headers, config) {
return data.data;
});
}, 450);
}
});
});
app.factory('Github', ['$http', function ($http) {
return {
tags: function (repo) {
return $http.get('https://api.github.com/repos/' + repo + '/tags');
},
};
}]);