MapComplete/src/UI/InputElement/Validators/OpeningHoursValidator.ts

42 lines
1.6 KiB
TypeScript

import { Validator } from "../Validator"
import MarkdownUtils from "../../../Utils/MarkdownUtils"
export default class OpeningHoursValidator extends Validator {
constructor() {
super(
"opening_hours",
[
"Has extra elements to easily input when a POI is opened.",
"#### Helper arguments",
"Only one helper argument named `options` can be provided. It is a JSON-object of type `{ prefix: string, postfix: string }`:",
MarkdownUtils.table(
["subarg", "doc"],
[
[
"prefix",
"Piece of text that will always be added to the front of the generated opening hours. If the OSM-data does not start with this, it will fail to parse.",
],
[
"postfix",
"Piece of text that will always be added to the end of the generated opening hours",
],
]
),
"#### Example usage",
"To add a conditional (based on time) access restriction:\n\n```\n" +
`
"freeform": {
"key": "access:conditional",
"type": "opening_hours",
"helperArgs": [
{
"prefix":"no @ (",
"postfix":")"
}
]
}` +
"\n```\n\n*Don't forget to pass the prefix and postfix in the rendering as well*: `{opening_hours_table(opening_hours,yes @ &LPARENS, &RPARENS )`",
].join("\n")
)
}
}