PageRenderTime 61ms CodeModel.GetById 25ms RepoModel.GetById 0ms app.codeStats 0ms

/docs/backbone-github.html

https://github.com/foresthz/backbone-github
HTML | 368 lines | 339 code | 29 blank | 0 comment | 0 complexity | 4069070404fd83e6901f9e35530ceb6e MD5 | raw file
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta http-equiv="content-type" content="text/html;charset=utf-8">
  5. <title>backbone-github.coffee</title>
  6. <link rel="stylesheet" href="http://jashkenas.github.com/docco/resources/docco.css">
  7. </head>
  8. <body>
  9. <div id='container'>
  10. <div id="background"></div>
  11. <table cellspacing=0 cellpadding=0>
  12. <thead>
  13. <tr>
  14. <th class=docs><h1>backbone-github.coffee</h1></th>
  15. <th class=code></th>
  16. </tr>
  17. </thead>
  18. <tbody>
  19. <tr id='section-Dependencies'>
  20. <td class=docs>
  21. <div class="pilwrap">
  22. <a class="pilcrow" href="#section-Dependencies">&#182;</a>
  23. </div>
  24. <p>Backbone GitHub is a library that connects to the <a href="http://developer.github.com">GitHub
  25. API</a> using Cross Origin Resource
  26. Sharing (CORS). That means that you can utilize this library
  27. to access the full GitHub API without any server-side code
  28. whatsoever.</p>
  29. <h2>Dependencies</h2>
  30. <p>Backbone GitHub depends on Backbone, so before you can use
  31. this library you will need to have included Backbone,
  32. Underscore, and jQuery on the page.</p>
  33. </td>
  34. <td class=code>
  35. <div class='highlight'><pre><span class="nb">window</span><span class="p">.</span><span class="nx">GitHub</span> <span class="o">=</span> <span class="p">{}</span></pre></div>
  36. </td>
  37. </tr>
  38. <tr id='section-GitHub.token'>
  39. <td class=docs>
  40. <div class="pilwrap">
  41. <a class="pilcrow" href="#section-GitHub.token">&#182;</a>
  42. </div>
  43. <h2>GitHub.token</h2>
  44. <p>If <code>GitHub.token</code> is set you will be able to make
  45. user-authenticated calls to the GitHub API.</p>
  46. </td>
  47. <td class=code>
  48. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">token</span> <span class="o">=</span> <span class="kc">null</span></pre></div>
  49. </td>
  50. </tr>
  51. <tr id='section-GitHub.authenticate(username,_password,_options)'>
  52. <td class=docs>
  53. <div class="pilwrap">
  54. <a class="pilcrow" href="#section-GitHub.authenticate(username,_password,_options)">&#182;</a>
  55. </div>
  56. <h2>GitHub.authenticate(username, password, options)</h2>
  57. <p>Authenticate with GitHub via username and password. This
  58. method will automatically set <code>GitHub.token</code>, which allows
  59. you to make authenticated calls to the GitHub API.</p>
  60. <p>Note that this will authenticate the user with a generic
  61. &ldquo;GitHub API&rdquo; application. In order to have an app-specific
  62. token you need to use the redirect flow. Available options:</p>
  63. <ul>
  64. <li><strong>success:</strong> a callback function that takes arguments
  65. <code>data</code>, <code>textStatus</code>, and <code>jqXHR</code> (standard jQuery
  66. success callback)</li>
  67. <li><strong>error:</strong> a callback function that takes arguments
  68. <code>jqXHR</code>, <code>textStatus</code>, and <code>errorThrown</code></li>
  69. <li><strong>scope:</strong> provide comma-separated scopes. For example,
  70. <code>repo,user</code></li>
  71. </ul>
  72. </td>
  73. <td class=code>
  74. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">authenticate</span> <span class="o">=</span> <span class="p">(</span><span class="nx">username</span><span class="p">,</span> <span class="nx">password</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span><span class="o">-&gt;</span>
  75. <span class="nx">postData</span> <span class="o">=</span> <span class="p">{}</span>
  76. <span class="nx">postData</span><span class="p">.</span><span class="nx">scope</span> <span class="o">=</span> <span class="nx">options</span><span class="p">.</span><span class="nx">scope</span> <span class="k">if</span> <span class="nx">options</span><span class="p">.</span><span class="nx">scope</span><span class="o">?</span>
  77. <span class="nx">$</span><span class="p">.</span><span class="nx">ajax</span>
  78. <span class="nv">url: </span><span class="s2">&quot;https://api.github.com/authorizations&quot;</span>
  79. <span class="nv">contentType: </span><span class="s1">&#39;application/json&#39;</span>
  80. <span class="nv">dataType: </span><span class="s1">&#39;json&#39;</span>
  81. <span class="nv">type: </span><span class="s1">&#39;POST&#39;</span>
  82. <span class="nv">data: </span><span class="nx">JSON</span><span class="p">.</span><span class="nx">stringify</span><span class="p">(</span><span class="nx">postData</span><span class="p">)</span>
  83. <span class="nv">headers:</span>
  84. <span class="s1">&#39;Authorization&#39;</span><span class="o">:</span> <span class="s2">&quot;Basic #{btoa(&quot;</span><span class="c1">#{username}:#{password}&quot;)}&quot;</span>
  85. <span class="nv">success: </span><span class="p">(</span><span class="nx">d</span><span class="p">,</span><span class="nx">s</span><span class="p">,</span><span class="nx">x</span><span class="p">)</span><span class="o">-&gt;</span>
  86. <span class="nx">GitHub</span><span class="p">.</span><span class="nx">token</span> <span class="o">=</span> <span class="nx">d</span><span class="p">.</span><span class="nx">token</span>
  87. <span class="nx">options</span><span class="p">.</span><span class="nx">success</span><span class="p">(</span><span class="nx">d</span><span class="p">,</span><span class="nx">s</span><span class="p">,</span><span class="nx">x</span><span class="p">)</span> <span class="k">if</span> <span class="nx">options</span><span class="p">.</span><span class="nx">success</span><span class="o">?</span>
  88. <span class="nv">error: </span><span class="nx">options</span><span class="p">.</span><span class="nx">error</span></pre></div>
  89. </td>
  90. </tr>
  91. <tr id='section-GitHub.sync'>
  92. <td class=docs>
  93. <div class="pilwrap">
  94. <a class="pilcrow" href="#section-GitHub.sync">&#182;</a>
  95. </div>
  96. <h2>GitHub.sync</h2>
  97. <p>The GitHub sync method is simply a customized version of the
  98. default Backbone sync mechanism with two improved properties:</p>
  99. <ol>
  100. <li>It automatically sets an Accept header compatible with the
  101. GitHub v3 API.</li>
  102. <li>It sets the OAuth 2.0 Authorization header if <code>GitHub.token</code>
  103. exists.</li>
  104. </ol>
  105. </td>
  106. <td class=code>
  107. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">sync</span> <span class="o">=</span> <span class="p">(</span><span class="nx">method</span><span class="p">,</span> <span class="nx">model</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span><span class="o">-&gt;</span>
  108. <span class="nx">extendedOptions</span> <span class="o">=</span> <span class="nx">_</span><span class="p">.</span><span class="nx">extend</span> <span class="p">{</span>
  109. <span class="nv">beforeSend: </span><span class="p">(</span><span class="nx">xhr</span><span class="p">)</span><span class="o">-&gt;</span>
  110. <span class="nx">xhr</span><span class="p">.</span><span class="nx">setRequestHeader</span> <span class="s1">&#39;Accept&#39;</span><span class="p">,</span> <span class="s1">&#39;application/vnd.github+json&#39;</span>
  111. <span class="nx">xhr</span><span class="p">.</span><span class="nx">setRequestHeader</span> <span class="s1">&#39;Authorization&#39;</span><span class="p">,</span> <span class="s2">&quot;bearer #{GitHub.token}&quot;</span> <span class="k">if</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">token</span>
  112. <span class="p">},</span> <span class="nx">options</span>
  113. <span class="nx">Backbone</span><span class="p">.</span><span class="nx">sync</span><span class="p">(</span><span class="nx">method</span><span class="p">,</span> <span class="nx">model</span><span class="p">,</span> <span class="nx">extendedOptions</span><span class="p">)</span>
  114. <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Model</span> <span class="o">=</span> <span class="nx">Backbone</span><span class="p">.</span><span class="nx">Model</span><span class="p">.</span><span class="nx">extend</span>
  115. <span class="nv">sync: </span><span class="nx">GitHub</span><span class="p">.</span><span class="nx">sync</span>
  116. <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Collection</span> <span class="o">=</span> <span class="nx">Backbone</span><span class="p">.</span><span class="nx">Collection</span><span class="p">.</span><span class="nx">extend</span>
  117. <span class="nv">sync: </span><span class="nx">GitHub</span><span class="p">.</span><span class="nx">sync</span>
  118. <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Relations</span> <span class="o">=</span>
  119. <span class="nv">ownedRepos: </span><span class="p">(</span><span class="nx">options</span><span class="p">)</span><span class="o">-&gt;</span>
  120. <span class="nx">repos</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Repos</span>
  121. <span class="nx">repos</span><span class="p">.</span><span class="nx">url</span> <span class="o">=</span> <span class="k">if</span> <span class="k">typeof</span> <span class="err">@</span><span class="nx">url</span> <span class="o">==</span> <span class="s2">&quot;function&quot;</span> <span class="k">then</span> <span class="err">@</span><span class="nx">url</span><span class="p">()</span> <span class="k">else</span> <span class="err">@</span><span class="nx">url</span>
  122. <span class="nx">repos</span><span class="p">.</span><span class="nx">url</span> <span class="o">+=</span> <span class="s2">&quot;/repos&quot;</span>
  123. <span class="nx">repos</span><span class="p">.</span><span class="nx">fetch</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span>
  124. <span class="nx">repos</span>
  125. <span class="nv">ownedOrgs: </span><span class="p">(</span><span class="nx">options</span><span class="p">)</span><span class="o">-&gt;</span>
  126. <span class="nx">orgs</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Organizations</span>
  127. <span class="nx">orgs</span><span class="p">.</span><span class="nx">url</span> <span class="o">=</span> <span class="k">if</span> <span class="k">typeof</span> <span class="err">@</span><span class="nx">url</span> <span class="o">==</span> <span class="s2">&quot;function&quot;</span> <span class="k">then</span> <span class="err">@</span><span class="nx">url</span><span class="p">()</span> <span class="k">else</span> <span class="err">@</span><span class="nx">url</span>
  128. <span class="nx">orgs</span><span class="p">.</span><span class="nx">url</span> <span class="o">+=</span> <span class="s2">&quot;/orgs&quot;</span>
  129. <span class="nx">orgs</span><span class="p">.</span><span class="nx">fetch</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span>
  130. <span class="nx">orgs</span></pre></div>
  131. </td>
  132. </tr>
  133. <tr id='section-GitHub.User'>
  134. <td class=docs>
  135. <div class="pilwrap">
  136. <a class="pilcrow" href="#section-GitHub.User">&#182;</a>
  137. </div>
  138. <h2>GitHub.User</h2>
  139. <p>The GitHub User model. For information about specific attributes
  140. that are available on this model, see GitHub&rsquo;s <a href="http://developer.github.com/v3/users/">Users API</a>
  141. documentation.</p>
  142. </td>
  143. <td class=code>
  144. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">User</span> <span class="o">=</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Model</span><span class="p">.</span><span class="nx">extend</span><span class="p">(</span>
  145. <span class="nv">urlRoot: </span><span class="s1">&#39;https://api.github.com/users/&#39;</span></pre></div>
  146. </td>
  147. </tr>
  148. <tr id='section-user.repos(options)'>
  149. <td class=docs>
  150. <div class="pilwrap">
  151. <a class="pilcrow" href="#section-user.repos(options)">&#182;</a>
  152. </div>
  153. <h3>user.repos(options)</h3>
  154. <p>Fetch associated repositories for this user. Takes
  155. a <code>success</code> and <code>error</code> callback as potential options.
  156. Returns a <code>GitHub.Repos</code> collection.</p>
  157. </td>
  158. <td class=code>
  159. <div class='highlight'><pre> <span class="nv">repos: </span><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Relations</span><span class="p">.</span><span class="nx">ownedRepos</span></pre></div>
  160. </td>
  161. </tr>
  162. <tr id='section-user.organizations(options)'>
  163. <td class=docs>
  164. <div class="pilwrap">
  165. <a class="pilcrow" href="#section-user.organizations(options)">&#182;</a>
  166. </div>
  167. <h3>user.organizations(options)</h3>
  168. <p>Fetch associated organizations for this user. Takes
  169. a <code>success</code> and <code>error</code> callback as potential options.</p>
  170. </td>
  171. <td class=code>
  172. <div class='highlight'><pre> <span class="nv">organizations: </span><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Relations</span><span class="p">.</span><span class="nx">ownedOrgs</span>
  173. <span class="p">,</span></pre></div>
  174. </td>
  175. </tr>
  176. <tr id='section-GitHub.User.fetch(name,_options)'>
  177. <td class=docs>
  178. <div class="pilwrap">
  179. <a class="pilcrow" href="#section-GitHub.User.fetch(name,_options)">&#182;</a>
  180. </div>
  181. <h3>GitHub.User.fetch(name, options)</h3>
  182. <p>Retrieve a user by username. Takes <code>success</code> and
  183. <code>error</code> callbacks.</p>
  184. <pre><code>GitHub.User.fetch(&lsquo;mbleigh&rsquo;, {success: function(u){
  185. console.log(u.toJSON());
  186. }});
  187. </code></pre>
  188. </td>
  189. <td class=code>
  190. <div class='highlight'><pre> <span class="nv">fetch: </span><span class="p">(</span><span class="nx">name</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span><span class="o">-&gt;</span>
  191. <span class="nx">user</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">User</span><span class="p">(</span><span class="nv">id: </span><span class="nx">name</span><span class="p">)</span>
  192. <span class="nx">user</span><span class="p">.</span><span class="nx">fetch</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span>
  193. <span class="nx">user</span>
  194. <span class="p">)</span></pre></div>
  195. </td>
  196. </tr>
  197. <tr id='section-GitHub.Organization'>
  198. <td class=docs>
  199. <div class="pilwrap">
  200. <a class="pilcrow" href="#section-GitHub.Organization">&#182;</a>
  201. </div>
  202. <h2>GitHub.Organization</h2>
  203. <p>Represents a GitHub organization. See the <a href="http://developer.github.com/v3/orgs/">Organization
  204. API</a> docs on GitHub
  205. for additional information.</p>
  206. </td>
  207. <td class=code>
  208. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Organization</span> <span class="o">=</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Model</span><span class="p">.</span><span class="nx">extend</span><span class="p">(</span>
  209. <span class="nv">urlRoot: </span><span class="s1">&#39;https://api.github.com/orgs/&#39;</span></pre></div>
  210. </td>
  211. </tr>
  212. <tr id='section-org.repos(options)'>
  213. <td class=docs>
  214. <div class="pilwrap">
  215. <a class="pilcrow" href="#section-org.repos(options)">&#182;</a>
  216. </div>
  217. <h3>org.repos(options)</h3>
  218. <p>Fetch the repositories for the instantiated organization.
  219. Takes <code>success</code> and <code>error</code> callbacks. Returns a
  220. <code>GitHub.Repos</code> collection.</p>
  221. </td>
  222. <td class=code>
  223. <div class='highlight'><pre> <span class="nv">repos: </span><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Relations</span><span class="p">.</span><span class="nx">ownedRepos</span>
  224. <span class="p">,</span></pre></div>
  225. </td>
  226. </tr>
  227. <tr id='section-GitHub.Organization.fetch(name,_options)'>
  228. <td class=docs>
  229. <div class="pilwrap">
  230. <a class="pilcrow" href="#section-GitHub.Organization.fetch(name,_options)">&#182;</a>
  231. </div>
  232. <h3>GitHub.Organization.fetch(name, options)</h3>
  233. <p>Fetch an organization by name. Accepts <code>success</code>
  234. and <code>error</code> callbacks.</p>
  235. <pre><code>GitHub.Organization.fetch(&lsquo;opperator&rsquo;, {success: function(o){
  236. console.log(o.toJSON());
  237. }});
  238. </code></pre>
  239. </td>
  240. <td class=code>
  241. <div class='highlight'><pre> <span class="nv">fetch: </span><span class="p">(</span><span class="nx">name</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span><span class="o">-&gt;</span>
  242. <span class="nx">org</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Organization</span><span class="p">(</span><span class="nv">id: </span><span class="nx">name</span><span class="p">)</span>
  243. <span class="nx">org</span><span class="p">.</span><span class="nx">fetch</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span>
  244. <span class="nx">org</span>
  245. <span class="p">)</span></pre></div>
  246. </td>
  247. </tr>
  248. <tr id='section-GitHub.Organizations'>
  249. <td class=docs>
  250. <div class="pilwrap">
  251. <a class="pilcrow" href="#section-GitHub.Organizations">&#182;</a>
  252. </div>
  253. <h2>GitHub.Organizations</h2>
  254. <p>Collection of multiple organizations. By default will
  255. be associated to the current user&rsquo;s organizations (you
  256. must set an <code>GitHub.token</code> for that to work.)</p>
  257. </td>
  258. <td class=code>
  259. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Organizations</span> <span class="o">=</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Collection</span><span class="p">.</span><span class="nx">extend</span>
  260. <span class="nv">url: </span><span class="s1">&#39;https://api.github.com/user/orgs&#39;</span>
  261. <span class="nv">model: </span><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Organization</span></pre></div>
  262. </td>
  263. </tr>
  264. <tr id='section-GitHub.Repo'>
  265. <td class=docs>
  266. <div class="pilwrap">
  267. <a class="pilcrow" href="#section-GitHub.Repo">&#182;</a>
  268. </div>
  269. <h2>GitHub.Repo</h2>
  270. <p>Repository model. For more information about attributes
  271. etc, see the <a href="http://developer.github.com/v3/repos/">GitHub Repo</a>
  272. API docs.</p>
  273. </td>
  274. <td class=code>
  275. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Repo</span> <span class="o">=</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Model</span><span class="p">.</span><span class="nx">extend</span><span class="p">(</span>
  276. <span class="nv">url: </span><span class="p">()</span><span class="o">-&gt;</span>
  277. <span class="err">@</span><span class="nx">get</span><span class="p">(</span><span class="s1">&#39;url&#39;</span><span class="p">)</span> <span class="o">||</span> <span class="s2">&quot;https://api.github.com/repos/#{@get(&#39;path&#39;)}&quot;</span>
  278. <span class="p">,</span></pre></div>
  279. </td>
  280. </tr>
  281. <tr id='section-GitHub.Repo.fetch(owner,_name,_options)'>
  282. <td class=docs>
  283. <div class="pilwrap">
  284. <a class="pilcrow" href="#section-GitHub.Repo.fetch(owner,_name,_options)">&#182;</a>
  285. </div>
  286. <h3>GitHub.Repo.fetch(owner, name, options)</h3>
  287. <p>Retrieve a repository knowing its owner and name. Takes
  288. <code>success</code> and <code>error</code> callbacks in options.</p>
  289. <pre><code>GitHub.Repo.fetch(&lsquo;opperator&rsquo;, &lsquo;backbone-github&rsquo;, {success: function&reg;{
  290. console.log(r.toJSON());
  291. }});
  292. </code></pre>
  293. </td>
  294. <td class=code>
  295. <div class='highlight'><pre> <span class="nv">fetch: </span><span class="p">(</span><span class="nx">owner</span><span class="p">,</span> <span class="nx">name</span><span class="p">,</span> <span class="nx">options</span><span class="p">)</span><span class="o">-&gt;</span>
  296. <span class="nx">repo</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Repo</span><span class="p">(</span><span class="nv">path: </span><span class="s2">&quot;#{owner}/#{name}&quot;</span><span class="p">)</span>
  297. <span class="nx">repo</span><span class="p">.</span><span class="nx">fetch</span><span class="p">(</span><span class="nx">options</span><span class="p">)</span>
  298. <span class="nx">repo</span>
  299. <span class="p">)</span></pre></div>
  300. </td>
  301. </tr>
  302. <tr id='section-GitHub.Repos'>
  303. <td class=docs>
  304. <div class="pilwrap">
  305. <a class="pilcrow" href="#section-GitHub.Repos">&#182;</a>
  306. </div>
  307. <h2>GitHub.Repos</h2>
  308. <p>Collection of Repo models. Defaults to the current user&rsquo;s
  309. repositories. Must have set <code>GitHub.token</code> for current
  310. user repo fetch to be successful.</p>
  311. </td>
  312. <td class=code>
  313. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Repos</span> <span class="o">=</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">Collection</span><span class="p">.</span><span class="nx">extend</span>
  314. <span class="nv">url: </span><span class="s1">&#39;https://api.github.com/user/repos&#39;</span>
  315. <span class="nv">model: </span><span class="nx">GitHub</span><span class="p">.</span><span class="nx">Repo</span></pre></div>
  316. </td>
  317. </tr>
  318. <tr id='section-GitHub.currentUser'>
  319. <td class=docs>
  320. <div class="pilwrap">
  321. <a class="pilcrow" href="#section-GitHub.currentUser">&#182;</a>
  322. </div>
  323. <h2>GitHub.currentUser</h2>
  324. <p>A <code>GitHub.User</code> corresponding to the authenticated user.
  325. Note that you must set <code>GitHub.token</code> to a valid OAuth 2.0
  326. token to be able to utilize the current user.</p>
  327. <p>The <code>currentUser</code> is not fetched by default, you must run
  328. <code>GitHub.currentUser.fetch()</code> before it will be populated
  329. with data.</p>
  330. </td>
  331. <td class=code>
  332. <div class='highlight'><pre><span class="nx">GitHub</span><span class="p">.</span><span class="nx">currentUser</span> <span class="o">=</span> <span class="k">new</span> <span class="nx">GitHub</span><span class="p">.</span><span class="nx">User</span><span class="p">()</span>
  333. <span class="nx">GitHub</span><span class="p">.</span><span class="nx">currentUser</span><span class="p">.</span><span class="nx">url</span> <span class="o">=</span> <span class="s2">&quot;https://api.github.com/user&quot;</span>
  334. <span class="nx">GitHub</span><span class="p">.</span><span class="nx">currentUser</span><span class="p">.</span><span class="nx">urlRoot</span> <span class="o">=</span> <span class="kc">null</span></pre></div>
  335. </td>
  336. </tr>
  337. </table>
  338. </div>
  339. </body>