diff options
author | David Thompson <dthompson2@worcester.edu> | 2015-02-09 08:34:37 -0500 |
---|---|---|
committer | David Thompson <dthompson2@worcester.edu> | 2015-02-09 08:34:37 -0500 |
commit | 293294f2401f3dac6d07e9af65b5582ba893a777 (patch) | |
tree | 3f2b64f314d692e2359a613e3f0e2c5dd99e7f71 /js/view/generations.js | |
parent | 6546b8cae1aead78da45dd269d13219257af04ab (diff) |
js: Overhaul UI with FRP!
* css/guix.css: New loading spinner.
* js/lib/kefir.js: New file.
* js/model/packages.js (guix.packages.Packages): Cache result.
(guix.packages.Sorter, guix.packages.Pager): Delete.
(guix.packages.installPackage): New function.
* js/utils.js (K): New variable.
(guix.withEmit, guix.withEmitAttr, guix.makeModule): New functions.
* js/view/ui.js (guix.ui.paginate, guix.ui.spinUntil): New functions.
(guix.ui.spinner): New variable.
* js/controller/generations.js: Rewrite.
* js/controller/packageInfo.js: Rewrite
* js/controller/packages.js: Rewrite.
* js/view/packages.js: Rewrite.
* js/view/generations.js: Delete.
* js/view/packageInfo.js: Delete.
* js/routes.js: Use new modules.
* guix/web/view/html.scm (javascripts): Update list.
Diffstat (limited to 'js/view/generations.js')
-rw-r--r-- | js/view/generations.js | 55 |
1 files changed, 0 insertions, 55 deletions
diff --git a/js/view/generations.js b/js/view/generations.js deleted file mode 100644 index 73fbce7..0000000 --- a/js/view/generations.js +++ /dev/null @@ -1,55 +0,0 @@ -// guix-web - Web interface for GNU Guix -// Copyright © 2014 David Thompson <davet@gnu.org> -// -// This program is free software: you can redistribute it and/or -// modify it under the terms of the GNU Affero General Public License -// as published by the Free Software Foundation, either version 3 of -// the License, or (at your option) any later version. -// -// This program is distributed in the hope that it will be useful, but -// WITHOUT ANY WARRANTY; without even the implied warranty of -// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU -// Affero General Public License for more details. -// -// You should have received a copy of the GNU Affero General Public -// License along with this program. If not, see -// <http://www.gnu.org/licenses/>. - -(function(generations) { - generations.view = function(ctrl) { - return guix.withLayout([ - guix.ui.headerWithBadge("Generations", ctrl.generations().length), - m("table.table.table-bordered", [ - m("thead", m("tr", [ - m("th", "#"), - m("th", "Name"), - m("th", "Version"), - m("th", "Output"), - m("th", "Location") - ])), - m("tbody", [ - ctrl.generations().map(function(generation) { - var entries = generation.manifestEntries; - - function renderRow(entry, isFirst) { - return m("tr", [ - isFirst ? m("td", { - rowspan: entries.length - }, m("strong", generation.number)) : null, - m("td", entry.name), - m("td", entry.version), - m("td", entry.output), - m("td", entry.location) - ]); - } - - return [renderRow(entries[0], true)] - .concat(entries.slice(1).map(function (entry) { - return renderRow(entry, false); - })); - }) - ]) - ]) - ]); - }; -})(guix.generations); |