github用のjsライブラリを作ってみた

github pageでコミットログを表示の続き。と言っても中身を大幅に変更したが。
Develop.GitHubにあるAPIを使用している。

使用例

細かいマニュアルを書くのが面倒(どうせ自分しか使わないだろうし) :-P

使用例: 最新のコミットログを表示

<pre id="history"></pre>
var elm = document.getElementById("history");
GITHUB("commits", {
  user: "teramako",
  project: "JetpackScripts",
  branch: "master",
  target: elm
}).getCommitsListForBranch(function(commits){
  var mostRecentCommit = commits[0];
  var str = "";
  for (var key in mostRecentCommit){
    str += key + ": " + mostRecentCommit[key] + "\n";
  }
  elm.textContent = str;
});

使用例: 最新のファイルデータの表示

<pre id="data"></pre>
var elm = document.getElementById("data");
var git = GITHUB("commits", {
  user: "teramako",
  project: "JetpackScripts",
  branch: "master",
  path: "README",
  target: elm
});
git.getCommitsListForFile(function(commits){
  var commit = commits[0];
  git.to("blob").set({
    sha: commit.id
  }).getBlobs(function(blob){
    elm.textContent = blob.data;
  });
});

使用例: ユーザ情報の表示

<dl id="user-info"></dl>
var elm = document.getElementById("user-info");
GITHUB("user", {
  user: "teramako"
}).getUserInfo(function(user){
  for (var key in user){
    var dt = document.createElement("dt");
    dt.textContent = key;
    var dd = document.createElement("dd");
    dd.textContent = user[key];
    elm.appendChild(dt);
    elm.appendChild(dd);
  }
});