initial commit

This commit is contained in:
2025-09-04 13:47:54 -04:00
commit 67c94197e1
13 changed files with 443 additions and 0 deletions
+11
View File
@@ -0,0 +1,11 @@
import { IMapAdapter, LatLng, MapOptions } from './map-adapter.interface';
export declare class LeafletAdapter implements IMapAdapter {
private map;
init(container: HTMLElement, options: MapOptions): void;
setCenter(latLng: LatLng): void;
setZoom(zoom: number): void;
addMarker(latLng: LatLng, options?: {
color?: string;
}): void;
destroy(): void;
}
+11
View File
@@ -0,0 +1,11 @@
import { IMapAdapter, LatLng, MapOptions } from './map-adapter.interface';
export declare class LibreAdapter implements IMapAdapter {
private map;
init(container: HTMLElement, options: MapOptions): void;
setCenter(latLng: LatLng): void;
setZoom(zoom: number): void;
addMarker(latLng: LatLng, options?: {
color?: string;
}): void;
destroy(): void;
}
+17
View File
@@ -0,0 +1,17 @@
export interface MapOptions {
center: LatLng;
zoom: number;
styleUrl: string;
tileUrl: string;
}
export type LatLng = [number, number];
export declare function getLngLat(latLng: LatLng): [number, number];
export interface IMapAdapter {
init(container: HTMLElement, options: MapOptions): void;
setCenter(latLng: LatLng): void;
setZoom(zoom: number): void;
addMarker(latLng: LatLng, options?: {
color?: string;
}): void;
destroy(): void;
}
+13
View File
@@ -0,0 +1,13 @@
import { IMapAdapter, MapOptions, LatLng } from './map-adapter.interface';
export declare class MapFacade implements IMapAdapter {
private readonly adapter;
private readonly leafletZoomOffset;
constructor(forceRaster: boolean, webglAvailable: boolean);
init(container: HTMLElement, options: MapOptions): void;
setCenter(latLng: LatLng): void;
setZoom(zoom: number): void;
addMarker(latLng: LatLng, options?: {
color?: string;
}): void;
destroy(): void;
}