import Component from "@glimmer/component"; import { hash } from "@ember/helper"; import { LinkTo } from "@ember/routing"; import concatClass from "discourse/helpers/concat-class"; import dIcon from "discourse-common/helpers/d-icon"; import i18n from "discourse-common/helpers/i18n"; import { DangerButton, DefaultButton, PrimaryButton, } from "admin/components/admin-page-action-button"; export default class AdminSectionLandingItem extends Component { get title() { if (this.args.titleLabelTranslated) { return this.args.titleLabelTranslated; } else if (this.args.titleLabel) { return i18n(this.args.titleLabel); } } get description() { if (this.args.descriptionLabelTranslated) { return this.args.descriptionLabelTranslated; } else if (this.args.descriptionLabel) { return i18n(this.args.descriptionLabel); } } get tagline() { if (this.args.taglineLabelTranslated) { return this.args.taglineLabelTranslated; } else if (this.args.taglineLabel) { return i18n(this.args.taglineLabel); } } <template> <div class={{concatClass "admin-section-landing-item" (if @icon "-has-icon")}} ...attributes > {{#if @imageUrl}} <img class="admin-section-landing-item__image" src={{@imageUrl}} /> {{/if}} {{#if @icon}} <div class="admin-section-landing-item__icon"> {{dIcon @icon}} </div> {{/if}} <div class="admin-section-landing-item__content"> {{#if this.tagline}} <h4 class="admin-section-landing-item__tagline">{{this.tagline}}</h4> {{/if}} {{#if @titleRoute}} <LinkTo @route={{@titleRoute}}><h3 class="admin-section-landing-item__title" >{{this.title}}</h3></LinkTo> {{else}} <h3 class="admin-section-landing-item__title">{{this.title}}</h3> {{/if}} <p class="admin-section-landing-item__description" >{{this.description}}</p> </div> <div class="admin-section-landing-item__buttons"> {{yield (hash Primary=PrimaryButton Default=DefaultButton Danger=DangerButton) to="buttons" }} </div> </div> </template> }