@windycom/plugin-devtools 3.0.1 → 3.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +1 -0
- package/package.json +1 -1
- package/types/client/Calendar.d.ts +104 -70
- package/types/client/Color.d.ts +25 -5
- package/types/client/DataTiler.d.ts +2 -2
- package/types/client/EcmwfProduct.d.ts +22 -0
- package/types/client/EventManager.d.ts +69 -0
- package/types/client/ExternalSveltePlugin.d.ts +4 -3
- package/types/client/GlBuffer.d.ts +45 -0
- package/types/client/GlMesh.d.ts +147 -0
- package/types/client/GlProgram.d.ts +41 -0
- package/types/client/GlRenderer.d.ts +95 -0
- package/types/client/GlTexture.d.ts +98 -0
- package/types/client/GlVertexArray.d.ts +38 -0
- package/types/client/IDB.d.ts +25 -4
- package/types/client/LabelsLayer.d.ts +69 -2
- package/types/client/Layer.d.ts +96 -26
- package/types/client/LayerClasses.d.ts +5 -0
- package/types/client/Metric.d.ts +31 -46
- package/types/client/MetricClasses.d.ts +1 -1
- package/types/client/Overlay.d.ts +5 -12
- package/types/client/OverlayClasses.d.ts +8 -0
- package/types/client/Particles.d.ts +1 -1
- package/types/client/Product.d.ts +38 -67
- package/types/client/ProductClasses.d.ts +51 -0
- package/types/client/RadarPlusProduct.d.ts +1 -1
- package/types/client/Renderer.d.ts +44 -19
- package/types/client/SatelliteProduct.d.ts +1 -1
- package/types/client/ShaderStorage.d.ts +25 -0
- package/types/client/StartupElementPlugin.d.ts +8 -0
- package/types/client/SveltePlugin.d.ts +5 -5
- package/types/client/SwitchableTileCache.d.ts +104 -0
- package/types/client/TileLayer.d.ts +12 -3
- package/types/client/TileLayerCustom.d.ts +51 -0
- package/types/client/TileLayerMulti.d.ts +53 -0
- package/types/client/TileLayerPreprocessorStandalone.d.ts +45 -0
- package/types/client/TileLayerRenderer.d.ts +24 -0
- package/types/client/TileLayerUtils.d.ts +43 -0
- package/types/client/TilePreprocessor.d.ts +27 -0
- package/types/client/TopoMap.d.ts +4 -4
- package/types/client/WindowPlugin.d.ts +7 -6
- package/types/client/appsFlyer.d.ts +2 -1
- package/types/client/baseMap.d.ts +12 -2
- package/types/client/broadcast.d.ts +1 -1
- package/types/client/cityLabels.d.ts +2 -3
- package/types/client/colorGradients.d.ts +4 -10
- package/types/client/colors.d.ts +1 -2
- package/types/client/css.test.d.ts +1 -0
- package/types/client/customProtocol.d.ts +11 -0
- package/types/client/d.ts.files/GlObj.d.ts +1 -5
- package/types/client/d.ts.files/Metric.d.ts +23 -2
- package/types/client/d.ts.files/alerts.d.ts +1 -0
- package/types/client/d.ts.files/broadcast.d.ts +31 -35
- package/types/client/d.ts.files/dataSpecifications.d.ts +82 -66
- package/types/client/d.ts.files/favs.d.ts +7 -18
- package/types/client/d.ts.files/glUtils.d.ts +71 -0
- package/types/client/d.ts.files/http.d.ts +4 -4
- package/types/client/d.ts.files/interpolatorTypes.d.ts +5 -5
- package/types/client/d.ts.files/lib.d.ts +1 -2
- package/types/client/d.ts.files/liveAlerts.d.ts +52 -0
- package/types/client/d.ts.files/mapUtils.d.ts +25 -0
- package/types/client/d.ts.files/outgoingMessages.d.ts +1 -1
- package/types/client/d.ts.files/plugin-params.d.ts +46 -24
- package/types/client/d.ts.files/plugins.d.ts +44 -31
- package/types/client/d.ts.files/rootScope.d.ts +2 -0
- package/types/client/d.ts.files/singleclick.d.ts +4 -2
- package/types/client/d.ts.files/startup.d.ts +7 -52
- package/types/client/d.ts.files/storage.d.ts +0 -11
- package/types/client/d.ts.files/user.d.ts +6 -1
- package/types/client/d.ts.files/webcams.d.ts +9 -2
- package/types/client/dataLoader.d.ts +2 -2
- package/types/client/detectDevice.d.ts +3 -0
- package/types/client/embed.d.ts +2 -7
- package/types/client/errorLogger.d.ts +20 -1
- package/types/client/externalPlugins.d.ts +5 -1
- package/types/client/fetch.d.ts +62 -5
- package/types/client/format.d.ts +12 -0
- package/types/client/glContextUtils.d.ts +9 -0
- package/types/client/glStatus.d.ts +7 -0
- package/types/client/glTileRender.d.ts +1 -7
- package/types/client/glUtils.d.ts +119 -0
- package/types/client/http.d.ts +0 -6
- package/types/client/idbConnection.d.ts +13 -0
- package/types/client/idbInstances.d.ts +118 -13
- package/types/client/landLayer.d.ts +3 -0
- package/types/client/layers.d.ts +5 -2
- package/types/client/legends.d.ts +1 -1
- package/types/client/lib.d.ts +11 -21
- package/types/client/liveAlerts.d.ts +2 -2
- package/types/client/location.d.ts +1 -1
- package/types/client/map.d.ts +94 -15
- package/types/client/mapUtils.d.ts +66 -0
- package/types/client/math.d.ts +14 -0
- package/types/client/mobile.d.ts +16 -41
- package/types/client/mobileUtils.d.ts +10 -0
- package/types/client/models.d.ts +2 -6
- package/types/client/overlays.d.ts +4 -3
- package/types/client/particleRenderers.d.ts +1 -1
- package/types/client/picker.d.ts +4 -8
- package/types/client/plugins.d.ts +0 -4
- package/types/client/products.d.ts +53 -2
- package/types/client/promo.d.ts +28 -5
- package/types/client/pushNotifications.d.ts +19 -1
- package/types/client/renderCtrl.d.ts +1 -1
- package/types/client/renderTile.d.ts +2 -2
- package/types/client/renderUtils.d.ts +21 -27
- package/types/client/renderers.d.ts +6 -9
- package/types/client/reverseName.d.ts +2 -1
- package/types/client/rhMessage.d.ts +1 -1
- package/types/client/rootScope.d.ts +17 -9
- package/types/client/router.d.ts +41 -9
- package/types/client/seoParser.d.ts +35 -0
- package/types/client/showableErrorsService.d.ts +10 -6
- package/types/client/singleclick.d.ts +1 -1
- package/types/client/startup.d.ts +48 -0
- package/types/client/startupUtils.d.ts +19 -0
- package/types/client/store.d.ts +20 -52
- package/types/client/subscription.d.ts +3 -26
- package/types/client/throttler.d.ts +32 -0
- package/types/client/tileHelpers.d.ts +35 -0
- package/types/client/tileInterpolator.d.ts +1 -1
- package/types/client/tileLayerInterpolator.d.ts +40 -0
- package/types/client/tileLayerSource.d.ts +98 -0
- package/types/client/timestampUtils.test.d.ts +1 -0
- package/types/client/topMessage.d.ts +22 -0
- package/types/client/user.d.ts +1 -0
- package/types/client/userAlerts.d.ts +0 -4
- package/types/client/userConsent.d.ts +0 -2
- package/types/client/userFavs.d.ts +17 -12
- package/types/client/utils.d.ts +78 -25
- package/types/client/utils.test.d.ts +1 -0
- package/types/iconfont.d.ts +2 -5
- package/types/interfaces.d.ts +290 -88
- package/types/lang-files.d.ts +578 -98
- package/types/leaflet-gl.d.ts +12773 -0
- package/types/types.d.ts +323 -11
- package/types/client/d.ts.files/Calendar.d.ts +0 -96
- package/types/client/d.ts.files/CanvasLayer.d.ts +0 -70
- package/types/client/d.ts.files/Color.d.ts +0 -94
- package/types/client/d.ts.files/DataTiler.d.ts +0 -45
- package/types/client/d.ts.files/LandMask.d.ts +0 -17
- package/types/client/d.ts.files/Layer.d.ts +0 -191
- package/types/client/d.ts.files/PoisOverlay.d.ts +0 -27
- package/types/client/d.ts.files/Renderer.d.ts +0 -44
- package/types/client/d.ts.files/TileLayerCanvas.d.ts +0 -78
- package/types/client/d.ts.files/TileLayerMultiPatch.d.ts +0 -13
- package/types/client/d.ts.files/products.d.ts +0 -60
- package/types/client/imaker.d.ts +0 -112
- package/types/offline.d.ts +0 -100
package/types/client/map.d.ts
CHANGED
|
@@ -10,11 +10,68 @@
|
|
|
10
10
|
*
|
|
11
11
|
* @module map
|
|
12
12
|
*/
|
|
13
|
+
import { DivIcon } from '@leafletGl';
|
|
13
14
|
import type { LatLon } from '@windy/interfaces.d';
|
|
14
15
|
import type { Pixel } from '@windy/types';
|
|
15
|
-
import type { MapLibreMap } from 'plugins/_shared/maplibre/mapLibreMap';
|
|
16
16
|
/**
|
|
17
|
-
*
|
|
17
|
+
* Use this object to lookup proper order IDs for different layers.
|
|
18
|
+
* Higher order ID layers always draw on top of lower order ID layers.
|
|
19
|
+
*/
|
|
20
|
+
export declare const layerOrder: {
|
|
21
|
+
/**
|
|
22
|
+
* Used for the colored land-sea layer. Bottom of the stack.
|
|
23
|
+
*/
|
|
24
|
+
LANDSEA_MASK_COLORED: number;
|
|
25
|
+
/**
|
|
26
|
+
* Main bucket for weather layers. Draws above the colored land/sea mask, but below everything else.
|
|
27
|
+
*/
|
|
28
|
+
MAIN: number;
|
|
29
|
+
/**
|
|
30
|
+
* Bucket for rendering satellite layer.
|
|
31
|
+
*/
|
|
32
|
+
SATELLITE: number;
|
|
33
|
+
/**
|
|
34
|
+
* Bucket for rendering radar layer.
|
|
35
|
+
*/
|
|
36
|
+
RADAR: number;
|
|
37
|
+
/**
|
|
38
|
+
* Particles overlay.
|
|
39
|
+
*/
|
|
40
|
+
PARTICLES: number;
|
|
41
|
+
/**
|
|
42
|
+
* Land/sea mask, to mask out some parts of the main weather map.
|
|
43
|
+
*/
|
|
44
|
+
LANDMASK_SEAMASK: number;
|
|
45
|
+
/**
|
|
46
|
+
* Used for the raster base map (the mostly transparent one with borders and outlines of water bodies).
|
|
47
|
+
* Draws above the weather layers and land/sea mask.
|
|
48
|
+
*/
|
|
49
|
+
BASE_MAP: number;
|
|
50
|
+
/**
|
|
51
|
+
* Bucket where particles are moved if the map is zoomed in enough to show outdoor map instead of the grey base map.
|
|
52
|
+
*/
|
|
53
|
+
PARTICLES_HIGH_ZOOM: number;
|
|
54
|
+
/**
|
|
55
|
+
* Airspaces map overlay.
|
|
56
|
+
*/
|
|
57
|
+
AIRSPACES: number;
|
|
58
|
+
/**
|
|
59
|
+
* WebGL POIs overlay (e.g. fire-spots).
|
|
60
|
+
*/
|
|
61
|
+
WEBGL_POIS: number;
|
|
62
|
+
/**
|
|
63
|
+
* Hurricane overlay.
|
|
64
|
+
*/
|
|
65
|
+
HURRICANES: number;
|
|
66
|
+
/**
|
|
67
|
+
* Isolines overlay.
|
|
68
|
+
* Display on top of both hurricanes and airspaces, since neither contains any text (at least not in their canvases), but isolines do have text.
|
|
69
|
+
* Note that hurricane markers/popups will display above all MapLibre layers, including this one.
|
|
70
|
+
*/
|
|
71
|
+
ISOLINES: number;
|
|
72
|
+
};
|
|
73
|
+
/**
|
|
74
|
+
* Already initialized instance of LeafletGL Map
|
|
18
75
|
*
|
|
19
76
|
* @example
|
|
20
77
|
* ```js
|
|
@@ -25,7 +82,7 @@ import type { MapLibreMap } from 'plugins/_shared/maplibre/mapLibreMap';
|
|
|
25
82
|
* });
|
|
26
83
|
* ```
|
|
27
84
|
*/
|
|
28
|
-
export declare const map:
|
|
85
|
+
export declare const map: any;
|
|
29
86
|
/**
|
|
30
87
|
* Already initialized reusable set of minimalistic Leaflet markers
|
|
31
88
|
*
|
|
@@ -39,12 +96,12 @@ export declare const map: L.Map;
|
|
|
39
96
|
* ```js
|
|
40
97
|
* import { map, markers } from '@windy/map';
|
|
41
98
|
*
|
|
42
|
-
* const myPulsatingMarker =
|
|
99
|
+
* const myPulsatingMarker = marker([ 50, 14 ], {
|
|
43
100
|
* icon: markers.pulsatingIcon
|
|
44
101
|
* }).addTo( map );
|
|
45
102
|
* ```
|
|
46
103
|
*/
|
|
47
|
-
export declare const markers: Record<string,
|
|
104
|
+
export declare const markers: Record<string, DivIcon>;
|
|
48
105
|
/**
|
|
49
106
|
* @ignore
|
|
50
107
|
*/
|
|
@@ -69,23 +126,45 @@ export declare function ensurePointVisibleY(lat: number, lon: number, offset: nu
|
|
|
69
126
|
* @ignore
|
|
70
127
|
*/
|
|
71
128
|
export declare function panToOffset(y: Pixel, lat: number, lon: number): void;
|
|
129
|
+
export declare let hasMask: boolean;
|
|
130
|
+
export declare function toggleLandMask(enableMask: boolean): void;
|
|
131
|
+
export declare function toggleSeaMask(enableMask: boolean): void;
|
|
132
|
+
export declare function toggleLandSeaMaskColored(enableMask: boolean): void;
|
|
72
133
|
/**
|
|
73
134
|
* Retrieves the map tiles from the mapTilesRecord.
|
|
74
135
|
* @ignore
|
|
75
136
|
* @returns The map tiles.
|
|
76
137
|
*/
|
|
77
138
|
export declare const getMapTiles: (patchType?: string) => Record<import("@windy/baseMap").MapTilesKeys, string>;
|
|
78
|
-
/**
|
|
79
|
-
* Following object (singleton) contains all the stuff required for
|
|
80
|
-
* integration of mapLibre Gl into the client.
|
|
81
|
-
*/
|
|
82
|
-
export declare const mapLibre: {
|
|
83
|
-
/**
|
|
84
|
-
* Instance of our own mapLibre map wrapper Class
|
|
85
|
-
*/
|
|
86
|
-
wrapper: MapLibreMap | null;
|
|
87
|
-
};
|
|
88
139
|
/**
|
|
89
140
|
* Just handy shortcut to detect that globe is active
|
|
90
141
|
*/
|
|
91
142
|
export declare const isGlobeActive: () => boolean;
|
|
143
|
+
type LoadCallback = (...args: unknown[]) => void;
|
|
144
|
+
export declare function whenMapInitialized(callback: LoadCallback): void;
|
|
145
|
+
/**
|
|
146
|
+
* Requests the presence of a large loader, or removes such request.
|
|
147
|
+
* Each loader request is tied to some `id` - any unique identifier of a component that requested it.
|
|
148
|
+
* A loader is displayed for as long as any component requests one.
|
|
149
|
+
*
|
|
150
|
+
* Calling the function with `setTileLayerLoader(id, true)` when the loader was already requested before has no effect,
|
|
151
|
+
* and calling it with `setTileLayerLoader(id, false)` when the loader was already removed also has no effect.
|
|
152
|
+
*
|
|
153
|
+
* Example: both "tileLayer" and "cityLabels" might be requesting the presence of a loader, but "cityLabels" are done loading
|
|
154
|
+
* before "tileLayer" and remove their request, but the loader is still visible until "tileLayer" also removes its loader request.
|
|
155
|
+
* @param id - The string identifier of the calling component.
|
|
156
|
+
* @param loaderActive - Whether a loader is requested or not.
|
|
157
|
+
*
|
|
158
|
+
* @example
|
|
159
|
+
* ```ts
|
|
160
|
+
* const loaderId = "tileLayer";
|
|
161
|
+
* // Start of loading - we request a loader:
|
|
162
|
+
* setTileLayerLoader(loaderId, true);
|
|
163
|
+
* // Actually load something
|
|
164
|
+
* await loadSomething();
|
|
165
|
+
* // Remove our loader request:
|
|
166
|
+
* setTileLayerLoader(loaderId, false);
|
|
167
|
+
* ```
|
|
168
|
+
*/
|
|
169
|
+
export declare function setTileLayerLoader(id: string, loaderActive: boolean): void;
|
|
170
|
+
export {};
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { LngLatBounds } from '@leafletGl';
|
|
2
|
+
import type { LatLngBounds, LngLatBoundsLike } from '@leafletGl';
|
|
3
|
+
import type { BoxBounds2D } from './d.ts.files/math';
|
|
4
|
+
export declare const utils: {
|
|
5
|
+
isWebGl2: boolean;
|
|
6
|
+
/** WebGL context type key - used to access context-relevant shaders sources */
|
|
7
|
+
context: "WGL1" | "WGL2";
|
|
8
|
+
};
|
|
9
|
+
/**
|
|
10
|
+
* @summary Computes nearest integer zoom w.r.t the supplied zoom offset (in case of different tile size than 512px) and optional upper bound
|
|
11
|
+
* @param map
|
|
12
|
+
* @param zoomOffset
|
|
13
|
+
* @param upperBound
|
|
14
|
+
*/
|
|
15
|
+
export declare function getSafeZoom(zoomOffset: number, upperBound?: number): number;
|
|
16
|
+
/**
|
|
17
|
+
* @summary Enumerates visible world copies for the current viewport state
|
|
18
|
+
* @param map MapLibre map used to query current viewport state
|
|
19
|
+
* @returns Array of integers representing each copy and its "position" in the repeated world coordinates (e.g. [-1, 0 = canonical, 1, 2])
|
|
20
|
+
*/
|
|
21
|
+
export declare function getWorldVisibleRectOffsets(): number[];
|
|
22
|
+
/**
|
|
23
|
+
* @summary Coverts MapLibre LngLat bounds to mercator bounding box with coordinates in range <0.0,1.0>
|
|
24
|
+
* @param bounds
|
|
25
|
+
*/
|
|
26
|
+
export declare function lngLatBoundsToMercator(bounds: LngLatBounds): BoxBounds2D;
|
|
27
|
+
/**
|
|
28
|
+
* Viewport tile padding, 1 = viewport is padded by one tile on each side
|
|
29
|
+
* - required mainly for data extrapolation since data outside of viewport have to be accessed
|
|
30
|
+
*/
|
|
31
|
+
export declare const tilePaddingSize: number;
|
|
32
|
+
/**
|
|
33
|
+
* @summary Computes viewport tile bounds defined in tile coordinates for current map viewport and zoom
|
|
34
|
+
* - in case of padding is defined, returns tile bounds computed from the padded lat-lon bounds
|
|
35
|
+
* @param map
|
|
36
|
+
* @param zoom
|
|
37
|
+
*/
|
|
38
|
+
export declare function getTileBounds(zoom: number, toCanonical?: boolean): BoxBounds2D;
|
|
39
|
+
/**
|
|
40
|
+
* @summary Converts tile bounds to Maplibre LngLatBounds
|
|
41
|
+
* @param tileBounds Tile bounds in tile coordinates
|
|
42
|
+
* @param zoom Integer (rounded) zoom w.r.t. the supplied tile bounds
|
|
43
|
+
*/
|
|
44
|
+
export declare function tileBoundsToLatLonBounds(tileBounds: BoxBounds2D, zoom: number): LngLatBounds;
|
|
45
|
+
/**
|
|
46
|
+
* @summary Converts lat-lon bounds (defined either as MapLibre LngLatBounds or as BoxBounds2D) to bounds defined in tile coordinates
|
|
47
|
+
* @param latLonBounds
|
|
48
|
+
* @param zoom Integer (rounded) zoom for which to compute the tile bounds
|
|
49
|
+
*/
|
|
50
|
+
export declare function latLonBounds2TileBounds(latLonBounds: LngLatBounds | BoxBounds2D, zoom: number): BoxBounds2D;
|
|
51
|
+
/**
|
|
52
|
+
* @summary Since maplibre tile zoom is based on default tile size 512px, other sizes lead to different zoom (e.g. 256px has zoom + 1...)
|
|
53
|
+
* - that means, that while map is having zoom 5, the tile with different tile size can have zoom 6
|
|
54
|
+
* @param tileSizeInPixels For which tile size to compute zoom offset
|
|
55
|
+
* @returns {number} Zoom offset delta to be added to the queried map zoom
|
|
56
|
+
*/
|
|
57
|
+
export declare function tileSizeToZoomOffset(tileSizeInPixels: number): number;
|
|
58
|
+
/**
|
|
59
|
+
* Converts Leaflet geodesic bounds to maplibre bounds
|
|
60
|
+
* @param lineBounds Geodesic bounds
|
|
61
|
+
* @returns {LngLatBoundsLike}
|
|
62
|
+
*/
|
|
63
|
+
export declare function geoBoundsToMaplibreBounds(lineBounds: LatLngBounds): LngLatBoundsLike;
|
|
64
|
+
export declare function createPlaceholderImageCanvas(noDataPattern: boolean, cssColor?: string): HTMLCanvasElement;
|
|
65
|
+
export declare function createPlaceholderImage(noDataPattern: boolean, cssColor?: string): Promise<HTMLImageElement>;
|
|
66
|
+
export declare function queryWebGlVersion(): void;
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export declare class Vector2 {
|
|
2
|
+
x: number;
|
|
3
|
+
y: number;
|
|
4
|
+
}
|
|
5
|
+
export declare class Vector3 extends Vector2 {
|
|
6
|
+
z: number;
|
|
7
|
+
}
|
|
8
|
+
export declare class Vector4 extends Vector3 {
|
|
9
|
+
w: number;
|
|
10
|
+
}
|
|
11
|
+
export type BoxBounds2D = {
|
|
12
|
+
min: Vector2;
|
|
13
|
+
max: Vector2;
|
|
14
|
+
};
|
package/types/client/mobile.d.ts
CHANGED
|
@@ -9,22 +9,6 @@
|
|
|
9
9
|
* and modules consumed by plugins, MUST be listed here.
|
|
10
10
|
*/
|
|
11
11
|
export * as errorLogger from './utils/errorLogger';
|
|
12
|
-
/**
|
|
13
|
-
const originalGetCurrentPosition = navigator.geolocation.getCurrentPosition;
|
|
14
|
-
navigator.geolocation.getCurrentPosition = (...args) => {
|
|
15
|
-
alert(`XXX getCurrentPosition ${new Error().stack}`);
|
|
16
|
-
debugger;
|
|
17
|
-
originalGetCurrentPosition.call(navigator.geolocation, ...args);
|
|
18
|
-
};
|
|
19
|
-
// Monkey-patch watchPosition
|
|
20
|
-
const originalWatchPosition = navigator.geolocation.watchPosition;
|
|
21
|
-
navigator.geolocation.watchPosition = (...args) => {
|
|
22
|
-
alert('XXX watchPosition');
|
|
23
|
-
debugger;
|
|
24
|
-
return originalWatchPosition.call(navigator.geolocation, ...args);
|
|
25
|
-
};
|
|
26
|
-
*/
|
|
27
|
-
import './leafletExt/CanvasLayer';
|
|
28
12
|
export * as Evented from './utils/Evented';
|
|
29
13
|
export * as css from './utils/css';
|
|
30
14
|
export * as fetch from './utils/fetch';
|
|
@@ -34,25 +18,24 @@ export * as http from './utils/http';
|
|
|
34
18
|
export * as log from './utils/log';
|
|
35
19
|
export { default as lruCache } from './utils/lruCache';
|
|
36
20
|
export { default as storage } from './utils/storage';
|
|
21
|
+
export * as IDB from './utils/IDB';
|
|
22
|
+
export * as idbInstances from './utils/idbInstances';
|
|
37
23
|
export * as subscription from './utils/subscription';
|
|
38
24
|
export * as utils from './utils/utils';
|
|
25
|
+
export * as mapUtils from './utils/mapUtils';
|
|
26
|
+
export * as customProtocol from './utils/customProtocol';
|
|
27
|
+
export * as landLayer from './map/landLayer';
|
|
39
28
|
export * as errors from './utils/errors';
|
|
40
|
-
export * as
|
|
41
|
-
export * as
|
|
29
|
+
export * as throttler from './utils/throttler';
|
|
30
|
+
export * as EventManager from './utils/EventManager';
|
|
42
31
|
export * as Calendar from './weatherClasses/Calendar';
|
|
43
32
|
export * as Color from './weatherClasses/Color';
|
|
44
|
-
export * as EcmwfProduct from './weatherClasses/EcmwfProduct';
|
|
45
|
-
export * as HrrrProducts from './weatherClasses/HrrrProducts';
|
|
46
|
-
export * as IconProducts from './weatherClasses/IconProducts';
|
|
47
33
|
export * as Layer from './weatherClasses/Layer';
|
|
48
34
|
export * as Metric from './weatherClasses/Metric';
|
|
49
35
|
export * as MetricClasses from './weatherClasses/MetricClasses';
|
|
50
|
-
export * as NamProducts from './weatherClasses/NamProducts';
|
|
51
36
|
export * as Overlay from './weatherClasses/Overlay';
|
|
52
37
|
export * as OverlayClasses from './weatherClasses/OverlayClasses';
|
|
53
38
|
export * as Product from './weatherClasses/Product';
|
|
54
|
-
export * as SatelliteProduct from './weatherClasses/SatelliteProduct';
|
|
55
|
-
export * as StaticProduct from './weatherClasses/StaticProduct';
|
|
56
39
|
export { default as layers } from './weather/layers';
|
|
57
40
|
export { default as legends } from './weather/legends';
|
|
58
41
|
export { default as metrics } from './weather/metrics';
|
|
@@ -70,7 +53,6 @@ export * as deviceLogging from './services/deviceLogging';
|
|
|
70
53
|
export * as geolocation from './services/geolocation';
|
|
71
54
|
export * as liveAlerts from './services/liveAlerts';
|
|
72
55
|
export * as notifications from './services/notifications';
|
|
73
|
-
export * as ogTags from './services/ogTags';
|
|
74
56
|
export * as params from './services/params';
|
|
75
57
|
export * as pois from './services/pois';
|
|
76
58
|
export * as reverseName from './services/reverseName';
|
|
@@ -92,12 +74,12 @@ export { default as plugins } from './pluginSystem/plugins';
|
|
|
92
74
|
export * as pluginsCtrl from './pluginSystem/pluginsCtrl';
|
|
93
75
|
export * as externalPlugins from './pluginSystem/externalPlugins';
|
|
94
76
|
export * as BottomSlide from './uiClasses/BottomSlide';
|
|
95
|
-
export * as ClickHandler from './uiClasses/ClickHandler';
|
|
96
77
|
export * as Drag from './uiClasses/Drag';
|
|
97
78
|
export * as Swipe from './uiClasses/Swipe';
|
|
98
79
|
export * as Window from './uiClasses/Window';
|
|
99
80
|
export * as components from './ui/components';
|
|
100
|
-
export * as
|
|
81
|
+
export * as startup from './ui/startup';
|
|
82
|
+
export * as startupUtils from './ui/startupUtils';
|
|
101
83
|
export * as keyboard from './ui/keyboard';
|
|
102
84
|
export * as location from './ui/location';
|
|
103
85
|
export * as permanentPromos from './ui/permanentPromos';
|
|
@@ -107,26 +89,20 @@ export * as rhMessage from './ui/rhMessage';
|
|
|
107
89
|
export * as timeAnimation from './ui/timeAnimation';
|
|
108
90
|
export * as visibility from './ui/visibility';
|
|
109
91
|
export * as share from './ui/share';
|
|
110
|
-
export * as
|
|
111
|
-
export * as DataTiler from './renderClasses/DataTiler';
|
|
112
|
-
export * as Particles from './renderClasses/Particles';
|
|
92
|
+
export * as topMessage from './ui/topMessage';
|
|
113
93
|
export * as Renderer from './renderClasses/Renderer';
|
|
114
94
|
export * as TileLayer from './renderClasses/TileLayer';
|
|
115
|
-
export { default as TileLayerCanvas } from './renderClasses/TileLayerCanvas';
|
|
116
|
-
export * as dataLoader from './render/dataLoader';
|
|
117
95
|
export * as interpolator from './render/interpolator';
|
|
118
|
-
export { default as particleRenderers } from './render/particleRenderers';
|
|
119
96
|
export * as renderCtrl from './render/renderCtrl';
|
|
120
97
|
export * as renderUtils from './render/renderUtils';
|
|
121
98
|
export { default as renderers } from './render/renderers';
|
|
122
|
-
export * as tileInterpolator from './render/
|
|
123
|
-
export
|
|
124
|
-
export * as
|
|
125
|
-
export * as
|
|
126
|
-
export
|
|
99
|
+
export * as tileInterpolator from './render/tileLayerInterpolator';
|
|
100
|
+
export * as tileLayerSource from './tileCache/tileLayerSource';
|
|
101
|
+
export * as SwitchableTileCache from './tileCache/SwitchableTileCache';
|
|
102
|
+
export * as TilePreprocessor from './tileCache/TilePreprocessor';
|
|
103
|
+
export * as glUtils from './glUtils/glUtils';
|
|
104
|
+
export * as ShaderStorage from './shaders/ShaderStorage';
|
|
127
105
|
export { default as LabelsLayer } from './mapClasses/LabelsLayer';
|
|
128
|
-
export { default as LandMask } from './mapClasses/LandMask';
|
|
129
|
-
export { default as TileLayerMultiPatch } from './mapClasses/TileLayerMultiPatch';
|
|
130
106
|
export * as baseMap from './map/baseMap';
|
|
131
107
|
export * as cityLabels from './map/cityLabels';
|
|
132
108
|
export * as map from './map/map';
|
|
@@ -139,7 +115,6 @@ export * as nativeStorage from './capacitor/nativeStorage';
|
|
|
139
115
|
export * as pushNotifications from './capacitor/pushNotifications';
|
|
140
116
|
export * as appsFlyer from './capacitor/appsFlyer';
|
|
141
117
|
export * as showableErrorsService from './capacitor/showableErrorsService';
|
|
142
|
-
import './ui/patchAndPromoCtrl';
|
|
143
118
|
import './ui/storeLastPosition';
|
|
144
119
|
import './services/customColors';
|
|
145
120
|
import './services/compatibilityCheck';
|
|
@@ -5,3 +5,13 @@
|
|
|
5
5
|
* @param disableForcedReloading Disable reloads, if location is the same
|
|
6
6
|
*/
|
|
7
7
|
export declare const reloadAppWithURL: (url: string, disableForcedReloading?: boolean) => void;
|
|
8
|
+
export declare const isFrequentUser: () => {
|
|
9
|
+
sessionsPerDay: number;
|
|
10
|
+
daysWithUs: number;
|
|
11
|
+
};
|
|
12
|
+
export declare const isAppReviewNecessaryConditionFulfilled: (daysWithUs: number) => boolean;
|
|
13
|
+
/**
|
|
14
|
+
* Handles the Android back button press event.
|
|
15
|
+
*/
|
|
16
|
+
export declare const onAndroidBackButton: () => void;
|
|
17
|
+
export declare const handleAppsFlyer: () => Promise<void>;
|
package/types/client/models.d.ts
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { Layers } from '@windy/Layer
|
|
1
|
+
import type { Layers } from '@windy/Layer';
|
|
2
2
|
import type { UsedOverlays } from '@windy/Overlay';
|
|
3
3
|
import type { LatLon } from '@windy/interfaces.d';
|
|
4
4
|
import type { Overlays, PointProducts, Products } from '@windy/rootScope.d';
|
|
@@ -15,10 +15,6 @@ export declare const layer2product: {
|
|
|
15
15
|
export declare const overlay2product: {
|
|
16
16
|
[P in LayerOrOverlay]?: Products[];
|
|
17
17
|
};
|
|
18
|
-
/**
|
|
19
|
-
* From list of products deduplicates icon/iconEu, iconWaves/iconEuWaves
|
|
20
|
-
*/
|
|
21
|
-
export declare const removeModelsFromSameGroup: (productsList: Products[]) => Products[];
|
|
22
18
|
/**
|
|
23
19
|
* Return particular icon related model based on rqrd and avbl models
|
|
24
20
|
*/
|
|
@@ -26,7 +22,7 @@ export declare const bestModelFromSameGroup: (rqrdProduct: Products, avProducts:
|
|
|
26
22
|
/**
|
|
27
23
|
* Return idents of visible local products available in the current map boundaries (or empty array undefined)
|
|
28
24
|
*/
|
|
29
|
-
export declare const betterProducts: <T extends LatLon, PT extends boolean, R extends PT extends true ? "
|
|
25
|
+
export declare const betterProducts: <T extends LatLon, PT extends boolean, R extends PT extends true ? "icon" | "namConus" | "namHawaii" | "namAlaska" | "iconEu" | "iconD2" | "arome" | "aromeAntilles" | "aromeFrance" | "aromeReunion" | "canHrdps" | "canRdwpsWaves" | "camsEu" | "czeAladin" | "iconEuWaves" | "hrrrAlaska" | "hrrrConus" | "bomAccess" | "bomAccessAd" | "bomAccessBn" | "bomAccessDn" | "bomAccessNq" | "bomAccessPh" | "bomAccessSy" | "bomAccessVt" | "ukv" | "jmaMsm" | "jmaCwmWaves" | "gfs" | "ecmwf" | "mblue" : "icon" | "radar" | "satellite" | "capAlerts" | "topoMap" | "nems" | "namConus" | "namHawaii" | "namAlaska" | "iconEu" | "iconD2" | "arome" | "aromeAntilles" | "aromeFrance" | "aromeReunion" | "canHrdps" | "canRdwpsWaves" | "camsEu" | "czeAladin" | "iconEuWaves" | "hrrrAlaska" | "hrrrConus" | "bomAccess" | "bomAccessAd" | "bomAccessBn" | "bomAccessDn" | "bomAccessNq" | "bomAccessPh" | "bomAccessSy" | "bomAccessVt" | "ukv" | "jmaMsm" | "jmaCwmWaves" | "gfs" | "ecmwf" | "ecmwfAnalysis" | "ecmwfWaves" | "gfsWaves" | "cams" | "efi" | "cmems" | "drought" | "fireDanger" | "activeFires" | "mblue">(latLon: T, pointFcts?: PT) => R[];
|
|
30
26
|
/**
|
|
31
27
|
* Return product string on a basis of overlay & wanted forecast model
|
|
32
28
|
*/
|
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
import { Overlay } from '@windy/Overlay';
|
|
2
|
-
import { AwpOverlay, CloudsOverlay, CurrentOverlay, FwiOverlay, RainPtypeOverlay, WaveOverlay } from '@windy/OverlayClasses';
|
|
2
|
+
import { AqiOverlay, AwpOverlay, CloudsOverlay, CurrentOverlay, FwiOverlay, RainPtypeOverlay, WaveOverlay } from '@windy/OverlayClasses';
|
|
3
3
|
declare const overlays: {
|
|
4
4
|
wind: Overlay<"wind", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
5
5
|
temp: Overlay<"temp", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
6
6
|
wetbulbtemp: Overlay<"temp", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
7
7
|
solarpower: Overlay<"solarpower", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
8
|
+
wavePower: Overlay<"wavePower", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
8
9
|
uvindex: Overlay<"uvindex", import("../weatherClasses/MetricClasses").UVIndexMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").UVIndexMetric>>;
|
|
9
10
|
dewpoint: Overlay<"dewpoint", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
10
11
|
gust: Overlay<"gust", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
@@ -49,8 +50,6 @@ declare const overlays: {
|
|
|
49
50
|
ccl: Overlay<"ccl", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
50
51
|
radar: Overlay<"radar", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
51
52
|
satellite: Overlay<"satellite", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
52
|
-
radarPlus: Overlay<"radarPlus", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
53
|
-
satelliteIRBT: Overlay<"satellite", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
54
53
|
capAlerts: Overlay<"capAlerts", undefined, import("../weatherClasses/Layer").Layer<undefined>>;
|
|
55
54
|
efiWind: Overlay<"efiWind", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
56
55
|
efiTemp: Overlay<"efiTemp", import("../weatherClasses/MetricClasses").NumberedMetric, import("../weatherClasses/Layer").Layer<import("../weatherClasses/MetricClasses").NumberedMetric>>;
|
|
@@ -66,5 +65,7 @@ declare const overlays: {
|
|
|
66
65
|
heatmaps: Overlay<"heatmaps", undefined, undefined>;
|
|
67
66
|
topoMap: Overlay<"topoMap", undefined, import("../weatherClasses/Layer").Layer<undefined>>;
|
|
68
67
|
hurricanes: Overlay<"hurricanes", undefined, undefined>;
|
|
68
|
+
aqi: AqiOverlay<"aqi">;
|
|
69
|
+
radarPlus: Overlay<"radarPlus", undefined, undefined>;
|
|
69
70
|
};
|
|
70
71
|
export default overlays;
|
package/types/client/picker.d.ts
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { Evented } from '@windy/Evented';
|
|
2
|
-
import type { OnHoverPOIData } from '@plugins/poi-libs/poi-libs.d';
|
|
3
2
|
import type { LatLon } from '@windy/interfaces.d';
|
|
4
3
|
import type { PluginsOpenParams } from '@windy/plugin-params.d';
|
|
5
|
-
import type { Pixel
|
|
4
|
+
import type { Pixel } from '@windy/types';
|
|
5
|
+
import type { LatLng } from '@leafletGl';
|
|
6
6
|
interface Events {
|
|
7
7
|
pickerOpened: [PluginsOpenParams['picker'] & {
|
|
8
8
|
source?: 'picker';
|
|
@@ -10,10 +10,6 @@ interface Events {
|
|
|
10
10
|
pickerMoved: [PluginsOpenParams['picker']];
|
|
11
11
|
pickerClosed: [];
|
|
12
12
|
dataChanged: [];
|
|
13
|
-
getPOIsAtXY: [Pixel, Pixel];
|
|
14
|
-
POIloaded: [OnHoverPOIData];
|
|
15
|
-
POIclose: [];
|
|
16
|
-
rqstOpenPOIdetail: [PickerOpener];
|
|
17
13
|
}
|
|
18
14
|
/**
|
|
19
15
|
* Main emitter for purpose of picker actions, must be pard of core, so it is here.
|
|
@@ -46,9 +42,9 @@ export declare class PickerDot {
|
|
|
46
42
|
/** Resets previously offset picker position */
|
|
47
43
|
resetOffset(): void;
|
|
48
44
|
/** Returns picker dot position as Leaflet coords */
|
|
49
|
-
getLatLng():
|
|
45
|
+
getLatLng(): LatLng;
|
|
50
46
|
/** Returns lat and lon of the actual picker dot position */
|
|
51
|
-
getLatLon(): LatLon;
|
|
47
|
+
getLatLon(x?: Pixel, y?: Pixel): LatLon;
|
|
52
48
|
/** Returns position of pickerDot on Leaflet map */
|
|
53
49
|
getDotPosition(): {
|
|
54
50
|
x: Pixel;
|
|
@@ -1,7 +1,3 @@
|
|
|
1
1
|
import type { Plugins } from './d.ts.files/plugins.d';
|
|
2
2
|
declare const plugins: Plugins;
|
|
3
|
-
/**
|
|
4
|
-
* Promise resolves once installed external plugins have loaded into default export
|
|
5
|
-
*/
|
|
6
|
-
export declare const externalPluginsLoaded: Promise<void>;
|
|
7
3
|
export default plugins;
|
|
@@ -1,3 +1,54 @@
|
|
|
1
|
-
import
|
|
2
|
-
|
|
1
|
+
import { Product } from '@windy/Product';
|
|
2
|
+
import { AromeProduct, AccessProduct, AccessCProduct, EcmwfForecastProduct, EcmwfProduct, SatAndRadarPlusProduct } from '@windy/ProductClasses';
|
|
3
|
+
import type { Products } from '@windy/rootScope.d';
|
|
4
|
+
type AllExportedProducts = Implements<{
|
|
5
|
+
[P in Products]: Product;
|
|
6
|
+
}, {
|
|
7
|
+
bomAccess: AccessProduct;
|
|
8
|
+
bomAccessAd: AccessCProduct;
|
|
9
|
+
bomAccessBn: AccessCProduct;
|
|
10
|
+
bomAccessDn: AccessCProduct;
|
|
11
|
+
bomAccessNq: AccessCProduct;
|
|
12
|
+
bomAccessPh: AccessCProduct;
|
|
13
|
+
bomAccessSy: AccessCProduct;
|
|
14
|
+
bomAccessVt: AccessCProduct;
|
|
15
|
+
mblue: Product;
|
|
16
|
+
ecmwf: EcmwfForecastProduct;
|
|
17
|
+
ecmwfWaves: Product;
|
|
18
|
+
ecmwfAnalysis: EcmwfProduct;
|
|
19
|
+
canHrdps: Product;
|
|
20
|
+
canRdwpsWaves: Product;
|
|
21
|
+
cams: Product;
|
|
22
|
+
camsEu: Product;
|
|
23
|
+
cmems: Product;
|
|
24
|
+
czeAladin: Product;
|
|
25
|
+
gfs: Product;
|
|
26
|
+
gfsWaves: Product;
|
|
27
|
+
icon: Product;
|
|
28
|
+
iconD2: Product;
|
|
29
|
+
iconEu: Product;
|
|
30
|
+
iconEuWaves: Product;
|
|
31
|
+
arome: Product;
|
|
32
|
+
aromeAntilles: AromeProduct;
|
|
33
|
+
aromeFrance: AromeProduct;
|
|
34
|
+
aromeReunion: AromeProduct;
|
|
35
|
+
nems: Product;
|
|
36
|
+
namAlaska: Product;
|
|
37
|
+
namConus: Product;
|
|
38
|
+
namHawaii: Product;
|
|
39
|
+
capAlerts: Product;
|
|
40
|
+
efi: Product;
|
|
41
|
+
radar: Product;
|
|
42
|
+
satellite: SatAndRadarPlusProduct;
|
|
43
|
+
hrrrAlaska: Product;
|
|
44
|
+
hrrrConus: Product;
|
|
45
|
+
ukv: Product;
|
|
46
|
+
drought: Product;
|
|
47
|
+
fireDanger: Product;
|
|
48
|
+
activeFires: Product;
|
|
49
|
+
jmaMsm: Product;
|
|
50
|
+
jmaCwmWaves: Product;
|
|
51
|
+
topoMap: Product;
|
|
52
|
+
}>;
|
|
53
|
+
declare const products: AllExportedProducts;
|
|
3
54
|
export default products;
|
package/types/client/promo.d.ts
CHANGED
|
@@ -1,21 +1,44 @@
|
|
|
1
|
-
import type { Timestamp } from '@windy/types';
|
|
1
|
+
import type { ISODateString, Timestamp, TimeRangeMs } from '@windy/types';
|
|
2
|
+
type PromoUniqueId = string;
|
|
2
3
|
export interface PromoInfoObject {
|
|
3
|
-
id:
|
|
4
|
+
id: PromoUniqueId;
|
|
4
5
|
displayed: number;
|
|
5
6
|
ts: Timestamp;
|
|
6
7
|
}
|
|
7
8
|
/**
|
|
8
9
|
* Get basic info about promo for given ident
|
|
9
10
|
*/
|
|
10
|
-
export declare const getCounter: (id:
|
|
11
|
+
export declare const getCounter: (id: PromoUniqueId) => Promise<PromoInfoObject>;
|
|
11
12
|
/**
|
|
12
13
|
* Increases 'seen' counter for particular promo
|
|
13
14
|
*/
|
|
14
|
-
export declare const hitCounter: (id:
|
|
15
|
+
export declare const hitCounter: (id: PromoUniqueId, logEvent?: boolean) => Promise<void>;
|
|
15
16
|
/**
|
|
16
17
|
* Flag the promo to be never seen again (by setting
|
|
17
18
|
* its number to 1000)
|
|
18
19
|
*
|
|
19
20
|
* @param ident Ident
|
|
20
21
|
*/
|
|
21
|
-
export declare const neverSee: (ident:
|
|
22
|
+
export declare const neverSee: (ident: PromoUniqueId) => void;
|
|
23
|
+
/**
|
|
24
|
+
* Determines if promo should be displayed or not
|
|
25
|
+
*/
|
|
26
|
+
export declare const shouldDisplayPromo: ({ id, end, counter, delay, }: {
|
|
27
|
+
/**
|
|
28
|
+
* Main ID of the promo. This key is also used in `promo` object in localStorage
|
|
29
|
+
*/
|
|
30
|
+
id: PromoUniqueId;
|
|
31
|
+
/**
|
|
32
|
+
* ISO date, when the promo expires
|
|
33
|
+
*/
|
|
34
|
+
end?: ISODateString;
|
|
35
|
+
/**
|
|
36
|
+
* How many times display promo to the user (respective on one device)
|
|
37
|
+
*/
|
|
38
|
+
counter: number;
|
|
39
|
+
/**
|
|
40
|
+
* How often to display promo on particular device (in ms)
|
|
41
|
+
*/
|
|
42
|
+
delay?: TimeRangeMs;
|
|
43
|
+
}) => Promise<boolean>;
|
|
44
|
+
export {};
|
|
@@ -1 +1,19 @@
|
|
|
1
|
-
|
|
1
|
+
import type { LatLon } from '@windy/interfaces.d';
|
|
2
|
+
export interface NotificationExtraPayload extends LatLon {
|
|
3
|
+
/** Identifier of the process in node-notif */
|
|
4
|
+
processId: string;
|
|
5
|
+
id: string | undefined;
|
|
6
|
+
hrTimestamps: string;
|
|
7
|
+
icao?: string;
|
|
8
|
+
category: 'alert' | 'metar' | 'location';
|
|
9
|
+
notificationId?: string;
|
|
10
|
+
locationEntityId?: string;
|
|
11
|
+
}
|
|
12
|
+
export type RegistrationHash = string;
|
|
13
|
+
/**
|
|
14
|
+
* Ask for notif permissions if missing
|
|
15
|
+
*
|
|
16
|
+
* @returns null | registration Hash
|
|
17
|
+
*/
|
|
18
|
+
export declare function requestPermissions(): Promise<RegistrationHash | null>;
|
|
19
|
+
export declare function registerDevice(): Promise<RegistrationHash | null>;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { DataTile } from '@windy/dataLoader';
|
|
2
|
-
import type { TileParams } from '@windy/Renderer
|
|
2
|
+
import type { TileParams } from '@windy/Renderer';
|
|
3
3
|
import type { TileLayerCanvas } from '@windy/TileLayerCanvas.d';
|
|
4
4
|
declare const renderNoDataTile: (canvas: HTMLCanvasElement, url?: string) => void;
|
|
5
|
-
declare const renderTile: (this: TileLayerCanvas,
|
|
5
|
+
declare const renderTile: (this: TileLayerCanvas, _step: 1 | 2, canvas: HTMLCanvasElement, rqrdSyncNum: number, tInfo: TileParams, dTile: DataTile) => void;
|
|
6
6
|
export { renderNoDataTile, renderTile };
|