awv3
Version:
⚡ AWV3 embedded CAD
330 lines (260 loc) • 13 kB
JavaScript
;
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;