import computed from 'ember-addons/ember-computed-decorators'; import { escapeExpression } from 'discourse/lib/utilities'; export default Ember.Component.extend({ classNames: ['group-flair-inputs'], @computed demoAvatarUrl() { return Discourse.getURL('/images/avatar.png'); }, @computed('model.flair_url') flairPreviewIcon(flairURL) { return flairURL && flairURL.substr(0,3) === 'fa-'; }, @computed('model.flair_url', 'flairPreviewIcon') flairPreviewImage(flairURL, flairPreviewIcon) { return flairURL && !flairPreviewIcon; }, @computed('model.flair_url', 'flairPreviewImage', 'model.flairBackgroundHexColor', 'model.flairHexColor') flairPreviewStyle(flairURL, flairPreviewImage, flairBackgroundHexColor, flairHexColor) { let style = ''; if (flairPreviewImage) { style += `background-image: url(${escapeExpression(flairURL)});`; } if (flairBackgroundHexColor) { style += `background-color: #${flairBackgroundHexColor};`; } if (flairHexColor) style += `color: #${flairHexColor};`; return style; }, @computed('model.flairBackgroundHexColor') flairPreviewClasses(flairBackgroundHexColor) { if (flairBackgroundHexColor) return 'rounded'; }, @computed('flairPreviewImage') flairPreviewLabel(flairPreviewImage) { const key = flairPreviewImage ? 'image' : 'icon'; return I18n.t(`groups.flair_preview_${key}`); } });