From af7620cef8c3e745105c4b51aa94811cdd0f9165 Mon Sep 17 00:00:00 2001 From: Jarek Radosz Date: Tue, 30 Aug 2022 17:36:20 +0200 Subject: [PATCH] FIX: In prod builds classes may not be "instancesof" EmberObject (#18137) They do have CoreObject in their prototype chain. Fixes the issue mentioned in https://github.com/discourse/discourse-chat/pull/1204 --- .../discourse-common/addon/utils/handle-descriptor.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/app/assets/javascripts/discourse-common/addon/utils/handle-descriptor.js b/app/assets/javascripts/discourse-common/addon/utils/handle-descriptor.js index fb371a7bf4f..d37e19111f8 100644 --- a/app/assets/javascripts/discourse-common/addon/utils/handle-descriptor.js +++ b/app/assets/javascripts/discourse-common/addon/utils/handle-descriptor.js @@ -1,10 +1,11 @@ -import EmberObject, { computed, get } from "@ember/object"; +import CoreObject from "@ember/object/core"; +import { computed, get } from "@ember/object"; import extractValue from "./extract-value"; export default function handleDescriptor(target, key, desc, params = []) { const val = extractValue(desc); - if (typeof val === "function" && target instanceof EmberObject) { + if (typeof val === "function" && target instanceof CoreObject) { // We're in a native class, so convert the method to a getter first desc.writable = false; desc.initializer = undefined;