Files
threshold-ui/addons/core/addon/components/session-status/index.js
T
Dharini Jeeva ee8182e262 feat: 🎸 badge migration in sessions admin ui (#1437)
* chore: badge migration in sessions admin ui
2022-11-11 14:14:31 -08:00

40 lines
1.1 KiB
JavaScript

import Component from '@glimmer/component';
const STATUS_MAPPING = {
//map session status to hds text color and icon style
//more info - https://design-system-components-hashicorp.vercel.app/components/badge
active: { color: 'success', icon: 'check', type: 'filled', text: 'Active' },
pending: { color: 'neutral', icon: 'delay', type: 'filled', text: 'Pending' },
canceling: {
color: 'warning',
icon: 'alert-triangle',
type: 'filled',
text: 'Canceling',
},
terminated: {
color: 'critical',
icon: 'x',
type: 'filled',
text: 'Terminated',
},
};
export default class SessionStatus extends Component {
//any status that do not belong in the mapping above, will have a neutral style with outlined badge
get statusBadgeColor() {
return STATUS_MAPPING[this.args.model.status]?.color || 'neutral';
}
get statusBadgeIcon() {
return STATUS_MAPPING[this.args.model.status]?.icon;
}
get statusBadgeType() {
return STATUS_MAPPING[this.args.model.status]?.type || 'outlined';
}
get statusBadgeText() {
return STATUS_MAPPING[this.args.model.status]?.text;
}
}