UNPKG

@glowlamp/control-sequences

Version:
49 lines (37 loc) 1.49 kB
"use strict"; var _Object$defineProperty = require("@babel/runtime-corejs3/core-js-stable/object/define-property"); var _interopRequireDefault = require("@babel/runtime-corejs3/helpers/interopRequireDefault"); _Object$defineProperty(exports, "__esModule", { value: true }); exports["default"] = void 0; var _classCallCheck2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/classCallCheck")); var _createClass2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/createClass")); var _move_cursor_forward = _interopRequireDefault(require("./move_cursor_forward")); var _move_cursor_back = _interopRequireDefault(require("./move_cursor_back")); /** * @class * @property {int} n * @property {MoveCursorForward|MoveCursorBack} sequence */ var MoveCursorHorizontally = /*#__PURE__*/function () { function MoveCursorHorizontally(n) { (0, _classCallCheck2["default"])(this, MoveCursorHorizontally); this.n = n; this.absoluteN = Math.abs(this.n); this.sequence = n >= 0 ? (0, _move_cursor_forward["default"])(this.absoluteN) : (0, _move_cursor_back["default"])(this.absoluteN); } /** * @method * @param sequence * @returns MoveCursorHorizontally */ (0, _createClass2["default"])(MoveCursorHorizontally, [{ key: "merge", value: function merge(sequence) { return new MoveCursorHorizontally(this.n + sequence.n); } }]); return MoveCursorHorizontally; }(); exports["default"] = MoveCursorHorizontally;