@firestone-hs/replay-parser
Version:
This library was generated with [Angular CLI](https://github.com/angular/angular-cli) version 8.2.9.
29 lines • 4.27 kB
JavaScript
import { ChoiceType } from '@firestone-hs/reference-data';
import { DiscoverAction } from '../../models/action/discover-action';
import { ChoicesHistoryItem } from '../../models/history/choices-history-item';
export class DiscoverParser {
constructor(allCards) {
this.allCards = allCards;
}
applies(item) {
return item instanceof ChoicesHistoryItem;
}
parse(item, currentTurn, entitiesBeforeAction, history) {
if (item.choices.type !== ChoiceType.GENERAL) {
return [];
}
return [
DiscoverAction.create({
timestamp: item.timestamp,
index: item.index,
originId: item.choices.source,
ownerId: item.choices.playerID,
choices: item.choices.cards,
}, this.allCards),
];
}
reduce(actions) {
return actions;
}
}
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZGlzY292ZXItcGFyc2VyLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvcmVwbGF5LXBhcnNlci9zcmMvbGliL3NlcnZpY2VzL2FjdGlvbi9kaXNjb3Zlci1wYXJzZXIudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxFQUFFLFVBQVUsRUFBRSxNQUFNLDhCQUE4QixDQUFDO0FBRzFELE9BQU8sRUFBRSxjQUFjLEVBQUUsTUFBTSxxQ0FBcUMsQ0FBQztBQUVyRSxPQUFPLEVBQUUsa0JBQWtCLEVBQUUsTUFBTSwyQ0FBMkMsQ0FBQztBQUsvRSxNQUFNLE9BQU8sY0FBYztJQUMxQixZQUFvQixRQUF5QjtRQUF6QixhQUFRLEdBQVIsUUFBUSxDQUFpQjtJQUFHLENBQUM7SUFFMUMsT0FBTyxDQUFDLElBQWlCO1FBQy9CLE9BQU8sSUFBSSxZQUFZLGtCQUFrQixDQUFDO0lBQzNDLENBQUM7SUFFTSxLQUFLLENBQ1gsSUFBd0IsRUFDeEIsV0FBbUIsRUFDbkIsb0JBQXlDLEVBQ3pDLE9BQStCO1FBRS9CLElBQUksSUFBSSxDQUFDLE9BQU8sQ0FBQyxJQUFJLEtBQUssVUFBVSxDQUFDLE9BQU8sRUFBRTtZQUM3QyxPQUFPLEVBQUUsQ0FBQztTQUNWO1FBQ0QsT0FBTztZQUNOLGNBQWMsQ0FBQyxNQUFNLENBQ3BCO2dCQUNDLFNBQVMsRUFBRSxJQUFJLENBQUMsU0FBUztnQkFDekIsS0FBSyxFQUFFLElBQUksQ0FBQyxLQUFLO2dCQUNqQixRQUFRLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxNQUFNO2dCQUM3QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxRQUFRO2dCQUM5QixPQUFPLEVBQUUsSUFBSSxDQUFDLE9BQU8sQ0FBQyxLQUEwQjthQUM5QixFQUNuQixJQUFJLENBQUMsUUFBUSxDQUNiO1NBQ0QsQ0FBQztJQUNILENBQUM7SUFFTSxNQUFNLENBQUMsT0FBMEI7UUFDdkMsT0FBTyxPQUFPLENBQUM7SUFDaEIsQ0FBQztDQUNEIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hvaWNlVHlwZSB9IGZyb20gJ0BmaXJlc3RvbmUtaHMvcmVmZXJlbmNlLWRhdGEnO1xyXG5pbXBvcnQgeyBNYXAgfSBmcm9tICdpbW11dGFibGUnO1xyXG5pbXBvcnQgeyBBY3Rpb24gfSBmcm9tICcuLi8uLi9tb2RlbHMvYWN0aW9uL2FjdGlvbic7XHJcbmltcG9ydCB7IERpc2NvdmVyQWN0aW9uIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2FjdGlvbi9kaXNjb3Zlci1hY3Rpb24nO1xyXG5pbXBvcnQgeyBFbnRpdHkgfSBmcm9tICcuLi8uLi9tb2RlbHMvZ2FtZS9lbnRpdHknO1xyXG5pbXBvcnQgeyBDaG9pY2VzSGlzdG9yeUl0ZW0gfSBmcm9tICcuLi8uLi9tb2RlbHMvaGlzdG9yeS9jaG9pY2VzLWhpc3RvcnktaXRlbSc7XHJcbmltcG9ydCB7IEhpc3RvcnlJdGVtIH0gZnJvbSAnLi4vLi4vbW9kZWxzL2hpc3RvcnkvaGlzdG9yeS1pdGVtJztcclxuaW1wb3J0IHsgQWxsQ2FyZHNTZXJ2aWNlIH0gZnJvbSAnLi4vYWxsLWNhcmRzLnNlcnZpY2UnO1xyXG5pbXBvcnQgeyBQYXJzZXIgfSBmcm9tICcuL3BhcnNlcic7XHJcblxyXG5leHBvcnQgY2xhc3MgRGlzY292ZXJQYXJzZXIgaW1wbGVtZW50cyBQYXJzZXIge1xyXG5cdGNvbnN0cnVjdG9yKHByaXZhdGUgYWxsQ2FyZHM6IEFsbENhcmRzU2VydmljZSkge31cclxuXHJcblx0cHVibGljIGFwcGxpZXMoaXRlbTogSGlzdG9yeUl0ZW0pOiBib29sZWFuIHtcclxuXHRcdHJldHVybiBpdGVtIGluc3RhbmNlb2YgQ2hvaWNlc0hpc3RvcnlJdGVtO1xyXG5cdH1cclxuXHJcblx0cHVibGljIHBhcnNlKFxyXG5cdFx0aXRlbTogQ2hvaWNlc0hpc3RvcnlJdGVtLFxyXG5cdFx0Y3VycmVudFR1cm46IG51bWJlcixcclxuXHRcdGVudGl0aWVzQmVmb3JlQWN0aW9uOiBNYXA8bnVtYmVyLCBFbnRpdHk+LFxyXG5cdFx0aGlzdG9yeTogcmVhZG9ubHkgSGlzdG9yeUl0ZW1bXSxcclxuXHQpOiBBY3Rpb25bXSB7XHJcblx0XHRpZiAoaXRlbS5jaG9pY2VzLnR5cGUgIT09IENob2ljZVR5cGUuR0VORVJBTCkge1xyXG5cdFx0XHRyZXR1cm4gW107XHJcblx0XHR9XHJcblx0XHRyZXR1cm4gW1xyXG5cdFx0XHREaXNjb3ZlckFjdGlvbi5jcmVhdGUoXHJcblx0XHRcdFx0e1xyXG5cdFx0XHRcdFx0dGltZXN0YW1wOiBpdGVtLnRpbWVzdGFtcCxcclxuXHRcdFx0XHRcdGluZGV4OiBpdGVtLmluZGV4LFxyXG5cdFx0XHRcdFx0b3JpZ2luSWQ6IGl0ZW0uY2hvaWNlcy5zb3VyY2UsXHJcblx0XHRcdFx0XHRvd25lcklkOiBpdGVtLmNob2ljZXMucGxheWVySUQsXHJcblx0XHRcdFx0XHRjaG9pY2VzOiBpdGVtLmNob2ljZXMuY2FyZHMgYXMgcmVhZG9ubHkgbnVtYmVyW10sXHJcblx0XHRcdFx0fSBhcyBEaXNjb3ZlckFjdGlvbixcclxuXHRcdFx0XHR0aGlzLmFsbENhcmRzLFxyXG5cdFx0XHQpLFxyXG5cdFx0XTtcclxuXHR9XHJcblxyXG5cdHB1YmxpYyByZWR1Y2UoYWN0aW9uczogcmVhZG9ubHkgQWN0aW9uW10pOiByZWFkb25seSBBY3Rpb25bXSB7XHJcblx0XHRyZXR1cm4gYWN0aW9ucztcclxuXHR9XHJcbn1cclxuIl19