UNPKG

awv3

Version:
171 lines (126 loc) 8.32 kB
'use strict'; Object.defineProperty(exports, "__esModule", { value: true }); exports.default = undefined; var _regenerator = require('babel-runtime/regenerator'); var _regenerator2 = _interopRequireDefault(_regenerator); var _promise = require('babel-runtime/core-js/promise'); var _promise2 = _interopRequireDefault(_promise); var _asyncToGenerator2 = require('babel-runtime/helpers/asyncToGenerator'); var _asyncToGenerator3 = _interopRequireDefault(_asyncToGenerator2); 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 _defineProperty2 = require('babel-runtime/helpers/defineProperty'); var _defineProperty3 = _interopRequireDefault(_defineProperty2); var _extends3 = require('babel-runtime/helpers/extends'); var _extends4 = _interopRequireDefault(_extends3); var _plugin = require('../../session/plugin'); var _plugin2 = _interopRequireDefault(_plugin); var _elements = require('../../session/elements'); function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } var resources = ["icon"].reduce(function (prev, item) { return (0, _extends4.default)({}, prev, (0, _defineProperty3.default)({}, item, require('./resources/' + item + '.png'))); }, {}); function setResults(label, results) { label.value = results.reduce(function (text, result) { text = result.errors.reduce(function (t, e) { return t + e.errorMessage + "\n"; }, text); return result.results.reduce(function (t, r) { return t + r.result + "\n"; }, text); }, ""); } var Interpreter = function (_Plugin) { (0, _inherits3.default)(Interpreter, _Plugin); function Interpreter(session, args) { (0, _classCallCheck3.default)(this, Interpreter); var _this = (0, _possibleConstructorReturn3.default)(this, (Interpreter.__proto__ || (0, _getPrototypeOf2.default)(Interpreter)).call(this, session, (0, _extends4.default)({ type: "Interpreter", icon: "icon", resources: resources }, args))); _this.chunks = true; _this.sequence = new _elements.Checkbox(_this, { name: "Sequence", value: _this.chunks }); _this.addElement(new _elements.Group(_this, { format: _elements.Group.Format.Table, children: [_this.sequence] })); _this.input = new _elements.Input(_this, { name: "Command", value: '_O.ToolBuilder.LoadComponent("iBridge","Drawings/samples/Boring/ExamplesCSYS/820_1020CN19_CSYS/A40_NXLA35_AQ2106_CSYS_SIM_NoBolt.stp");\n_O.ToolBuilder.AddAssemblyNode(["a1"]);\n_O.ToolBuilder.AddComponentNode(["iBridge","iBridge_1"], ["a1"]);\n_O.ToolBuilder.AddAssemblyNode(["a2_0"],["a1"]);\n_O.ToolBuilder.LoadComponent("iAdapter1","Drawings/samples/Boring/ExamplesCSYS/820_1020CN19_CSYS/A35_RXLS24_A060_CSYS_SIM.stp");\n_O.ToolBuilder.AddComponentNode(["iAdapter1","iAdapter1_1","MCS"], ["a2_0"], ["iBridge_1","CSW1"]);\n_O.ToolBuilder.AddAssemblyNode(["a2_1"],["a1"]);\n_O.ToolBuilder.AddComponentNode(["iAdapter1","iAdapter1_2","MCS"], ["a2_1"], ["iBridge_1","CSW2"]);\n_O.ToolBuilder.AddAssemblyNode(["a3_0"],["a2_0"]);\n_O.ToolBuilder.LoadComponent("iAdapter2","Drawings/samples/Boring/ExamplesCSYS/820_1020CN19_CSYS/S24_R820XLS12_012_CSYS_SIM.stp");\n_O.ToolBuilder.AddComponentNode(["iAdapter2","iAdapter2_1","MCS"], ["a3_0"], ["iAdapter1_1","CSW"]);\n_O.ToolBuilder.AddAssemblyNode(["a3_1"],["a2_1"]);\n_O.ToolBuilder.AddComponentNode(["iAdapter2","iAdapter2_2","MCS"], ["a3_1"], ["iAdapter1_2","CSW"]);\n_O.ToolBuilder.LoadComponent("iCassette","Drawings/samples/Boring/ExamplesCSYS/820_1020CN19_CSYS/Cartridge_S12_CSYS_assy_1_SIM.stp");\n_O.ToolBuilder.SetContoursToCutContoursStyle(1);\n_O.ToolBuilder.AddComponentNode(["iCassette","iCassette_1","MCS"], ["a3_0"], ["iAdapter2_1","CSW"]);\n_O.ToolBuilder.AddComponentNode(["iCassette","iCassette_2","MCS"], ["a3_1"], ["iAdapter2_2","CSW"]);', format: _elements.Input.Format.MultiLine, style: { fontSize: '0.8em', fontFamily: 'monospace' } }); _this.addElement(_this.input); _this.label = new _elements.Label(_this, { name: "Result", value: "" }); _this.addElement(_this.label); _this.okButton = new _elements.Button(_this, { name: "Execute", color: "blue" }); _this.clearButton = new _elements.Button(_this, { name: "Clear", color: "red" }); _this.addElement(new _elements.Group(_this, { format: _elements.Group.Format.Buttons, children: [_this.clearButton, _this.okButton] })); return _this; } (0, _createClass3.default)(Interpreter, [{ key: 'onEnabled', value: function onEnabled() { var _this2 = this; this.resetElements(); this.clearButton.observe(function (state) { return state.lastEvent; }, function (event) { _this2.session.activeConnectionClass.execute('_O.ToolBuilder.Clear();'); }); this.okButton.observe(function (state) { return state.lastEvent; }, function () { var _ref = (0, _asyncToGenerator3.default)(_regenerator2.default.mark(function _callee(event) { var results; return _regenerator2.default.wrap(function _callee$(_context) { while (1) { switch (_context.prev = _context.next) { case 0: console.time("INTERPRETER"); results = void 0; if (!_this2.chunks) { _context.next = 8; break; } _context.next = 5; return _promise2.default.all(_this2.input.value.split(";").filter(function (e) { return e; }).map(function (command) { return command.length && _this2.session.activeConnectionClass.execute(command + ";"); })); case 5: results = _context.sent; _context.next = 12; break; case 8: _context.next = 10; return _this2.session.activeConnectionClass.execute(_this2.input.value); case 10: _context.t0 = _context.sent; results = [_context.t0]; case 12: _this2.connection.updateView(); console.timeEnd("INTERPRETER"); setResults(_this2.label, results); case 15: case 'end': return _context.stop(); } } }, _callee, _this2); })); return function (_x) { return _ref.apply(this, arguments); }; }()); this.sequence.observe(function (state) { return state.value; }, function (value) { return _this2.chunks = value; }); } }]); return Interpreter; }(_plugin2.default); exports.default = Interpreter;