Skip to content

Commit 63f7bce

Browse files
committed
update tutorial button with icon
1 parent e49261d commit 63f7bce

File tree

12 files changed

+53
-33
lines changed

12 files changed

+53
-33
lines changed

lib/actions/index.js

+1
Original file line numberDiff line numberDiff line change
@@ -28,3 +28,4 @@ exports.testsLoad = test_1.testsLoad;
2828
var tutorial_1 = require('./tutorial');
2929
exports.tutorialsFind = tutorial_1.tutorialsFind;
3030
exports.tutorialSet = tutorial_1.tutorialSet;
31+
exports.tutorialUpdate = tutorial_1.tutorialUpdate;

lib/actions/tutorial.js

+4
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@ function tutorialSet(name) {
77
};
88
}
99
exports.tutorialSet = tutorialSet;
10+
function tutorialUpdate(name) {
11+
return { type: _types_1.TUTORIAL_UPDATE, payload: { name: name } };
12+
}
13+
exports.tutorialUpdate = tutorialUpdate;
1014
function tutorialsFind() {
1115
return { type: _types_1.TUTORIALS_FIND };
1216
}

lib/components/Tutorials/UpdateTutorial/index.js

+11-3
Original file line numberDiff line numberDiff line change
@@ -15,19 +15,27 @@ var __metadata = (this && this.__metadata) || function (k, v) {
1515
};
1616
var React = require('react');
1717
var react_redux_1 = require('react-redux');
18-
var file_upload_1 = require('material-ui/svg-icons/file/file-upload');
18+
var update_1 = require('material-ui/svg-icons/action/update');
19+
var actions_1 = require('../../../actions');
20+
var colors_1 = require('material-ui/styles/colors');
21+
var styles = {
22+
width: '18px',
23+
marginLeft: '10px',
24+
};
1925
var UpdateTutorial = (function (_super) {
2026
__extends(UpdateTutorial, _super);
2127
function UpdateTutorial() {
2228
_super.apply(this, arguments);
2329
}
2430
UpdateTutorial.prototype.render = function () {
2531
var _a = this.props, name = _a.name, tutorialUpdate = _a.tutorialUpdate;
26-
return React.createElement(file_upload_1.default, null);
32+
return (React.createElement(update_1.default, {style: styles, color: colors_1.pink500, onTouchTap: tutorialUpdate.bind(this, name)}));
2733
};
2834
UpdateTutorial = __decorate([
2935
react_redux_1.connect(null, function (dispatch) {
30-
return {};
36+
return {
37+
tutorialUpdate: function (name) { return dispatch(actions_1.tutorialUpdate(name)); },
38+
};
3139
}),
3240
__metadata('design:paramtypes', [])
3341
], UpdateTutorial);

lib/components/Tutorials/index.js

+3-3
Original file line numberDiff line numberDiff line change
@@ -11,8 +11,8 @@ var styles = {
1111
exports.Tutorials = function (_a) {
1212
var tutorials = _a.tutorials;
1313
return (React.createElement("div", {style: styles}, 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 tutorialRow(tutorial, index) {
14-
return (React.createElement(Table_1.TableRow, {key: index}, React.createElement(Table_1.TableRowColumn, null, React.createElement(SelectTutorial_1.SelectTutorial, {tutorial: tutorial})), tutorial.latest
15-
? React.createElement(Table_1.TableRowColumn, null, tutorial.version, " ", React.createElement(UpdateTutorial_1.UpdateTutorial, {name: tutorial.name}))
16-
: React.createElement(Table_1.TableRowColumn, null, tutorial.version)));
14+
return (React.createElement(Table_1.TableRow, {key: index}, React.createElement(Table_1.TableRowColumn, null, React.createElement(SelectTutorial_1.SelectTutorial, {tutorial: tutorial})), React.createElement(Table_1.TableRowColumn, null, tutorial.version, tutorial.latest
15+
? React.createElement(UpdateTutorial_1.UpdateTutorial, {name: tutorial.name})
16+
: null)));
1717
}))), React.createElement("br", null), React.createElement(LoadTutorials_1.LoadTutorials, null)));
1818
};

lib/reducers/tutorials/check.js

+1-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,7 @@ function searchForTutorials(deps) {
2424
return {
2525
name: name,
2626
version: version,
27-
latest: !update_1.canUpdateTutorial(name, version)
27+
latest: !!update_1.canUpdateTutorial(name, version)
2828
};
2929
}));
3030
}

lib/reducers/tutorials/update.js

+1-6
Original file line numberDiff line numberDiff line change
@@ -1,12 +1,7 @@
11
"use strict";
22
var command_line_1 = require('../../services/command-line');
3-
var store_1 = require('../../store');
4-
var actions_1 = require('../../actions');
53
function tutorialUpdate(name) {
6-
command_line_1.default('npm', "install --save-dev " + name)
7-
.then(function () {
8-
store_1.default.dispatch(actions_1.tutorialsFind());
9-
});
4+
alert(name);
105
}
116
exports.tutorialUpdate = tutorialUpdate;
127
function canUpdateTutorial(name, currentVersion) {

src/actions/index.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -11,5 +11,5 @@ export {
1111
testRun, testComplete, testResult, testsLoad
1212
} from './test';
1313
export {
14-
tutorialsFind, tutorialSet
14+
tutorialsFind, tutorialSet, tutorialUpdate
1515
} from './tutorial';

src/actions/tutorial.ts

+3-3
Original file line numberDiff line numberDiff line change
@@ -9,9 +9,9 @@ export function tutorialSet(name: string): Action {
99
};
1010
}
1111

12-
// export function tutorialUpdate(name: string): CR.Action {
13-
// return { type: TUTORIAL_UPDATE, payload: { name } };
14-
// }
12+
export function tutorialUpdate(name: string): Action {
13+
return { type: TUTORIAL_UPDATE, payload: { name } };
14+
}
1515

1616
export function tutorialsFind(): Action {
1717
return { type: TUTORIALS_FIND };
Original file line numberDiff line numberDiff line change
@@ -1,21 +1,30 @@
11
import * as React from 'react';
22
import {connect} from 'react-redux';
3-
import FileUpload from 'material-ui/svg-icons/file/file-upload';
4-
// import {tutorialUpdate} from '../../actions';
3+
import Update from 'material-ui/svg-icons/action/update';
4+
import {tutorialUpdate} from '../../../actions';
5+
import {pink500} from 'material-ui/styles/colors';
56

6-
// TODO: tutorialUpdate action
7+
const styles = {
8+
width: '18px',
9+
marginLeft: '10px',
10+
};
711

812
@connect(null, (dispatch) => {
913
return {
10-
// tutorialUpdate: (name: string) => dispatch(tutorialUpdate(name)),
14+
tutorialUpdate: (name: string) => dispatch(tutorialUpdate(name)),
1115
};
1216
})
1317
export class UpdateTutorial extends React.Component<{
1418
name: string, tutorialUpdate?: any
1519
}, {}> {
1620
render() {
1721
const {name, tutorialUpdate} = this.props;
18-
return <FileUpload />;
19-
// return <FileUpload onClick={tutorialUpdate(name)} />;
22+
return (
23+
<Update
24+
style={styles}
25+
color={pink500}
26+
onTouchTap={tutorialUpdate.bind(this, name)}
27+
/>
28+
);
2029
}
2130
}

src/components/Tutorials/index.tsx

+7-5
Original file line numberDiff line numberDiff line change
@@ -36,11 +36,13 @@ export const Tutorials: React.StatelessComponent<{
3636
<TableRowColumn>
3737
<SelectTutorial tutorial={tutorial} />
3838
</TableRowColumn>
39-
{tutorial.latest
40-
? <TableRowColumn>
41-
{tutorial.version} <UpdateTutorial name={tutorial.name} />
42-
</TableRowColumn>
43-
: <TableRowColumn>{tutorial.version}</TableRowColumn>}
39+
<TableRowColumn>
40+
{tutorial.version}
41+
{tutorial.latest
42+
? <UpdateTutorial name={tutorial.name} />
43+
: null
44+
}
45+
</TableRowColumn>
4446
</TableRow>
4547
);
4648
})

src/reducers/tutorials/check.ts

+1-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,7 @@ export function searchForTutorials(deps: Object): Tutorial.Info[] {
3030
return {
3131
name,
3232
version,
33-
latest: !canUpdateTutorial(name, version)
33+
latest: !!canUpdateTutorial(name, version)
3434
};
3535
}));
3636
} else {

src/reducers/tutorials/update.ts

+5-4
Original file line numberDiff line numberDiff line change
@@ -3,10 +3,11 @@ import store from '../../store';
33
import {tutorialsFind} from '../../actions';
44

55
export function tutorialUpdate(name: string): void {
6-
commandLine('npm', `install --save-dev ${name}`)
7-
.then(() => {
8-
store.dispatch(tutorialsFind());
9-
});
6+
alert(name);
7+
// commandLine('npm', `install --save-dev ${name}`)
8+
// .then(() => {
9+
// store.dispatch(tutorialsFind());
10+
// });
1011
}
1112

1213
export function canUpdateTutorial(

0 commit comments

Comments
 (0)