forked from MapComplete/MapComplete
		
	Show loading screen when logging in
This commit is contained in:
		
							parent
							
								
									0a43a69a0c
								
							
						
					
					
						commit
						e721146ca1
					
				
					 7 changed files with 75 additions and 353 deletions
				
			
		| 
						 | 
					@ -46,6 +46,7 @@ export class OsmConnection {
 | 
				
			||||||
    public auth;
 | 
					    public auth;
 | 
				
			||||||
    public userDetails: UIEventSource<UserDetails>;
 | 
					    public userDetails: UIEventSource<UserDetails>;
 | 
				
			||||||
    public isLoggedIn: UIEventSource<boolean>
 | 
					    public isLoggedIn: UIEventSource<boolean>
 | 
				
			||||||
 | 
					    public loadingStatus = new UIEventSource<"not-attempted" | "loading" | "error" | "logged-in">("not-attempted")
 | 
				
			||||||
    public preferencesHandler: OsmPreferences;
 | 
					    public preferencesHandler: OsmPreferences;
 | 
				
			||||||
    public changesetHandler: ChangesetHandler;
 | 
					    public changesetHandler: ChangesetHandler;
 | 
				
			||||||
    public readonly _oauth_config: {
 | 
					    public readonly _oauth_config: {
 | 
				
			||||||
| 
						 | 
					@ -141,10 +142,13 @@ export class OsmConnection {
 | 
				
			||||||
        this.userDetails.data.name = "";
 | 
					        this.userDetails.data.name = "";
 | 
				
			||||||
        this.userDetails.ping();
 | 
					        this.userDetails.ping();
 | 
				
			||||||
        console.log("Logged out")
 | 
					        console.log("Logged out")
 | 
				
			||||||
 | 
					        this.loadingStatus.setData("not-attempted")
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public AttemptLogin() {
 | 
					    public AttemptLogin() {
 | 
				
			||||||
 | 
					        this.loadingStatus.setData("loading")
 | 
				
			||||||
        if (this.fakeUser) {
 | 
					        if (this.fakeUser) {
 | 
				
			||||||
 | 
					            this.loadingStatus.setData("logged-in")
 | 
				
			||||||
            console.log("AttemptLogin called, but ignored as fakeUser is set")
 | 
					            console.log("AttemptLogin called, but ignored as fakeUser is set")
 | 
				
			||||||
            return;
 | 
					            return;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
| 
						 | 
					@ -157,6 +161,7 @@ export class OsmConnection {
 | 
				
			||||||
        }, function (err, details) {
 | 
					        }, function (err, details) {
 | 
				
			||||||
            if (err != null) {
 | 
					            if (err != null) {
 | 
				
			||||||
                console.log(err);
 | 
					                console.log(err);
 | 
				
			||||||
 | 
					                self.loadingStatus.setData("error")
 | 
				
			||||||
                if (err.status == 401) {
 | 
					                if (err.status == 401) {
 | 
				
			||||||
                    console.log("Clearing tokens...")
 | 
					                    console.log("Clearing tokens...")
 | 
				
			||||||
                    // Not authorized - our token probably got revoked
 | 
					                    // Not authorized - our token probably got revoked
 | 
				
			||||||
| 
						 | 
					@ -171,6 +176,7 @@ export class OsmConnection {
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
            if (details == null) {
 | 
					            if (details == null) {
 | 
				
			||||||
 | 
					                self.loadingStatus.setData("error")
 | 
				
			||||||
                return;
 | 
					                return;
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -202,6 +208,7 @@ export class OsmConnection {
 | 
				
			||||||
                data.home = {lat: lat, lon: lon};
 | 
					                data.home = {lat: lat, lon: lon};
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					            self.loadingStatus.setData("logged-in")
 | 
				
			||||||
            const messages = userInfo.getElementsByTagName("messages")[0].getElementsByTagName("received")[0];
 | 
					            const messages = userInfo.getElementsByTagName("messages")[0].getElementsByTagName("received")[0];
 | 
				
			||||||
            data.unreadMessages = parseInt(messages.getAttribute("unread"));
 | 
					            data.unreadMessages = parseInt(messages.getAttribute("unread"));
 | 
				
			||||||
            data.totalMessages = parseInt(messages.getAttribute("count"));
 | 
					            data.totalMessages = parseInt(messages.getAttribute("count"));
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -8,20 +8,12 @@ import Link from "../Base/Link";
 | 
				
			||||||
import Toggle from "../Input/Toggle";
 | 
					import Toggle from "../Input/Toggle";
 | 
				
			||||||
import Img from "../Base/Img";
 | 
					import Img from "../Base/Img";
 | 
				
			||||||
import MapState from "../../Logic/State/MapState";
 | 
					import MapState from "../../Logic/State/MapState";
 | 
				
			||||||
 | 
					import {LoginToggle} from "../Popup/LoginButton";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default class UserBadge extends Toggle {
 | 
					export default class UserBadge extends LoginToggle {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    constructor(state: MapState) {
 | 
					    constructor(state: MapState) {
 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const userDetails = state.osmConnection.userDetails;
 | 
					        const userDetails = state.osmConnection.userDetails;
 | 
				
			||||||
 | 
					 | 
				
			||||||
        const loginButton = Translations.t.general.loginWithOpenStreetMap
 | 
					 | 
				
			||||||
            .Clone()
 | 
					 | 
				
			||||||
            .SetClass("userbadge-login inline-flex justify-center items-center w-full h-full text-lg font-bold min-w-[20em]")
 | 
					 | 
				
			||||||
            .onClick(() => state.osmConnection.AttemptLogin());
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
        const logout =
 | 
					        const logout =
 | 
				
			||||||
            Svg.logout_svg()
 | 
					            Svg.logout_svg()
 | 
				
			||||||
                .onClick(() => {
 | 
					                .onClick(() => {
 | 
				
			||||||
| 
						 | 
					@ -126,16 +118,14 @@ export default class UserBadge extends Toggle {
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
        }));
 | 
					        }));
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        userBadge.SetClass("inline-block m-0 w-full").SetStyle("pointer-events: all")
 | 
					            
 | 
				
			||||||
        super(
 | 
					        super(
 | 
				
			||||||
            userBadge,
 | 
					           new Combine([userBadge.SetClass("inline-block m-0 w-full").SetStyle("pointer-events: all")]) 
 | 
				
			||||||
            loginButton,
 | 
					            .SetClass("shadow rounded-full h-min overflow-hidden block w-full md:w-max"),
 | 
				
			||||||
            state.osmConnection.isLoggedIn
 | 
					            Translations.t.general.loginWithOpenStreetMap,
 | 
				
			||||||
 | 
					            state
 | 
				
			||||||
        )
 | 
					        )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					 | 
				
			||||||
        this.SetClass("shadow rounded-full h-min overflow-hidden block w-full md:w-max")
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -18,8 +18,7 @@ import Table from "../Base/Table";
 | 
				
			||||||
import LeftIndex from "../Base/LeftIndex";
 | 
					import LeftIndex from "../Base/LeftIndex";
 | 
				
			||||||
import Toggleable, {Accordeon} from "../Base/Toggleable";
 | 
					import Toggleable, {Accordeon} from "../Base/Toggleable";
 | 
				
			||||||
import TableOfContents from "../Base/TableOfContents";
 | 
					import TableOfContents from "../Base/TableOfContents";
 | 
				
			||||||
import LoginButton from "../Popup/LoginButton";
 | 
					import {LoginToggle} from "../Popup/LoginButton";
 | 
				
			||||||
import BackToIndex from "../BigComponents/BackToIndex";
 | 
					 | 
				
			||||||
import {QueryParameters} from "../../Logic/Web/QueryParameters";
 | 
					import {QueryParameters} from "../../Logic/Web/QueryParameters";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
interface NoteProperties {
 | 
					interface NoteProperties {
 | 
				
			||||||
| 
						 | 
					@ -127,7 +126,7 @@ class MassAction extends Combine {
 | 
				
			||||||
                    handledNotesCounter.map(s => s === undefined)
 | 
					                    handledNotesCounter.map(s => s === undefined)
 | 
				
			||||||
                )
 | 
					                )
 | 
				
			||||||
 | 
					
 | 
				
			||||||
                , new VariableUiElement(textField.GetValue().map(txt => "Type a text of at least 15 characters to apply the action. Currently, there are "+(txt?.length ?? 0)+" characters")).SetClass("alert"),
 | 
					                , new VariableUiElement(textField.GetValue().map(txt => "Type a text of at least 15 characters to apply the action. Currently, there are " + (txt?.length ?? 0) + " characters")).SetClass("alert"),
 | 
				
			||||||
                actions.GetValue().map(v => v !== undefined && textField.GetValue()?.data?.length > 15, [textField.GetValue()])
 | 
					                actions.GetValue().map(v => v !== undefined && textField.GetValue()?.data?.length > 15, [textField.GetValue()])
 | 
				
			||||||
            ),
 | 
					            ),
 | 
				
			||||||
            new Toggle(
 | 
					            new Toggle(
 | 
				
			||||||
| 
						 | 
					@ -303,28 +302,23 @@ class ImportInspector extends VariableUiElement {
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
class ImportViewerGui extends Combine {
 | 
					class ImportViewerGui extends LoginToggle {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    constructor() {
 | 
					    constructor() {
 | 
				
			||||||
        const state = new UserRelatedState(undefined)
 | 
					        const state = new UserRelatedState(undefined)
 | 
				
			||||||
        const displayNameParam = QueryParameters.GetQueryParameter("user", "", "The username of the person whom you want to see the notes for");
 | 
					        const displayNameParam = QueryParameters.GetQueryParameter("user", "", "The username of the person whom you want to see the notes for");
 | 
				
			||||||
        const searchParam = QueryParameters.GetQueryParameter("search", "", "A text that should be included in the first comment of the note to be shown")
 | 
					        const searchParam = QueryParameters.GetQueryParameter("search", "", "A text that should be included in the first comment of the note to be shown")
 | 
				
			||||||
        super([
 | 
					        super(
 | 
				
			||||||
            new VariableUiElement(state.osmConnection.userDetails.map(ud => {
 | 
					            new VariableUiElement(state.osmConnection.userDetails.map(ud => {
 | 
				
			||||||
                const display_name = displayNameParam.data;
 | 
					                const display_name = displayNameParam.data;
 | 
				
			||||||
                const search = searchParam.data;
 | 
					                const search = searchParam.data;
 | 
				
			||||||
                if (display_name !== "" && search !== "") {
 | 
					                if (display_name !== "" && search !== "") {
 | 
				
			||||||
                    return new ImportInspector({display_name, search}, undefined);
 | 
					                    return new ImportInspector({display_name, search}, undefined);
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
 | 
					 | 
				
			||||||
                if (ud === undefined || ud.loggedIn === false) {
 | 
					 | 
				
			||||||
                    return new Combine([new LoginButton("Login to inspect your import flows", state),
 | 
					 | 
				
			||||||
                        new BackToIndex()
 | 
					 | 
				
			||||||
                    ])
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
                return new ImportInspector(ud, state);
 | 
					                return new ImportInspector(ud, state);
 | 
				
			||||||
            }, [displayNameParam, searchParam]))
 | 
					            }, [displayNameParam, searchParam])),
 | 
				
			||||||
        ]);
 | 
					            "Login to inspect your import flows", state
 | 
				
			||||||
 | 
					        )
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -3,13 +3,16 @@ import BaseUIElement from "../BaseUIElement";
 | 
				
			||||||
import Svg from "../../Svg";
 | 
					import Svg from "../../Svg";
 | 
				
			||||||
import {OsmConnection} from "../../Logic/Osm/OsmConnection";
 | 
					import {OsmConnection} from "../../Logic/Osm/OsmConnection";
 | 
				
			||||||
import Toggle from "../Input/Toggle";
 | 
					import Toggle from "../Input/Toggle";
 | 
				
			||||||
 | 
					import {VariableUiElement} from "../Base/VariableUIElement";
 | 
				
			||||||
 | 
					import Loading from "../Base/Loading";
 | 
				
			||||||
 | 
					import Translations from "../i18n/Translations";
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export default class LoginButton extends SubtleButton {
 | 
					class LoginButton extends SubtleButton {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    constructor(text: BaseUIElement | string, state: {
 | 
					    constructor(text: BaseUIElement | string, state: {
 | 
				
			||||||
        osmConnection: OsmConnection
 | 
					        osmConnection: OsmConnection
 | 
				
			||||||
    }) {
 | 
					    }, icon?: BaseUIElement | string) {
 | 
				
			||||||
        super(Svg.osm_logo_ui(), text);
 | 
					        super(icon ?? Svg.osm_logo_ui(), text);
 | 
				
			||||||
        this.onClick(() => {
 | 
					        this.onClick(() => {
 | 
				
			||||||
            state.osmConnection.AttemptLogin()
 | 
					            state.osmConnection.AttemptLogin()
 | 
				
			||||||
        })
 | 
					        })
 | 
				
			||||||
| 
						 | 
					@ -17,10 +20,28 @@ export default class LoginButton extends SubtleButton {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
 | 
					
 | 
				
			||||||
export class LoginToggle extends Toggle {
 | 
					export class LoginToggle extends VariableUiElement {
 | 
				
			||||||
    constructor(el, text: BaseUIElement | string, state: {
 | 
					    constructor(el, text: BaseUIElement | string, state: {
 | 
				
			||||||
        osmConnection: OsmConnection
 | 
					        osmConnection: OsmConnection
 | 
				
			||||||
    }) {
 | 
					    }) {
 | 
				
			||||||
        super(el, new LoginButton(text, state), state.osmConnection.isLoggedIn)
 | 
					        const loading = new Loading("Trying to log in...")
 | 
				
			||||||
 | 
					        const login = new LoginButton(text, state)
 | 
				
			||||||
 | 
					        super(
 | 
				
			||||||
 | 
					            state.osmConnection.loadingStatus.map(osmConnectionState => {
 | 
				
			||||||
 | 
					                console.trace("Current osm state is ", osmConnectionState)
 | 
				
			||||||
 | 
					                if(osmConnectionState === "loading"){
 | 
				
			||||||
 | 
					                    return loading
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                if(osmConnectionState === "not-attempted"){
 | 
				
			||||||
 | 
					                    return login
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                if(osmConnectionState === "logged-in"){
 | 
				
			||||||
 | 
					                   return el
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                
 | 
				
			||||||
 | 
					                // Error!
 | 
				
			||||||
 | 
					                return new LoginButton(Translations.t.general.loginFailed, state, Svg.invalid_svg())
 | 
				
			||||||
 | 
					            })
 | 
				
			||||||
 | 
					            )
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					@ -19,6 +19,7 @@
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "export_as_gpx",
 | 
					    "export_as_gpx",
 | 
				
			||||||
 | 
					    "export_as_geojson",
 | 
				
			||||||
    "minimap",
 | 
					    "minimap",
 | 
				
			||||||
    {
 | 
					    {
 | 
				
			||||||
      "id": "delete",
 | 
					      "id": "delete",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -85,6 +85,7 @@
 | 
				
			||||||
        "loginWithOpenStreetMap": "Login with OpenStreetMap",
 | 
					        "loginWithOpenStreetMap": "Login with OpenStreetMap",
 | 
				
			||||||
        "welcomeBack": "You are logged in, welcome back!",
 | 
					        "welcomeBack": "You are logged in, welcome back!",
 | 
				
			||||||
        "loginToStart": "Log in to answer this question",
 | 
					        "loginToStart": "Log in to answer this question",
 | 
				
			||||||
 | 
					        "loginFailed": "Logging in into OpenStreetMap failed",
 | 
				
			||||||
        "openStreetMapIntro": "<h3>An Open Map</h3><p>One that everyone can use and edit freely. A single place to store all geo-info. Different, small, incompatible and outdated maps are not needed anywhere.</p><p><b><a href='https://OpenStreetMap.org' target='_blank'>OpenStreetMap</a></b> is not the enemy map. The map data can be used freely (with <a href='https://osm.org/copyright' target='_blank'>attribution and publication of changes to that data</a>). Everyone can add new data and fix errors. This website uses OpenStreetMap. All the data is from there, and your answers and corrections are used all over.</p><p>Many people and apps already use OpenStreetMap: <a href='https://organicmaps.app/' target='_blank'>Organic Maps</a>, <a href='https://osmAnd.net' target='_blank'>OsmAnd</a>, but also the maps at Facebook, Instagram, Apple-maps and Bing-maps are (partly) powered by OpenStreetMap.</p>",
 | 
					        "openStreetMapIntro": "<h3>An Open Map</h3><p>One that everyone can use and edit freely. A single place to store all geo-info. Different, small, incompatible and outdated maps are not needed anywhere.</p><p><b><a href='https://OpenStreetMap.org' target='_blank'>OpenStreetMap</a></b> is not the enemy map. The map data can be used freely (with <a href='https://osm.org/copyright' target='_blank'>attribution and publication of changes to that data</a>). Everyone can add new data and fix errors. This website uses OpenStreetMap. All the data is from there, and your answers and corrections are used all over.</p><p>Many people and apps already use OpenStreetMap: <a href='https://organicmaps.app/' target='_blank'>Organic Maps</a>, <a href='https://osmAnd.net' target='_blank'>OsmAnd</a>, but also the maps at Facebook, Instagram, Apple-maps and Bing-maps are (partly) powered by OpenStreetMap.</p>",
 | 
				
			||||||
        "search": {
 | 
					        "search": {
 | 
				
			||||||
            "search": "Search a location",
 | 
					            "search": "Search a location",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
							
								
								
									
										338
									
								
								package-lock.json
									
										
									
										generated
									
									
									
								
							
							
						
						
									
										338
									
								
								package-lock.json
									
										
									
										generated
									
									
									
								
							| 
						 | 
					@ -18,7 +18,6 @@
 | 
				
			||||||
        "@types/jquery": "^3.5.5",
 | 
					        "@types/jquery": "^3.5.5",
 | 
				
			||||||
        "@types/leaflet-markercluster": "^1.0.3",
 | 
					        "@types/leaflet-markercluster": "^1.0.3",
 | 
				
			||||||
        "@types/leaflet-providers": "^1.2.0",
 | 
					        "@types/leaflet-providers": "^1.2.0",
 | 
				
			||||||
        "@types/leaflet.markercluster": "^1.4.3",
 | 
					 | 
				
			||||||
        "@types/lz-string": "^1.3.34",
 | 
					        "@types/lz-string": "^1.3.34",
 | 
				
			||||||
        "@types/papaparse": "^5.3.1",
 | 
					        "@types/papaparse": "^5.3.1",
 | 
				
			||||||
        "@types/prompt-sync": "^4.1.0",
 | 
					        "@types/prompt-sync": "^4.1.0",
 | 
				
			||||||
| 
						 | 
					@ -36,13 +35,11 @@
 | 
				
			||||||
        "leaflet-polylineoffset": "^1.1.1",
 | 
					        "leaflet-polylineoffset": "^1.1.1",
 | 
				
			||||||
        "leaflet-providers": "^1.13.0",
 | 
					        "leaflet-providers": "^1.13.0",
 | 
				
			||||||
        "leaflet-simple-map-screenshoter": "^0.4.4",
 | 
					        "leaflet-simple-map-screenshoter": "^0.4.4",
 | 
				
			||||||
        "leaflet.markercluster": "^1.4.1",
 | 
					 | 
				
			||||||
        "libphonenumber": "^0.0.9",
 | 
					        "libphonenumber": "^0.0.9",
 | 
				
			||||||
        "libphonenumber-js": "^1.7.55",
 | 
					        "libphonenumber-js": "^1.7.55",
 | 
				
			||||||
        "lz-string": "^1.4.4",
 | 
					        "lz-string": "^1.4.4",
 | 
				
			||||||
        "mangrove-reviews": "^0.1.3",
 | 
					        "mangrove-reviews": "^0.1.3",
 | 
				
			||||||
        "moment": "^2.29.0",
 | 
					        "moment": "^2.29.0",
 | 
				
			||||||
        "npm-run-all": "^4.1.5",
 | 
					 | 
				
			||||||
        "opening_hours": "^3.6.0",
 | 
					        "opening_hours": "^3.6.0",
 | 
				
			||||||
        "osm-auth": "^1.0.2",
 | 
					        "osm-auth": "^1.0.2",
 | 
				
			||||||
        "osmtogeojson": "^3.0.0-beta.4",
 | 
					        "osmtogeojson": "^3.0.0-beta.4",
 | 
				
			||||||
| 
						 | 
					@ -63,7 +60,6 @@
 | 
				
			||||||
        "assert": "^2.0.0",
 | 
					        "assert": "^2.0.0",
 | 
				
			||||||
        "dependency-cruiser": "^10.4.0",
 | 
					        "dependency-cruiser": "^10.4.0",
 | 
				
			||||||
        "fs": "0.0.1-security",
 | 
					        "fs": "0.0.1-security",
 | 
				
			||||||
        "git-json-merge": "^0.4.5",
 | 
					 | 
				
			||||||
        "read-file": "^0.2.0",
 | 
					        "read-file": "^0.2.0",
 | 
				
			||||||
        "sharp": "^0.28.3",
 | 
					        "sharp": "^0.28.3",
 | 
				
			||||||
        "ts-node": "^9.0.0",
 | 
					        "ts-node": "^9.0.0",
 | 
				
			||||||
| 
						 | 
					@ -3241,14 +3237,6 @@
 | 
				
			||||||
        "@types/leaflet": "*"
 | 
					        "@types/leaflet": "*"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/@types/leaflet.markercluster": {
 | 
					 | 
				
			||||||
      "version": "1.4.4",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@types/leaflet.markercluster/-/leaflet.markercluster-1.4.4.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-BQAilNWlBpYl4+PrsJXLOh4vyv7KfWi5kh3Fclg5y4gEeNeXKqhS6y1zzBB4+wcTuVUnMWfm2G0MfqA4yA5A5A==",
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "@types/leaflet": "*"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/@types/lz-string": {
 | 
					    "node_modules/@types/lz-string": {
 | 
				
			||||||
      "version": "1.3.34",
 | 
					      "version": "1.3.34",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@types/lz-string/-/lz-string-1.3.34.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@types/lz-string/-/lz-string-1.3.34.tgz",
 | 
				
			||||||
| 
						 | 
					@ -3423,12 +3411,6 @@
 | 
				
			||||||
        "node": ">=0.4.0"
 | 
					        "node": ">=0.4.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/adiff": {
 | 
					 | 
				
			||||||
      "version": "0.2.13",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/adiff/-/adiff-0.2.13.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-3D3TL5RNl/J366WM5SmXrf8fdyg=",
 | 
					 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/affine-hull": {
 | 
					    "node_modules/affine-hull": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/affine-hull/-/affine-hull-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/affine-hull/-/affine-hull-1.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -5900,15 +5882,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
 | 
				
			||||||
      "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
 | 
					      "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/detect-indent": {
 | 
					 | 
				
			||||||
      "version": "6.1.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==",
 | 
					 | 
				
			||||||
      "dev": true,
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=8"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/detect-libc": {
 | 
					    "node_modules/detect-libc": {
 | 
				
			||||||
      "version": "1.0.3",
 | 
					      "version": "1.0.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
 | 
				
			||||||
| 
						 | 
					@ -7066,22 +7039,6 @@
 | 
				
			||||||
        "assert-plus": "^1.0.0"
 | 
					        "assert-plus": "^1.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/git-json-merge": {
 | 
					 | 
				
			||||||
      "version": "0.4.5",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/git-json-merge/-/git-json-merge-0.4.5.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-akVUhyzRtkXGe5uAcw3AijF/253RA7tAPdfHtKLawYAhDjuyP+Ebr1YvZUv+7Jyr41g+IVRpKPBd2h+m6AHNqQ==",
 | 
					 | 
				
			||||||
      "dev": true,
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "detect-indent": "^6.0.0",
 | 
					 | 
				
			||||||
        "xdiff": "^0.2.11"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "bin": {
 | 
					 | 
				
			||||||
        "git-json-merge": "bin/git-json-merge"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/github-from-package": {
 | 
					    "node_modules/github-from-package": {
 | 
				
			||||||
      "version": "0.0.0",
 | 
					      "version": "0.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -7376,7 +7333,8 @@
 | 
				
			||||||
    "node_modules/hosted-git-info": {
 | 
					    "node_modules/hosted-git-info": {
 | 
				
			||||||
      "version": "2.8.9",
 | 
					      "version": "2.8.9",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
 | 
				
			||||||
      "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw=="
 | 
					      "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/hsl-regex": {
 | 
					    "node_modules/hsl-regex": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
| 
						 | 
					@ -8909,14 +8867,6 @@
 | 
				
			||||||
        "file-saver": "^2.0.2"
 | 
					        "file-saver": "^2.0.2"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/leaflet.markercluster": {
 | 
					 | 
				
			||||||
      "version": "1.5.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/leaflet.markercluster/-/leaflet.markercluster-1.5.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-Fvf/cq4o806mJL50n+fZW9+QALDDLPvt7vuAjlD2vfnxx3srMDs2vWINJze4nKYJYRY45OC6tM/669C3pLwMCA==",
 | 
					 | 
				
			||||||
      "peerDependencies": {
 | 
					 | 
				
			||||||
        "leaflet": "^1.3.1"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/levn": {
 | 
					    "node_modules/levn": {
 | 
				
			||||||
      "version": "0.3.0",
 | 
					      "version": "0.3.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -9155,14 +9105,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
 | 
				
			||||||
      "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA=="
 | 
					      "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/memorystream": {
 | 
					 | 
				
			||||||
      "version": "0.3.1",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI=",
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">= 0.10.0"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/meow": {
 | 
					    "node_modules/meow": {
 | 
				
			||||||
      "version": "3.7.0",
 | 
					      "version": "3.7.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -9569,6 +9511,7 @@
 | 
				
			||||||
      "version": "2.5.0",
 | 
					      "version": "2.5.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
 | 
					      "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "hosted-git-info": "^2.1.4",
 | 
					        "hosted-git-info": "^2.1.4",
 | 
				
			||||||
        "resolve": "^1.10.0",
 | 
					        "resolve": "^1.10.0",
 | 
				
			||||||
| 
						 | 
					@ -9580,6 +9523,7 @@
 | 
				
			||||||
      "version": "5.7.1",
 | 
					      "version": "5.7.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
 | 
					      "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "bin": {
 | 
					      "bin": {
 | 
				
			||||||
        "semver": "bin/semver"
 | 
					        "semver": "bin/semver"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
| 
						 | 
					@ -9609,84 +9553,6 @@
 | 
				
			||||||
        "node": ">=6"
 | 
					        "node": ">=6"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/npm-run-all": {
 | 
					 | 
				
			||||||
      "version": "4.1.5",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==",
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "ansi-styles": "^3.2.1",
 | 
					 | 
				
			||||||
        "chalk": "^2.4.1",
 | 
					 | 
				
			||||||
        "cross-spawn": "^6.0.5",
 | 
					 | 
				
			||||||
        "memorystream": "^0.3.1",
 | 
					 | 
				
			||||||
        "minimatch": "^3.0.4",
 | 
					 | 
				
			||||||
        "pidtree": "^0.3.0",
 | 
					 | 
				
			||||||
        "read-pkg": "^3.0.0",
 | 
					 | 
				
			||||||
        "shell-quote": "^1.6.1",
 | 
					 | 
				
			||||||
        "string.prototype.padend": "^3.0.0"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "bin": {
 | 
					 | 
				
			||||||
        "npm-run-all": "bin/npm-run-all/index.js",
 | 
					 | 
				
			||||||
        "run-p": "bin/run-p/index.js",
 | 
					 | 
				
			||||||
        "run-s": "bin/run-s/index.js"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">= 4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/npm-run-all/node_modules/load-json-file": {
 | 
					 | 
				
			||||||
      "version": "4.0.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "graceful-fs": "^4.1.2",
 | 
					 | 
				
			||||||
        "parse-json": "^4.0.0",
 | 
					 | 
				
			||||||
        "pify": "^3.0.0",
 | 
					 | 
				
			||||||
        "strip-bom": "^3.0.0"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/npm-run-all/node_modules/path-type": {
 | 
					 | 
				
			||||||
      "version": "3.0.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "pify": "^3.0.0"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/npm-run-all/node_modules/pify": {
 | 
					 | 
				
			||||||
      "version": "3.0.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY=",
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/npm-run-all/node_modules/read-pkg": {
 | 
					 | 
				
			||||||
      "version": "3.0.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "load-json-file": "^4.0.0",
 | 
					 | 
				
			||||||
        "normalize-package-data": "^2.3.2",
 | 
					 | 
				
			||||||
        "path-type": "^3.0.0"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/npm-run-all/node_modules/strip-bom": {
 | 
					 | 
				
			||||||
      "version": "3.0.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM=",
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/npmlog": {
 | 
					    "node_modules/npmlog": {
 | 
				
			||||||
      "version": "4.1.2",
 | 
					      "version": "4.1.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
 | 
				
			||||||
| 
						 | 
					@ -10530,17 +10396,6 @@
 | 
				
			||||||
        "url": "https://github.com/sponsors/jonschlinkert"
 | 
					        "url": "https://github.com/sponsors/jonschlinkert"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/pidtree": {
 | 
					 | 
				
			||||||
      "version": "0.3.1",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA==",
 | 
					 | 
				
			||||||
      "bin": {
 | 
					 | 
				
			||||||
        "pidtree": "bin/pidtree.js"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">=0.10"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/pify": {
 | 
					    "node_modules/pify": {
 | 
				
			||||||
      "version": "2.3.0",
 | 
					      "version": "2.3.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -13076,11 +12931,6 @@
 | 
				
			||||||
        "node": ">=0.10.0"
 | 
					        "node": ">=0.10.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/shell-quote": {
 | 
					 | 
				
			||||||
      "version": "1.7.2",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg=="
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/shelljs": {
 | 
					    "node_modules/shelljs": {
 | 
				
			||||||
      "version": "0.2.6",
 | 
					      "version": "0.2.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.2.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.2.6.tgz",
 | 
				
			||||||
| 
						 | 
					@ -13343,6 +13193,7 @@
 | 
				
			||||||
      "version": "3.1.1",
 | 
					      "version": "3.1.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
 | 
					      "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "spdx-expression-parse": "^3.0.0",
 | 
					        "spdx-expression-parse": "^3.0.0",
 | 
				
			||||||
        "spdx-license-ids": "^3.0.0"
 | 
					        "spdx-license-ids": "^3.0.0"
 | 
				
			||||||
| 
						 | 
					@ -13351,12 +13202,14 @@
 | 
				
			||||||
    "node_modules/spdx-exceptions": {
 | 
					    "node_modules/spdx-exceptions": {
 | 
				
			||||||
      "version": "2.3.0",
 | 
					      "version": "2.3.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A=="
 | 
					      "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/spdx-expression-parse": {
 | 
					    "node_modules/spdx-expression-parse": {
 | 
				
			||||||
      "version": "3.0.1",
 | 
					      "version": "3.0.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
 | 
					      "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "spdx-exceptions": "^2.1.0",
 | 
					        "spdx-exceptions": "^2.1.0",
 | 
				
			||||||
        "spdx-license-ids": "^3.0.0"
 | 
					        "spdx-license-ids": "^3.0.0"
 | 
				
			||||||
| 
						 | 
					@ -13365,7 +13218,8 @@
 | 
				
			||||||
    "node_modules/spdx-license-ids": {
 | 
					    "node_modules/spdx-license-ids": {
 | 
				
			||||||
      "version": "3.0.7",
 | 
					      "version": "3.0.7",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz",
 | 
				
			||||||
      "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ=="
 | 
					      "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/splaytree": {
 | 
					    "node_modules/splaytree": {
 | 
				
			||||||
      "version": "3.1.0",
 | 
					      "version": "3.1.0",
 | 
				
			||||||
| 
						 | 
					@ -13649,22 +13503,6 @@
 | 
				
			||||||
        "node": ">=0.10.0"
 | 
					        "node": ">=0.10.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/string.prototype.padend": {
 | 
					 | 
				
			||||||
      "version": "3.1.2",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==",
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "call-bind": "^1.0.2",
 | 
					 | 
				
			||||||
        "define-properties": "^1.1.3",
 | 
					 | 
				
			||||||
        "es-abstract": "^1.18.0-next.2"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": ">= 0.4"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "funding": {
 | 
					 | 
				
			||||||
        "url": "https://github.com/sponsors/ljharb"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/string.prototype.trimend": {
 | 
					    "node_modules/string.prototype.trimend": {
 | 
				
			||||||
      "version": "1.0.4",
 | 
					      "version": "1.0.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
 | 
				
			||||||
| 
						 | 
					@ -15809,6 +15647,7 @@
 | 
				
			||||||
      "version": "3.0.4",
 | 
					      "version": "3.0.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
 | 
				
			||||||
      "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
 | 
					      "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "dependencies": {
 | 
					      "dependencies": {
 | 
				
			||||||
        "spdx-correct": "^3.0.0",
 | 
					        "spdx-correct": "^3.0.0",
 | 
				
			||||||
        "spdx-expression-parse": "^3.0.0"
 | 
					        "spdx-expression-parse": "^3.0.0"
 | 
				
			||||||
| 
						 | 
					@ -16113,18 +15952,6 @@
 | 
				
			||||||
        "async-limiter": "~1.0.0"
 | 
					        "async-limiter": "~1.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "node_modules/xdiff": {
 | 
					 | 
				
			||||||
      "version": "0.2.11",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/xdiff/-/xdiff-0.2.11.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-cj1SPhtvJlojPK/HeGBiLqXS2Mg=",
 | 
					 | 
				
			||||||
      "dev": true,
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "adiff": "~0.2.4"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "engines": {
 | 
					 | 
				
			||||||
        "node": "*"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "node_modules/xml-name-validator": {
 | 
					    "node_modules/xml-name-validator": {
 | 
				
			||||||
      "version": "3.0.0",
 | 
					      "version": "3.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -18839,14 +18666,6 @@
 | 
				
			||||||
        "@types/leaflet": "*"
 | 
					        "@types/leaflet": "*"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "@types/leaflet.markercluster": {
 | 
					 | 
				
			||||||
      "version": "1.4.4",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@types/leaflet.markercluster/-/leaflet.markercluster-1.4.4.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-BQAilNWlBpYl4+PrsJXLOh4vyv7KfWi5kh3Fclg5y4gEeNeXKqhS6y1zzBB4+wcTuVUnMWfm2G0MfqA4yA5A5A==",
 | 
					 | 
				
			||||||
      "requires": {
 | 
					 | 
				
			||||||
        "@types/leaflet": "*"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "@types/lz-string": {
 | 
					    "@types/lz-string": {
 | 
				
			||||||
      "version": "1.3.34",
 | 
					      "version": "1.3.34",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/@types/lz-string/-/lz-string-1.3.34.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/@types/lz-string/-/lz-string-1.3.34.tgz",
 | 
				
			||||||
| 
						 | 
					@ -18995,12 +18814,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/acorn-walk/-/acorn-walk-7.2.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA=="
 | 
					      "integrity": "sha512-OPdCF6GsMIP+Az+aWfAAOEt2/+iVDKE7oy6lJ098aoe59oAmK76qV6Gw60SbZ8jHuG2wH058GF4pLFbYamYrVA=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "adiff": {
 | 
					 | 
				
			||||||
      "version": "0.2.13",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/adiff/-/adiff-0.2.13.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-3D3TL5RNl/J366WM5SmXrf8fdyg=",
 | 
					 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "affine-hull": {
 | 
					    "affine-hull": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/affine-hull/-/affine-hull-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/affine-hull/-/affine-hull-1.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -20970,12 +20783,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/destroy/-/destroy-1.0.4.tgz",
 | 
				
			||||||
      "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
 | 
					      "integrity": "sha1-l4hXRCxEdJ5CBmE+N5RiBYJqvYA="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "detect-indent": {
 | 
					 | 
				
			||||||
      "version": "6.1.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/detect-indent/-/detect-indent-6.1.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==",
 | 
					 | 
				
			||||||
      "dev": true
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "detect-libc": {
 | 
					    "detect-libc": {
 | 
				
			||||||
      "version": "1.0.3",
 | 
					      "version": "1.0.3",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/detect-libc/-/detect-libc-1.0.3.tgz",
 | 
				
			||||||
| 
						 | 
					@ -21906,16 +21713,6 @@
 | 
				
			||||||
        "assert-plus": "^1.0.0"
 | 
					        "assert-plus": "^1.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "git-json-merge": {
 | 
					 | 
				
			||||||
      "version": "0.4.5",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/git-json-merge/-/git-json-merge-0.4.5.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-akVUhyzRtkXGe5uAcw3AijF/253RA7tAPdfHtKLawYAhDjuyP+Ebr1YvZUv+7Jyr41g+IVRpKPBd2h+m6AHNqQ==",
 | 
					 | 
				
			||||||
      "dev": true,
 | 
					 | 
				
			||||||
      "requires": {
 | 
					 | 
				
			||||||
        "detect-indent": "^6.0.0",
 | 
					 | 
				
			||||||
        "xdiff": "^0.2.11"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "github-from-package": {
 | 
					    "github-from-package": {
 | 
				
			||||||
      "version": "0.0.0",
 | 
					      "version": "0.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/github-from-package/-/github-from-package-0.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -22148,7 +21945,8 @@
 | 
				
			||||||
    "hosted-git-info": {
 | 
					    "hosted-git-info": {
 | 
				
			||||||
      "version": "2.8.9",
 | 
					      "version": "2.8.9",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/hosted-git-info/-/hosted-git-info-2.8.9.tgz",
 | 
				
			||||||
      "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw=="
 | 
					      "integrity": "sha512-mxIDAb9Lsm6DoOJ7xH+5+X4y1LU/4Hi50L9C5sIswK3JzULS4bwk1FvjdBgvYR4bzT4tuUQiC15FE2f5HbLvYw==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "hsl-regex": {
 | 
					    "hsl-regex": {
 | 
				
			||||||
      "version": "1.0.0",
 | 
					      "version": "1.0.0",
 | 
				
			||||||
| 
						 | 
					@ -23304,12 +23102,6 @@
 | 
				
			||||||
        "file-saver": "^2.0.2"
 | 
					        "file-saver": "^2.0.2"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "leaflet.markercluster": {
 | 
					 | 
				
			||||||
      "version": "1.5.0",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/leaflet.markercluster/-/leaflet.markercluster-1.5.0.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-Fvf/cq4o806mJL50n+fZW9+QALDDLPvt7vuAjlD2vfnxx3srMDs2vWINJze4nKYJYRY45OC6tM/669C3pLwMCA==",
 | 
					 | 
				
			||||||
      "requires": {}
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "levn": {
 | 
					    "levn": {
 | 
				
			||||||
      "version": "0.3.0",
 | 
					      "version": "0.3.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/levn/-/levn-0.3.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -23517,11 +23309,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/mdn-data/-/mdn-data-2.0.4.tgz",
 | 
				
			||||||
      "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA=="
 | 
					      "integrity": "sha512-iV3XNKw06j5Q7mi6h+9vbx23Tv7JkjEVgKHW4pimwyDGWm0OIQntJJ+u1C6mg6mK1EaTv42XQ7w76yuzH7M2cA=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "memorystream": {
 | 
					 | 
				
			||||||
      "version": "0.3.1",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/memorystream/-/memorystream-0.3.1.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-htcJCzDORV1j+64S3aUaR93K+bI="
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "meow": {
 | 
					    "meow": {
 | 
				
			||||||
      "version": "3.7.0",
 | 
					      "version": "3.7.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -23862,6 +23649,7 @@
 | 
				
			||||||
      "version": "2.5.0",
 | 
					      "version": "2.5.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/normalize-package-data/-/normalize-package-data-2.5.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
 | 
					      "integrity": "sha512-/5CMN3T0R4XTj4DcGaexo+roZSdSFW/0AOOTROrjxzCG1wrWXEsGbRKevjlIL+ZDE4sZlJr5ED4YW0yqmkK+eA==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "hosted-git-info": "^2.1.4",
 | 
					        "hosted-git-info": "^2.1.4",
 | 
				
			||||||
        "resolve": "^1.10.0",
 | 
					        "resolve": "^1.10.0",
 | 
				
			||||||
| 
						 | 
					@ -23872,7 +23660,8 @@
 | 
				
			||||||
        "semver": {
 | 
					        "semver": {
 | 
				
			||||||
          "version": "5.7.1",
 | 
					          "version": "5.7.1",
 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
 | 
					          "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz",
 | 
				
			||||||
          "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ=="
 | 
					          "integrity": "sha512-sauaDf/PZdVgrLTNYHRtpXa1iRiKcaebiKQ1BJdpQlWH2lCvexQdX55snPFyK7QzpudqbCI0qXFfOasHdyNDGQ==",
 | 
				
			||||||
 | 
					          "dev": true
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
| 
						 | 
					@ -23892,63 +23681,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/normalize-url/-/normalize-url-3.3.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg=="
 | 
					      "integrity": "sha512-U+JJi7duF1o+u2pynbp2zXDW2/PADgC30f0GsHZtRh+HOcXHnw137TrNlyxxRvWW5fjKd3bcLHPxofWuCjaeZg=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "npm-run-all": {
 | 
					 | 
				
			||||||
      "version": "4.1.5",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/npm-run-all/-/npm-run-all-4.1.5.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-Oo82gJDAVcaMdi3nuoKFavkIHBRVqQ1qvMb+9LHk/cF4P6B2m8aP04hGf7oL6wZ9BuGwX1onlLhpuoofSyoQDQ==",
 | 
					 | 
				
			||||||
      "requires": {
 | 
					 | 
				
			||||||
        "ansi-styles": "^3.2.1",
 | 
					 | 
				
			||||||
        "chalk": "^2.4.1",
 | 
					 | 
				
			||||||
        "cross-spawn": "^6.0.5",
 | 
					 | 
				
			||||||
        "memorystream": "^0.3.1",
 | 
					 | 
				
			||||||
        "minimatch": "^3.0.4",
 | 
					 | 
				
			||||||
        "pidtree": "^0.3.0",
 | 
					 | 
				
			||||||
        "read-pkg": "^3.0.0",
 | 
					 | 
				
			||||||
        "shell-quote": "^1.6.1",
 | 
					 | 
				
			||||||
        "string.prototype.padend": "^3.0.0"
 | 
					 | 
				
			||||||
      },
 | 
					 | 
				
			||||||
      "dependencies": {
 | 
					 | 
				
			||||||
        "load-json-file": {
 | 
					 | 
				
			||||||
          "version": "4.0.0",
 | 
					 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/load-json-file/-/load-json-file-4.0.0.tgz",
 | 
					 | 
				
			||||||
          "integrity": "sha1-L19Fq5HjMhYjT9U62rZo607AmTs=",
 | 
					 | 
				
			||||||
          "requires": {
 | 
					 | 
				
			||||||
            "graceful-fs": "^4.1.2",
 | 
					 | 
				
			||||||
            "parse-json": "^4.0.0",
 | 
					 | 
				
			||||||
            "pify": "^3.0.0",
 | 
					 | 
				
			||||||
            "strip-bom": "^3.0.0"
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        "path-type": {
 | 
					 | 
				
			||||||
          "version": "3.0.0",
 | 
					 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/path-type/-/path-type-3.0.0.tgz",
 | 
					 | 
				
			||||||
          "integrity": "sha512-T2ZUsdZFHgA3u4e5PfPbjd7HDDpxPnQb5jN0SrDsjNSuVXHJqtwTnWqG0B1jZrgmJ/7lj1EmVIByWt1gxGkWvg==",
 | 
					 | 
				
			||||||
          "requires": {
 | 
					 | 
				
			||||||
            "pify": "^3.0.0"
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        "pify": {
 | 
					 | 
				
			||||||
          "version": "3.0.0",
 | 
					 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/pify/-/pify-3.0.0.tgz",
 | 
					 | 
				
			||||||
          "integrity": "sha1-5aSs0sEB/fPZpNB/DbxNtJ3SgXY="
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        "read-pkg": {
 | 
					 | 
				
			||||||
          "version": "3.0.0",
 | 
					 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/read-pkg/-/read-pkg-3.0.0.tgz",
 | 
					 | 
				
			||||||
          "integrity": "sha1-nLxoaXj+5l0WwA4rGcI3/Pbjg4k=",
 | 
					 | 
				
			||||||
          "requires": {
 | 
					 | 
				
			||||||
            "load-json-file": "^4.0.0",
 | 
					 | 
				
			||||||
            "normalize-package-data": "^2.3.2",
 | 
					 | 
				
			||||||
            "path-type": "^3.0.0"
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
        },
 | 
					 | 
				
			||||||
        "strip-bom": {
 | 
					 | 
				
			||||||
          "version": "3.0.0",
 | 
					 | 
				
			||||||
          "resolved": "https://registry.npmjs.org/strip-bom/-/strip-bom-3.0.0.tgz",
 | 
					 | 
				
			||||||
          "integrity": "sha1-IzTBjpx1n3vdVv3vfprj1YjmjtM="
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "npmlog": {
 | 
					    "npmlog": {
 | 
				
			||||||
      "version": "4.1.2",
 | 
					      "version": "4.1.2",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
 | 
				
			||||||
| 
						 | 
					@ -24624,11 +24356,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw=="
 | 
					      "integrity": "sha512-lY1Q/PiJGC2zOv/z391WOTD+Z02bCgsFfvxoXXf6h7kv9o+WmsmzYqrAwY63sNgOxE4xEdq0WyUnXfKeBrSvYw=="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "pidtree": {
 | 
					 | 
				
			||||||
      "version": "0.3.1",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pidtree/-/pidtree-0.3.1.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-qQbW94hLHEqCg7nhby4yRC7G2+jYHY4Rguc2bjw7Uug4GIJuu1tvf2uHaZv5Q8zdt+WKJ6qK1FOI6amaWUo5FA=="
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "pify": {
 | 
					    "pify": {
 | 
				
			||||||
      "version": "2.3.0",
 | 
					      "version": "2.3.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/pify/-/pify-2.3.0.tgz",
 | 
				
			||||||
| 
						 | 
					@ -26568,11 +26295,6 @@
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-1.0.0.tgz",
 | 
				
			||||||
      "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM="
 | 
					      "integrity": "sha1-2kL0l0DAtC2yypcoVxyxkMmO/qM="
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "shell-quote": {
 | 
					 | 
				
			||||||
      "version": "1.7.2",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/shell-quote/-/shell-quote-1.7.2.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-mRz/m/JVscCrkMyPqHc/bczi3OQHkLTqXHEFu0zDhK/qfv3UcOA4SVmRCLmos4bhjr9ekVQubj/R7waKapmiQg=="
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "shelljs": {
 | 
					    "shelljs": {
 | 
				
			||||||
      "version": "0.2.6",
 | 
					      "version": "0.2.6",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.2.6.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/shelljs/-/shelljs-0.2.6.tgz",
 | 
				
			||||||
| 
						 | 
					@ -26784,6 +26506,7 @@
 | 
				
			||||||
      "version": "3.1.1",
 | 
					      "version": "3.1.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-correct/-/spdx-correct-3.1.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
 | 
					      "integrity": "sha512-cOYcUWwhCuHCXi49RhFRCyJEK3iPj1Ziz9DpViV3tbZOwXD49QzIN3MpOLJNxh2qwq2lJJZaKMVw9qNi4jTC0w==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "spdx-expression-parse": "^3.0.0",
 | 
					        "spdx-expression-parse": "^3.0.0",
 | 
				
			||||||
        "spdx-license-ids": "^3.0.0"
 | 
					        "spdx-license-ids": "^3.0.0"
 | 
				
			||||||
| 
						 | 
					@ -26792,12 +26515,14 @@
 | 
				
			||||||
    "spdx-exceptions": {
 | 
					    "spdx-exceptions": {
 | 
				
			||||||
      "version": "2.3.0",
 | 
					      "version": "2.3.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-exceptions/-/spdx-exceptions-2.3.0.tgz",
 | 
				
			||||||
      "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A=="
 | 
					      "integrity": "sha512-/tTrYOC7PPI1nUAgx34hUpqXuyJG+DTHJTnIULG4rDygi4xu/tfgmq1e1cIRwRzwZgo4NLySi+ricLkZkw4i5A==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "spdx-expression-parse": {
 | 
					    "spdx-expression-parse": {
 | 
				
			||||||
      "version": "3.0.1",
 | 
					      "version": "3.0.1",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-expression-parse/-/spdx-expression-parse-3.0.1.tgz",
 | 
				
			||||||
      "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
 | 
					      "integrity": "sha512-cbqHunsQWnJNE6KhVSMsMeH5H/L9EpymbzqTQ3uLwNCLZ1Q481oWaofqH7nO6V07xlXwY6PhQdQ2IedWx/ZK4Q==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "spdx-exceptions": "^2.1.0",
 | 
					        "spdx-exceptions": "^2.1.0",
 | 
				
			||||||
        "spdx-license-ids": "^3.0.0"
 | 
					        "spdx-license-ids": "^3.0.0"
 | 
				
			||||||
| 
						 | 
					@ -26806,7 +26531,8 @@
 | 
				
			||||||
    "spdx-license-ids": {
 | 
					    "spdx-license-ids": {
 | 
				
			||||||
      "version": "3.0.7",
 | 
					      "version": "3.0.7",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/spdx-license-ids/-/spdx-license-ids-3.0.7.tgz",
 | 
				
			||||||
      "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ=="
 | 
					      "integrity": "sha512-U+MTEOO0AiDzxwFvoa4JVnMV6mZlJKk2sBLt90s7G0Gd0Mlknc7kxEn3nuDPNZRta7O2uy8oLcZLVT+4sqNZHQ==",
 | 
				
			||||||
 | 
					      "dev": true
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "splaytree": {
 | 
					    "splaytree": {
 | 
				
			||||||
      "version": "3.1.0",
 | 
					      "version": "3.1.0",
 | 
				
			||||||
| 
						 | 
					@ -27031,16 +26757,6 @@
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "string.prototype.padend": {
 | 
					 | 
				
			||||||
      "version": "3.1.2",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/string.prototype.padend/-/string.prototype.padend-3.1.2.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha512-/AQFLdYvePENU3W5rgurfWSMU6n+Ww8n/3cUt7E+vPBB/D7YDG8x+qjoFs4M/alR2bW7Qg6xMjVwWUOvuQ0XpQ==",
 | 
					 | 
				
			||||||
      "requires": {
 | 
					 | 
				
			||||||
        "call-bind": "^1.0.2",
 | 
					 | 
				
			||||||
        "define-properties": "^1.1.3",
 | 
					 | 
				
			||||||
        "es-abstract": "^1.18.0-next.2"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "string.prototype.trimend": {
 | 
					    "string.prototype.trimend": {
 | 
				
			||||||
      "version": "1.0.4",
 | 
					      "version": "1.0.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/string.prototype.trimend/-/string.prototype.trimend-1.0.4.tgz",
 | 
				
			||||||
| 
						 | 
					@ -28737,6 +28453,7 @@
 | 
				
			||||||
      "version": "3.0.4",
 | 
					      "version": "3.0.4",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/validate-npm-package-license/-/validate-npm-package-license-3.0.4.tgz",
 | 
				
			||||||
      "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
 | 
					      "integrity": "sha512-DpKm2Ui/xN7/HQKCtpZxoRWBhZ9Z0kqtygG8XCgNQ8ZlDnxuQmWhj566j8fN4Cu3/JmbhsDo7fcAJq4s9h27Ew==",
 | 
				
			||||||
 | 
					      "dev": true,
 | 
				
			||||||
      "requires": {
 | 
					      "requires": {
 | 
				
			||||||
        "spdx-correct": "^3.0.0",
 | 
					        "spdx-correct": "^3.0.0",
 | 
				
			||||||
        "spdx-expression-parse": "^3.0.0"
 | 
					        "spdx-expression-parse": "^3.0.0"
 | 
				
			||||||
| 
						 | 
					@ -28985,15 +28702,6 @@
 | 
				
			||||||
        "async-limiter": "~1.0.0"
 | 
					        "async-limiter": "~1.0.0"
 | 
				
			||||||
      }
 | 
					      }
 | 
				
			||||||
    },
 | 
					    },
 | 
				
			||||||
    "xdiff": {
 | 
					 | 
				
			||||||
      "version": "0.2.11",
 | 
					 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/xdiff/-/xdiff-0.2.11.tgz",
 | 
					 | 
				
			||||||
      "integrity": "sha1-cj1SPhtvJlojPK/HeGBiLqXS2Mg=",
 | 
					 | 
				
			||||||
      "dev": true,
 | 
					 | 
				
			||||||
      "requires": {
 | 
					 | 
				
			||||||
        "adiff": "~0.2.4"
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    },
 | 
					 | 
				
			||||||
    "xml-name-validator": {
 | 
					    "xml-name-validator": {
 | 
				
			||||||
      "version": "3.0.0",
 | 
					      "version": "3.0.0",
 | 
				
			||||||
      "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
 | 
					      "resolved": "https://registry.npmjs.org/xml-name-validator/-/xml-name-validator-3.0.0.tgz",
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue