UNPKG

ember-legacy-class-transform

Version:
120 lines (102 loc) 8.81 kB
"use strict"; Object.defineProperty(exports, "__esModule", { value: true }); exports.bounds = bounds; exports.single = single; exports.move = move; exports.clear = clear; function _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError("Cannot call a class as a function"); } } var Cursor = exports.Cursor = function Cursor(element, nextSibling) { _classCallCheck(this, Cursor); this.element = element; this.nextSibling = nextSibling; }; var RealDOMBounds = exports.RealDOMBounds = function () { function RealDOMBounds(bounds) { _classCallCheck(this, RealDOMBounds); this.bounds = bounds; } RealDOMBounds.prototype.parentElement = function parentElement() { return this.bounds.parentElement(); }; RealDOMBounds.prototype.firstNode = function firstNode() { return this.bounds.firstNode(); }; RealDOMBounds.prototype.lastNode = function lastNode() { return this.bounds.lastNode(); }; return RealDOMBounds; }(); var ConcreteBounds = exports.ConcreteBounds = function () { function ConcreteBounds(parentNode, first, last) { _classCallCheck(this, ConcreteBounds); this.parentNode = parentNode; this.first = first; this.last = last; } ConcreteBounds.prototype.parentElement = function parentElement() { return this.parentNode; }; ConcreteBounds.prototype.firstNode = function firstNode() { return this.first; }; ConcreteBounds.prototype.lastNode = function lastNode() { return this.last; }; return ConcreteBounds; }(); var SingleNodeBounds = exports.SingleNodeBounds = function () { function SingleNodeBounds(parentNode, node) { _classCallCheck(this, SingleNodeBounds); this.parentNode = parentNode; this.node = node; } SingleNodeBounds.prototype.parentElement = function parentElement() { return this.parentNode; }; SingleNodeBounds.prototype.firstNode = function firstNode() { return this.node; }; SingleNodeBounds.prototype.lastNode = function lastNode() { return this.node; }; return SingleNodeBounds; }(); function bounds(parent, first, last) { return new ConcreteBounds(parent, first, last); } function single(parent, node) { return new SingleNodeBounds(parent, node); } function move(bounds, reference) { var parent = bounds.parentElement(); var first = bounds.firstNode(); var last = bounds.lastNode(); var node = first; while (node) { var next = node.nextSibling; parent.insertBefore(node, reference); if (node === last) return next; node = next; } return null; } function clear(bounds) { var parent = bounds.parentElement(); var first = bounds.firstNode(); var last = bounds.lastNode(); var node = first; while (node) { var next = node.nextSibling; parent.removeChild(node); if (node === last) return next; node = next; } return null; } //# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9ib3VuZHMuanMiXSwibmFtZXMiOlsiQ3Vyc29yIiwiZWxlbWVudCIsIm5leHRTaWJsaW5nIiwiUmVhbERPTUJvdW5kcyIsImJvdW5kcyIsInBhcmVudEVsZW1lbnQiLCJmaXJzdE5vZGUiLCJsYXN0Tm9kZSIsIkNvbmNyZXRlQm91bmRzIiwicGFyZW50Tm9kZSIsImZpcnN0IiwibGFzdCIsIlNpbmdsZU5vZGVCb3VuZHMiLCJub2RlIiwicGFyZW50Iiwic2luZ2xlIiwibW92ZSIsInJlZmVyZW5jZSIsIm5leHQiLCJpbnNlcnRCZWZvcmUiLCJjbGVhciIsInJlbW92ZUNoaWxkIl0sIm1hcHBpbmdzIjoiOzs7OztRQW1ETyxBQUFTO1FBR1QsQUFBUztRQUdULEFBQVM7UUFhVCxBQUFTOzs7OztBQXRFaEI7O0lBQUEsQUFBYSwwQkFDVCxnQkFBQSxBQUFZLFNBQVosQUFBcUIsYUFBYTswQkFDOUI7O1NBQUEsQUFBSyxVQUFMLEFBQWUsQUFDZjtTQUFBLEFBQUssY0FBTCxBQUFtQixBQUN0QjtBQUpMLEFBTUE7SUFBQSxBQUFhLG9EQUNUOzJCQUFBLEFBQVksUUFBUTs4QkFDaEI7O2FBQUEsQUFBSyxTQUFMLEFBQWMsQUFDakI7QUFITDs7NEJBQUEsQUFJSSx5Q0FBZ0IsQUFDWjtlQUFPLEtBQUEsQUFBSyxPQUFaLEFBQU8sQUFBWSxBQUN0QjtBQU5MOzs0QkFBQSxBQU9JLGlDQUFZLEFBQ1I7ZUFBTyxLQUFBLEFBQUssT0FBWixBQUFPLEFBQVksQUFDdEI7QUFUTDs7NEJBQUEsQUFVSSwrQkFBVyxBQUNQO2VBQU8sS0FBQSxBQUFLLE9BQVosQUFBTyxBQUFZLEFBQ3RCO0FBWkw7O1dBQUE7QUFjQTtJQUFBLEFBQWEsc0RBQ1Q7NEJBQUEsQUFBWSxZQUFaLEFBQXdCLE9BQXhCLEFBQStCLE1BQU07OEJBQ2pDOzthQUFBLEFBQUssYUFBTCxBQUFrQixBQUNsQjthQUFBLEFBQUssUUFBTCxBQUFhLEFBQ2I7YUFBQSxBQUFLLE9BQUwsQUFBWSxBQUNmO0FBTEw7OzZCQUFBLEFBTUkseUNBQWdCLEFBQ1o7ZUFBTyxLQUFQLEFBQVksQUFDZjtBQVJMOzs2QkFBQSxBQVNJLGlDQUFZLEFBQ1I7ZUFBTyxLQUFQLEFBQVksQUFDZjtBQVhMOzs2QkFBQSxBQVlJLCtCQUFXLEFBQ1A7ZUFBTyxLQUFQLEFBQVksQUFDZjtBQWRMOztXQUFBO0FBZ0JBO0lBQUEsQUFBYSwwREFDVDs4QkFBQSxBQUFZLFlBQVosQUFBd0IsTUFBTTs4QkFDMUI7O2FBQUEsQUFBSyxhQUFMLEFBQWtCLEFBQ2xCO2FBQUEsQUFBSyxPQUFMLEFBQVksQUFDZjtBQUpMOzsrQkFBQSxBQUtJLHlDQUFnQixBQUNaO2VBQU8sS0FBUCxBQUFZLEFBQ2Y7QUFQTDs7K0JBQUEsQUFRSSxpQ0FBWSxBQUNSO2VBQU8sS0FBUCxBQUFZLEFBQ2Y7QUFWTDs7K0JBQUEsQUFXSSwrQkFBVyxBQUNQO2VBQU8sS0FBUCxBQUFZLEFBQ2Y7QUFiTDs7V0FBQTtBQWVBO0FBQU8sZ0JBQUEsQUFBZ0IsUUFBaEIsQUFBd0IsT0FBeEIsQUFBK0IsTUFBTSxBQUN4QztXQUFPLElBQUEsQUFBSSxlQUFKLEFBQW1CLFFBQW5CLEFBQTJCLE9BQWxDLEFBQU8sQUFBa0MsQUFDNUM7QUFDRDtBQUFPLGdCQUFBLEFBQWdCLFFBQWhCLEFBQXdCLE1BQU0sQUFDakM7V0FBTyxJQUFBLEFBQUksaUJBQUosQUFBcUIsUUFBNUIsQUFBTyxBQUE2QixBQUN2QztBQUNEO0FBQU8sY0FBQSxBQUFjLFFBQWQsQUFBc0IsV0FBVyxBQUNwQztRQUFJLFNBQVMsT0FBYixBQUFhLEFBQU8sQUFDcEI7UUFBSSxRQUFRLE9BQVosQUFBWSxBQUFPLEFBQ25CO1FBQUksT0FBTyxPQUFYLEFBQVcsQUFBTyxBQUNsQjtRQUFJLE9BQUosQUFBVyxBQUNYO1dBQUEsQUFBTyxNQUFNLEFBQ1Q7WUFBSSxPQUFPLEtBQVgsQUFBZ0IsQUFDaEI7ZUFBQSxBQUFPLGFBQVAsQUFBb0IsTUFBcEIsQUFBMEIsQUFDMUI7WUFBSSxTQUFKLEFBQWEsTUFBTSxPQUFBLEFBQU8sQUFDMUI7ZUFBQSxBQUFPLEFBQ1Y7QUFDRDtXQUFBLEFBQU8sQUFDVjtBQUNEO0FBQU8sZUFBQSxBQUFlLFFBQVEsQUFDMUI7UUFBSSxTQUFTLE9BQWIsQUFBYSxBQUFPLEFBQ3BCO1FBQUksUUFBUSxPQUFaLEFBQVksQUFBTyxBQUNuQjtRQUFJLE9BQU8sT0FBWCxBQUFXLEFBQU8sQUFDbEI7UUFBSSxPQUFKLEFBQVcsQUFDWDtXQUFBLEFBQU8sTUFBTSxBQUNUO1lBQUksT0FBTyxLQUFYLEFBQWdCLEFBQ2hCO2VBQUEsQUFBTyxZQUFQLEFBQW1CLEFBQ25CO1lBQUksU0FBSixBQUFhLE1BQU0sT0FBQSxBQUFPLEFBQzFCO2VBQUEsQUFBTyxBQUNWO0FBQ0Q7V0FBQSxBQUFPLEFBQ1YiLCJmaWxlIjoibGliL2JvdW5kcy5qcyIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCBjbGFzcyBDdXJzb3Ige1xuICAgIGNvbnN0cnVjdG9yKGVsZW1lbnQsIG5leHRTaWJsaW5nKSB7XG4gICAgICAgIHRoaXMuZWxlbWVudCA9IGVsZW1lbnQ7XG4gICAgICAgIHRoaXMubmV4dFNpYmxpbmcgPSBuZXh0U2libGluZztcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgUmVhbERPTUJvdW5kcyB7XG4gICAgY29uc3RydWN0b3IoYm91bmRzKSB7XG4gICAgICAgIHRoaXMuYm91bmRzID0gYm91bmRzO1xuICAgIH1cbiAgICBwYXJlbnRFbGVtZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ib3VuZHMucGFyZW50RWxlbWVudCgpO1xuICAgIH1cbiAgICBmaXJzdE5vZGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJvdW5kcy5maXJzdE5vZGUoKTtcbiAgICB9XG4gICAgbGFzdE5vZGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmJvdW5kcy5sYXN0Tm9kZSgpO1xuICAgIH1cbn1cbmV4cG9ydCBjbGFzcyBDb25jcmV0ZUJvdW5kcyB7XG4gICAgY29uc3RydWN0b3IocGFyZW50Tm9kZSwgZmlyc3QsIGxhc3QpIHtcbiAgICAgICAgdGhpcy5wYXJlbnROb2RlID0gcGFyZW50Tm9kZTtcbiAgICAgICAgdGhpcy5maXJzdCA9IGZpcnN0O1xuICAgICAgICB0aGlzLmxhc3QgPSBsYXN0O1xuICAgIH1cbiAgICBwYXJlbnRFbGVtZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlO1xuICAgIH1cbiAgICBmaXJzdE5vZGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmZpcnN0O1xuICAgIH1cbiAgICBsYXN0Tm9kZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubGFzdDtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgU2luZ2xlTm9kZUJvdW5kcyB7XG4gICAgY29uc3RydWN0b3IocGFyZW50Tm9kZSwgbm9kZSkge1xuICAgICAgICB0aGlzLnBhcmVudE5vZGUgPSBwYXJlbnROb2RlO1xuICAgICAgICB0aGlzLm5vZGUgPSBub2RlO1xuICAgIH1cbiAgICBwYXJlbnRFbGVtZW50KCkge1xuICAgICAgICByZXR1cm4gdGhpcy5wYXJlbnROb2RlO1xuICAgIH1cbiAgICBmaXJzdE5vZGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLm5vZGU7XG4gICAgfVxuICAgIGxhc3ROb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ub2RlO1xuICAgIH1cbn1cbmV4cG9ydCBmdW5jdGlvbiBib3VuZHMocGFyZW50LCBmaXJzdCwgbGFzdCkge1xuICAgIHJldHVybiBuZXcgQ29uY3JldGVCb3VuZHMocGFyZW50LCBmaXJzdCwgbGFzdCk7XG59XG5leHBvcnQgZnVuY3Rpb24gc2luZ2xlKHBhcmVudCwgbm9kZSkge1xuICAgIHJldHVybiBuZXcgU2luZ2xlTm9kZUJvdW5kcyhwYXJlbnQsIG5vZGUpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIG1vdmUoYm91bmRzLCByZWZlcmVuY2UpIHtcbiAgICBsZXQgcGFyZW50ID0gYm91bmRzLnBhcmVudEVsZW1lbnQoKTtcbiAgICBsZXQgZmlyc3QgPSBib3VuZHMuZmlyc3ROb2RlKCk7XG4gICAgbGV0IGxhc3QgPSBib3VuZHMubGFzdE5vZGUoKTtcbiAgICBsZXQgbm9kZSA9IGZpcnN0O1xuICAgIHdoaWxlIChub2RlKSB7XG4gICAgICAgIGxldCBuZXh0ID0gbm9kZS5uZXh0U2libGluZztcbiAgICAgICAgcGFyZW50Lmluc2VydEJlZm9yZShub2RlLCByZWZlcmVuY2UpO1xuICAgICAgICBpZiAobm9kZSA9PT0gbGFzdCkgcmV0dXJuIG5leHQ7XG4gICAgICAgIG5vZGUgPSBuZXh0O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn1cbmV4cG9ydCBmdW5jdGlvbiBjbGVhcihib3VuZHMpIHtcbiAgICBsZXQgcGFyZW50ID0gYm91bmRzLnBhcmVudEVsZW1lbnQoKTtcbiAgICBsZXQgZmlyc3QgPSBib3VuZHMuZmlyc3ROb2RlKCk7XG4gICAgbGV0IGxhc3QgPSBib3VuZHMubGFzdE5vZGUoKTtcbiAgICBsZXQgbm9kZSA9IGZpcnN0O1xuICAgIHdoaWxlIChub2RlKSB7XG4gICAgICAgIGxldCBuZXh0ID0gbm9kZS5uZXh0U2libGluZztcbiAgICAgICAgcGFyZW50LnJlbW92ZUNoaWxkKG5vZGUpO1xuICAgICAgICBpZiAobm9kZSA9PT0gbGFzdCkgcmV0dXJuIG5leHQ7XG4gICAgICAgIG5vZGUgPSBuZXh0O1xuICAgIH1cbiAgICByZXR1cm4gbnVsbDtcbn0iXX0=