41 lines
1.5 KiB
TypeScript
41 lines
1.5 KiB
TypeScript
import journey_wrapper from './types/wrapper';
|
|
|
|
/* LIST HELPERS */
|
|
export const filter_selected = function (journey: journey_wrapper, list: geoloc[], step: boolean) {
|
|
return list.filter((e) =>
|
|
step ? e.step == journey.sel_day : e.step >= 0,
|
|
);
|
|
}
|
|
|
|
export const filter_unselected = function (list: geoloc[]) {
|
|
return list.filter((e) => e.step == undefined || e.step < 0);
|
|
}
|
|
|
|
export const remove_item = function (list: geoloc[], idx: number) {
|
|
list[idx].step = -1;
|
|
list.splice(idx, 1);
|
|
}
|
|
|
|
|
|
/* JOURNEY ADD/RM ITEM HELPER */
|
|
export const journey_add_place = function (journey: journey_wrapper, tpe: String, item: geoloc) {
|
|
switch (tpe) {
|
|
case 'hotel': return journey.leg_get().hotel = item;
|
|
case 'restaurant': return journey.leg_get().places.restaurants.push(item);
|
|
case 'place': return journey.leg_get().places.activities.push(item);
|
|
case 'other': return;
|
|
case 'flight': return journey.leg_get().travel.push(item);
|
|
}
|
|
}
|
|
|
|
export const journey_del_place = function (journey: journey_wrapper, tpe: String, idx: number) {
|
|
console.log(tpe)
|
|
switch (tpe) {
|
|
case "hotel": return journey.leg_get().hotel = null;
|
|
case "restaurants": return journey.leg_get().places.restaurants.splice(idx, 1);
|
|
case "activities": return journey.leg_get().places.activities.splice(idx, 1);
|
|
case "other": return;
|
|
case "flight": return journey.leg_get().travel.splice(idx, 1);
|
|
default: return true;
|
|
}
|
|
} |