@glimmer/runtime
Version:
Minimal runtime needed to render Glimmer templates
67 lines (51 loc) • 4.86 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", {
value: true
});
exports.default = void 0;
var _destroyable = require("@glimmer/destroyable");
var _bounds = require("../bounds");
var _update = _interopRequireDefault(require("./update"));
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
var RenderResultImpl = /*#__PURE__*/function () {
function RenderResultImpl(env, updating, bounds, drop) {
var _this = this;
this.env = env;
this.updating = updating;
this.bounds = bounds;
this.drop = drop;
(0, _destroyable.associateDestroyableChild)(this, drop);
(0, _destroyable.registerDestructor)(this, function () {
return (0, _bounds.clear)(_this.bounds);
});
}
var _proto = RenderResultImpl.prototype;
_proto.rerender = function rerender(_temp) {
var _ref = _temp === void 0 ? {
alwaysRevalidate: false
} : _temp,
_ref$alwaysRevalidate = _ref.alwaysRevalidate,
alwaysRevalidate = _ref$alwaysRevalidate === void 0 ? false : _ref$alwaysRevalidate;
var env = this.env,
updating = this.updating;
var vm = new _update.default(env, {
alwaysRevalidate: alwaysRevalidate
});
vm.execute(updating, this);
};
_proto.parentElement = function parentElement() {
return this.bounds.parentElement();
};
_proto.firstNode = function firstNode() {
return this.bounds.firstNode();
};
_proto.lastNode = function lastNode() {
return this.bounds.lastNode();
};
_proto.handleException = function handleException() {
throw 'this should never happen';
};
return RenderResultImpl;
}();
exports.default = RenderResultImpl;
//# sourceMappingURL=data:application/json;charset=utf-8;base64,eyJ2ZXJzaW9uIjozLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3BhY2thZ2VzL0BnbGltbWVyL3J1bnRpbWUvbGliL3ZtL3JlbmRlci1yZXN1bHQudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7OztBQUNBOztBQUVBOztBQUNBOzs7O0lBRWMsZ0I7QUFDWixXQUFBLGdCQUFBLENBQUEsR0FBQSxFQUFBLFFBQUEsRUFBQSxNQUFBLEVBQUEsSUFBQSxFQUl1QjtBQUFBLFFBQUEsS0FBQSxHQUFBLElBQUE7O0FBSGQsU0FBQSxHQUFBLEdBQUEsR0FBQTtBQUNDLFNBQUEsUUFBQSxHQUFBLFFBQUE7QUFDQSxTQUFBLE1BQUEsR0FBQSxNQUFBO0FBQ0MsU0FBQSxJQUFBLEdBQUEsSUFBQTtBQUVULGdEQUF5QixJQUF6QixFQUFBLElBQUE7QUFDQSx5Q0FBa0IsSUFBbEIsRUFBeUIsWUFBQTtBQUFBLGFBQU0sbUJBQU0sS0FBQSxDQUFyQyxNQUErQixDQUFOO0FBQXpCLEtBQUE7QUFDRDs7OztTQUVELFEsR0FBQSxTQUFBLFFBQUEsQ0FBQSxLQUFBLEVBQW1FO0FBQUEsUUFBQSxJQUFBLEdBQUEsS0FBQSxLQUFBLEtBQUEsQ0FBQSxHQUEzQjtBQUFFLE1BQUEsZ0JBQWdCLEVBQUU7QUFBcEIsS0FBMkIsR0FBQSxLQUFBO0FBQUEsUUFBQSxxQkFBQSxHQUFBLElBQUEsQ0FBeEQsZ0JBQXdEO0FBQUEsUUFBeEQsZ0JBQXdELEdBQUEscUJBQUEsS0FBQSxLQUFBLENBQUEsR0FBckMsS0FBcUMsR0FBQSxxQkFBQTs7QUFBQSxRQUM3RCxHQUQ2RCxHQUFBLEtBQUEsR0FBQTtBQUFBLFFBQ3RELFFBRHNELEdBQUEsS0FBQSxRQUFBO0FBRWpFLFFBQUksRUFBRSxHQUFHLElBQUEsZUFBQSxDQUFBLEdBQUEsRUFBd0I7QUFBRSxNQUFBLGdCQUFBLEVBQUE7QUFBRixLQUF4QixDQUFUO0FBQ0EsSUFBQSxFQUFFLENBQUYsT0FBQSxDQUFBLFFBQUEsRUFBQSxJQUFBOzs7U0FHRixhLEdBQUEsU0FBQSxhQUFBLEdBQWE7QUFDWCxXQUFPLEtBQUEsTUFBQSxDQUFQLGFBQU8sRUFBUDs7O1NBR0YsUyxHQUFBLFNBQUEsU0FBQSxHQUFTO0FBQ1AsV0FBTyxLQUFBLE1BQUEsQ0FBUCxTQUFPLEVBQVA7OztTQUdGLFEsR0FBQSxTQUFBLFFBQUEsR0FBUTtBQUNOLFdBQU8sS0FBQSxNQUFBLENBQVAsUUFBTyxFQUFQOzs7U0FHRixlLEdBQUEsU0FBQSxlQUFBLEdBQWU7QUFDYixVQUFBLDBCQUFBIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgRW52aXJvbm1lbnQsIFJlbmRlclJlc3VsdCwgTGl2ZUJsb2NrLCBVcGRhdGluZ09wY29kZSB9IGZyb20gJ0BnbGltbWVyL2ludGVyZmFjZXMnO1xuaW1wb3J0IHsgYXNzb2NpYXRlRGVzdHJveWFibGVDaGlsZCwgcmVnaXN0ZXJEZXN0cnVjdG9yIH0gZnJvbSAnQGdsaW1tZXIvZGVzdHJveWFibGUnO1xuaW1wb3J0IHsgU2ltcGxlRWxlbWVudCwgU2ltcGxlTm9kZSB9IGZyb20gJ0BzaW1wbGUtZG9tL2ludGVyZmFjZSc7XG5pbXBvcnQgeyBjbGVhciB9IGZyb20gJy4uL2JvdW5kcyc7XG5pbXBvcnQgVXBkYXRpbmdWTUltcGwgZnJvbSAnLi91cGRhdGUnO1xuXG5leHBvcnQgZGVmYXVsdCBjbGFzcyBSZW5kZXJSZXN1bHRJbXBsIGltcGxlbWVudHMgUmVuZGVyUmVzdWx0IHtcbiAgY29uc3RydWN0b3IoXG4gICAgcHVibGljIGVudjogRW52aXJvbm1lbnQsXG4gICAgcHJpdmF0ZSB1cGRhdGluZzogVXBkYXRpbmdPcGNvZGVbXSxcbiAgICBwcml2YXRlIGJvdW5kczogTGl2ZUJsb2NrLFxuICAgIHJlYWRvbmx5IGRyb3A6IG9iamVjdFxuICApIHtcbiAgICBhc3NvY2lhdGVEZXN0cm95YWJsZUNoaWxkKHRoaXMsIGRyb3ApO1xuICAgIHJlZ2lzdGVyRGVzdHJ1Y3Rvcih0aGlzLCAoKSA9PiBjbGVhcih0aGlzLmJvdW5kcykpO1xuICB9XG5cbiAgcmVyZW5kZXIoeyBhbHdheXNSZXZhbGlkYXRlID0gZmFsc2UgfSA9IHsgYWx3YXlzUmV2YWxpZGF0ZTogZmFsc2UgfSkge1xuICAgIGxldCB7IGVudiwgdXBkYXRpbmcgfSA9IHRoaXM7XG4gICAgbGV0IHZtID0gbmV3IFVwZGF0aW5nVk1JbXBsKGVudiwgeyBhbHdheXNSZXZhbGlkYXRlIH0pO1xuICAgIHZtLmV4ZWN1dGUodXBkYXRpbmcsIHRoaXMpO1xuICB9XG5cbiAgcGFyZW50RWxlbWVudCgpOiBTaW1wbGVFbGVtZW50IHtcbiAgICByZXR1cm4gdGhpcy5ib3VuZHMucGFyZW50RWxlbWVudCgpO1xuICB9XG5cbiAgZmlyc3ROb2RlKCk6IFNpbXBsZU5vZGUge1xuICAgIHJldHVybiB0aGlzLmJvdW5kcy5maXJzdE5vZGUoKTtcbiAgfVxuXG4gIGxhc3ROb2RlKCk6IFNpbXBsZU5vZGUge1xuICAgIHJldHVybiB0aGlzLmJvdW5kcy5sYXN0Tm9kZSgpO1xuICB9XG5cbiAgaGFuZGxlRXhjZXB0aW9uKCkge1xuICAgIHRocm93ICd0aGlzIHNob3VsZCBuZXZlciBoYXBwZW4nO1xuICB9XG59XG4iXSwic291cmNlUm9vdCI6IiJ9