mapcomplete/UI/AllThemesGui.ts

Ignoring revisions in .git-blame-ignore-revs. Click here to bypass and see the normal blame view.

60 lines
2.5 KiB
TypeScript
Raw Normal View History

2021-12-21 18:35:31 +01:00
import UserRelatedState from "../Logic/State/UserRelatedState"
import { FixedUiElement } from "./Base/FixedUiElement"
import Combine from "./Base/Combine"
import MoreScreen from "./BigComponents/MoreScreen"
import Translations from "./i18n/Translations"
import Constants from "../Models/Constants"
2021-10-16 18:30:24 +02:00
import { Utils } from "../Utils"
import LanguagePicker1 from "./LanguagePicker"
import IndexText from "./BigComponents/IndexText"
import FeaturedMessage from "./BigComponents/FeaturedMessage"
import Toggle from "./Input/Toggle"
import { SubtleButton } from "./Base/SubtleButton"
2022-01-25 21:55:51 +01:00
import { VariableUiElement } from "./Base/VariableUIElement"
import Svg from "../Svg"
2022-12-16 13:44:25 +01:00
import { ImportViewerLinks } from "./BigComponents/UserInformation"
export default class AllThemesGui {
2022-04-08 04:36:00 +02:00
setup() {
2021-11-07 16:34:51 +01:00
try {
new FixedUiElement("").AttachTo("centermessage")
const state = new UserRelatedState(undefined)
2021-11-07 16:34:51 +01:00
const intro = new Combine([
new LanguagePicker1(Translations.t.index.title.SupportedLanguages(), "").SetClass(
"flex absolute top-2 right-3"
),
2021-11-07 16:34:51 +01:00
new IndexText(),
])
new Combine([
intro,
2022-01-25 21:55:51 +01:00
new FeaturedMessage().SetClass("mb-4 block"),
2021-11-07 16:34:51 +01:00
new MoreScreen(state, true),
new Toggle(
undefined,
new SubtleButton(undefined, Translations.t.index.logIn)
.SetStyle("height:min-content")
.onClick(() => state.osmConnection.AttemptLogin()),
state.osmConnection.isLoggedIn
),
2022-12-16 13:44:25 +01:00
new ImportViewerLinks(state.osmConnection).SetClass(
"p-4 border-2 border-gray-500 m-4 block"
),
2021-11-07 16:34:51 +01:00
Translations.t.general.aboutMapcomplete
.Subs({ osmcha_link: Utils.OsmChaLinkFor(7) })
.SetClass("link-underline"),
new FixedUiElement("v" + Constants.vNumber),
])
.SetClass("block m-5 lg:w-3/4 lg:ml-40")
.SetStyle("pointer-events: all;")
.AttachTo("topleft-tools")
} catch (e) {
2021-12-21 18:35:31 +01:00
console.error(">>>> CRITICAL", e)
new FixedUiElement(
"Seems like no layers are compiled - check the output of `npm run generate:layeroverview`. Is this visible online? Contact pietervdvn immediately!"
2022-09-08 21:40:48 +02:00
)
.SetClass("alert")
.AttachTo("centermessage")
}
}
}