ember-legacy-class-transform
Version:
The default blueprint for ember-cli addons.
97 lines (96 loc) • 8.1 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.bounds = bounds;
exports.single = single;
exports.move = move;
exports.clear = clear;
class Cursor {
constructor(element, nextSibling) {
this.element = element;
this.nextSibling = nextSibling;
}
}
exports.Cursor = Cursor;
class RealDOMBounds {
constructor(bounds) {
this.bounds = bounds;
}
parentElement() {
return this.bounds.parentElement();
}
firstNode() {
return this.bounds.firstNode();
}
lastNode() {
return this.bounds.lastNode();
}
}
exports.RealDOMBounds = RealDOMBounds;
class ConcreteBounds {
constructor(parentNode, first, last) {
this.parentNode = parentNode;
this.first = first;
this.last = last;
}
parentElement() {
return this.parentNode;
}
firstNode() {
return this.first;
}
lastNode() {
return this.last;
}
}
exports.ConcreteBounds = ConcreteBounds;
class SingleNodeBounds {
constructor(parentNode, node) {
this.parentNode = parentNode;
this.node = node;
}
parentElement() {
return this.parentNode;
}
firstNode() {
return this.node;
}
lastNode() {
return this.node;
}
}
exports.SingleNodeBounds = 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) {
let parent = bounds.parentElement();
let first = bounds.firstNode();
let last = bounds.lastNode();
let node = first;
while (node) {
let next = node.nextSibling;
parent.insertBefore(node, reference);
if (node === last) return next;
node = next;
}
return null;
}
function clear(bounds) {
let parent = bounds.parentElement();
let first = bounds.firstNode();
let last = bounds.lastNode();
let node = first;
while (node) {
let next = node.nextSibling;
parent.removeChild(node);
if (node === last) return next;
node = next;
}
return null;
}
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9ib3VuZHMuanMiXSwibmFtZXMiOlsiYm91bmRzIiwic2luZ2xlIiwibW92ZSIsImNsZWFyIiwiQ3Vyc29yIiwiY29uc3RydWN0b3IiLCJlbGVtZW50IiwibmV4dFNpYmxpbmciLCJSZWFsRE9NQm91bmRzIiwicGFyZW50RWxlbWVudCIsImZpcnN0Tm9kZSIsImxhc3ROb2RlIiwiQ29uY3JldGVCb3VuZHMiLCJwYXJlbnROb2RlIiwiZmlyc3QiLCJsYXN0IiwiU2luZ2xlTm9kZUJvdW5kcyIsIm5vZGUiLCJwYXJlbnQiLCJyZWZlcmVuY2UiLCJuZXh0IiwiaW5zZXJ0QmVmb3JlIiwicmVtb3ZlQ2hpbGQiXSwibWFwcGluZ3MiOiI7Ozs7O1FBbURnQkEsTSxHQUFBQSxNO1FBR0FDLE0sR0FBQUEsTTtRQUdBQyxJLEdBQUFBLEk7UUFhQUMsSyxHQUFBQSxLO0FBdEVULE1BQU1DLE1BQU4sQ0FBYTtBQUNoQkMsZ0JBQVlDLE9BQVosRUFBcUJDLFdBQXJCLEVBQWtDO0FBQzlCLGFBQUtELE9BQUwsR0FBZUEsT0FBZjtBQUNBLGFBQUtDLFdBQUwsR0FBbUJBLFdBQW5CO0FBQ0g7QUFKZTtRQUFQSCxNLEdBQUFBLE07QUFNTixNQUFNSSxhQUFOLENBQW9CO0FBQ3ZCSCxnQkFBWUwsTUFBWixFQUFvQjtBQUNoQixhQUFLQSxNQUFMLEdBQWNBLE1BQWQ7QUFDSDtBQUNEUyxvQkFBZ0I7QUFDWixlQUFPLEtBQUtULE1BQUwsQ0FBWVMsYUFBWixFQUFQO0FBQ0g7QUFDREMsZ0JBQVk7QUFDUixlQUFPLEtBQUtWLE1BQUwsQ0FBWVUsU0FBWixFQUFQO0FBQ0g7QUFDREMsZUFBVztBQUNQLGVBQU8sS0FBS1gsTUFBTCxDQUFZVyxRQUFaLEVBQVA7QUFDSDtBQVpzQjtRQUFkSCxhLEdBQUFBLGE7QUFjTixNQUFNSSxjQUFOLENBQXFCO0FBQ3hCUCxnQkFBWVEsVUFBWixFQUF3QkMsS0FBeEIsRUFBK0JDLElBQS9CLEVBQXFDO0FBQ2pDLGFBQUtGLFVBQUwsR0FBa0JBLFVBQWxCO0FBQ0EsYUFBS0MsS0FBTCxHQUFhQSxLQUFiO0FBQ0EsYUFBS0MsSUFBTCxHQUFZQSxJQUFaO0FBQ0g7QUFDRE4sb0JBQWdCO0FBQ1osZUFBTyxLQUFLSSxVQUFaO0FBQ0g7QUFDREgsZ0JBQVk7QUFDUixlQUFPLEtBQUtJLEtBQVo7QUFDSDtBQUNESCxlQUFXO0FBQ1AsZUFBTyxLQUFLSSxJQUFaO0FBQ0g7QUFkdUI7UUFBZkgsYyxHQUFBQSxjO0FBZ0JOLE1BQU1JLGdCQUFOLENBQXVCO0FBQzFCWCxnQkFBWVEsVUFBWixFQUF3QkksSUFBeEIsRUFBOEI7QUFDMUIsYUFBS0osVUFBTCxHQUFrQkEsVUFBbEI7QUFDQSxhQUFLSSxJQUFMLEdBQVlBLElBQVo7QUFDSDtBQUNEUixvQkFBZ0I7QUFDWixlQUFPLEtBQUtJLFVBQVo7QUFDSDtBQUNESCxnQkFBWTtBQUNSLGVBQU8sS0FBS08sSUFBWjtBQUNIO0FBQ0ROLGVBQVc7QUFDUCxlQUFPLEtBQUtNLElBQVo7QUFDSDtBQWJ5QjtRQUFqQkQsZ0IsR0FBQUEsZ0I7QUFlTixTQUFTaEIsTUFBVCxDQUFnQmtCLE1BQWhCLEVBQXdCSixLQUF4QixFQUErQkMsSUFBL0IsRUFBcUM7QUFDeEMsV0FBTyxJQUFJSCxjQUFKLENBQW1CTSxNQUFuQixFQUEyQkosS0FBM0IsRUFBa0NDLElBQWxDLENBQVA7QUFDSDtBQUNNLFNBQVNkLE1BQVQsQ0FBZ0JpQixNQUFoQixFQUF3QkQsSUFBeEIsRUFBOEI7QUFDakMsV0FBTyxJQUFJRCxnQkFBSixDQUFxQkUsTUFBckIsRUFBNkJELElBQTdCLENBQVA7QUFDSDtBQUNNLFNBQVNmLElBQVQsQ0FBY0YsTUFBZCxFQUFzQm1CLFNBQXRCLEVBQWlDO0FBQ3BDLFFBQUlELFNBQVNsQixPQUFPUyxhQUFQLEVBQWI7QUFDQSxRQUFJSyxRQUFRZCxPQUFPVSxTQUFQLEVBQVo7QUFDQSxRQUFJSyxPQUFPZixPQUFPVyxRQUFQLEVBQVg7QUFDQSxRQUFJTSxPQUFPSCxLQUFYO0FBQ0EsV0FBT0csSUFBUCxFQUFhO0FBQ1QsWUFBSUcsT0FBT0gsS0FBS1YsV0FBaEI7QUFDQVcsZUFBT0csWUFBUCxDQUFvQkosSUFBcEIsRUFBMEJFLFNBQTFCO0FBQ0EsWUFBSUYsU0FBU0YsSUFBYixFQUFtQixPQUFPSyxJQUFQO0FBQ25CSCxlQUFPRyxJQUFQO0FBQ0g7QUFDRCxXQUFPLElBQVA7QUFDSDtBQUNNLFNBQVNqQixLQUFULENBQWVILE1BQWYsRUFBdUI7QUFDMUIsUUFBSWtCLFNBQVNsQixPQUFPUyxhQUFQLEVBQWI7QUFDQSxRQUFJSyxRQUFRZCxPQUFPVSxTQUFQLEVBQVo7QUFDQSxRQUFJSyxPQUFPZixPQUFPVyxRQUFQLEVBQVg7QUFDQSxRQUFJTSxPQUFPSCxLQUFYO0FBQ0EsV0FBT0csSUFBUCxFQUFhO0FBQ1QsWUFBSUcsT0FBT0gsS0FBS1YsV0FBaEI7QUFDQVcsZUFBT0ksV0FBUCxDQUFtQkwsSUFBbkI7QUFDQSxZQUFJQSxTQUFTRixJQUFiLEVBQW1CLE9BQU9LLElBQVA7QUFDbkJILGVBQU9HLElBQVA7QUFDSDtBQUNELFdBQU8sSUFBUDtBQUNIIiwiZmlsZSI6ImxpYi9ib3VuZHMuanMiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgY2xhc3MgQ3Vyc29yIHtcbiAgICBjb25zdHJ1Y3RvcihlbGVtZW50LCBuZXh0U2libGluZykge1xuICAgICAgICB0aGlzLmVsZW1lbnQgPSBlbGVtZW50O1xuICAgICAgICB0aGlzLm5leHRTaWJsaW5nID0gbmV4dFNpYmxpbmc7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIFJlYWxET01Cb3VuZHMge1xuICAgIGNvbnN0cnVjdG9yKGJvdW5kcykge1xuICAgICAgICB0aGlzLmJvdW5kcyA9IGJvdW5kcztcbiAgICB9XG4gICAgcGFyZW50RWxlbWVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMuYm91bmRzLnBhcmVudEVsZW1lbnQoKTtcbiAgICB9XG4gICAgZmlyc3ROb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ib3VuZHMuZmlyc3ROb2RlKCk7XG4gICAgfVxuICAgIGxhc3ROb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ib3VuZHMubGFzdE5vZGUoKTtcbiAgICB9XG59XG5leHBvcnQgY2xhc3MgQ29uY3JldGVCb3VuZHMge1xuICAgIGNvbnN0cnVjdG9yKHBhcmVudE5vZGUsIGZpcnN0LCBsYXN0KSB7XG4gICAgICAgIHRoaXMucGFyZW50Tm9kZSA9IHBhcmVudE5vZGU7XG4gICAgICAgIHRoaXMuZmlyc3QgPSBmaXJzdDtcbiAgICAgICAgdGhpcy5sYXN0ID0gbGFzdDtcbiAgICB9XG4gICAgcGFyZW50RWxlbWVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZTtcbiAgICB9XG4gICAgZmlyc3ROb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5maXJzdDtcbiAgICB9XG4gICAgbGFzdE5vZGUoKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmxhc3Q7XG4gICAgfVxufVxuZXhwb3J0IGNsYXNzIFNpbmdsZU5vZGVCb3VuZHMge1xuICAgIGNvbnN0cnVjdG9yKHBhcmVudE5vZGUsIG5vZGUpIHtcbiAgICAgICAgdGhpcy5wYXJlbnROb2RlID0gcGFyZW50Tm9kZTtcbiAgICAgICAgdGhpcy5ub2RlID0gbm9kZTtcbiAgICB9XG4gICAgcGFyZW50RWxlbWVudCgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMucGFyZW50Tm9kZTtcbiAgICB9XG4gICAgZmlyc3ROb2RlKCkge1xuICAgICAgICByZXR1cm4gdGhpcy5ub2RlO1xuICAgIH1cbiAgICBsYXN0Tm9kZSgpIHtcbiAgICAgICAgcmV0dXJuIHRoaXMubm9kZTtcbiAgICB9XG59XG5leHBvcnQgZnVuY3Rpb24gYm91bmRzKHBhcmVudCwgZmlyc3QsIGxhc3QpIHtcbiAgICByZXR1cm4gbmV3IENvbmNyZXRlQm91bmRzKHBhcmVudCwgZmlyc3QsIGxhc3QpO1xufVxuZXhwb3J0IGZ1bmN0aW9uIHNpbmdsZShwYXJlbnQsIG5vZGUpIHtcbiAgICByZXR1cm4gbmV3IFNpbmdsZU5vZGVCb3VuZHMocGFyZW50LCBub2RlKTtcbn1cbmV4cG9ydCBmdW5jdGlvbiBtb3ZlKGJvdW5kcywgcmVmZXJlbmNlKSB7XG4gICAgbGV0IHBhcmVudCA9IGJvdW5kcy5wYXJlbnRFbGVtZW50KCk7XG4gICAgbGV0IGZpcnN0ID0gYm91bmRzLmZpcnN0Tm9kZSgpO1xuICAgIGxldCBsYXN0ID0gYm91bmRzLmxhc3ROb2RlKCk7XG4gICAgbGV0IG5vZGUgPSBmaXJzdDtcbiAgICB3aGlsZSAobm9kZSkge1xuICAgICAgICBsZXQgbmV4dCA9IG5vZGUubmV4dFNpYmxpbmc7XG4gICAgICAgIHBhcmVudC5pbnNlcnRCZWZvcmUobm9kZSwgcmVmZXJlbmNlKTtcbiAgICAgICAgaWYgKG5vZGUgPT09IGxhc3QpIHJldHVybiBuZXh0O1xuICAgICAgICBub2RlID0gbmV4dDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59XG5leHBvcnQgZnVuY3Rpb24gY2xlYXIoYm91bmRzKSB7XG4gICAgbGV0IHBhcmVudCA9IGJvdW5kcy5wYXJlbnRFbGVtZW50KCk7XG4gICAgbGV0IGZpcnN0ID0gYm91bmRzLmZpcnN0Tm9kZSgpO1xuICAgIGxldCBsYXN0ID0gYm91bmRzLmxhc3ROb2RlKCk7XG4gICAgbGV0IG5vZGUgPSBmaXJzdDtcbiAgICB3aGlsZSAobm9kZSkge1xuICAgICAgICBsZXQgbmV4dCA9IG5vZGUubmV4dFNpYmxpbmc7XG4gICAgICAgIHBhcmVudC5yZW1vdmVDaGlsZChub2RlKTtcbiAgICAgICAgaWYgKG5vZGUgPT09IGxhc3QpIHJldHVybiBuZXh0O1xuICAgICAgICBub2RlID0gbmV4dDtcbiAgICB9XG4gICAgcmV0dXJuIG51bGw7XG59Il19