// Transcrypt'ed from Python, 2018-12-03 19:26:45
import {AssertionError, AttributeError, BaseException, DeprecationWarning, Exception, IndexError, IterableError, KeyError, NotImplementedError, RuntimeWarning, StopIteration, UserWarning, ValueError, Warning, __JsIterator__, __PyIterator__, __Terminal__, __add__, __and__, __call__, __class__, __envir__, __eq__, __floordiv__, __ge__, __get__, __getcm__, __getitem__, __getslice__, __getsm__, __gt__, __i__, __iadd__, __iand__, __idiv__, __ijsmod__, __ilshift__, __imatmul__, __imod__, __imul__, __in__, __init__, __ior__, __ipow__, __irshift__, __isub__, __ixor__, __jsUsePyNext__, __jsmod__, __k__, __kwargtrans__, __le__, __lshift__, __lt__, __matmul__, __mergefields__, __mergekwargtrans__, __mod__, __mul__, __ne__, __neg__, __nest__, __or__, __pow__, __pragma__, __proxy__, __pyUseJsNext__, __rshift__, __setitem__, __setproperty__, __setslice__, __sort__, __specialattrib__, __sub__, __super__, __t__, __terminal__, __truediv__, __withblock__, __xor__, abs, all, any, assert, bool, bytearray, bytes, callable, chr, copy, deepcopy, delattr, dict, dir, divmod, enumerate, filter, float, format, getattr, hasattr, input, int, isinstance, issubclass, len, list, map, max, min, object, ord, pow, print, property, py_TypeError, py_iter, py_metatype, py_next, py_reversed, py_typeof, range, repr, round, set, setattr, sorted, str, sum, tuple, zip} from './org.transcrypt.__runtime__.js';
var __name__ = '__main__';
export var h = function (elm_type, props) {
	if (typeof props == 'undefined' || (props != null && props.hasOwnProperty ("__kwargtrans__"))) {;
		var props = '';
	};
	var args = tuple ([].slice.apply (arguments).slice (2));
	return React.createElement (elm_type, props, ...args);
};
export var render = function (react_element, destination_id, callback) {
	if (typeof callback == 'undefined' || (callback != null && callback.hasOwnProperty ("__kwargtrans__"))) {;
		var callback = (function __lambda__ () {
			return null;
		});
	};
	var container = document.getElementById (destination_id);
	ReactDOM.render (react_element, container, callback);
};
export var Hello = React.createClass (dict ({'displayName': 'Hello', 'getInitialState': (function __lambda__ () {
	return dict ({'counter': 0});
}), 'updateCounter': (function __lambda__ () {
	return this.setState (dict ({'counter': this.state ['counter'] + 1}));
}), 'componentDidMount': (function __lambda__ () {
	return setInterval (this.updateCounter, 1000);
}), 'render': (function __lambda__ () {
	return h ('div', dict ({'className': 'maindiv'}), h ('h1', null, 'Hello ', this.props ['name']), h ('p', null, 'Lorem ipsum dolor sit ame.'), h ('p', null, 'Counter: ', this.state ['counter']));
})}));
export var element = React.createElement (Hello, dict ({'name': 'React!'}));
render (element, 'container');

//# sourceMappingURL=react_demo.map