UNPKG

awv3

Version:
330 lines (260 loc) 13 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = undefined; var _extends2 = require('babel-runtime/helpers/extends'); var _extends3 = _interopRequireDefault(_extends2); var _objectDestructuringEmpty2 = require('babel-runtime/helpers/objectDestructuringEmpty'); var _objectDestructuringEmpty3 = _interopRequireDefault(_objectDestructuringEmpty2); var _getPrototypeOf = require('babel-runtime/core-js/object/get-prototype-of'); var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf); var _classCallCheck2 = require('babel-runtime/helpers/classCallCheck'); var _classCallCheck3 = _interopRequireDefault(_classCallCheck2); var _createClass2 = require('babel-runtime/helpers/createClass'); var _createClass3 = _interopRequireDefault(_createClass2); var _possibleConstructorReturn2 = require('babel-runtime/helpers/possibleConstructorReturn'); var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2); var _inherits2 = require('babel-runtime/helpers/inherits'); var _inherits3 = _interopRequireDefault(_inherits2); var _dec, _class5; var _plugin = require('../../session/plugin'); var _plugin2 = _interopRequireDefault(_plugin); var _elements = require('../../session/elements'); var _renderer = require('../../session/renderer'); var _renderer2 = _interopRequireDefault(_renderer); var _globals = require('../../session/store/globals'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var SpecialButton = function (_Component) { (0, _inherits3.default)(SpecialButton, _Component); function SpecialButton(p) { (0, _classCallCheck3.default)(this, SpecialButton); //console.log(' constructor') var _this = (0, _possibleConstructorReturn3.default)(this, (SpecialButton.__proto__ || (0, _getPrototypeOf2.default)(SpecialButton)).call(this, p)); _this.state = { flag: false }; _this.render = function (_ref, _ref2) { var highlight = _ref.highlight, _onLastEvent = _ref.onLastEvent; var flag = _ref2.flag; return [_renderer2.default.createElement(_elements.Button, { name: '?' }), _renderer2.default.createElement(_elements.Button, { name: (highlight ? 'active' : 'inactive') + ' ' + (flag ? '👌' : '👎'), color: highlight && 'pink', onLastEvent: function onLastEvent() { return _this.setState({ flag: !flag }) || _onLastEvent(); } })]; }; return _this; } (0, _createClass3.default)(SpecialButton, [{ key: 'componentWillMount', value: function componentWillMount() { //console.log(' willmount') } }, { key: 'componentWillUnmount', value: function componentWillUnmount() { //console.log(' willunmount') } }]); return SpecialButton; }(_renderer.Component); var ButtonGroup = function (_Component2) { (0, _inherits3.default)(ButtonGroup, _Component2); function ButtonGroup() { var _ref3; var _temp, _this2, _ret; (0, _classCallCheck3.default)(this, ButtonGroup); for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) { args[_key] = arguments[_key]; } return _ret = (_temp = (_this2 = (0, _possibleConstructorReturn3.default)(this, (_ref3 = ButtonGroup.__proto__ || (0, _getPrototypeOf2.default)(ButtonGroup)).call.apply(_ref3, [this].concat(args))), _this2), _this2.state = { current: 'A', visible: true }, _this2.render = function (_ref4, _ref5) { var color = _ref4.color; var current = _ref5.current, visible = _ref5.visible; return _renderer2.default.createElement( _elements.Group, null, _renderer2.default.createElement(_elements.Dropdown, { items: ['A', 'B', 'C'], value: current, onValue: function onValue(current) { return _this2.setState({ current: current }); } }), _renderer2.default.createElement( _elements.Group, { format: 'Rows' }, _renderer2.default.createElement(_elements.Button, { name: 'A', color: current === 'A' && color, onLastEvent: function onLastEvent() { return _this2.setState({ current: 'A' }); } }), _renderer2.default.createElement(_elements.Button, { name: 'B', color: current === 'B' && color, onLastEvent: function onLastEvent() { return _this2.setState({ current: 'B' }); } }), visible && _renderer2.default.createElement(SpecialButton, { highlight: current === 'C', onLastEvent: function onLastEvent() { return _this2.setState({ current: 'C' }); } }), _renderer2.default.createElement(_elements.Button, { color: 'black', name: 'toggle', onLastEvent: function onLastEvent() { return _this2.setState({ visible: !visible }); } }) ) ); }, _temp), (0, _possibleConstructorReturn3.default)(_this2, _ret); } return ButtonGroup; }(_renderer.Component); var Buttons = function (_Component3) { (0, _inherits3.default)(Buttons, _Component3); function Buttons() { var _ref6; var _temp2, _this3, _ret2; (0, _classCallCheck3.default)(this, Buttons); for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) { args[_key2] = arguments[_key2]; } return _ret2 = (_temp2 = (_this3 = (0, _possibleConstructorReturn3.default)(this, (_ref6 = Buttons.__proto__ || (0, _getPrototypeOf2.default)(Buttons)).call.apply(_ref6, [this].concat(args))), _this3), _this3.render = function (_ref7) { var children = _ref7.children; return children; }, _temp2), (0, _possibleConstructorReturn3.default)(_this3, _ret2); } return Buttons; }(_renderer.Component); var Item = function (_Component4) { (0, _inherits3.default)(Item, _Component4); function Item() { (0, _classCallCheck3.default)(this, Item); return (0, _possibleConstructorReturn3.default)(this, (Item.__proto__ || (0, _getPrototypeOf2.default)(Item)).apply(this, arguments)); } (0, _createClass3.default)(Item, [{ key: 'componentWillMount', value: function componentWillMount() { console.log(this.plugin.id, 'componentWillMount'); } }, { key: 'componentWillUnmount', value: function componentWillUnmount() { console.log(this.plugin.id, 'componentWillUnmount'); } }, { key: 'render', value: function render(_ref8) { var id = _ref8.id; return _renderer2.default.createElement(_elements.Label, { value: 'my id is ' + id }); } }]); return Item; }(_renderer.Component); var Counter = function (_Component5) { (0, _inherits3.default)(Counter, _Component5); function Counter() { var _ref9; var _temp3, _this5, _ret3; (0, _classCallCheck3.default)(this, Counter); for (var _len3 = arguments.length, args = Array(_len3), _key3 = 0; _key3 < _len3; _key3++) { args[_key3] = arguments[_key3]; } return _ret3 = (_temp3 = (_this5 = (0, _possibleConstructorReturn3.default)(this, (_ref9 = Counter.__proto__ || (0, _getPrototypeOf2.default)(Counter)).call.apply(_ref9, [this].concat(args))), _this5), _this5.state = { count: 2 }, _temp3), (0, _possibleConstructorReturn3.default)(_this5, _ret3); } (0, _createClass3.default)(Counter, [{ key: 'render', value: function render(_ref10, _ref11, set) { var count = _ref11.count; (0, _objectDestructuringEmpty3.default)(_ref10); return _renderer2.default.createElement( _elements.Group, null, _renderer2.default.createElement(_elements.Label, { value: count }), _renderer2.default.createElement( _elements.Group, { format: _elements.Group.Format.Rows }, _renderer2.default.createElement(_elements.Button, { name: '+', onLastEvent: function onLastEvent() { return set({ count: count + 1 }); } }), _renderer2.default.createElement(_elements.Button, { name: '-', onLastEvent: function onLastEvent() { return set({ count: count - 1 }); } }), _renderer2.default.createElement(_elements.Button, { name: '\u2718', onLastEvent: function onLastEvent() { return set({ count: 0 }); } }) ), new Array(count).fill(0).map(function (i, key) { return _renderer2.default.createElement(Item, { key: key, id: key }); }) ); } }]); return Counter; }(_renderer.Component); var ControlGroup = (_dec = (0, _renderer.connect)(function (state) { return { camera: state.globals.camera }; }), _dec(_class5 = function (_Component6) { (0, _inherits3.default)(ControlGroup, _Component6); function ControlGroup() { var _ref12; var _temp4, _this6, _ret4; (0, _classCallCheck3.default)(this, ControlGroup); for (var _len4 = arguments.length, args = Array(_len4), _key4 = 0; _key4 < _len4; _key4++) { args[_key4] = arguments[_key4]; } return _ret4 = (_temp4 = (_this6 = (0, _possibleConstructorReturn3.default)(this, (_ref12 = ControlGroup.__proto__ || (0, _getPrototypeOf2.default)(ControlGroup)).call.apply(_ref12, [this].concat(args))), _this6), _this6.render = function (_ref13) { var camera = _ref13.camera; return _renderer2.default.createElement( _elements.Group, null, _renderer2.default.createElement(_elements.Label, { value: camera }), _renderer2.default.createElement(_elements.Button, { name: 'toggle cam', onLastEvent: function onLastEvent() { return _this6.dispatch(_globals.actions.setCamera(camera === 'orthographic' ? 'perspective' : 'orthographic')); } }), _renderer2.default.createElement( Buttons, null, _renderer2.default.createElement(ButtonGroup, { color: 'red' }), _renderer2.default.createElement(ButtonGroup, { color: 'green' }), _renderer2.default.createElement(_elements.Link, { value: _this6.plugin.embed.id }) ), _renderer2.default.createElement(Counter, null) ); }, _temp4), (0, _possibleConstructorReturn3.default)(_this6, _ret4); } return ControlGroup; }(_renderer.Component)) || _class5); var Embed = function (_Plugin) { (0, _inherits3.default)(Embed, _Plugin); function Embed(session, args) { (0, _classCallCheck3.default)(this, Embed); return (0, _possibleConstructorReturn3.default)(this, (Embed.__proto__ || (0, _getPrototypeOf2.default)(Embed)).call(this, session, (0, _extends3.default)({ type: 'Embed', icon: 'ok' }, args))); } (0, _createClass3.default)(Embed, [{ key: 'render', value: function render() { return _renderer2.default.createElement(Counter, null); } }]); return Embed; }(_plugin2.default); var Test = function (_Plugin2) { (0, _inherits3.default)(Test, _Plugin2); function Test(session, args) { (0, _classCallCheck3.default)(this, Test); return (0, _possibleConstructorReturn3.default)(this, (Test.__proto__ || (0, _getPrototypeOf2.default)(Test)).call(this, session, (0, _extends3.default)({ type: 'Test', icon: 'ok' }, args))); } (0, _createClass3.default)(Test, [{ key: 'render', value: function render() { return _renderer2.default.createElement(ControlGroup, null); } }, { key: 'onEnabled', value: function onEnabled() { this.embed = new Embed(this.session); this.embed.enabled = true; } }, { key: 'onDisabled', value: function onDisabled() { console.log("i should destroy"); this.embed.destroy(); } }]); return Test; }(_plugin2.default); exports.default = Test;