mirror of
https://github.com/discourse/discourse.git
synced 2024-11-30 06:33:39 +08:00
c34f8b65cb
As of #23867 this is now a real package, so updating the imports to use the real package name, rather than relying on the alias. The name change in the package name is because `I18n` is not a valid name as NPM packages must be all lowercase. This commit also introduces an eslint rule to prevent importing from the old I18n path. For themes/plugins, the old 'i18n' name remains functional.
24 lines
774 B
JavaScript
24 lines
774 B
JavaScript
import Component from "@ember/component";
|
|
import discourseComputed from "discourse-common/utils/decorators";
|
|
import I18n from "discourse-i18n";
|
|
|
|
export default Component.extend({
|
|
pluginApiIdentifiers: ["pinned-button"],
|
|
descriptionKey: "help",
|
|
classNames: "pinned-button",
|
|
classNameBindings: ["isHidden"],
|
|
|
|
@discourseComputed("topic.pinned_globally", "pinned")
|
|
reasonText(pinnedGlobally, pinned) {
|
|
const globally = pinnedGlobally ? "_globally" : "";
|
|
const pinnedKey = pinned ? `pinned${globally}` : "unpinned";
|
|
const key = `topic_statuses.${pinnedKey}.help`;
|
|
return I18n.t(key);
|
|
},
|
|
|
|
@discourseComputed("pinned", "topic.deleted", "topic.unpinned")
|
|
isHidden(pinned, deleted, unpinned) {
|
|
return deleted || (!pinned && !unpinned);
|
|
},
|
|
});
|