2021-12-21 18:35:31 +01:00
|
|
|
import UserRelatedState from "../Logic/State/UserRelatedState"
|
2021-10-15 05:20:02 +02:00
|
|
|
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"
|
2023-03-26 05:58:28 +02:00
|
|
|
import LanguagePicker from "./LanguagePicker"
|
2021-10-17 03:35:13 +02:00
|
|
|
import IndexText from "./BigComponents/IndexText"
|
2023-01-06 04:21:34 +01:00
|
|
|
import { LoginToggle } from "./Popup/LoginButton"
|
2023-03-26 05:58:28 +02:00
|
|
|
import { ImmutableStore } from "../Logic/UIEventSource"
|
|
|
|
import { OsmConnection } from "../Logic/Osm/OsmConnection"
|
2023-06-14 20:39:36 +02:00
|
|
|
import { QueryParameters } from "../Logic/Web/QueryParameters"
|
|
|
|
import { OsmConnectionFeatureSwitches } from "../Logic/State/FeatureSwitchState"
|
2021-10-15 05:20:02 +02:00
|
|
|
|
|
|
|
export default class AllThemesGui {
|
2022-04-08 04:36:00 +02:00
|
|
|
setup() {
|
2021-11-07 16:34:51 +01:00
|
|
|
try {
|
2023-05-25 20:09:42 +02:00
|
|
|
const featureSwitches = new OsmConnectionFeatureSwitches()
|
|
|
|
const osmConnection = new OsmConnection({
|
|
|
|
fakeUser: featureSwitches.featureSwitchFakeUser.data,
|
|
|
|
oauth_token: QueryParameters.GetQueryParameter(
|
|
|
|
"oauth_token",
|
|
|
|
undefined,
|
|
|
|
"Used to complete the login"
|
|
|
|
),
|
|
|
|
osmConfiguration: <"osm" | "osm-test">featureSwitches.featureSwitchApiURL.data,
|
|
|
|
})
|
2023-03-26 05:58:28 +02:00
|
|
|
const state = new UserRelatedState(osmConnection)
|
2021-11-07 16:34:51 +01:00
|
|
|
const intro = new Combine([
|
2023-06-14 20:39:36 +02:00
|
|
|
new LanguagePicker(
|
|
|
|
Translations.t.index.title.SupportedLanguages(),
|
|
|
|
state.language
|
|
|
|
).SetClass("flex absolute top-2 right-3"),
|
2021-11-07 16:34:51 +01:00
|
|
|
new IndexText(),
|
|
|
|
])
|
|
|
|
new Combine([
|
|
|
|
intro,
|
|
|
|
new MoreScreen(state, true),
|
2023-03-26 05:58:28 +02:00
|
|
|
new LoginToggle(undefined, Translations.t.index.logIn, {
|
|
|
|
osmConnection,
|
|
|
|
featureSwitchUserbadge: new ImmutableStore(true),
|
2023-05-22 01:37:02 +02:00
|
|
|
}).SetClass("flex justify-center w-full"),
|
2023-04-20 17:42:07 +02:00
|
|
|
Translations.t.general.aboutMapComplete.intro.SetClass("link-underline"),
|
|
|
|
new FixedUiElement("v" + Constants.vNumber).SetClass("block"),
|
2021-11-07 16:34:51 +01:00
|
|
|
])
|
|
|
|
.SetClass("block m-5 lg:w-3/4 lg:ml-40")
|
2023-03-29 17:21:20 +02:00
|
|
|
.AttachTo("main")
|
2021-11-07 16:34:51 +01:00
|
|
|
} catch (e) {
|
2021-12-21 18:35:31 +01:00
|
|
|
console.error(">>>> CRITICAL", e)
|
2021-11-05 01:19:27 +01:00
|
|
|
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
|
|
|
)
|
2021-11-05 01:19:27 +01:00
|
|
|
.SetClass("alert")
|
2023-03-29 17:21:20 +02:00
|
|
|
.AttachTo("main")
|
2021-11-05 01:19:27 +01:00
|
|
|
}
|
2021-10-15 05:20:02 +02:00
|
|
|
}
|
2021-11-05 01:19:27 +01:00
|
|
|
}
|