From d0ac6c33c6066b9db01c7eda186b5230068674c7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=A9rgio=20Saquetim?= <1108771+megothss@users.noreply.github.com> Date: Wed, 29 May 2024 15:40:29 -0300 Subject: [PATCH] DEV: Prevent possible Ember rendering error on Chat::DeleteChannel modal (#27248) Under some circumstances, the TextField component could trigger a `Assertion Failed: You attempted to update attrs on ..., but it had already been used previously in the same computation...` error, causing the Ember app to crash. --- .../components/chat/modal/delete-channel.gjs | 21 ++++++++++++------- 1 file changed, 13 insertions(+), 8 deletions(-) diff --git a/plugins/chat/assets/javascripts/discourse/components/chat/modal/delete-channel.gjs b/plugins/chat/assets/javascripts/discourse/components/chat/modal/delete-channel.gjs index 4584401fd3d..dbb33287653 100644 --- a/plugins/chat/assets/javascripts/discourse/components/chat/modal/delete-channel.gjs +++ b/plugins/chat/assets/javascripts/discourse/components/chat/modal/delete-channel.gjs @@ -1,12 +1,14 @@ import Component from "@glimmer/component"; import { tracked } from "@glimmer/tracking"; +import { fn } from "@ember/helper"; +import { on } from "@ember/modifier"; import { action } from "@ember/object"; import { service } from "@ember/service"; import { htmlSafe } from "@ember/template"; import { isEmpty } from "@ember/utils"; import DButton from "discourse/components/d-button"; import DModal from "discourse/components/d-modal"; -import TextField from "discourse/components/text-field"; +import withEventValue from "discourse/helpers/with-event-value"; import { popupAjaxError } from "discourse/lib/ajax-error"; import i18n from "discourse-common/helpers/i18n"; import discourseLater from "discourse-common/lib/later"; @@ -83,13 +85,16 @@ export default class ChatModalDeleteChannel extends Component {

{{this.instructionsText}}

- - <:footer>