forked from MapComplete/MapComplete
		
	Polishing and translations for the import helper
This commit is contained in:
		
							parent
							
								
									f7844d8b2b
								
							
						
					
					
						commit
						8e2e227563
					
				
					 7 changed files with 161 additions and 87 deletions
				
			
		|  | @ -2,45 +2,30 @@ import Combine from "../Base/Combine"; | |||
| import {FlowStep} from "./FlowStep"; | ||||
| import {UIEventSource} from "../../Logic/UIEventSource"; | ||||
| import Link from "../Base/Link"; | ||||
| import {FixedUiElement} from "../Base/FixedUiElement"; | ||||
| import CheckBoxes from "../Input/Checkboxes"; | ||||
| import Title from "../Base/Title"; | ||||
| import {SubtleButton} from "../Base/SubtleButton"; | ||||
| import Svg from "../../Svg"; | ||||
| import {Utils} from "../../Utils"; | ||||
| import Translations from "../i18n/Translations"; | ||||
| 
 | ||||
| export class ConfirmProcess extends Combine implements FlowStep<{ features: any[], theme: string }> { | ||||
| 
 | ||||
|     public IsValid: UIEventSource<boolean> | ||||
|     public Value: UIEventSource<{ features: any[],theme: string  }> | ||||
| 
 | ||||
|     constructor(v: { features: any[], theme: string  }) { | ||||
|     public Value: UIEventSource<{ features: any[], theme: string }> | ||||
| 
 | ||||
|     constructor(v: { features: any[], theme: string }) { | ||||
|         const t = Translations.t.importHelper.confirmProcess; | ||||
|         const toConfirm = [ | ||||
|             new Combine(["I have read the ", new Link("import guidelines on the OSM wiki", "https://wiki.openstreetmap.org/wiki/Import_guidelines", true)]), | ||||
|             new FixedUiElement("I did contact the (local) community about this import"), | ||||
|             new FixedUiElement("The license of the data to import allows it to be imported into OSM. They are allowed to be redistributed commercially, with only minimal attribution"), | ||||
|             new FixedUiElement("The process is documented on the OSM-wiki (you'll need this link later)") | ||||
|             new Link(t.readImportGuidelines, "https://wiki.openstreetmap.org/wiki/Import_guidelines", true), | ||||
|             t.contactedCommunity, | ||||
|             t.licenseIsCompatible, | ||||
|             t.wikipageIsMade | ||||
|         ]; | ||||
| 
 | ||||
|         const licenseClear = new CheckBoxes(toConfirm) | ||||
|         super([ | ||||
|             new Title("Did you go through the import process?"), | ||||
|             licenseClear, | ||||
|             new FixedUiElement("Alternatively, you can download the dataset to import directly"), | ||||
|             new SubtleButton(Svg.download_svg(), "Download geojson").OnClickWithLoading("Preparing your download",  | ||||
|                 async ( ) => { | ||||
|                 const geojson = { | ||||
|                     type:"FeatureCollection", | ||||
|                     features: v.features | ||||
|                 } | ||||
|                 Utils.offerContentsAsDownloadableFile(JSON.stringify(geojson), "prepared_import_"+v.theme+".geojson",{ | ||||
|                     mimetype: "application/vnd.geo+json" | ||||
|                 }) | ||||
|             }) | ||||
|             new Title(t.titleLong), | ||||
|             new CheckBoxes(toConfirm), | ||||
|         ]); | ||||
|         this.SetClass("link-underline") | ||||
|         this.IsValid = licenseClear.GetValue().map(selected => toConfirm.length == selected.length) | ||||
|         this.IsValid = new CheckBoxes(toConfirm).GetValue().map(selected => toConfirm.length == selected.length) | ||||
|         this.Value = new UIEventSource<{ features: any[], theme: string }>(v) | ||||
|     } | ||||
| } | ||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue