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" ;
2021-10-16 18:30:24 +02:00
import { Utils } from "../Utils" ;
2021-10-17 03:35:13 +02:00
import LanguagePicker from "./LanguagePicker" ;
import IndexText from "./BigComponents/IndexText" ;
import FeaturedMessage from "./BigComponents/FeaturedMessage" ;
2021-11-22 00:50:29 +01:00
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" ;
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 {
new FixedUiElement ( "" ) . AttachTo ( "centermessage" )
2021-11-22 00:50:29 +01:00
const state = new UserRelatedState ( undefined ) ;
2021-11-07 16:34:51 +01:00
const intro = new Combine ( [
2021-11-22 00:50:29 +01:00
2021-11-07 16:34:51 +01:00
LanguagePicker . CreateLanguagePicker ( Translations . t . index . title . SupportedLanguages ( ) )
2021-11-22 00:50:29 +01:00
. 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 ) ,
2021-11-22 00:50:29 +01:00
new Toggle (
undefined ,
new SubtleButton ( undefined , Translations . t . index . logIn ) . SetStyle ( "height:min-content" ) . onClick ( ( ) = > state . osmConnection . AttemptLogin ( ) ) ,
state . osmConnection . isLoggedIn ) ,
2022-01-25 21:55:51 +01:00
new VariableUiElement ( state . osmConnection . userDetails . map ( ud = > {
2022-01-26 21:40:38 +01:00
if ( ud . csCount < Constants . userJourney . importHelperUnlock ) {
2022-01-25 21:55:51 +01:00
return undefined ;
}
return new Combine ( [
2022-01-26 21:40:38 +01:00
new SubtleButton ( undefined , Translations . t . importHelper . title , { url : "import_helper.html" } ) ,
new SubtleButton ( Svg . note_svg ( ) , Translations . t . importInspector . title , { url : "import_viewer.html" } )
2022-01-25 21:55:51 +01:00
] ) . 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 )
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!" ) . SetClass ( "alert" )
. AttachTo ( "centermessage" )
}
2021-10-15 05:20:02 +02:00
}
2021-11-05 01:19:27 +01:00
}