|
| 1 | +"use strict"; |
| 2 | +var __extends = (this && this.__extends) || function (d, b) { |
| 3 | + for (var p in b) 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 | + var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d; |
| 9 | + if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc); |
| 10 | + else for (var i = 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 | + return c > 3 && r && Object.defineProperty(target, key, r), r; |
| 12 | +}; |
| 13 | +var __metadata = (this && this.__metadata) || function (k, v) { |
| 14 | + if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v); |
| 15 | +}; |
| 16 | +var React = require('react'); |
| 17 | +var react_redux_1 = require('react-redux'); |
| 18 | +var TextField_1 = require('material-ui/TextField'); |
| 19 | +var SelectField_1 = require('material-ui/SelectField'); |
| 20 | +var MenuItem_1 = require('material-ui/MenuItem'); |
| 21 | +var Card_1 = require('material-ui/Card'); |
| 22 | +var RaisedButton_1 = require('material-ui/RaisedButton'); |
| 23 | +var actions_1 = require('../../actions'); |
| 24 | +var styles = { |
| 25 | + margin: '10px', |
| 26 | + padding: '30px 20px', |
| 27 | + textAlign: 'center', |
| 28 | +}; |
| 29 | +var TutorialConfig = (function (_super) { |
| 30 | + __extends(TutorialConfig, _super); |
| 31 | + function TutorialConfig(props) { |
| 32 | + _super.call(this, props); |
| 33 | + this.state = { |
| 34 | + name: 'coderoad-', |
| 35 | + repo: '', |
| 36 | + language: 'JS', |
| 37 | + runner: 'mocha-coderoad', |
| 38 | + runnerOptions: {} |
| 39 | + }; |
| 40 | + } |
| 41 | + TutorialConfig.prototype.handleChange = function (value, event) { |
| 42 | + var obj = {}; |
| 43 | + obj[value] = event.target.value; |
| 44 | + this.setState(Object.assign({}, this.state, obj)); |
| 45 | + }; |
| 46 | + TutorialConfig.prototype.save = function () { |
| 47 | + this.props.save(this.state); |
| 48 | + }; |
| 49 | + TutorialConfig.prototype.render = function () { |
| 50 | + return (React.createElement(Card_1.Card, {style: styles}, React.createElement(Card_1.CardHeader, {title: 'Tutorial Configuration'}), React.createElement(TextField_1.default, {floatingLabelText: 'Tutorial Package Name', value: this.state.name, onChange: this.handleChange.bind(this, 'name', event)}), React.createElement("br", null), React.createElement(SelectField_1.default, {floatingLabelText: 'Language', value: this.state.language, onChange: this.handleChange.bind(this, 'language', event)}, React.createElement(MenuItem_1.default, {value: 'JS', primaryText: 'JS'}), React.createElement(MenuItem_1.default, {value: 'Python', primaryText: 'Python'})), React.createElement("br", null), React.createElement(SelectField_1.default, {floatingLabelText: 'Test Runner', value: this.state.runner, onChange: this.handleChange.bind(this, 'runner', event)}, React.createElement(MenuItem_1.default, {value: 'mocha-coderoad', primaryText: 'Mocha-CodeRoad'})), React.createElement("br", null), React.createElement("br", null), React.createElement(RaisedButton_1.default, {label: 'Save', primary: true, onTouchTap: this.save.bind(this)}))); |
| 51 | + }; |
| 52 | + TutorialConfig = __decorate([ |
| 53 | + react_redux_1.connect(null, function (dispatch) { |
| 54 | + return { |
| 55 | + save: function (config) { return dispatch(actions_1.tutorialConfigSave(config)); } |
| 56 | + }; |
| 57 | + }), |
| 58 | + __metadata('design:paramtypes', [Object]) |
| 59 | + ], TutorialConfig); |
| 60 | + return TutorialConfig; |
| 61 | +}(React.Component)); |
| 62 | +Object.defineProperty(exports, "__esModule", { value: true }); |
| 63 | +exports.default = TutorialConfig; |
0 commit comments