@golemio/parkings
Version:
Golemio Parkings Module
33 lines • 1.3 kB
JavaScript
;
Object.defineProperty(exports, "__esModule", { value: true });
exports.TskParkingFilter = void 0;
class TskParkingFilter {
filterUniqueParkings(data) {
const filtered = new Map();
const invalidDuplicates = [];
for (const parking of data) {
if (filtered.has(parking.properties.tarifTab)) {
let conflictingParking = filtered.get(parking.properties.tarifTab);
if (!this.isSameParking(parking, conflictingParking)) {
filtered.delete(parking.properties.tarifTab);
invalidDuplicates.push(parking.properties.tarifTab);
}
}
else if (!invalidDuplicates.includes(parking.properties.tarifTab)) {
filtered.set(parking.properties.tarifTab, parking);
}
}
return Array.from(filtered.values());
}
isSameParking(a, b) {
const props = ["tarifTab", "ps_zps_celkem", "typZony", "platnostOd", "platnostDo", "ulice", "TARIF", "CTARIF"];
for (const p of props) {
if (a.properties[p] !== b.properties[p]) {
return false;
}
}
return true;
}
}
exports.TskParkingFilter = TskParkingFilter;
//# sourceMappingURL=TskParkingFilter.js.map