Gitter migration: Point people to app.gitter.im (rollout pt. 1)
[gitter.git] / public / js / utils / menu-builder.js
blobf4f6a6921de829a99ec0677ebff383b367f10607
1 'use strict';
3 function MenuBuilder() {
4   /* Treat the top of the menu like a divider */
5   this.lastItemDivider = true;
6   this.items = [];
9 MenuBuilder.prototype = {
10   addConditional: function(conditional, item) {
11     if (conditional) {
12       this.add(item);
13     }
14   },
16   add: function(item) {
17     this.lastItemDivider = false;
18     this.items.push(item);
19   },
21   addDivider: function() {
22     /* Add a divider if theres not already one at the bottom */
23     if (this.lastItemDivider) return;
24     this.lastItemDivider = true;
25     this.items.push({ divider: true });
26   },
28   getItems: function() {
29     /* Don't leave a hanging divider at the bottom */
30     if (this.lastItemDivider) {
31       this.items.pop();
32     }
34     return this.items;
35   }
38 module.exports = MenuBuilder;