import Combine from "../Base/Combine" import { FlowStep } from "./FlowStep" import { UIEventSource } from "../../Logic/UIEventSource" import Translations from "../i18n/Translations" import Title from "../Base/Title" import { CreateNotes } from "./CreateNotes" import { FixedUiElement } from "../Base/FixedUiElement" export default class Introdution extends Combine implements FlowStep<void> { readonly IsValid: UIEventSource<boolean> readonly Value: UIEventSource<void> constructor() { const example = CreateNotes.createNoteContentsUi( { properties: { some_key: "some_value", note: "a note in the original dataset", }, geometry: { coordinates: [3.4, 51.2], }, }, { wikilink: "https://wiki.openstreetmap.org/wiki/Imports/<documentation of your import>", intro: "There might be an XYZ here", theme: "theme", source: "source of the data", } ).map((el) => (el === "" ? new FixedUiElement("").SetClass("block") : el)) super([ new Title(Translations.t.importHelper.introduction.title), Translations.t.importHelper.introduction.description, Translations.t.importHelper.introduction.importFormat, new Combine([new Combine(example).SetClass("flex flex-col")]).SetClass("literal-code"), ]) this.SetClass("flex flex-col") this.IsValid = new UIEventSource<boolean>(true) this.Value = new UIEventSource<void>(undefined) } }