import Component from "@glimmer/component"; import { action, computed } from "@ember/object"; import { inject as service } from "@ember/service"; import I18n from "I18n"; export default class extends Component { static shouldRender(args) { return (args.model.related_topics?.length || 0) > 0; } @service store; @service site; @service moreTopicsPreferenceTracking; listId = "related-topics"; @computed("moreTopicsPreferenceTracking.selectedTab") get hidden() { return this.moreTopicsPreferenceTracking.selectedTab !== this.listId; } get relatedTopics() { return this.args.outletArgs.model.related_topics.map((topic) => this.store.createRecord("topic", topic) ); } @action registerList() { this.moreTopicsPreferenceTracking.registerTopicList({ name: I18n.t("discourse_ai.related_topics.pill"), id: this.listId, icon: "discourse-sparkles", }); } @action removeList() { this.moreTopicsPreferenceTracking.removeTopicList(this.listId); } }