ember-legacy-class-transform
Version:
The default blueprint for ember-cli addons.
73 lines (55 loc) • 6.11 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
var _runtime = require("@glimmer/runtime");
function _defaults(obj, defaults) {
var keys = Object.getOwnPropertyNames(defaults);for (var i = 0; i < keys.length; i++) {
var key = keys[i];var value = Object.getOwnPropertyDescriptor(defaults, key);if (value && value.configurable && obj[key] === undefined) {
Object.defineProperty(obj, key, value);
}
}return obj;
}
function _classCallCheck(instance, Constructor) {
if (!(instance instanceof Constructor)) {
throw new TypeError("Cannot call a class as a function");
}
}
function _possibleConstructorReturn(self, call) {
if (!self) {
throw new ReferenceError("this hasn't been initialised - super() hasn't been called");
}return call && (typeof call === "object" || typeof call === "function") ? call : self;
}
function _inherits(subClass, superClass) {
if (typeof superClass !== "function" && superClass !== null) {
throw new TypeError("Super expression must either be null or a function, not " + typeof superClass);
}subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } });if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : _defaults(subClass, superClass);
}
var NodeDOMTreeConstruction = function (_DOMTreeConstruction) {
_inherits(NodeDOMTreeConstruction, _DOMTreeConstruction);
function NodeDOMTreeConstruction(doc) {
_classCallCheck(this, NodeDOMTreeConstruction);
return _possibleConstructorReturn(this, _DOMTreeConstruction.call(this, doc));
}
// override to prevent usage of `this.document` until after the constructor
NodeDOMTreeConstruction.prototype.setupUselessElement = function setupUselessElement() {};
NodeDOMTreeConstruction.prototype.insertHTMLBefore = function insertHTMLBefore(parent, reference, html) {
var prev = reference ? reference.previousSibling : parent.lastChild;
var raw = this.document.createRawHTMLSection(html);
parent.insertBefore(raw, reference);
var first = prev ? prev.nextSibling : parent.firstChild;
var last = reference ? reference.previousSibling : parent.lastChild;
return new _runtime.ConcreteBounds(parent, first, last);
};
// override to avoid SVG detection/work when in node (this is not needed in SSR)
NodeDOMTreeConstruction.prototype.createElement = function createElement(tag) {
return this.document.createElement(tag);
};
// override to avoid namespace shenanigans when in node (this is not needed in SSR)
NodeDOMTreeConstruction.prototype.setAttribute = function setAttribute(element, name, value) {
element.setAttribute(name, value);
};
return NodeDOMTreeConstruction;
}(_runtime.DOMTreeConstruction);
exports.default = NodeDOMTreeConstruction;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbImxpYi9ub2RlLWRvbS1oZWxwZXIuanMiXSwibmFtZXMiOlsiRE9NVHJlZUNvbnN0cnVjdGlvbiIsIkNvbmNyZXRlQm91bmRzIiwiTm9kZURPTVRyZWVDb25zdHJ1Y3Rpb24iLCJkb2MiLCJzZXR1cFVzZWxlc3NFbGVtZW50IiwiaW5zZXJ0SFRNTEJlZm9yZSIsInBhcmVudCIsInJlZmVyZW5jZSIsImh0bWwiLCJwcmV2IiwicHJldmlvdXNTaWJsaW5nIiwibGFzdENoaWxkIiwicmF3IiwiZG9jdW1lbnQiLCJjcmVhdGVSYXdIVE1MU2VjdGlvbiIsImluc2VydEJlZm9yZSIsImZpcnN0IiwibmV4dFNpYmxpbmciLCJmaXJzdENoaWxkIiwibGFzdCIsImNyZWF0ZUVsZW1lbnQiLCJ0YWciLCJzZXRBdHRyaWJ1dGUiLCJlbGVtZW50IiwibmFtZSIsInZhbHVlIl0sIm1hcHBpbmdzIjoiOzs7Ozs7QUFBQSxBQUFTLEFBQVQsQUFBOEIsQUFBOUIsQUFBb0QsQUFBcEQ7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7Ozs7SUFDcUIsQTt1Q0FDakI7O3FDQUFZLEFBQVosS0FBaUI7OEJBQUE7O2dEQUNiLGdDQUFNLEFBQU4sQUFEYSxBQUVoQjtBQUNEOzs7O3NDQUNBLEEscURBQXNCLEFBQUUsQzs7c0NBQ3hCLEEsNkNBQWlCLEEsUUFBUSxBLFdBQVcsQSxNQUFNLEFBQ3RDO1lBQUksT0FBTyxZQUFZLFVBQVUsQUFBdEIsa0JBQXdDLE9BQU8sQUFBMUQsQUFDQTtZQUFJLE1BQU0sS0FBSyxBQUFMLFNBQWMsQUFBZCxxQkFBbUMsQUFBbkMsQUFBVixBQUNBO2VBQU8sQUFBUCxhQUFvQixBQUFwQixLQUF5QixBQUF6QixBQUNBO1lBQUksUUFBUSxPQUFPLEtBQUssQUFBWixjQUEwQixPQUFPLEFBQTdDLEFBQ0E7WUFBSSxPQUFPLFlBQVksVUFBVSxBQUF0QixrQkFBd0MsT0FBTyxBQUExRCxBQUNBO2VBQU8sQUFBSSxBQUFKLDRCQUFtQixBQUFuQixRQUEyQixBQUEzQixPQUFrQyxBQUFsQyxBQUFQLEFBQ0g7QSxBQUNEOzs7O3NDQUNBLEEsdUNBQWMsQSxLQUFLLEFBQ2Y7ZUFBTyxLQUFLLEFBQUwsU0FBYyxBQUFkLGNBQTRCLEFBQTVCLEFBQVAsQUFDSDtBLEFBQ0Q7Ozs7c0NBQ0EsQSxxQ0FBYSxBLFNBQVMsQSxNQUFNLEEsT0FBTyxBQUMvQjtnQkFBUSxBQUFSLGFBQXFCLEFBQXJCLE1BQTJCLEFBQTNCLEFBQ0g7QTs7O0FBckJnRCxBOztrQkFBaEMsQSIsImZpbGUiOiJsaWIvbm9kZS1kb20taGVscGVyLmpzIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRE9NVHJlZUNvbnN0cnVjdGlvbiwgQ29uY3JldGVCb3VuZHMgfSBmcm9tICdAZ2xpbW1lci9ydW50aW1lJztcbmV4cG9ydCBkZWZhdWx0IGNsYXNzIE5vZGVET01UcmVlQ29uc3RydWN0aW9uIGV4dGVuZHMgRE9NVHJlZUNvbnN0cnVjdGlvbiB7XG4gICAgY29uc3RydWN0b3IoZG9jKSB7XG4gICAgICAgIHN1cGVyKGRvYyk7XG4gICAgfVxuICAgIC8vIG92ZXJyaWRlIHRvIHByZXZlbnQgdXNhZ2Ugb2YgYHRoaXMuZG9jdW1lbnRgIHVudGlsIGFmdGVyIHRoZSBjb25zdHJ1Y3RvclxuICAgIHNldHVwVXNlbGVzc0VsZW1lbnQoKSB7fVxuICAgIGluc2VydEhUTUxCZWZvcmUocGFyZW50LCByZWZlcmVuY2UsIGh0bWwpIHtcbiAgICAgICAgbGV0IHByZXYgPSByZWZlcmVuY2UgPyByZWZlcmVuY2UucHJldmlvdXNTaWJsaW5nIDogcGFyZW50Lmxhc3RDaGlsZDtcbiAgICAgICAgbGV0IHJhdyA9IHRoaXMuZG9jdW1lbnQuY3JlYXRlUmF3SFRNTFNlY3Rpb24oaHRtbCk7XG4gICAgICAgIHBhcmVudC5pbnNlcnRCZWZvcmUocmF3LCByZWZlcmVuY2UpO1xuICAgICAgICBsZXQgZmlyc3QgPSBwcmV2ID8gcHJldi5uZXh0U2libGluZyA6IHBhcmVudC5maXJzdENoaWxkO1xuICAgICAgICBsZXQgbGFzdCA9IHJlZmVyZW5jZSA/IHJlZmVyZW5jZS5wcmV2aW91c1NpYmxpbmcgOiBwYXJlbnQubGFzdENoaWxkO1xuICAgICAgICByZXR1cm4gbmV3IENvbmNyZXRlQm91bmRzKHBhcmVudCwgZmlyc3QsIGxhc3QpO1xuICAgIH1cbiAgICAvLyBvdmVycmlkZSB0byBhdm9pZCBTVkcgZGV0ZWN0aW9uL3dvcmsgd2hlbiBpbiBub2RlICh0aGlzIGlzIG5vdCBuZWVkZWQgaW4gU1NSKVxuICAgIGNyZWF0ZUVsZW1lbnQodGFnKSB7XG4gICAgICAgIHJldHVybiB0aGlzLmRvY3VtZW50LmNyZWF0ZUVsZW1lbnQodGFnKTtcbiAgICB9XG4gICAgLy8gb3ZlcnJpZGUgdG8gYXZvaWQgbmFtZXNwYWNlIHNoZW5hbmlnYW5zIHdoZW4gaW4gbm9kZSAodGhpcyBpcyBub3QgbmVlZGVkIGluIFNTUilcbiAgICBzZXRBdHRyaWJ1dGUoZWxlbWVudCwgbmFtZSwgdmFsdWUpIHtcbiAgICAgICAgZWxlbWVudC5zZXRBdHRyaWJ1dGUobmFtZSwgdmFsdWUpO1xuICAgIH1cbn0iXX0=