discourse/app/assets/javascripts/select-kit/addon/components/pinned-button.js

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

27 lines
956 B
JavaScript
Raw Normal View History

import Component from "@ember/component";
import { classNameBindings, classNames } from "@ember-decorators/component";
import discourseComputed from "discourse-common/utils/decorators";
import { i18n } from "discourse-i18n";
import { pluginApiIdentifiers } from "select-kit/components/select-kit";
@classNames("pinned-button")
@classNameBindings("isHidden")
@pluginApiIdentifiers("pinned-button")
export default class PinnedButton extends Component {
descriptionKey = "help";
appendReason = true;
@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(key);
}
@discourseComputed("pinned", "topic.deleted", "topic.unpinned")
2017-10-20 03:51:08 +08:00
isHidden(pinned, deleted, unpinned) {
return deleted || (!pinned && !unpinned);
}
}