|
| 1 | +"use strict"; |
| 2 | +var__extends=(this&&this.__extends)||function(d,b){ |
| 3 | +for(varpinb)if(b.hasOwnProperty(p))d[p]=b[p]; |
| 4 | +function__(){this.constructor=d;} |
| 5 | +d.prototype=b===null ?Object.create(b) :(__.prototype=b.prototype,new__()); |
| 6 | +}; |
| 7 | +var__decorate=(this&&this.__decorate)||function(decorators,target,key,desc){ |
| 8 | +varc=arguments.length,r=c<3 ?target :desc===null ?desc=Object.getOwnPropertyDescriptor(target,key) :desc,d; |
| 9 | +if(typeofReflect==="object"&&typeofReflect.decorate==="function")r=Reflect.decorate(decorators,target,key,desc); |
| 10 | +elsefor(vari=decorators.length-1;i>=0;i--)if(d=decorators[i])r=(c<3 ?d(r) :c>3 ?d(target,key,r) :d(target,key))||r; |
| 11 | +returnc>3&&r&&Object.defineProperty(target,key,r),r; |
| 12 | +}; |
| 13 | +var__metadata=(this&&this.__metadata)||function(k,v){ |
| 14 | +if(typeofReflect==="object"&&typeofReflect.metadata==="function")returnReflect.metadata(k,v); |
| 15 | +}; |
| 16 | +var_this=this; |
| 17 | +varReact=require('react'); |
| 18 | +varreact_redux_1=require('react-redux'); |
| 19 | +varactions_1=require('../../actions'); |
| 20 | +varmount_1=require('../mount'); |
| 21 | +varsubscriptions_1=require('../../atom/subscriptions'); |
| 22 | +varAppBar_1=require('material-ui/AppBar'); |
| 23 | +varIconButton_1=require('material-ui/IconButton'); |
| 24 | +varIconMenu_1=require('material-ui/IconMenu'); |
| 25 | +varMenuItem_1=require('material-ui/MenuItem'); |
| 26 | +varDivider_1=require('material-ui/Divider'); |
| 27 | +varmore_vert_1=require('material-ui/svg-icons/navigation/more-vert'); |
| 28 | +varclose_1=require('material-ui/svg-icons/navigation/close'); |
| 29 | +varorigin={horizontal:'right',vertical:'top'}; |
| 30 | +varMenuLink=(function(_super){ |
| 31 | +__extends(MenuLink,_super); |
| 32 | +functionMenuLink(){ |
| 33 | +_super.apply(this,arguments); |
| 34 | +} |
| 35 | +MenuLink.prototype.render=function(){ |
| 36 | +var_a=this.props,route=_a.route,title=_a.title,routeTo=_a.routeTo; |
| 37 | +returnReact.createElement(MenuItem_1.default,{primaryText:title ?title :route,onTouchTap:routeTo.bind(this,route),key:route}); |
| 38 | +}; |
| 39 | +MenuLink=__decorate([ |
| 40 | +react_redux_1.connect(null,function(dispatch){ |
| 41 | +return{ |
| 42 | +routeTo:function(route){returndispatch(actions_1.setRoute(route));} |
| 43 | +}; |
| 44 | +}), |
| 45 | +__metadata('design:paramtypes',[]) |
| 46 | +],MenuLink); |
| 47 | +returnMenuLink; |
| 48 | +}(React.Component)); |
| 49 | +exports.MenuLink=MenuLink; |
| 50 | +varAppMenu=(function(_super){ |
| 51 | +__extends(AppMenu,_super); |
| 52 | +functionAppMenu(){ |
| 53 | +_super.apply(this,arguments); |
| 54 | +} |
| 55 | +AppMenu.prototype.navOptions=function(){ |
| 56 | +varrouteToPage=this.props.routeToPage; |
| 57 | +switch(this.props.route){ |
| 58 | +case'final': |
| 59 | +case'page': |
| 60 | +returnReact.createElement(MenuLink,{route:'progress'}); |
| 61 | +case'progress': |
| 62 | +returnReact.createElement(MenuItem_1.default,{onTouchTap:routeToPage,primaryText:'page',key:'page'}); |
| 63 | +default:returnnull; |
| 64 | +} |
| 65 | +}; |
| 66 | +AppMenu.prototype.menuOptions=function(){ |
| 67 | +switch(this.props.route){ |
| 68 | +case'final': |
| 69 | +case'page': |
| 70 | +return(React.createElement("div",null,React.createElement(MenuLink,{route:'progress'}),React.createElement(MenuLink,{route:'tutorials'}))); |
| 71 | +case'progress': |
| 72 | +returnReact.createElement(MenuLink,{route:'tutorials'}); |
| 73 | +default:returnnull; |
| 74 | +} |
| 75 | +}; |
| 76 | +AppMenu.prototype.closePanel=function(){ |
| 77 | +mount_1.togglePanel(); |
| 78 | +}; |
| 79 | +AppMenu.prototype.render=function(){ |
| 80 | +varquit=this.props.quit; |
| 81 | +returnReact.createElement(AppBar_1.default,{title:'CodeRoad',className:'cr-menu-bar',iconElementLeft:React.createElement(IconButton_1.default,{onClick:this.closePanel},React.createElement(close_1.default,null)),iconElementRight:React.createElement(IconMenu_1.default,{iconButtonElement:React.createElement(IconButton_1.default,null,React.createElement(more_vert_1.default,null)),targetOrigin:origin,anchorOrigin:origin},this.menuOptions(),window.coderoad.issuesPath |
| 82 | + ?React.createElement(MenuItem_1.default,{key:'issue',className:'link'},React.createElement("a",{href:window.coderoad.issuesPath},"post issue")) |
| 83 | + :null,React.createElement(Divider_1.default,null),React.createElement(MenuItem_1.default,{key:'quit',onClick:quit},"quit"))}); |
| 84 | +}; |
| 85 | +AppMenu=__decorate([ |
| 86 | +react_redux_1.connect(null,function(dispatch){ |
| 87 | +return{ |
| 88 | +routeToPage:function(){ |
| 89 | +varposition=_this.props.position; |
| 90 | +dispatch(actions_1.pageSet(position)); |
| 91 | +dispatch(actions_1.setRoute('page')); |
| 92 | +}, |
| 93 | +quit:function(){ |
| 94 | +mount_1.togglePanel(); |
| 95 | +subscriptions_1.onDeactivate(); |
| 96 | +} |
| 97 | +}; |
| 98 | +}), |
| 99 | +__metadata('design:paramtypes',[]) |
| 100 | +],AppMenu); |
| 101 | +returnAppMenu; |
| 102 | +}(React.Component)); |
| 103 | +exports.AppMenu=AppMenu; |