Skip to content

Commit 27ad6ee

Browse files
committed
fix editor action issues
1 parent 193bc7f commit 27ad6ee

File tree

22 files changed

+76
-81
lines changed

22 files changed

+76
-81
lines changed

lib/components/Page/ProgressBar/index.js

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,12 +7,11 @@ var style = {
77
margin: '0px',
88
};
99
var ProgressBar = function (_a) {
10-
var taskPosition = _a.taskPosition, taskLength = _a.taskLength, completed = _a.completed;
11-
var progress = (taskPosition / taskLength) * 100;
10+
var taskProgress = _a.taskProgress, completed = _a.completed;
1211
if (completed) {
1312
return null;
1413
}
15-
return (React.createElement(LinearProgress_1.default, {mode: 'determinate', value: progress, style: style}));
14+
return (React.createElement(LinearProgress_1.default, {mode: 'determinate', value: taskProgress, style: style}));
1615
};
1716
Object.defineProperty(exports, "__esModule", { value: true });
1817
exports.default = ProgressBar;

lib/components/Page/Tasks/index.js

Lines changed: 1 addition & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,14 +21,10 @@ var Tasks = (function (_super) {
2121
Tasks.prototype.componentDidUpdate = function () {
2222
ReactDOM.findDOMNode(this.refs.listEnd).scrollIntoView();
2323
};
24-
Tasks.prototype.visibleTasks = function (tasks, taskPosition) {
25-
return tasks.slice(0, taskPosition + 1);
26-
};
2724
Tasks.prototype.render = function () {
2825
var _a = this.props, tasks = _a.tasks, taskPosition = _a.taskPosition, testRun = _a.testRun, completed = _a.completed, page = _a.page;
29-
var visTasks = this.visibleTasks(tasks, taskPosition);
3026
var backgroundColor = completed ? colors_1.lightGreen200 : 'white';
31-
return (React.createElement("div", null, React.createElement(Card_1.Card, {style: { backgroundColor: backgroundColor, margin: margin }}, React.createElement(List_1.List, null, React.createElement(Subheader_1.default, null, "Tasks"), visTasks.map(function (task, index) { return (React.createElement(Task_1.default, {key: index, index: index, task: task, taskPosition: taskPosition, testRun: testRun})); }))), React.createElement(TasksComplete_1.default, {page: page, completed: completed}), React.createElement("div", {ref: 'listEnd'})));
27+
return (React.createElement("div", null, React.createElement(Card_1.Card, {style: { backgroundColor: backgroundColor, margin: margin }}, React.createElement(List_1.List, null, React.createElement(Subheader_1.default, null, "Tasks"), tasks.map(function (task, index) { return (React.createElement(Task_1.default, {key: index, index: index, task: task, taskPosition: taskPosition, testRun: testRun})); }))), React.createElement(TasksComplete_1.default, {page: page, completed: completed}), React.createElement("div", {ref: 'listEnd'})));
3228
};
3329
return Tasks;
3430
}(React.Component));

lib/components/Page/index.js

Lines changed: 5 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -31,10 +31,8 @@ var Page = (function (_super) {
3131
_super.apply(this, arguments);
3232
}
3333
Page.prototype.render = function () {
34-
var _a = this.props, page = _a.page, tasks = _a.tasks, taskPosition = _a.taskPosition, hintPosition = _a.hintPosition, testRun = _a.testRun, progress = _a.progress, pagePosition = _a.pagePosition;
35-
var task = taskPosition <= tasks.length ? tasks[taskPosition] : null;
36-
var completed = progress.pages[pagePosition];
37-
return (React.createElement("section", {style: styles, className: 'cr-page'}, React.createElement(index_1.ContentCard, {title: page.title, content: page.description}), React.createElement(Tasks_1.default, {tasks: tasks, taskPosition: taskPosition, testRun: testRun, completed: completed, page: page}), React.createElement(PageToolbar_1.default, {tasks: tasks, taskPosition: taskPosition}, React.createElement(Hints_1.default, {task: task, hintPosition: hintPosition}), React.createElement(ProgressBar_1.default, {taskLength: tasks.length, taskPosition: taskPosition, completed: completed}))));
34+
var _a = this.props, page = _a.page, tasks = _a.tasks, taskPosition = _a.taskPosition, hintPosition = _a.hintPosition, testRun = _a.testRun, progress = _a.progress, pagePosition = _a.pagePosition, completed = _a.completed, task = _a.task, visibleTasks = _a.visibleTasks, taskProgress = _a.taskProgress;
35+
return (React.createElement("section", {style: styles, className: 'cr-page'}, React.createElement(index_1.ContentCard, {title: page.title, content: page.description}), React.createElement(Tasks_1.default, {tasks: tasks.slice(0, taskPosition + 1), taskPosition: taskPosition, testRun: testRun, completed: completed, page: page}), React.createElement(PageToolbar_1.default, {tasks: tasks, taskPosition: taskPosition}, React.createElement(Hints_1.default, {task: task, hintPosition: hintPosition}), React.createElement(ProgressBar_1.default, {taskProgress: taskProgress, completed: completed}))));
3836
};
3937
Page = __decorate([
4038
react_redux_1.connect(function (state) { return ({
@@ -45,6 +43,9 @@ var Page = (function (_super) {
4543
taskPosition: state.taskPosition,
4644
hintPosition: state.hintPosition,
4745
pagePosition: state.pagePosition,
46+
completed: selectors_1.pageCompletedSelector(state),
47+
task: selectors_1.taskSelector(state),
48+
taskProgress: selectors_1.taskProgressSelector(state),
4849
}); }),
4950
__metadata('design:paramtypes', [])
5051
], Page);

lib/modules/page/task-actions/index.js

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -21,16 +21,16 @@ function taskActionsReducer(t, action) {
2121
handle_actions_1.default(actions);
2222
return actions;
2323
case 'TEST_RESULT':
24-
var _b = action.payload, taskActions = _b.taskActions, result = _b.result;
25-
var nextTaskPosition = result.taskPosition;
24+
actions = action.payload.taskActions || [];
25+
var nextTaskPosition = action.payload.result.taskPosition;
2626
var times = nextTaskPosition - taskPositionTracker;
2727
if (times > 0) {
2828
for (var i = 0; i < times; i++) {
2929
handle_actions_1.default(actions);
3030
}
3131
taskPositionTracker = nextTaskPosition;
3232
}
33-
return taskActions;
33+
return actions;
3434
default:
3535
return t;
3636
}

lib/modules/tests/test-run/parse-loaders.js

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,8 +28,7 @@ function parseLoaders(data, fileType, tutorial, dir) {
2828
}
2929
var pathToFile = null;
3030
if (loader[2]) {
31-
var tutorialDir = tutorial.packageJson.config.dir || 'tutorial';
32-
pathToFile = path_1.normalize(path_1.join(tutorialDir, fileToLoad));
31+
pathToFile = path_1.normalize(path_1.join(tutorial.config.dir, fileToLoad));
3332
}
3433
else {
3534
pathToFile = path_1.normalize(path_1.join(dir, fileToLoad));

lib/modules/tutorial/reducer.js

Lines changed: 2 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,14 @@
11
"use strict";
22
var path_1 = require('path');
3-
var config_1 = require('./utils/config');
43
var types_1 = require('./types');
4+
var config_1 = require('./utils/config');
55
var config_paths_1 = require('./utils/config-paths');
66
var _tutorial = {
77
name: null,
88
info: null,
99
pages: [],
1010
packageJson: null,
11+
config: null,
1112
};
1213
function tutorialReducer(t, action) {
1314
if (t === void 0) { t = _tutorial; }

lib/selectors.js

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,4 +2,14 @@
22
var reselect_1 = require('reselect');
33
exports.pageSelector = function (state) { return state.tutorial.pages[state.pagePosition]; };
44
exports.tasksSelector = reselect_1.createSelector(exports.pageSelector, function (page) { return page.tasks; });
5+
exports.taskPositionSelector = function (state) { return state.taskPosition; };
6+
exports.pageCompletedSelector = function (state) { return state.progress.pages[state.pagePosition]; };
7+
exports.taskSelector = function (state) { return reselect_1.createSelector(exports.tasksSelector, function (tasks) {
8+
return (tasks.length <= tasks.length ? exports.tasksSelector(state)[state.taskPosition] : null);
9+
}); };
10+
exports.visibleTasksSelector = function (state) { return reselect_1.createSelector(exports.tasksSelector, function (tasks) {
11+
console.log(tasks);
12+
return tasks.slice(0, state.taskPosition + 1);
13+
}); };
14+
exports.taskProgressSelector = function (state) { return reselect_1.createSelector(exports.tasksSelector, function (tasks) { return (state.taskPosition / tasks.length) * 100; }); };
515
exports.configSelector = function (state) { return state.packageJson.config; };

lib/store.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -7,7 +7,7 @@ var redux_thunk_1 = require('redux-thunk');
77
var middlewares = [redux_thunk_1.default];
88
var throttleTestRun = redux_throttle_actions_1.default(['TEST_RUN'], 800);
99
middlewares.push(throttleTestRun);
10-
var devMode = true;
10+
var devMode = false;
1111
if (devMode) {
1212
var logger = createLogger();
1313
middlewares.push(logger);

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -41,7 +41,7 @@
4141
"react-tap-event-plugin": "1.0.0",
4242
"redux": "3.5.2",
4343
"redux-logger": "2.6.1",
44-
"redux-throttle-actions": "1.0.1",
44+
"redux-throttle-actions": "1.1.0",
4545
"redux-thunk": "2.1.0",
4646
"reselect": "^2.5.1"
4747
},

src/components/Page/ProgressBar/index.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -8,16 +8,15 @@ const style = {
88
};
99

1010
const ProgressBar: React.StatelessComponent<{
11-
taskPosition: number, taskLength: number, completed: boolean
12-
}> = ({taskPosition, taskLength, completed}) => {
13-
const progress: number = (taskPosition / taskLength) * 100;
11+
taskProgress: number, completed: boolean
12+
}> = ({taskProgress, completed}) => {
1413
if (completed) {
1514
return null;
1615
}
1716
return (
1817
<LinearProgress
1918
mode='determinate'
20-
value={progress}
19+
value={taskProgress}
2120
style={style}
2221
/>
2322
);

0 commit comments

Comments
 (0)