import Component from "@ember/component"; import discourseComputed from "discourse-common/utils/decorators"; import { not, notEmpty } from "@ember/object/computed"; import I18n from "I18n"; export default Component.extend({ classNameBindings: [ ":wizard-notice", "notice.type", "dismissed", "expired", "resolved", ], showFull: false, resolved: notEmpty("notice.expired_at"), dismissed: notEmpty("notice.dismissed_at"), canDismiss: not("dismissed"), @discourseComputed("notice.type") title(type) { return I18n.t(`admin.wizard.notice.title.${type}`); }, @discourseComputed("notice.type") icon(type) { return { plugin_status_warning: "exclamation-circle", plugin_status_connection_error: "bolt", subscription_messages_connection_error: "bolt", info: "info-circle", }[type]; }, actions: { dismiss() { this.set("dismissing", true); this.notice.dismiss().then(() => { this.set("dismissing", false); }); }, }, });