2024-12-11 23:51:58 +00:00
|
|
|
import {data as c} from 'hafas-client/p/db/loyalty-cards.js'; // TODO remove hafas-client dep?
|
2017-11-12 23:51:39 +01:00
|
|
|
|
|
|
|
// see https://gist.github.com/juliuste/202bb04f450a79f8fa12a2ec3abcd72d
|
|
|
|
const formatLoyaltyCard = (data) => {
|
2024-12-07 23:48:08 +00:00
|
|
|
if (!data) {
|
|
|
|
return {
|
2024-12-08 21:42:57 +00:00
|
|
|
art: 'KEINE_ERMAESSIGUNG',
|
|
|
|
klasse: 'KLASSENLOS',
|
|
|
|
};
|
2024-12-07 23:48:08 +00:00
|
|
|
}
|
|
|
|
const cls = data.class === 1 ? 'KLASSE_1' : 'KLASSE_2';
|
|
|
|
if (data.type === c.BAHNCARD) {
|
|
|
|
return {
|
2024-12-08 21:42:57 +00:00
|
|
|
art: 'BAHNCARD' + data.discount,
|
|
|
|
klasse: cls,
|
|
|
|
};
|
2017-11-12 23:51:39 +01:00
|
|
|
}
|
2024-02-06 22:58:49 +01:00
|
|
|
if (data.type === c.VORTEILSCARD) {
|
2024-12-07 23:48:08 +00:00
|
|
|
return {
|
|
|
|
art: 'A-VORTEILSCARD',
|
2024-12-08 21:42:57 +00:00
|
|
|
klasse: 'KLASSENLOS',
|
|
|
|
};
|
2024-02-06 22:58:49 +01:00
|
|
|
}
|
|
|
|
if (data.type === c.HALBTAXABO) {
|
2024-12-07 23:48:08 +00:00
|
|
|
return {
|
|
|
|
art: 'CH-HALBTAXABO_OHNE_RAILPLUS',
|
2024-12-08 21:42:57 +00:00
|
|
|
klasse: 'KLASSENLOS',
|
|
|
|
};
|
2024-02-06 22:58:49 +01:00
|
|
|
}
|
2024-12-07 23:48:08 +00:00
|
|
|
// TODO Rest
|
2024-02-06 22:58:49 +01:00
|
|
|
if (data.type === c.GENERALABONNEMENT) {
|
2024-12-07 23:48:08 +00:00
|
|
|
return {
|
|
|
|
art: 'CH-GENERAL-ABONNEMENT',
|
2024-12-08 21:42:57 +00:00
|
|
|
klasse: cls,
|
|
|
|
};
|
2024-02-06 22:58:49 +01:00
|
|
|
}
|
2024-12-07 23:48:08 +00:00
|
|
|
return {
|
2024-12-08 21:42:57 +00:00
|
|
|
art: 'KEINE_ERMAESSIGUNG',
|
|
|
|
klasse: 'KLASSENLOS',
|
|
|
|
};
|
2023-12-28 10:39:20 +01:00
|
|
|
};
|
2022-05-07 16:17:37 +02:00
|
|
|
export {
|
|
|
|
c as data,
|
2024-12-08 21:42:57 +00:00
|
|
|
formatLoyaltyCard,
|
2024-02-06 22:58:49 +01:00
|
|
|
};
|