Skip to content

Commit 10fa9b7

Browse files
committed
use jsx spread
1 parent a06418e commit 10fa9b7

File tree

7 files changed

+59
-41
lines changed

7 files changed

+59
-41
lines changed

lib/components/app.js

+11-4
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@ var __extends = (this && this.__extends) || function (d, b) {
44
function __() { this.constructor = d; }
55
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
66
};
7+
var __assign = (this && this.__assign) || Object.assign || function(t) {
8+
for (var s, i = 1, n = arguments.length; i < n; i++) {
9+
s = arguments[i];
10+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11+
t[p] = s[p];
12+
}
13+
return t;
14+
};
715
var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
816
var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
917
if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
@@ -28,12 +36,11 @@ var App = (function (_super) {
2836
_super.apply(this, arguments);
2937
}
3038
App.prototype.render = function () {
31-
var state = this.props.state;
32-
return (React.createElement(MuiThemeProvider_1.default, {muiTheme: theme_1.muiTheme}, React.createElement("section", {className: 'cr', key: 'main', style: { height: height }}, React.createElement(_components_1.AppMenu, {route: state.route, position: state.position}), React.createElement(_components_1.Routes, {state: state, ref: 'route'}), React.createElement(_components_1.Alert, {alert: state.alert}))));
39+
return (React.createElement(MuiThemeProvider_1.default, {muiTheme: theme_1.muiTheme}, React.createElement("section", {className: 'cr', key: 'main', style: { height: height }}, React.createElement(_components_1.AppMenu, __assign({}, this.props.store)), React.createElement(_components_1.Routes, __assign({}, this.props.store, {ref: 'route'})), React.createElement(_components_1.Alert, __assign({}, this.props.store)))));
3340
};
3441
App = __decorate([
35-
react_redux_1.connect(function (state) {
36-
return { state: state };
42+
react_redux_1.connect(function (store) {
43+
return { store: store };
3744
}),
3845
__metadata('design:paramtypes', [])
3946
], App);

lib/components/page/page.js

+10-2
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@ var __extends = (this && this.__extends) || function (d, b) {
44
function __() { this.constructor = d; }
55
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
66
};
7+
var __assign = (this && this.__assign) || Object.assign || function(t) {
8+
for (var s, i = 1, n = arguments.length; i < n; i++) {
9+
s = arguments[i];
10+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11+
t[p] = s[p];
12+
}
13+
return t;
14+
};
715
var React = require('react');
816
var ReactDOM = require('react-dom');
917
var Paper_1 = require('material-ui/Paper');
@@ -28,9 +36,9 @@ var Page = (function (_super) {
2836
};
2937
Page.prototype.render = function () {
3038
var _a = this.props, page = _a.page, taskPosition = _a.taskPosition, hintPosition = _a.hintPosition, tasks = _a.tasks, testRun = _a.testRun;
31-
var currentTask = taskPosition <= tasks.length ? tasks[taskPosition] : null;
39+
var task = taskPosition <= tasks.length ? tasks[taskPosition] : null;
3240
var allComplete = taskPosition >= tasks.length;
33-
return (React.createElement(Paper_1.default, {style: pageStyle, zDepth: 1, className: 'cr-page', ref: 'page'}, React.createElement(content_1.PageContent, {page: page}), React.createElement(Divider_1.default, null), React.createElement(tasks_1.Tasks, {tasks: tasks, taskPosition: taskPosition, testRun: testRun}), React.createElement("div", {className: 'listEnd', ref: 'listEnd'}), React.createElement(page_complete_1.PageCompleteMessage, {page: page}), React.createElement(hints_1.Hints, {task: currentTask, hintPosition: hintPosition}), React.createElement(toolbar_1.PageToolbar, {tasks: tasks, taskPosition: taskPosition}, React.createElement(progress_bar_1.ProgressBar, {taskPosition: taskPosition, taskCount: tasks.length}))));
41+
return (React.createElement(Paper_1.default, {style: pageStyle, zDepth: 1, className: 'cr-page', ref: 'page'}, React.createElement(content_1.PageContent, __assign({}, this.props)), React.createElement(Divider_1.default, null), React.createElement(tasks_1.Tasks, __assign({}, this.props)), React.createElement("div", {className: 'listEnd', ref: 'listEnd'}), React.createElement(page_complete_1.PageCompleteMessage, {page: page}), React.createElement(hints_1.Hints, {task: task, hintPosition: hintPosition}), React.createElement(toolbar_1.PageToolbar, __assign({}, this.props), React.createElement(progress_bar_1.ProgressBar, {taskPosition: taskPosition, taskCount: tasks.length}))));
3442
};
3543
return Page;
3644
}(React.Component));

lib/components/routes/routes.js

+13-6
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,14 @@ var __extends = (this && this.__extends) || function (d, b) {
44
function __() { this.constructor = d; }
55
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
66
};
7+
var __assign = (this && this.__assign) || Object.assign || function(t) {
8+
for (var s, i = 1, n = arguments.length; i < n; i++) {
9+
s = arguments[i];
10+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p))
11+
t[p] = s[p];
12+
}
13+
return t;
14+
};
715
var React = require('react');
816
var _components_1 = require('../_components');
917
var Routes = (function (_super) {
@@ -12,16 +20,15 @@ var Routes = (function (_super) {
1220
_super.apply(this, arguments);
1321
}
1422
Routes.prototype.render = function () {
15-
var _a = this.props.state, page = _a.page, tasks = _a.tasks, taskPosition = _a.taskPosition, hintPosition = _a.hintPosition, editorActions = _a.editorActions, testRun = _a.testRun, log = _a.log, progress = _a.progress, position = _a.position, checks = _a.checks, tutorials = _a.tutorials, route = _a.route;
16-
switch (route) {
23+
switch (this.props.route) {
1724
case 'page':
18-
return React.createElement(_components_1.Page, {page: page, tasks: tasks, taskPosition: taskPosition, hintPosition: hintPosition, editorActions: editorActions, testRun: testRun});
25+
return React.createElement(_components_1.Page, __assign({}, this.props));
1926
case 'progress':
20-
return React.createElement(_components_1.Progress, {progress: progress, position: position});
27+
return React.createElement(_components_1.Progress, __assign({}, this.props));
2128
case 'start':
22-
return React.createElement(_components_1.Start, {checks: checks});
29+
return React.createElement(_components_1.Start, __assign({}, this.props));
2330
case 'tutorials':
24-
return React.createElement(_components_1.Tutorials, {tutorials: tutorials});
31+
return React.createElement(_components_1.Tutorials, __assign({}, this.props));
2532
case 'final':
2633
return React.createElement(_components_1.FinalPage, null);
2734
default:

src/components/app.tsx

+6-7
Original file line numberDiff line numberDiff line change
@@ -9,18 +9,17 @@ window.onresize = function() {
99
height = atom.getSize().height;
1010
};
1111

12-
@connect((state: CR.State) => {
13-
return { state };
12+
@connect((store: CR.State) => {
13+
return { store };
1414
})
15-
export class App extends React.Component<{state?: CR.State}, {}> {
15+
export class App extends React.Component<{store?: CR.State}, {}> {
1616
render(): React.ReactElement<{}> {
17-
const state = this.props.state;
1817
return (
1918
<MuiThemeProvider muiTheme={muiTheme}>
2019
<section className='cr' key='main' style={{height}}>
21-
<AppMenu route={state.route} position={state.position} />
22-
<Routes state={state} ref='route' />
23-
<Alert alert={state.alert} />
20+
<AppMenu {...this.props.store} />
21+
<Routes {...this.props.store} ref='route' />
22+
<Alert {...this.props.store} />
2423
</section>
2524
</MuiThemeProvider>
2625

src/components/page/page.tsx

+6-7
Original file line numberDiff line numberDiff line change
@@ -15,8 +15,7 @@ const pageStyle = {
1515
};
1616

1717
export class Page extends React.Component<{
18-
page: CR.Page, tasks: CR.Task[], taskPosition: number,
19-
editorActions: string[], log: any, hintPosition: number,
18+
page: CR.Page, tasks: CR.Task[], taskPosition: number, hintPosition: number,
2019
testRun: boolean, callNextPage?: any, callRunTests?: any, callNextTask?: any, hintShow?: any
2120
}, {hintPos: number, taskPos: number}> {
2221

@@ -29,20 +28,20 @@ componentDidUpdate() {
2928
}
3029
render() {
3130
const {page, taskPosition, hintPosition, tasks, testRun} = this.props;
32-
const currentTask = taskPosition <= tasks.length ? tasks[taskPosition] : null;
31+
const task = taskPosition <= tasks.length ? tasks[taskPosition] : null;
3332
const allComplete = taskPosition >= tasks.length;
3433

3534
return (
3635
<Paper style={pageStyle} zDepth={1} className='cr-page' ref='page'>
37-
<PageContent page={page} />
36+
<PageContent {...this.props} />
3837
<Divider />
3938

40-
<Tasks tasks={tasks} taskPosition={taskPosition} testRun={testRun} />
39+
<Tasks {...this.props} />
4140
<div className='listEnd' ref='listEnd'></div>
4241

4342
<PageCompleteMessage page={page} />
44-
<Hints task={currentTask} hintPosition={hintPosition} />
45-
<PageToolbar tasks={tasks} taskPosition={taskPosition}>
43+
<Hints task={task} hintPosition={hintPosition} />
44+
<PageToolbar {...this.props}>
4645
<ProgressBar taskPosition={taskPosition} taskCount={tasks.length}/>
4746
</PageToolbar>
4847
</Paper>

src/components/routes/routes.tsx

+10-14
Original file line numberDiff line numberDiff line change
@@ -1,25 +1,21 @@
11
import * as React from 'react';
22
import {Page, Progress, Tutorials, Start, FinalPage} from '../_components';
33

4-
export class Routes extends React.Component<{state: CR.State}, {}> {
4+
export class Routes extends React.Component<{
5+
route: string, progress: CR.Progress, page: CR.Page, tutorials: CR.Tutorial[],
6+
testRun: boolean, checks: CR.Checks, position: CR.Position, tasks: CR.Task[],
7+
taskPosition: number, hintPosition: number
8+
}, {}> {
59
render() {
6-
const {page, tasks, taskPosition, hintPosition, editorActions, testRun,
7-
log, progress, position, checks, tutorials, route} = this.props.state;
8-
switch (route) {
10+
switch (this.props.route) {
911
case 'page':
10-
return <Page page={page}
11-
tasks={tasks}
12-
taskPosition={taskPosition}
13-
hintPosition={hintPosition}
14-
editorActions={editorActions}
15-
testRun={testRun} />;
12+
return <Page {...this.props} />;
1613
case 'progress':
17-
return <Progress progress={progress}
18-
position={position} />;
14+
return <Progress {...this.props} />;
1915
case 'start':
20-
return <Start checks={checks} />;
16+
return <Start {...this.props} />;
2117
case 'tutorials':
22-
return <Tutorials tutorials={tutorials} />;
18+
return <Tutorials {...this.props} />;
2319
case 'final':
2420
return <FinalPage />;
2521
default:

src/services/polyfills.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,6 @@
11
export default function loadPolyfills(): void {
22

3+
// Object.values (ES7)
34
if (typeof Object.values !== 'function') {
45
Object.values = function(obj) {
56
var vals = [];
@@ -10,7 +11,7 @@ export default function loadPolyfills(): void {
1011
};
1112
}
1213

13-
// Object.assign temporary polyfill
14+
// Object.assign (ES7)
1415
if (typeof Object.assign !== 'function') {
1516
(function() {
1617
Object.assign = function(target) {
@@ -34,4 +35,5 @@ export default function loadPolyfills(): void {
3435
};
3536
})();
3637
}
38+
3739
};

0 commit comments

Comments
 (0)