From 1a31a403cefda7ead706076cc0a0decdb38a80c8 Mon Sep 17 00:00:00 2001 From: Blake Erickson Date: Fri, 10 Jan 2020 18:19:23 -0700 Subject: [PATCH] DEV: Remove buffered-render file This is the last and final commit in a multi-commit refactor to remove all uses of buffered-render. Previous commit: fc94b6cb9ee709a6744dc0da477f4a37e43d37e4 in this series. --- .../lib/buffered-render.js.es6 | 46 ------------------- 1 file changed, 46 deletions(-) delete mode 100644 app/assets/javascripts/discourse-common/lib/buffered-render.js.es6 diff --git a/app/assets/javascripts/discourse-common/lib/buffered-render.js.es6 b/app/assets/javascripts/discourse-common/lib/buffered-render.js.es6 deleted file mode 100644 index d3d301212ae..00000000000 --- a/app/assets/javascripts/discourse-common/lib/buffered-render.js.es6 +++ /dev/null @@ -1,46 +0,0 @@ -import { scheduleOnce } from "@ember/runloop"; -// Ember 2.0 removes buffered rendering, but we can still implement it ourselves. -// In the long term we'll want to remove this. - -const Mixin = { - _customRender() { - if (!this.element || this.isDestroying || this.isDestroyed) { - return; - } - - const buffer = []; - this.buildBuffer(buffer); - this.element.innerHTML = buffer.join(""); - }, - - rerenderBuffer() { - scheduleOnce("render", this, this._customRender); - } -}; - -export function bufferedRender(obj) { - if (!obj.buildBuffer) { - Ember.warn("Missing `buildBuffer` method", { - id: "discourse.buffered-render.missing-build-buffer" - }); - return obj; - } - - const caller = {}; - - caller.didRender = function() { - this._super(...arguments); - this._customRender(); - }; - - const triggers = obj.rerenderTriggers; - if (triggers) { - caller.init = function() { - this._super(...arguments); - triggers.forEach(k => this.addObserver(k, this.rerenderBuffer)); - }; - } - delete obj.rerenderTriggers; - - return Ember.Mixin.create(Mixin, caller, obj); -}