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

Commitc91a79f

Browse files
committed
change tutorialPackage service to redux reducer - in progress
1 parent1432a44 commitc91a79f

File tree

26 files changed

+479
-341
lines changed

26 files changed

+479
-341
lines changed

‎lib/actions/_types.js‎

Lines changed: 0 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,6 @@ exports.ALERT_TOGGLE = 'ALERT_TOGGLE';
44
exports.COMPLETE_CHAPTER='COMPLETE_CHAPTER';
55
exports.COMPLETE_PAGE='COMPLETE_PAGE';
66
exports.COMPLETE_TUTORIAL='COMPLETE_TUTORIAL';
7-
exports.GLOBALS_SET='GLOBALS_SET';
87
exports.HINT_POSITION_SET='HINT_POSITION_SET';
98
exports.HINT_SHOW='HINT_SHOW';
109
exports.PACKAGE_SET='PACKAGE_SET';

‎lib/actions/index.js‎

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,6 @@ var complete_1 = require('./complete');
66
exports.completePage=complete_1.completePage;
77
exports.completeChapter=complete_1.completeChapter;
88
exports.completeTutorial=complete_1.completeTutorial;
9-
varglobals_1=require('./globals');
10-
exports.globalsSet=globals_1.globalsSet;
119
varhint_1=require('./hint');
1210
exports.hintShow=hint_1.hintShow;
1311
exports.hintPositionSet=hint_1.hintPositionSet;
@@ -26,5 +24,4 @@ exports.testComplete = test_1.testComplete;
2624
exports.testResult=test_1.testResult;
2725
vartutorial_1=require('./tutorial');
2826
exports.tutorialsFind=tutorial_1.tutorialsFind;
29-
exports.tutorialUpdate=tutorial_1.tutorialUpdate;
3027
exports.tutorialSet=tutorial_1.tutorialSet;

‎lib/actions/tutorial.js‎

Lines changed: 2 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,9 @@
11
"use strict";
22
var_types_1=require('./_types');
3-
functiontutorialSet(){
4-
return{type:_types_1.TUTORIAL_SET};
3+
functiontutorialSet(name){
4+
return{type:_types_1.TUTORIAL_SET,payload:{name:name}};
55
}
66
exports.tutorialSet=tutorialSet;
7-
functiontutorialUpdate(name){
8-
return{type:_types_1.TUTORIAL_UPDATE,payload:{name:name}};
9-
}
10-
exports.tutorialUpdate=tutorialUpdate;
117
functiontutorialsFind(){
128
return{type:_types_1.TUTORIALS_FIND};
139
}

‎lib/components/Tutorials/SelectTutorial.js‎

Lines changed: 12 additions & 11 deletions
Original file line numberDiff line numberDiff line change
@@ -17,7 +17,15 @@ var React = require('react');
1717
varreact_redux_1=require('react-redux');
1818
varFlatButton_1=require('material-ui/FlatButton');
1919
varactions_1=require('../../actions');
20-
vartutorial_package_1=require('../../services/tutorial-package');
20+
functiondisplayName(name){
21+
if(name.match(/^coderoad-tutorial-/)){
22+
returnname.slice(18);
23+
}
24+
elseif(name.match(/^coderoad-/)){
25+
returnname.slice(9);
26+
}
27+
returnname;
28+
}
2129
varSelectTutorial=(function(_super){
2230
__extends(SelectTutorial,_super);
2331
functionSelectTutorial(){
@@ -26,20 +34,13 @@ var SelectTutorial = (function (_super) {
2634
SelectTutorial.prototype.render=function(){
2735
var_a=this.props,tutorial=_a.tutorial,selectTutorial=_a.selectTutorial;
2836
varname=tutorial.name;
29-
if(name.match(/^coderoad-tutorial-/)){
30-
name=name.slice(18);
31-
}
32-
elseif(name.match(/^coderoad-/)){
33-
name=name.slice(9);
34-
}
35-
return(React.createElement(FlatButton_1.default,{label:name,primary:true,onTouchTap:selectTutorial.bind(this,tutorial)}));
37+
return(React.createElement(FlatButton_1.default,{label:displayName(name),primary:true,onTouchTap:selectTutorial.bind(this,name)}));
3638
};
3739
SelectTutorial=__decorate([
3840
react_redux_1.connect(null,function(dispatch){
3941
return{
40-
selectTutorial:function(tutorial){
41-
tutorial_package_1.default.set(tutorial.name);
42-
dispatch(actions_1.tutorialSet());
42+
selectTutorial:function(name){
43+
dispatch(actions_1.tutorialSet(name));
4344
dispatch(actions_1.positionSet({chapter:0,page:0}));
4445
dispatch(actions_1.setRoute('progress'));
4546
},

‎lib/reducers/index.js‎

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,6 @@ var redux_1 = require('redux');
33
varalert_1=require('./alert');
44
varchecks_1=require('./checks');
55
vareditor_actions_1=require('./editor-actions');
6-
varglobals_1=require('./globals');
76
varhint_position_1=require('./hint-position');
87
varpackage_json_1=require('./package-json');
98
varpage_1=require('./page');
@@ -14,11 +13,11 @@ var task_position_1 = require('./task-position');
1413
vartask_tests_1=require('./task-tests');
1514
vartasks_1=require('./tasks');
1615
vartest_run_1=require('./test-run');
17-
vartutorial_info_1=require('./tutorial-info');
16+
vartutorial_1=require('./tutorial');
1817
vartutorials_1=require('./tutorials');
1918
Object.defineProperty(exports,"__esModule",{value:true});
2019
exports.default=redux_1.combineReducers({
21-
alert:alert_1.default,checks:checks_1.default,editorActions:editor_actions_1.default,globals:globals_1.default,hintPosition:hint_position_1.default,
22-
page:page_1.default,packageJson:package_json_1.default,position:position_1.default,progress:progress_1.default,route:route_1.default,taskPosition:task_position_1.default,
23-
taskTests:task_tests_1.default,tasks:tasks_1.default,testRun:test_run_1.default,tutorialInfo:tutorial_info_1.default,tutorials:tutorials_1.default
20+
alert:alert_1.default,checks:checks_1.default,editorActions:editor_actions_1.default,hintPosition:hint_position_1.default,page:page_1.default,
21+
packageJson:package_json_1.default,position:position_1.default,progress:progress_1.default,route:route_1.default,taskPosition:task_position_1.default,
22+
taskTests:task_tests_1.default,tasks:tasks_1.default,testRun:test_run_1.default,tutorial:tutorial_1.default,tutorials:tutorials_1.default
2423
});

‎lib/reducers/tutorial/index.js‎

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
"use strict";
2+
var_types_1=require('../../actions/_types');
3+
varpath_1=require('path');
4+
vartutorial_config_1=require('./tutorial-config');
5+
var_tutorial={
6+
info:null,
7+
chapters:[],
8+
packageJson:null,
9+
config:null
10+
};
11+
functiontutorialReducer(tutorial,action){
12+
if(tutorial===void0){tutorial=_tutorial;}
13+
switch(action.type){
14+
case_types_1.TUTORIAL_SET:
15+
varname_1=action.payload.name;
16+
varpackagePath=path_1.join(window.coderoad.dir,'node_modules',name_1);
17+
varpackageJson=require(path_1.join(packagePath,'package.json'));
18+
varconfig=tutorial_config_1.tutorialConfig(packageJson);
19+
var_a=require(path_1.join(packagePath,packageJson.main)),project=_a.project,chapters=_a.chapters;
20+
return{
21+
info:project,
22+
chapters:chapters,
23+
packageJson:packageJson,
24+
config:config
25+
};
26+
default:
27+
returntutorial;
28+
}
29+
}
30+
Object.defineProperty(exports,"__esModule",{value:true});
31+
exports.default=tutorialReducer;
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
"use strict";
2+
varpath_1=require('path');
3+
varexists_1=require('../../services/exists');
4+
functiontutorialConfig(tutorialPj){
5+
returnObject.assign({},{
6+
tutorial:tutorialPj.name,
7+
suffix:tutorialPj.config.testSuffix.substring(tutorialPj.config.testSuffix.lastIndexOf('.')+1,tutorialPj.config.testSuffix.length),
8+
tutorialDir:path_1.join(window.coderoad.dir,'node_modules',tutorialPj.name,tutorialPj.config.testDir),
9+
testRunner:tutorialPj.config.testRunner,
10+
testRunnerOptions:tutorialPj.config.testRunnerOptions||{},
11+
runner:loadRunnerDep(tutorialPj),
12+
repo:loadRepo(tutorialPj),
13+
edit:tutorialPj.config.edit&&!!window.coderoad.repo||false,
14+
issuesPath:tutorialPj.bugs&&tutorialPj.bugs.url ?tutorialPj.bugs.url :null
15+
},window.coderoad);
16+
}
17+
exports.tutorialConfig=tutorialConfig;
18+
functionloadRunnerDep(tutorialPj){
19+
varflatDep=path_1.join(window.coderoad.dir,'node_modules',tutorialPj.config.testRunner,'package.json');
20+
vartreeDep=path_1.join(window.coderoad.dir,'node_modules',tutorialPj.name,'node_modules',tutorialPj.config.testRunner,'package.json');
21+
varrunnerMain;
22+
varrunnerRoot;
23+
if(exists_1.fileExists(flatDep)){
24+
runnerMain=require(flatDep).main;
25+
runnerRoot=flatDep;
26+
}
27+
elseif(exists_1.fileExists(treeDep)){
28+
runnerMain=require(treeDep).main;
29+
runnerRoot=treeDep;
30+
}
31+
else{
32+
varmessage='Error loading test runner. Post an issue. https://github.com/coderoad/atom-coderoad/issues';
33+
console.log(message);
34+
throwmessage;
35+
}
36+
varslash=window.coderoad.win ?'\\' :'/';
37+
runnerMain=path_1.join.apply(null,runnerMain.split(slash));
38+
runnerRoot=runnerRoot.substring(0,runnerRoot.lastIndexOf(slash));
39+
varpathToMain=path_1.join(runnerRoot,runnerMain);
40+
if(!!require(pathToMain).default){
41+
returnrequire(pathToMain).default;
42+
}
43+
else{
44+
returnrequire(pathToMain);
45+
}
46+
}
47+
functionloadRepo(tutorialPj){
48+
if(tutorialPj.repo&&tutorialPj.repo.url){
49+
varrepo=tutorialPj.repo.url;
50+
if(!!repo.match(/\.git$/)){
51+
repo=repo.slice(0,repo.length-4);
52+
}
53+
returnrepo;
54+
}
55+
returnnull;
56+
}

‎src/actions/_types.ts‎

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -3,13 +3,13 @@ export const ALERT_TOGGLE = 'ALERT_TOGGLE';
33
exportconstCOMPLETE_CHAPTER='COMPLETE_CHAPTER';
44
exportconstCOMPLETE_PAGE='COMPLETE_PAGE';
55
exportconstCOMPLETE_TUTORIAL='COMPLETE_TUTORIAL';
6-
exportconstGLOBALS_SET='GLOBALS_SET';
76
exportconstHINT_POSITION_SET='HINT_POSITION_SET';
87
exportconstHINT_SHOW='HINT_SHOW';
98
exportconstPACKAGE_SET='PACKAGE_SET';
109
exportconstPAGE_NEXT='PAGE_NEXT';
1110
exportconstPAGE_SET='PAGE_SET';
1211
exportconstPOSITION_SET='POSITION_SET';
12+
exportconstPROGRESS_LOAD='PROGRESS_LOAD';
1313
exportconstROUTE_SET='ROUTE_SET';
1414
exportconstSETUP_VERIFY='SETUP_VERIFY';
1515
exportconstTEST_COMPLETE='TEST_COMPLETE';

‎src/actions/globals.ts‎

Lines changed: 0 additions & 5 deletions
This file was deleted.

‎src/actions/index.ts‎

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,7 @@
11
export{alertToggle,alertReplay}from'./alert';
22
export{
3-
completePage,completeChapter,completeTutorial
4-
}from'./complete';
5-
export{globalsSet}from'./globals';
3+
progressLoad,completePage,completeChapter,completeTutorial
4+
}from'./progress';
65
export{hintShow,hintPositionSet}from'./hint';
76
export{pageSet,pageNext}from'./page';
87
export{positionSet}from'./position';
@@ -12,5 +11,5 @@ export {
1211
testRun,testComplete,testResult
1312
}from'./test';
1413
export{
15-
tutorialsFind,tutorialUpdate,tutorialSet
14+
tutorialsFind,tutorialSet
1615
}from'./tutorial';

0 commit comments

Comments
 (0)

[8]ページ先頭

©2009-2025 Movatter.jp