forked from MapComplete/MapComplete
		
	
		
			
				
	
	
		
			34 lines
		
	
	
		
			No EOL
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
			
		
		
	
	
			34 lines
		
	
	
		
			No EOL
		
	
	
		
			1.4 KiB
		
	
	
	
		
			TypeScript
		
	
	
	
	
	
import {UIElement} from "../UIElement";
 | 
						|
import {UIEventSource} from "../../Logic/UIEventSource";
 | 
						|
import {LayoutConfigJson} from "../../Customizations/JSON/LayoutConfigJson";
 | 
						|
import Combine from "../Base/Combine";
 | 
						|
import {VariableUiElement} from "../Base/VariableUIElement";
 | 
						|
import UserDetails from "../../Logic/Osm/OsmConnection";
 | 
						|
 | 
						|
export default class SharePanel extends UIElement {
 | 
						|
    private _config: UIEventSource<LayoutConfigJson>;
 | 
						|
 | 
						|
    private _panel: UIElement;
 | 
						|
 | 
						|
    constructor(config: UIEventSource<LayoutConfigJson>, liveUrl: UIEventSource<string>, userDetails: UserDetails) {
 | 
						|
        super(undefined);
 | 
						|
        this._config = config;
 | 
						|
 | 
						|
        this._panel = new Combine([
 | 
						|
            "<h2>Share</h2>",
 | 
						|
            "Share the following link with friends:<br/>",
 | 
						|
            new VariableUiElement(liveUrl.map(url => `<a href='${url}' target="_blank">${url}</a>`)),
 | 
						|
            "<h2>Publish on some website</h2>",
 | 
						|
            
 | 
						|
            "It is possible to load a JSON-file from the wide internet, but you'll need some (public CORS-enabled) server.",
 | 
						|
            `Put the raw json online, and use ${window.location.host}?userlayout=https://<your-url-here>.json`,
 | 
						|
            "Please note: it used to be possible to load from the wiki - this is not possible anymore due to technical reasons.",
 | 
						|
            "</div>"
 | 
						|
        ]);
 | 
						|
    }
 | 
						|
 | 
						|
    InnerRender(): string {
 | 
						|
        return this._panel.Render();
 | 
						|
    }
 | 
						|
 | 
						|
} |