Skip to content

Commit

Permalink
ES6 module import syntax. Fixes #347 (#351)
Browse files Browse the repository at this point in the history
ES6 module import syntax. Fixes #347
  • Loading branch information
coreygrunewald authored and nixjdm committed Jun 12, 2017
1 parent 18303f8 commit 7b58f16
Show file tree
Hide file tree
Showing 23 changed files with 137 additions and 123 deletions.
2 changes: 1 addition & 1 deletion Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,7 @@ all: build-js
build-js:
@echo "---> building static files"
@cd lektor/admin; npm install .
@cd lektor/admin/static; ../node_modules/.bin/webpack
@cd lektor/admin; npm run webpack

pex:
virtualenv pex-build-cache
Expand Down
3 changes: 2 additions & 1 deletion lektor/admin/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -40,7 +40,8 @@
},
"scripts": {
"test": "nyc mocha static/js/**/*.test.js",
"report-coverage": "nyc report --reporter=lcov > coverage.lcov"
"report-coverage": "nyc report --reporter=lcov > coverage.lcov",
"webpack": "webpack --config ./static/webpack.config.js --context ./static"
},
"babel": {
"presets": [
Expand Down
5 changes: 3 additions & 2 deletions lektor/admin/static/js/components/BaseComponent.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@

'use strict'

import React from 'react'
import React from 'react';


class BaseComponent extends React.Component {
Expand All @@ -21,6 +21,7 @@ class BaseComponent extends React.Component {

componentWillReceiveProps(nextProps) {
}

}

export default BaseComponent
export default BaseComponent;
6 changes: 3 additions & 3 deletions lektor/admin/static/js/components/BreadCrumbs.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -9,7 +9,7 @@ import dialogSystem from '../dialogSystem'
import FindFiles from '../dialogs/findFiles'
import Publish from '../dialogs/publish'
import Refresh from '../dialogs/Refresh'

import makeRichPromise from '../richPromise';

class BreadCrumbs extends RecordComponent {

Expand Down Expand Up @@ -47,7 +47,7 @@ class BreadCrumbs extends RecordComponent {
return;
}

utils.loadData('/pathinfo', {path: path})
utils.loadData('/pathinfo', {path: path}, null, makeRichPromise)
.then((resp) => {
this.setState({
recordPathInfo: {
Expand All @@ -70,7 +70,7 @@ class BreadCrumbs extends RecordComponent {
utils.loadData('/previewinfo', {
path: this.getRecordPath(),
alt: this.getRecordAlt()
})
}, null, makeRichPromise)
.then((resp) => {
if (resp.url === null) {
window.location.href = utils.getCanonicalUrl('/');
Expand Down
4 changes: 2 additions & 2 deletions lektor/admin/static/js/components/DialogSlot.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,7 @@ import React from 'react'
import Router from "react-router"
import Component from '../components/Component'
import dialogSystem from '../dialogSystem'
import {DialogChangedEvent} from '../events'
import { DialogChangedEvent } from '../events'
import hub from '../hub'


Expand Down Expand Up @@ -66,4 +66,4 @@ class DialogSlot extends Component {
}
}

export default DialogSlot
export default DialogSlot;
18 changes: 9 additions & 9 deletions lektor/admin/static/js/components/Link.jsx
Original file line number Diff line number Diff line change
@@ -1,28 +1,28 @@
'use strict'

import React from 'react'
import ReactRouter from 'react-router'
import Component from './Component'
import React from 'react';
import { Link } from 'react-router';
import Component from './Component';


class Link extends Component {
class LektorLink extends Component {

render() {
let path = this.props.to;
if (path.substr(0, 1) !== '/') {
path = $LEKTOR_CONFIG.admin_root + '/' + path;
}
return (
<ReactRouter.Link to={path} activeClassName="active">
<Link to={path} activeClassName="active">
{this.props.children}
</ReactRouter.Link>
</Link>
);
}
}

Link.propTypes = {
LektorLink.propTypes = {
to: React.PropTypes.string
}
};


module.exports = Link
module.exports = LektorLink;
4 changes: 2 additions & 2 deletions lektor/admin/static/js/components/ServerStatus.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,7 @@ import Router from "react-router";
import Component from '../components/Component';
import utils from '../utils';
import i18n from '../i18n';

import makeRichPromise from '../richPromise';

class ServerStatus extends Component {

Expand Down Expand Up @@ -34,7 +34,7 @@ class ServerStatus extends Component {
}

onInterval() {
utils.loadData('/ping')
utils.loadData('/ping', {}, null, makeRichPromise)
.then((resp) => {
if (this.state.projectId === null) {
this.setState({
Expand Down
6 changes: 3 additions & 3 deletions lektor/admin/static/js/components/Sidebar.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,7 @@ import hub from '../hub'
import {AttachmentsChangedEvent} from '../events'
import RecordComponent from './RecordComponent'
import Link from '../components/Link'

import makeRichPromise from '../richPromise';

function getBrowseButtonTitle() {
const platform = utils.getPlatform();
Expand Down Expand Up @@ -118,7 +118,7 @@ class Sidebar extends RecordComponent {
this.setState({
lastRecordRequest: path,
}, () => {
utils.loadData('/recordinfo', {path: path})
utils.loadData('/recordinfo', {path: path}, null, makeRichPromise)
.then((resp) => {
// we're already fetching something else.
if (path !== this.state.lastRecordRequest) {
Expand Down Expand Up @@ -151,7 +151,7 @@ class Sidebar extends RecordComponent {
utils.apiRequest('/browsefs', {data: {
path: this.getRecordPath(),
alt: this.getRecordAlt()
}, method: 'POST'})
}, method: 'POST'}, makeRichPromise)
.then((resp) => {
if (!resp.okay) {
alert(i18n.trans('ERROR_CANNOT_BROWSE_FS'));
Expand Down
13 changes: 10 additions & 3 deletions lektor/admin/static/js/components/SlideDialog.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -43,9 +43,16 @@ class SlideDialog extends Component {
return (
<div className={className} {...props}>
<div className="col-md-6 col-md-offset-4">
{hasCloseButton}
<a href="#" className="close-btn" onClick={
this._onCloseClick.bind(this)}>{i18n.trans('CLOSE')}</a> : null}
{
hasCloseButton &&
<a
href="#"
className="close-btn"
onClick={this._onCloseClick.bind(this)}
>
{ i18n.trans('CLOSE') }
</a>
}
<h3>{title}</h3>
{children}
</div>
Expand Down
3 changes: 2 additions & 1 deletion lektor/admin/static/js/dialogs/Refresh.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,7 @@ import SlideDialog from '../components/SlideDialog'
import utils from '../utils'
import i18n from '../i18n'
import dialogSystem from '../dialogSystem'
import makeRichPromise from '../richPromise';


class Refresh extends Component {
Expand Down Expand Up @@ -37,7 +38,7 @@ class Refresh extends Component {
});
utils.apiRequest('/clean', {
method: 'POST'
}).then((resp) => {
}, makeRichPromise).then((resp) => {
this.setState({
currentState: 'DONE'
})
Expand Down
18 changes: 9 additions & 9 deletions lektor/admin/static/js/dialogs/findFiles.jsx
Original file line number Diff line number Diff line change
@@ -1,14 +1,14 @@
'use strict'

import React from 'react'
import Router from 'react-router'
var {Link, RouteHandler} = Router
import React from 'react';
import { Link, RouteHandler } from 'react-router';

import RecordComponent from '../components/RecordComponent'
import SlideDialog from '../components/SlideDialog'
import utils from '../utils'
import i18n from '../i18n'
import dialogSystem from '../dialogSystem'
import RecordComponent from '../components/RecordComponent';
import SlideDialog from '../components/SlideDialog';
import utils from '../utils';
import i18n from '../i18n';
import dialogSystem from '../dialogSystem';
import makeRichPromise from '../richPromise';

class FindFiles extends RecordComponent {

Expand Down Expand Up @@ -47,7 +47,7 @@ class FindFiles extends RecordComponent {
lang: i18n.currentLanguage
},
method: 'POST'
}).then((resp) => {
}, makeRichPromise).then((resp) => {
this.setState({
results: resp.results,
currentSelection: Math.min(this.state.currentSelection,
Expand Down
35 changes: 21 additions & 14 deletions lektor/admin/static/js/dialogs/publish.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@ import SlideDialog from '../components/SlideDialog'
import utils from '../utils'
import i18n from '../i18n'
import dialogSystem from '../dialogSystem'

import makeRichPromise from '../richPromise';

class Publish extends Component {

Expand Down Expand Up @@ -39,12 +39,14 @@ class Publish extends Component {
}

syncDialog() {
utils.loadData('/servers')
.then((resp) => {
utils.loadData('/servers', {}, null, makeRichPromise)
.then(({ servers }) => {
this.setState({
servers: resp.servers,
activeTarget: resp.servers[0].id
})
servers: servers,
activeTarget: servers && servers.length
? servers[0].id
: null
});
});
}

Expand All @@ -70,7 +72,7 @@ class Publish extends Component {
});
utils.apiRequest('/build', {
method: 'POST'
}).then((resp) => {
}, makeRichPromise).then((resp) => {
this._beginPublish();
});
}
Expand Down Expand Up @@ -106,7 +108,7 @@ class Publish extends Component {
componentDidUpdate() {
super.componentDidUpdate();
const node = this.refs.log;
if (node !== null) {
if (node) {
node.scrollTop = node.scrollHeight;
}
}
Expand Down Expand Up @@ -142,11 +144,16 @@ class Publish extends Component {
<p>{i18n.trans('PUBLISH_NOTE')}</p>
<dl>
<dt>{i18n.trans('PUBLISH_SERVER')}</dt>
<dd><div className="input-group">
<select value={this.state.activeTarget}
onChange={this.onSelectServer.bind(this)}
className="form-control">{servers}</select>
</div></dd>
<dd>
<div className="input-group">
<select
value={this.state.activeTarget}
onChange={this.onSelectServer.bind(this)}
className="form-control">
{servers}
</select>
</div>
</dd>
</dl>
<div className="actions">
<button type="submit" className="btn btn-primary"
Expand All @@ -163,4 +170,4 @@ class Publish extends Component {
}
}

export default Publish
export default Publish;
15 changes: 7 additions & 8 deletions lektor/admin/static/js/events.jsx
Original file line number Diff line number Diff line change
@@ -1,7 +1,6 @@
'use strict'

import React from 'react'

import React from 'react';

class Event {

Expand Down Expand Up @@ -51,9 +50,9 @@ class DialogChangedEvent extends Event {
}


export default {
Event: Event,
RecordEvent: RecordEvent,
AttachmentsChangedEvent: AttachmentsChangedEvent,
DialogChangedEvent: DialogChangedEvent,
}
export {
Event,
RecordEvent,
AttachmentsChangedEvent,
DialogChangedEvent
};
45 changes: 23 additions & 22 deletions lektor/admin/static/js/main.jsx
Original file line number Diff line number Diff line change
@@ -1,20 +1,29 @@
'use strict';

var React = require('react');
var ReactDOM = require('react-dom');
var {Router, Route, IndexRoute} = require('react-router');
var Component = require('./components/Component');
var i18n = require('./i18n');
var {useBeforeUnload} = require('history');
var createBrowserHistory = require('history/lib/createBrowserHistory');
import React from 'react';
import ReactDOM from 'react-dom';
import {Router, Route, IndexRoute} from 'react-router';
import Component from './components/Component';
import i18n from './i18n';
import {useBeforeUnload} from 'history';
import createBrowserHistory from 'history/lib/createBrowserHistory';

require('bootstrap');
require('./bootstrap-extras');
require('font-awesome/css/font-awesome.css');
import Bootstrap from 'bootstrap';
import BootstrapExtras from './bootstrap-extras';
import FACss from 'font-awesome/css/font-awesome.css';

// polyfill for internet explorer
require('native-promise-only');
require('event-source-polyfill');
import PromiseOnly from 'native-promise-only';
import EventSource from 'event-source-polyfill';

// route targets
import App from './views/App';
import Dash from './views/Dash';
import EditPage from './views/EditPage';
import DeletePage from './views/DeletePage';
import PreviewPage from './views/PreviewPage';
import AddChildPage from './views/AddChildPage';
import AddAttachmentPage from './views/AddAttachmentPage';

i18n.currentLanguage = $LEKTOR_CONFIG.lang;

Expand All @@ -35,15 +44,6 @@ BadRoute.contextTypes = {
};

var routes = (function() {
// route targets
var App = require('./views/App');
var Dash = require('./views/Dash');
var EditPage = require('./views/EditPage');
var DeletePage = require('./views/DeletePage');
var PreviewPage = require('./views/PreviewPage');
var AddChildPage = require('./views/AddChildPage');
var AddAttachmentPage = require('./views/AddAttachmentPage');

// route setup
return (
<Route name="app" path={$LEKTOR_CONFIG.admin_root} component={App}>
Expand All @@ -58,7 +58,8 @@ var routes = (function() {
);
})();

var dash = document.getElementById('dash')
var dash = document.getElementById('dash');

if (dash) {
ReactDOM.render((
<Router history={useBeforeUnload(createBrowserHistory)()}>
Expand Down
Loading

0 comments on commit 7b58f16

Please sign in to comment.