forked from MapComplete/MapComplete
		
	
		
			
				
	
	
		
			35 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			35 lines
		
	
	
	
		
			1.2 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
| import Combine from "../Base/Combine"
 | |
| import { FlowStep } from "./FlowStep"
 | |
| import { Store, UIEventSource } from "../../Logic/UIEventSource"
 | |
| import Link from "../Base/Link"
 | |
| import CheckBoxes from "../Input/Checkboxes"
 | |
| import Title from "../Base/Title"
 | |
| import Translations from "../i18n/Translations"
 | |
| 
 | |
| export class ConfirmProcess
 | |
|     extends Combine
 | |
|     implements FlowStep<{ features: any[]; theme: string }>
 | |
| {
 | |
|     public IsValid: Store<boolean>
 | |
|     public Value: Store<{ features: any[]; theme: string }>
 | |
| 
 | |
|     constructor(v: { features: any[]; theme: string }) {
 | |
|         const t = Translations.t.importHelper.confirmProcess
 | |
|         const elements = [
 | |
|             new Link(
 | |
|                 t.readImportGuidelines,
 | |
|                 "https://wiki.openstreetmap.org/wiki/Import_guidelines",
 | |
|                 true
 | |
|             ),
 | |
|             t.contactedCommunity,
 | |
|             t.licenseIsCompatible,
 | |
|             t.wikipageIsMade,
 | |
|         ]
 | |
|         const toConfirm = new CheckBoxes(elements)
 | |
| 
 | |
|         super([new Title(t.titleLong), toConfirm])
 | |
|         this.SetClass("link-underline")
 | |
|         this.IsValid = toConfirm.GetValue().map((selected) => elements.length == selected.length)
 | |
|         this.Value = new UIEventSource<{ features: any[]; theme: string }>(v)
 | |
|     }
 | |
| }
 |