Ghost/ghost/admin/app/components/gh-notification.js
Kevin Ansfield 7356bfbcd9 Migrated notifications tests to Octane patterns
refs e021843e3f

- fixed closing of alerts due to missing `.args` after migrating to glimmer syntax
- updated related tests for glimmer component syntax
2022-05-25 12:45:26 +01:00

35 lines
814 B
JavaScript

import Component from '@glimmer/component';
import {action} from '@ember/object';
import {inject as service} from '@ember/service';
export default class GhNotification extends Component {
@service notifications;
get typeClass() {
const typeMapping = {
error: 'red',
warn: 'yellow'
};
const type = this.args.message.type;
let classes = '';
if (typeMapping[type] !== undefined) {
classes += `gh-notification-${typeMapping[type]}`;
}
return classes;
}
@action
closeOnFadeOut(event) {
if (event.animationName === 'fade-out') {
this.closeNotification();
}
}
@action
closeNotification() {
this.notifications.closeNotification(this.args.message);
}
}