1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192939495 |
- 'use strict';
- exports.__esModule = true;
- var _typeof = typeof Symbol === "function" && typeof Symbol.iterator === "symbol" ? function (obj) { return typeof obj; } : function (obj) { return obj && typeof Symbol === "function" && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; };
- function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } }
- var cloneNode = function cloneNode(obj, parent) {
- if ((typeof obj === 'undefined' ? 'undefined' : _typeof(obj)) !== 'object') {
- return obj;
- }
- var cloned = new obj.constructor();
- for (var i in obj) {
- if (!obj.hasOwnProperty(i)) {
- continue;
- }
- var value = obj[i];
- var type = typeof value === 'undefined' ? 'undefined' : _typeof(value);
- if (i === 'parent' && type === 'object') {
- if (parent) {
- cloned[i] = parent;
- }
- } else if (value instanceof Array) {
- cloned[i] = value.map(function (j) {
- return cloneNode(j, cloned);
- });
- } else {
- cloned[i] = cloneNode(value, cloned);
- }
- }
- return cloned;
- };
- var _class = function () {
- function _class() {
- var opts = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- _classCallCheck(this, _class);
- Object.assign(this, opts);
- this.spaces = this.spaces || {};
- this.spaces.before = this.spaces.before || '';
- this.spaces.after = this.spaces.after || '';
- }
- _class.prototype.remove = function remove() {
- if (this.parent) {
- this.parent.removeChild(this);
- }
- this.parent = undefined;
- return this;
- };
- _class.prototype.replaceWith = function replaceWith() {
- if (this.parent) {
- for (var index in arguments) {
- this.parent.insertBefore(this, arguments[index]);
- }
- this.remove();
- }
- return this;
- };
- _class.prototype.next = function next() {
- return this.parent.at(this.parent.index(this) + 1);
- };
- _class.prototype.prev = function prev() {
- return this.parent.at(this.parent.index(this) - 1);
- };
- _class.prototype.clone = function clone() {
- var overrides = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};
- var cloned = cloneNode(this);
- for (var name in overrides) {
- cloned[name] = overrides[name];
- }
- return cloned;
- };
- _class.prototype.toString = function toString() {
- return [this.spaces.before, String(this.value), this.spaces.after].join('');
- };
- return _class;
- }();
- exports.default = _class;
- module.exports = exports['default'];
|