Files
Eventment/app/domain/TicketClass.js

28 lines
464 B
JavaScript

import { List, Record } from 'immutable';
export default class TicketClass extends Record({
available: 0,
capacity: 0,
endSale: null,
id: null,
itemId: null,
name: null,
price: 0,
startSale: null,
}) {
get isAlmostGone() {
return this.available < (this.capacity * 0.20);
}
get isSoldOut() {
return this.available === 0;
}
}
TicketClass.fromJS = (data = {}) => {
return new TicketClass({
id: data._id,
...data,
});
};