import {Tag} from "../../../Logic/Tags";
import Translations from "../../../UI/i18n/Translations";
import Combine from "../../../UI/Base/Combine";
import {TagRenderingOptions} from "../../TagRenderingOptions";
class ParkingTypeHelper {
static GenerateMappings() {
const images = {
stands: "assets/bike/parking_staple.svg",
wall_loops: "assets/bike/parking_wall_loops.svg",
handlebar_holder: "assets/bike/parking_handlebar_holder.svg",
rack: "assets/bike/parking_rack.svg",
shed: "assets/bike/parking_shed.svg"
};
const toImg = (url) => `
`
const mappings = [];
const to = Translations.t.cyclofix.parking.type
for (const imagesKey in images) {
const mapping =
{
k: new Tag("bicycle_parking", imagesKey),
txt: new Combine([
to[imagesKey],
to.eg,
toImg(images[imagesKey])
])
};
mappings.push(mapping);
}
return mappings;
}
}
export default class ParkingType extends TagRenderingOptions {
constructor() {
const to = Translations.t.cyclofix.parking.type
super({
priority: 5,
question: to.question,
freeform: {
key: "bicycle_parking",
extraTags: new Tag("fixme", "Freeform bicycle_parking= tag used: possibly a wrong value"),
template: to.template.txt,
renderTemplate: to.render.txt,
placeholder: Translations.t.cyclofix.freeFormPlaceholder,
},
mappings: ParkingTypeHelper.GenerateMappings()
});
}
}