Movatterモバイル変換


[0]ホーム

URL:


Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

Commit275d8c8

Browse files
committed
Start Checks components now follow AirBnB style guide
1 parentd7115bf commit275d8c8

30 files changed

+391
-202
lines changed

‎CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@ All notable changes to this project will be documented in this file.
33
This project adheres to[Semantic Versioning](http://semver.org/).
44

55
##[0.7.0] - in progress
6+
- follow AirBnB React style guide
67
- update to 'react@15'
78
- move to 'material-ui@0.15'
89
- much improved setup ui & checks
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
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+
varReact=require('react');
8+
varStepper_1=require('material-ui/Stepper');
9+
varDynamicStepper=(function(_super){
10+
__extends(DynamicStepper,_super);
11+
functionDynamicStepper(props){
12+
_super.call(this,props);
13+
this.state={
14+
stepIndex:this.props.status.indexOf(false)||0
15+
};
16+
}
17+
DynamicStepper.prototype.render=function(){
18+
return(React.createElement(Stepper_1.Stepper,{activeStep:this.state.stepIndex,linear:false,orientation:'vertical'},this.props.children));
19+
};
20+
returnDynamicStepper;
21+
}(React.Component));
22+
exports.DynamicStepper=DynamicStepper;
Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
"use strict";
2+
varReact=require('react');
3+
exports.InstallGuide=function(_a){
4+
varshow=_a.show;
5+
if(!show){
6+
returnnull;
7+
}
8+
return(React.createElement("div",{className:'setup-guide'},"Check the",React.createElement("a",{href:'https://coderoad.github.io/docs#install'}," ",React.createElement("strong",null,"Install Guide"))));
9+
};
Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
"use strict";
2+
varReact=require('react');
3+
varCard_1=require('material-ui/Card');
4+
varFlatButton_1=require('material-ui/FlatButton');
5+
varsetup_checker_1=require('./setup-checker');
6+
varverify_1=require('./verify');
7+
varaction_setup_1=require('../../../reducers/checks/action-setup');
8+
varStepCheck_1=require('./StepCheck');
9+
exports.SetupChecks=function(_a){
10+
varchecks=_a.checks;
11+
varsetup=checks.setup;
12+
if(setup.passed){
13+
returnnull;
14+
}
15+
varstatus=[setup.dir,setup.packageJson,setup.tutorial];
16+
return(React.createElement(Card_1.Card,{className:'cr-check'},React.createElement(Card_1.CardHeader,{title:'Setup Checks',subtitle:'CodeRoad requires a brief setup'}),React.createElement(Card_1.CardText,null,React.createElement(setup_checker_1.default,{status:status},React.createElement(StepCheck_1.StepCheck,{label:'open a directory',completed:checks.setup.dir},React.createElement("p",null,"File -> Open (a new folder)"),React.createElement("br",null),React.createElement(FlatButton_1.default,{label:'Open Directory',secondary:true,onTouchTap:action_setup_1.openDirectory})),React.createElement(StepCheck_1.StepCheck,{label:'package.json',completed:checks.setup.packageJson},"Create a package.json by running",React.createElement("br",null),React.createElement("code",null,"> npm init -y`"),React.createElement("br",null),React.createElement(FlatButton_1.default,{label:'Create package.json',secondary:true,onTouchTap:action_setup_1.createPackageJson})),React.createElement(StepCheck_1.StepCheck,{label:'install a tutorial',completed:checks.setup.tutorial},"Install a tutorial using npm. For example:",React.createElement("br",null),React.createElement("code",null,"> npm install --save-dev coderoad-functional-school"),React.createElement("br",null)))),React.createElement(Card_1.CardActions,null,React.createElement(verify_1.VerifyButton,null))));
17+
};
Lines changed: 12 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,12 @@
1+
"use strict";
2+
varReact=require('react');
3+
varStepper_1=require('material-ui/Stepper');
4+
varFontIcon_1=require('material-ui/FontIcon');
5+
varwarning_1=require('material-ui/svg-icons/alert/warning');
6+
varcolors_1=require('material-ui/styles/colors');
7+
exports.StepCheck=function(_a){
8+
varcompleted=_a.completed,label=_a.label,children=_a.children;
9+
return(React.createElement(Stepper_1.Step,{completed:completed,active:!completed},React.createElement(Stepper_1.StepLabel,{icon:completed
10+
?React.createElement(FontIcon_1.default,null,"✓")
11+
:React.createElement(warning_1.default,{color:colors_1.red500})},label),React.createElement(Stepper_1.StepContent,null,children,React.createElement("br",null))));
12+
};
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
"use strict";
2+
varReact=require('react');
3+
varCard_1=require('material-ui/Card');
4+
varFlatButton_1=require('material-ui/FlatButton');
5+
varVerifyButton_1=require('./VerifyButton');
6+
varcolors_1=require('material-ui/styles/colors');
7+
varaction_system_1=require('../../../reducers/checks/action-system');
8+
varDynamicStepper_1=require('./DynamicStepper');
9+
varStepCheck_1=require('./StepCheck');
10+
exports.SystemChecks=function(_a){
11+
varchecks=_a.checks;
12+
varsystem=checks.system;
13+
if(system.passed){
14+
returnnull;
15+
}
16+
varstatus=[system.node,system.npm];
17+
return(React.createElement(Card_1.Card,{className:'cr-check'},React.createElement(Card_1.CardHeader,{title:'System Checks',subtitle:'CodeRoad requires several key dependencies'}),React.createElement(Card_1.CardText,null,React.createElement(DynamicStepper_1.DynamicStepper,{status:status},React.createElement(StepCheck_1.StepCheck,{label:'Node >= 0.10',completed:checks.system.node},React.createElement("p",null,"Install a newer version of ",React.createElement("a",{style:{color:colors_1.pink500},href:'https://nodejs.org'},"NodeJS"))),React.createElement(StepCheck_1.StepCheck,{label:'NPM >= 3',completed:checks.system.npm},"Update your version of NPM.",React.createElement("br",null),React.createElement("code",null,"> npm update -g npm"),React.createElement("br",null),React.createElement(FlatButton_1.default,{label:'Update NPM',secondary:true,onTouchTap:action_system_1.updateNpm})))),React.createElement(Card_1.CardActions,null,React.createElement(VerifyButton_1.VerifyButton,null))));
18+
};
Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
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+
varReact=require('react');
17+
varFlatButton_1=require('material-ui/FlatButton');
18+
varstore_1=require('../../../store/store');
19+
varactions_1=require('../../../actions');
20+
varreact_redux_1=require('react-redux');
21+
varVerifyButton=(function(_super){
22+
__extends(VerifyButton,_super);
23+
functionVerifyButton(){
24+
_super.apply(this,arguments);
25+
}
26+
VerifyButton.prototype.render=function(){
27+
return(React.createElement(FlatButton_1.default,{label:'Verify Setup Complete',primtary:true,onTouchTap:this.props.verify}));
28+
};
29+
VerifyButton=__decorate([
30+
react_redux_1.connect(null,function(dispatch){
31+
return{
32+
verify:function(){returnstore_1.store.dispatch(actions_1.setupVerify());}
33+
};
34+
}),
35+
__metadata('design:paramtypes',[])
36+
],VerifyButton);
37+
returnVerifyButton;
38+
}(React.Component));
39+
exports.VerifyButton=VerifyButton;

‎lib/components/Start/Welcome/index.js

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -18,8 +18,9 @@ var react_redux_1 = require('react-redux');
1818
varactions_1=require('../../../actions');
1919
varpath_1=require('path');
2020
varFlatButton_1=require('material-ui/FlatButton');
21+
varimagePath=path_1.resolve(__dirname,'../../../../','styles','coderoad.jpg');
2122
varwelcomeStyle={
22-
backgroundImage:"url(\""+path_1.resolve(__dirname,'../../../../','styles','coderoad.jpg')+"\")",
23+
backgroundImage:"url(\""+imagePath+"\")",
2324
backgroundRepeat:'no-repeat',
2425
height:'350px',
2526
};
@@ -33,7 +34,7 @@ var Welcome = (function (_super) {
3334
_super.apply(this,arguments);
3435
}
3536
Welcome.prototype.render=function(){
36-
returnReact.createElement("div",{style:welcomeStyle},React.createElement("div",{className:'cr-welcome'},React.createElement("div",{className:'title'},"CodeRoad"),React.createElement("div",{className:'tagline'},"Tutorials in your Editor"),React.createElement("br",null),React.createElement("br",null),React.createElement(FlatButton_1.default,{label:'Start',onTouchTap:this.props.routeToTutorials,secondary:true,style:welcomeButtonStyle})));
37+
return(React.createElement("div",{style:welcomeStyle},React.createElement("div",{className:'cr-welcome'},React.createElement("div",{className:'title'},"CodeRoad"),React.createElement("div",{className:'tagline'},"Tutorials in your Editor"),React.createElement("br",null),React.createElement("br",null),React.createElement(FlatButton_1.default,{style:welcomeButtonStyle,label:'Start',onTouchTap:this.props.routeToTutorials,secondary:true}))));
3738
};
3839
Welcome=__decorate([
3940
react_redux_1.connect(null,function(dispatch){

‎lib/components/Tutorials/LoadTutorials.js

Lines changed: 3 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -15,22 +15,20 @@ var __metadata = (this && this.__metadata) || function (k, v) {
1515
};
1616
varReact=require('react');
1717
varreact_redux_1=require('react-redux');
18-
varFlatButton_1=require('material-ui/FlatButton');
1918
varactions_1=require('../../actions');
19+
varFlatButton_1=require('material-ui/FlatButton');
2020
varLoadTutorials=(function(_super){
2121
__extends(LoadTutorials,_super);
2222
functionLoadTutorials(){
2323
_super.apply(this,arguments);
2424
}
2525
LoadTutorials.prototype.render=function(){
26-
returnReact.createElement(FlatButton_1.default,{style:{margin:'0 90px'},label:'Check for Tutorials',secondary:true,onTouchTap:this.props.tutorialsFind});
26+
return(React.createElement(FlatButton_1.default,{style:{margin:'0 90px'},label:'Check for Tutorials',secondary:true,onTouchTap:this.props.tutorialsFind}));
2727
};
2828
LoadTutorials=__decorate([
2929
react_redux_1.connect(null,function(dispatch){
3030
return{
31-
tutorialsFind:function(){
32-
dispatch(actions_1.tutorialsFind());
33-
}
31+
tutorialsFind:function(){returndispatch(actions_1.tutorialsFind());}
3432
};
3533
}),
3634
__metadata('design:paramtypes',[])

‎lib/components/Tutorials/SelectTutorial.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,10 +29,10 @@ var SelectTutorial = (function (_super) {
2929
if(name.match(/^coderoad-tutorial-/)){
3030
name=name.slice(18);
3131
}
32-
if(name.match(/^coderoad-/)){
32+
elseif(name.match(/^coderoad-/)){
3333
name=name.slice(9);
3434
}
35-
returnReact.createElement(FlatButton_1.default,{label:name,primary:true,onTouchTap:selectTutorial.bind(this,tutorial)});
35+
return(React.createElement(FlatButton_1.default,{label:name,primary:true,onTouchTap:selectTutorial.bind(this,tutorial)}));
3636
};
3737
SelectTutorial=__decorate([
3838
react_redux_1.connect(null,function(dispatch){

‎lib/components/Tutorials/UpdateTutorial.js

Lines changed: 1 addition & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,7 @@ var UpdateTutorial = (function (_super) {
2929
UpdateTutorial=__decorate([
3030
react_redux_1.connect(null,function(dispatch){
3131
return{
32-
tutorialUpdate:function(name){
33-
dispatch(actions_1.tutorialUpdate(name));
34-
}
32+
tutorialUpdate:function(name){returndispatch(actions_1.tutorialUpdate(name));}
3533
};
3634
}),
3735
__metadata('design:paramtypes',[])

‎lib/components/markdown/index.js

Lines changed: 11 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -3,28 +3,27 @@ var React = require('react');
33
varmarked=require('marked');
44
varHighlights=require('highlights');
55
varhighlighter=newHighlights({registry:atom.grammars});
6+
functionhighlight(code,lang){
7+
returnhighlighter.highlightSync({
8+
fileContents:code,
9+
scopeName:'source.'+(lang||'js')
10+
});
11+
}
612
varoptions={
7-
highlight:function(code,lang){
8-
returnhighlighter.highlightSync({
9-
fileContents:code,
10-
scopeName:'source.'+(lang||'js')
11-
});
12-
},
13+
highlight:highlight,
1314
sanitize:true,
1415
gfm:true,
1516
breaks:true,
1617
tables:true,
1718
smartLists:true
1819
};
1920
functionformatText(text){
20-
if(typeoftext!=='string'){
21-
return'';
22-
}
23-
returnmarked(text.toString(),options);
21+
returntypeoftext!=='string'
22+
?''
23+
:marked(text.toString(),options);
2424
}
2525
;
2626
exports.Markdown=function(_a){
2727
varchildren=_a.children;
28-
vartext=formatText(children);
29-
returnReact.createElement("span",{className:'cr-markdown',dangerouslySetInnerHTML:{__html:text}});
28+
return(React.createElement("span",{className:'cr-markdown',dangerouslySetInnerHTML:{__html:formatText(children)}}));
3029
};

‎lib/components/start/checks/index.js

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
"use strict";
22
varReact=require('react');
3-
varsteps_1=require('./steps');
3+
varSystemChecks_1=require('./SystemChecks');
4+
varSetupChecks_1=require('./SetupChecks');
5+
varInstallGuide_1=require('./InstallGuide');
46
exports.Checks=function(_a){
57
varchecks=_a.checks;
6-
return(React.createElement("div",{className:'cr-checks'},React.createElement(steps_1.SystemChecks,{checks:checks}),React.createElement(steps_1.SetupChecks,{checks:checks}),React.createElement(steps_1.InstallGuide,{show:checks.passed})));
8+
return(React.createElement("div",{className:'cr-checks'},React.createElement(SystemChecks_1.SystemChecks,{checks:checks}),React.createElement(SetupChecks_1.SetupChecks,{checks:checks}),React.createElement(InstallGuide_1.InstallGuide,{show:checks.passed})));
79
};

‎lib/components/tutorials/index.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@ var UpdateTutorial_1 = require('./UpdateTutorial');
66
varSelectTutorial_1=require('./SelectTutorial');
77
exports.Tutorials=function(_a){
88
vartutorials=_a.tutorials;
9-
return(React.createElement("div",{className:'cr-tutorials'},React.createElement(Table_1.Table,null,React.createElement(Table_1.TableHeader,{displaySelectAll:false,adjustForCheckbox:false},React.createElement(Table_1.TableRow,null,React.createElement(Table_1.TableHeaderColumn,null,"Tutorial"),React.createElement(Table_1.TableHeaderColumn,null,"Version"))),React.createElement(Table_1.TableBody,{displayRowCheckbox:false},tutorials.map(function(tutorial,index){
9+
return(React.createElement("div",{className:'cr-tutorials'},React.createElement(Table_1.Table,null,React.createElement(Table_1.TableHeader,{displaySelectAll:false,adjustForCheckbox:false},React.createElement(Table_1.TableRow,null,React.createElement(Table_1.TableHeaderColumn,null,"Tutorial"),React.createElement(Table_1.TableHeaderColumn,null,"Version"))),React.createElement(Table_1.TableBody,{displayRowCheckbox:false},tutorials.map(functionTutorialRow(tutorial,index){
1010
return(React.createElement(Table_1.TableRow,{key:index},React.createElement(Table_1.TableRowColumn,null,React.createElement(SelectTutorial_1.SelectTutorial,{tutorial:tutorial})),tutorial.latest
1111
?React.createElement(Table_1.TableRowColumn,null,tutorial.version," ",React.createElement(UpdateTutorial_1.UpdateTutorial,{name:tutorial.name}))
1212
:React.createElement(Table_1.TableRowColumn,null,tutorial.version)));

‎src/components/Markdown/index.tsx

Lines changed: 18 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -3,39 +3,32 @@ import * as marked from 'marked';
33
constHighlights=require('highlights');
44
consthighlighter=newHighlights({registry:atom.grammars});
55

6+
functionhighlight(code:string,lang:string){
7+
returnhighlighter.highlightSync({
8+
fileContents:code,
9+
scopeName:'source.'+(lang||'js')
10+
});
11+
}
12+
613
constoptions={
7-
highlight:(code:string,lang:string)=>{
8-
returnhighlighter.highlightSync({
9-
fileContents:code,
10-
scopeName:'source.'+(lang||'js')
11-
});
12-
},
14+
highlight,
1315
sanitize:true,
1416
gfm:true,
1517
breaks:true,
1618
tables:true,
1719
smartLists:true
1820
};
1921

20-
/**
21-
* Markdown -> HTML
22-
*@param {string} text [Markdown string]
23-
*@return {string} [HTML string]
24-
*/
2522
functionformatText(text:string):string{
26-
if(typeoftext!=='string'){
27-
return'';
28-
}
29-
returnmarked(text.toString(),options);
23+
returntypeoftext!=='string'
24+
?''
25+
:marked(text.toString(),options);
3026
};
3127

32-
/**
33-
* Markdown Text
34-
* MD -> HTML
35-
*/
36-
exportconstMarkdown:React.StatelessComponent<{children?:string}>=({children})=>{
37-
lettext=formatText(children);
38-
return<spanclassName='cr-markdown'dangerouslySetInnerHTML={
39-
{__html:text}
40-
}></span>;
41-
};
28+
exportconstMarkdown:React.StatelessComponent<{
29+
children?:string
30+
}>=({children})=>(
31+
<spanclassName='cr-markdown'dangerouslySetInnerHTML={
32+
{__html:formatText(children)}
33+
}></span>
34+
);

‎src/components/start/checks/setup-checker.tsxrenamed to‎src/components/Start/Checks/DynamicStepper.tsx

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ import RaisedButton from 'material-ui/RaisedButton';
44
importFlatButtonfrom'material-ui/FlatButton';
55
importFontIconfrom'material-ui/FontIcon';
66

7-
exportdefaultclassDynamicStepperextendsReact.Component<{
7+
exportclassDynamicStepperextendsReact.Component<{
88
status:boolean[],children?:any
99
},{
1010
stepIndex:number
@@ -16,13 +16,14 @@ export default class DynamicStepper extends React.Component<{
1616
};
1717
}
1818
render(){
19-
return<div>
19+
return(
2020
<Stepper
2121
activeStep={this.state.stepIndex}
2222
linear={false}
23-
orientation='vertical'>
23+
orientation='vertical'
24+
>
2425
{this.props.children}
2526
</Stepper>
26-
</div>;
27+
);
2728
}
2829
}
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
import*asReactfrom'react';
2+
3+
exportconstInstallGuide:React.StatelessComponent<{
4+
show:boolean
5+
}>=({show})=>{
6+
if(!show){
7+
returnnull;
8+
}
9+
return(
10+
<divclassName='setup-guide'>Check the
11+
<ahref='https://coderoad.github.io/docs#install'><strong>Install Guide</strong></a>
12+
</div>
13+
);
14+
};

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp