@windycom/plugin-devtools 3.0.0 → 3.0.2
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 +2 -0
- package/package.json +1 -1
- package/types/client/BottomSlide.d.ts +3 -0
- package/types/client/Calendar.d.ts +101 -71
- package/types/client/Color.d.ts +19 -6
- package/types/client/DataTiler.d.ts +1 -1
- package/types/client/ExternalSveltePlugin.d.ts +6 -1
- package/types/client/IDB.d.ts +7 -1
- package/types/client/Layer.d.ts +95 -26
- package/types/client/LayerClasses.d.ts +5 -0
- package/types/client/Metric.d.ts +32 -43
- package/types/client/Overlay.d.ts +7 -10
- package/types/client/OverlayClasses.d.ts +8 -0
- package/types/client/Particles.d.ts +1 -1
- package/types/client/Plugin.d.ts +4 -0
- package/types/client/Product.d.ts +31 -73
- package/types/client/ProductClasses.d.ts +44 -0
- package/types/client/Renderer.d.ts +41 -13
- package/types/client/SveltePlugin.d.ts +7 -0
- package/types/client/TileLayer.d.ts +2 -2
- package/types/client/TopoMap.d.ts +2 -3
- package/types/client/WindowPlugin.d.ts +9 -5
- package/types/client/colorGradients.d.ts +5 -10
- package/types/client/colors.d.ts +1 -2
- package/types/client/compatibilityCheck.d.ts +1 -0
- package/types/client/connection.d.ts +1 -1
- package/types/client/d.ts.files/LabelsLayer.d.ts +2 -2
- package/types/client/d.ts.files/Metric.d.ts +21 -2
- package/types/client/d.ts.files/TileLayerCanvas.d.ts +3 -3
- package/types/client/d.ts.files/alerts.d.ts +2 -2
- package/types/client/d.ts.files/broadcast.d.ts +17 -12
- package/types/client/d.ts.files/dataSpecifications.d.ts +76 -53
- package/types/client/d.ts.files/favs.d.ts +18 -30
- package/types/client/d.ts.files/http.d.ts +5 -0
- package/types/client/d.ts.files/lib.d.ts +5 -8
- package/types/client/d.ts.files/plugin-params.d.ts +32 -20
- package/types/client/d.ts.files/plugins.d.ts +2 -3
- package/types/client/d.ts.files/rootScope.d.ts +14 -12
- package/types/client/d.ts.files/startup.d.ts +17 -11
- package/types/client/d.ts.files/user.d.ts +3 -0
- package/types/client/d.ts.files/{Webcams.d.ts → webcams.d.ts} +9 -2
- package/types/client/dataLoader.d.ts +2 -2
- package/types/client/device.d.ts +1 -0
- package/types/client/embed.d.ts +68 -0
- package/types/client/errorLogger.d.ts +28 -3
- package/types/client/errors.d.ts +6 -0
- package/types/client/externalPlugins.d.ts +2 -0
- package/types/client/fetch.d.ts +42 -6
- package/types/client/format.d.ts +2 -1
- package/types/client/glTileRender.d.ts +1 -7
- package/types/client/http.d.ts +0 -6
- package/types/client/idbInstances.d.ts +123 -21
- package/types/client/imakerMain.d.ts +49 -0
- package/types/client/latestBroadcasts.d.ts +1 -1
- package/types/client/layers.d.ts +3 -1
- package/types/client/legends.d.ts +1 -1
- package/types/client/lib.d.ts +1 -10
- package/types/client/libHtml.d.ts +1 -1
- package/types/client/liveAlerts.d.ts +5 -0
- package/types/client/liveAlerts.types.d.ts +28 -0
- package/types/client/location.d.ts +5 -0
- package/types/client/log.d.ts +3 -1
- package/types/client/map.d.ts +7 -1
- package/types/client/mobile.d.ts +3 -9
- package/types/client/models.d.ts +7 -9
- package/types/client/notifications.d.ts +2 -5
- package/types/client/overlays.d.ts +2 -1
- package/types/client/particleRenderers.d.ts +1 -1
- package/types/client/products.d.ts +54 -2
- package/types/client/promo.d.ts +28 -5
- package/types/client/pushNotifications.d.ts +7 -1
- package/types/client/renderCtrl.d.ts +1 -1
- package/types/client/renderTile.d.ts +2 -2
- package/types/client/renderUtils.d.ts +16 -36
- package/types/client/renderers.d.ts +2 -4
- package/types/client/reverseName.d.ts +2 -1
- package/types/client/rhMessage.d.ts +1 -1
- package/types/client/rootScope.d.ts +22 -6
- package/types/client/router.d.ts +8 -5
- package/types/client/store.d.ts +20 -52
- package/types/client/storeLastPosition.d.ts +4 -1
- package/types/client/tileInterpolator.d.ts +1 -1
- package/types/client/user.d.ts +2 -0
- package/types/client/userAlerts.d.ts +0 -4
- package/types/client/userFavs.d.ts +12 -0
- package/types/client/utils.d.ts +57 -20
- package/types/iconfont.d.ts +7 -0
- package/types/interfaces.d.ts +339 -81
- package/types/lang-files.d.ts +783 -19
- package/types/types.d.ts +352 -23
- package/types/client/d.ts.files/Calendar.d.ts +0 -96
- package/types/client/d.ts.files/Color.d.ts +0 -93
- package/types/client/d.ts.files/Layer.d.ts +0 -191
- package/types/client/d.ts.files/Renderer.d.ts +0 -44
- package/types/client/d.ts.files/errorLogger.d.ts +0 -35
- package/types/client/d.ts.files/products.d.ts +0 -61
- package/types/offline.d.ts +0 -100
|
@@ -31,21 +31,10 @@ export interface WhatsNewData extends StartupItem {
|
|
|
31
31
|
};
|
|
32
32
|
}
|
|
33
33
|
|
|
34
|
-
export interface EnhancedStartupArticle extends StartupArticleData {
|
|
35
|
-
key: string;
|
|
36
|
-
count: number;
|
|
37
|
-
lastDisplayed: number;
|
|
38
|
-
}
|
|
39
|
-
|
|
40
34
|
/**
|
|
41
35
|
* Info about articles, user has already seen
|
|
42
36
|
*/
|
|
43
37
|
export interface SeenArticle {
|
|
44
|
-
/**
|
|
45
|
-
* Last time, the article has been displayed to the user
|
|
46
|
-
*/
|
|
47
|
-
lastDisplayed: Timestamp;
|
|
48
|
-
|
|
49
38
|
/**
|
|
50
39
|
* How many times the article has been seen
|
|
51
40
|
* (one count is added only if the article has been seen after 12 hours from the last seen time)
|
|
@@ -56,4 +45,21 @@ export interface SeenArticle {
|
|
|
56
45
|
* Marks beginning of 12h interval
|
|
57
46
|
*/
|
|
58
47
|
seen: Timestamp;
|
|
48
|
+
|
|
49
|
+
/**
|
|
50
|
+
* Article was liked by user
|
|
51
|
+
*/
|
|
52
|
+
liked?: boolean;
|
|
53
|
+
}
|
|
54
|
+
|
|
55
|
+
export interface SeenStory {
|
|
56
|
+
/**
|
|
57
|
+
* Timestamp when was story seen
|
|
58
|
+
*/
|
|
59
|
+
seen: Timestamp;
|
|
60
|
+
|
|
61
|
+
/**
|
|
62
|
+
* Story was liked by user
|
|
63
|
+
*/
|
|
64
|
+
liked?: boolean;
|
|
59
65
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
+
import { HttpPayload } from '@windy/http.d';
|
|
1
2
|
import { LatLon } from '@windy/interfaces.d';
|
|
2
3
|
import { Timestamp } from '@windy/types.d';
|
|
3
|
-
import { HttpPayload } from '@windy/http.d';
|
|
4
4
|
|
|
5
5
|
export type WebcamCategoryType =
|
|
6
6
|
| 'landscape'
|
|
@@ -75,7 +75,6 @@ export interface WebcamImageUrls {
|
|
|
75
75
|
normal: string;
|
|
76
76
|
original: string;
|
|
77
77
|
preview: string;
|
|
78
|
-
teaserbg: string;
|
|
79
78
|
thumbnail: string;
|
|
80
79
|
webcam: string;
|
|
81
80
|
}
|
|
@@ -83,6 +82,8 @@ export interface WebcamImageUrls {
|
|
|
83
82
|
export type WebcamImageSize = keyof WebcamImageUrls;
|
|
84
83
|
|
|
85
84
|
export type WebcamTimelapseType = 'day' | 'current' | 'all';
|
|
85
|
+
|
|
86
|
+
// FIXME TODO: This type does not correspond to output form a backend. Fix the type
|
|
86
87
|
export interface WebcamDetail {
|
|
87
88
|
categories: WebcamCategoryType[];
|
|
88
89
|
contacts: { owner: string; caretaker: string };
|
|
@@ -153,6 +154,12 @@ export interface WebcamLastUpdatedOn {
|
|
|
153
154
|
lastUpdatedOn: number[];
|
|
154
155
|
}
|
|
155
156
|
|
|
157
|
+
export interface WebcamImageRequestParams {
|
|
158
|
+
webcamId: string | number;
|
|
159
|
+
state?: 'current' | 'daylight';
|
|
160
|
+
size?: WebcamImageSize;
|
|
161
|
+
}
|
|
162
|
+
|
|
156
163
|
export interface WebcamMetadata {
|
|
157
164
|
updateString: string;
|
|
158
165
|
recencyClass: string;
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Loader service for new rendering engine
|
|
3
3
|
*/
|
|
4
|
-
import type { TransformFunction } from '@windy/
|
|
5
|
-
import type { TileParams } from '@windy/Renderer
|
|
4
|
+
import type { TransformFunction } from '@windy/types';
|
|
5
|
+
import type { TileParams } from '@windy/Renderer';
|
|
6
6
|
export declare class DataTile {
|
|
7
7
|
url: string;
|
|
8
8
|
status: 'undefined' | 'loaded' | 'loading' | 'failed';
|
package/types/client/device.d.ts
CHANGED
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
import './leafletExt/CanvasLayer';
|
|
2
|
+
import './services/params';
|
|
3
|
+
import './pluginSystem/Plugin';
|
|
4
|
+
import './pluginSystem/SveltePlugin';
|
|
5
|
+
import './pluginSystem/TagPlugin';
|
|
6
|
+
import './pluginSystem/WindowPlugin';
|
|
7
|
+
import './pluginSystem/pluginsCtrl';
|
|
8
|
+
import './ui/timeAnimation';
|
|
9
|
+
import './ui/visibility';
|
|
10
|
+
import './render/renderTile';
|
|
11
|
+
import './render/tileLayerInstance';
|
|
12
|
+
export * as detectDevice from './dummyModules/detectDevice';
|
|
13
|
+
export * as log from './dummyModules/log';
|
|
14
|
+
export * as promo from './dummyModules/promo';
|
|
15
|
+
export * as location from './dummyModules/location';
|
|
16
|
+
export * as router from './dummyModules/router';
|
|
17
|
+
export * as showableErrorsService from './dummyModules/showableErrorsService';
|
|
18
|
+
export * as userFavs from './dummyModules/userFavs';
|
|
19
|
+
export * as share from './dummyModules/share';
|
|
20
|
+
import bcast from './services/broadcast';
|
|
21
|
+
import * as rootScope from './services/rootScope';
|
|
22
|
+
import { default as store } from './services/store';
|
|
23
|
+
export * as user from './services/user';
|
|
24
|
+
import * as ga from './utils/ga';
|
|
25
|
+
import { $ } from './utils/utils';
|
|
26
|
+
import { default as overlays } from './weather/overlays';
|
|
27
|
+
export { rootScope };
|
|
28
|
+
export * as map from './map/map';
|
|
29
|
+
export * as baseMap from './map/baseMap';
|
|
30
|
+
export * as cityLabels from './map/cityLabels';
|
|
31
|
+
export * as mapGlobeCtrl from './map/mapGlobeCtrl';
|
|
32
|
+
export * as picker from './map/picker';
|
|
33
|
+
export * as singleclick from './map/singleclick';
|
|
34
|
+
export { default as plugins } from './pluginSystem/plugins';
|
|
35
|
+
export * as interpolator from './render/interpolator';
|
|
36
|
+
export { default as particleRenderers } from './render/particleRenderers';
|
|
37
|
+
export * as renderUtils from './render/renderUtils';
|
|
38
|
+
export * as DataTiler from './renderClasses/DataTiler';
|
|
39
|
+
export { default as colors } from './services/colors';
|
|
40
|
+
export * as connection from './services/connection';
|
|
41
|
+
export * as device from './services/device';
|
|
42
|
+
export * as geolocation from './services/geolocation';
|
|
43
|
+
export * as notifications from './services/notifications';
|
|
44
|
+
export * as pois from './services/pois';
|
|
45
|
+
export * as reverseName from './services/reverseName';
|
|
46
|
+
export * as trans from './services/trans';
|
|
47
|
+
export * as query from './ui/query';
|
|
48
|
+
export * as rhMessage from './ui/rhMessage';
|
|
49
|
+
export * as BottomSlide from './uiClasses/BottomSlide';
|
|
50
|
+
export * as Drag from './uiClasses/Drag';
|
|
51
|
+
export * as Swipe from './uiClasses/Swipe';
|
|
52
|
+
export * as Window from './uiClasses/Window';
|
|
53
|
+
export * as Evented from './utils/Evented';
|
|
54
|
+
export * as errorLogger from './utils/errorLogger';
|
|
55
|
+
export * as fetch from './utils/fetch';
|
|
56
|
+
export * as format from './utils/format';
|
|
57
|
+
export * as http from './utils/http';
|
|
58
|
+
export { default as lruCache } from './utils/lruCache';
|
|
59
|
+
export { default as storage } from './utils/storage';
|
|
60
|
+
export * as subscription from './utils/subscription';
|
|
61
|
+
export * as utils from './utils/utils';
|
|
62
|
+
export { default as metrics } from './weather/metrics';
|
|
63
|
+
export * as models from './weather/models';
|
|
64
|
+
export { default as products } from './weather/products';
|
|
65
|
+
export * as Calendar from './weatherClasses/Calendar';
|
|
66
|
+
export * as Color from './weatherClasses/Color';
|
|
67
|
+
export { default as GlObj } from './wgUtils/GlObj';
|
|
68
|
+
export { $, bcast as broadcast, ga, overlays, store };
|
|
@@ -1,11 +1,36 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* catches all runtimes exceptions and sends them to kibana on backend.
|
|
3
|
-
* Defines global `logError( moduleName, msg, errObj )` for custom err
|
|
4
|
-
* Licences go here since this is the first minified file
|
|
3
|
+
* Defines global `logError( moduleName, msg, errObj )` for custom err leggin.
|
|
5
4
|
*/
|
|
6
|
-
import type {
|
|
5
|
+
import type { Overlays } from '@windy/rootScope.d';
|
|
6
|
+
import type { Device, Platform, Timestamp } from '@windy/types';
|
|
7
|
+
type RunningPhase = '1_loading' | '2_dependenciesResolved' | '3_redrawFinished' | 'documentIsHidden';
|
|
8
|
+
type ErrorTypes = 'error' | 'customLogError' | 'unhandledRejection';
|
|
9
|
+
/** Payload sent to backend */
|
|
10
|
+
interface ErrorPayload {
|
|
11
|
+
errorID: string;
|
|
12
|
+
type: ErrorTypes;
|
|
13
|
+
platform: Platform;
|
|
14
|
+
device: Device;
|
|
15
|
+
ver: string;
|
|
16
|
+
target: 'index' | 'mobile' | 'embed' | 'lib';
|
|
17
|
+
msg: string;
|
|
18
|
+
timestamp: Timestamp;
|
|
19
|
+
runningMinutes: number;
|
|
20
|
+
runningPhase: RunningPhase;
|
|
21
|
+
overlay: Overlays;
|
|
22
|
+
url: string;
|
|
23
|
+
module?: string;
|
|
24
|
+
line?: number;
|
|
25
|
+
col?: number;
|
|
26
|
+
script?: string;
|
|
27
|
+
stack?: string;
|
|
28
|
+
repeated?: number;
|
|
29
|
+
latestBcast?: string;
|
|
30
|
+
}
|
|
7
31
|
/**
|
|
8
32
|
* Array of all errors reported to kibana, to show them in debug mode
|
|
9
33
|
* plugin
|
|
10
34
|
*/
|
|
11
35
|
export declare const sentErrors: ErrorPayload[];
|
|
36
|
+
export {};
|
|
@@ -1,6 +1,8 @@
|
|
|
1
|
+
import { ExternalSveltePlugin } from '@windy/ExternalSveltePlugin';
|
|
1
2
|
import type { InstalledExternalPluginConfig } from '@windy/interfaces.d';
|
|
2
3
|
export type ExternalPluginError = {
|
|
3
4
|
type: 'network' | 'installation' | 'open';
|
|
4
5
|
msg: string;
|
|
5
6
|
};
|
|
6
7
|
export declare const installExternalPlugin: (url: string, installedBy: InstalledExternalPluginConfig['installedBy']) => Promise<InstalledExternalPluginConfig | ExternalPluginError>;
|
|
8
|
+
export declare const loadExternalPlugins: (forceReload?: boolean) => Promise<ExternalSveltePlugin[]>;
|
package/types/client/fetch.d.ts
CHANGED
|
@@ -1,8 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* # @windy/fetch
|
|
3
|
+
*
|
|
4
|
+
* Basic HTTP requests for getting URLs of our
|
|
5
|
+
* backend services or fetching data from Windy API.
|
|
6
|
+
* Although it works as wrapper around our {@link http} module,
|
|
7
|
+
* it ensures standardized way of fetching data.
|
|
8
|
+
*
|
|
9
|
+
* @module fetch
|
|
10
|
+
*/
|
|
11
|
+
import * as http from '@windy/http';
|
|
1
12
|
import type { CityTemperaturesDto } from '@windy-types/citytile2';
|
|
2
|
-
import type { DataHash, LatLon, MeteogramDataPayload, WeatherDataPayload, ActiveStormCountPayload } from '@windy/interfaces.d';
|
|
13
|
+
import type { DataHash, LatLon, MeteogramDataPayload, WeatherDataPayload, CapAlertHeadline, ActiveStormCountPayload, AirQDataHash } from '@windy/interfaces.d';
|
|
3
14
|
import type { Pois, Products } from '@windy/rootScope.d';
|
|
4
|
-
import type {
|
|
5
|
-
import type {
|
|
15
|
+
import type { SatelliteInfoJson } from '@windy/satellite.d';
|
|
16
|
+
import type { RadarMinifest } from '@plugins/radar/types';
|
|
17
|
+
import type { ExtendedStationType, Pixel, StationOrPoiType } from '@windy/types';
|
|
18
|
+
import type { OSMMapBounds } from '@plugins/search/search.d';
|
|
19
|
+
import type { HttpOptions, HttpPayload, QueryStringSource } from '@windy/http.d';
|
|
20
|
+
import type { StormListJSON } from '@plugins/_shared/hurricanes/types';
|
|
6
21
|
interface LatLonStep extends LatLon {
|
|
7
22
|
step?: number;
|
|
8
23
|
interpolate?: boolean;
|
|
@@ -69,7 +84,7 @@ export declare const getPointForecastUrl: <T extends LatLonStep>(model: Products
|
|
|
69
84
|
* @param httpOptions Additional HTTP options
|
|
70
85
|
* @returns Promise with HTTP payload
|
|
71
86
|
*/
|
|
72
|
-
export declare const getPointForecastData: <T extends LatLonStep>(model: Products, latLonStepInterpolate: T, pointForecastOptions?: Record<string, string>, httpOptions?: HttpOptions) => Promise<HttpPayload<WeatherDataPayload<
|
|
87
|
+
export declare const getPointForecastData: <K extends DataHash | AirQDataHash = DataHash, T extends LatLonStep = LatLonStep>(model: Products, latLonStepInterpolate: T, pointForecastOptions?: Record<string, string>, httpOptions?: HttpOptions) => Promise<http.HttpPayload<WeatherDataPayload<K>>>;
|
|
73
88
|
/**
|
|
74
89
|
* Gets enhanced point forecast meteogram data for given location
|
|
75
90
|
* @returns Promise with HTTP payload
|
|
@@ -114,9 +129,30 @@ export declare const getObservationsUrl: (type: ExtendedStationType, id: string,
|
|
|
114
129
|
/**
|
|
115
130
|
* Get URL for getting observations for a specific station in node-poi server
|
|
116
131
|
*/
|
|
117
|
-
export declare const getObservationPoiUrl: (type: StationOrPoiType | 'stations', id: string) => string;
|
|
132
|
+
export declare const getObservationPoiUrl: (type: StationOrPoiType | 'stations' | 'metars', id: string) => string;
|
|
118
133
|
/**
|
|
119
|
-
* Returns
|
|
134
|
+
* Returns loading promise for cap alert headlines
|
|
120
135
|
*/
|
|
136
|
+
export declare const getCapAlertsSummary: ({ lat, lon }: LatLon) => Promise<http.HttpPayload<CapAlertHeadline[]>>;
|
|
121
137
|
export declare const getHurricanesCount: () => Promise<HttpPayload<ActiveStormCountPayload>>;
|
|
138
|
+
/**
|
|
139
|
+
* Loads Satellite Product info
|
|
140
|
+
*/
|
|
141
|
+
export declare const getSatelliteInfo: () => Promise<HttpPayload<SatelliteInfoJson>>;
|
|
142
|
+
/**
|
|
143
|
+
* Loads Radar Product info
|
|
144
|
+
*/
|
|
145
|
+
export declare const getRadarInfo: () => Promise<HttpPayload<RadarMinifest>>;
|
|
146
|
+
export declare const getRadarArchiveInfo: () => Promise<HttpPayload<RadarMinifest>>;
|
|
147
|
+
export declare const getSatelliteArchiveInfo: () => Promise<HttpPayload<SatelliteInfoJson>>;
|
|
148
|
+
export declare const getRadarCoverage: () => Promise<HttpPayload<number[]>>;
|
|
149
|
+
export declare const getHurricanesList: () => Promise<HttpPayload<StormListJSON>>;
|
|
150
|
+
/**
|
|
151
|
+
* Returns URL for static map image. Max zoom level is 13
|
|
152
|
+
*/
|
|
153
|
+
export declare const getStaticMapImageUrl: (params: LatLon & {
|
|
154
|
+
zoom: 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12 | 13;
|
|
155
|
+
size: Pixel;
|
|
156
|
+
bounds?: OSMMapBounds;
|
|
157
|
+
}) => string;
|
|
122
158
|
export {};
|
package/types/client/format.d.ts
CHANGED
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
*/
|
|
6
6
|
import type { DirectionFunction, HowOldOptions, TimeFormatFunction } from './d.ts.files/format.d';
|
|
7
7
|
import type { Timestamp } from './d.ts.files/types';
|
|
8
|
+
export declare const euTime: TimeFormatFunction;
|
|
8
9
|
/**
|
|
9
10
|
* Returns function for displaying hours (either 12,24h format) on a basis of locale store of a browser
|
|
10
11
|
* US, UK, PH, CA, AU, NZ, IN, EG, SA, CO, PK, MY - AM,PM format
|
|
@@ -99,4 +100,4 @@ export declare const seoLang: (lang: string) => string;
|
|
|
99
100
|
* @param viewcount Number to show at animation end
|
|
100
101
|
* @param el HTML element where animate counting and show the final number
|
|
101
102
|
*/
|
|
102
|
-
export declare const animateViews: (viewcount: number, el: HTMLElement) => void;
|
|
103
|
+
export declare const animateViews: (viewcount: number, el: HTMLElement, useViewsText?: boolean) => void;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import type { ExtendedWebGLTexture, WebGLProgramObject } from '@windy/GlObj.d';
|
|
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
|
import type { DataTile } from '@windy/dataLoader';
|
|
5
5
|
export type Gradient = {
|
|
@@ -136,12 +136,6 @@ declare class TileRenderer {
|
|
|
136
136
|
* @returns texture with additional params
|
|
137
137
|
*/
|
|
138
138
|
private createGradientObject;
|
|
139
|
-
/**
|
|
140
|
-
* Predefined alpha values are set to gradient and then color array is generated
|
|
141
|
-
* (solution for user gradient colors with bad alpha)
|
|
142
|
-
* @param colorObj
|
|
143
|
-
*/
|
|
144
|
-
private augmentRainCoverColorsWithAlpha;
|
|
145
139
|
/**
|
|
146
140
|
* Prepare color gradient(s) for layer
|
|
147
141
|
* @param layer
|
package/types/client/http.d.ts
CHANGED
|
@@ -12,12 +12,6 @@ export declare const acceptHeader: string;
|
|
|
12
12
|
* Enhances URL with server, tokens and auth counter
|
|
13
13
|
*/
|
|
14
14
|
export declare const getURL: (url: string) => string;
|
|
15
|
-
export declare class HttpError extends Error {
|
|
16
|
-
status: number;
|
|
17
|
-
message: string;
|
|
18
|
-
responseText?: string;
|
|
19
|
-
constructor(status: number, message: string, responseText?: string);
|
|
20
|
-
}
|
|
21
15
|
/**
|
|
22
16
|
* Create Event Source for SSE with tokens for authentication
|
|
23
17
|
* Do not forget to close the EventSource, otherwise there will be an error event when the page closes.
|
|
@@ -1,45 +1,147 @@
|
|
|
1
1
|
import { IDB } from '@windy/IDB';
|
|
2
|
-
import type { Fav } from '@windy/favs.d';
|
|
3
|
-
import type { SearchRecent } from '@plugins/search/search';
|
|
4
|
-
import type { AlertResponse, AlertRequest } from '@windy/alerts';
|
|
5
2
|
import type { MarkedNotams } from '@plugins/airport/airport';
|
|
6
|
-
import type {
|
|
7
|
-
import type {
|
|
3
|
+
import type { AnyColorIdent, UserColor } from '@windy/Color';
|
|
4
|
+
import type { AlertRequest, AlertResponse } from '@windy/alerts';
|
|
5
|
+
import type { Fav, FavFragment } from '@windy/favs.d';
|
|
6
|
+
import type { CapAlertSlided, InstalledExternalPluginConfig } from '@windy/interfaces';
|
|
8
7
|
import type { PromoInfoObject } from '@windy/promo';
|
|
9
|
-
import type {
|
|
8
|
+
import type { SeenArticle, SeenStory } from '@windy/startup.d';
|
|
10
9
|
export declare const initPromise: Promise<IDBDatabase>;
|
|
11
10
|
/** Db of stored user favourites */
|
|
12
|
-
export declare const userFavsIdb: IDB<string, Fav,
|
|
11
|
+
export declare const userFavsIdb: IDB<string, Fav, FavFragment>;
|
|
12
|
+
export declare const searchRecentsIdb: IDB<string, (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & {
|
|
13
|
+
type: "windy-overlay";
|
|
14
|
+
ident: "visibility" | "radar" | "satellite" | "radarPlus" | "wind" | "gust" | "gustAccu" | "turbulence" | "icing" | "rain" | "rainAccu" | "snowAccu" | "snowcover" | "ptype" | "thunder" | "temp" | "dewpoint" | "rh" | "deg0" | "wetbulbtemp" | "solarpower" | "uvindex" | "clouds" | "hclouds" | "mclouds" | "lclouds" | "fog" | "cloudtop" | "cbase" | "cape" | "ccl" | "waves" | "swell1" | "swell2" | "swell3" | "wwaves" | "sst" | "currents" | "currentsTide" | "aqi" | "no2" | "pm2p5" | "aod550" | "gtco3" | "tcso2" | "go3" | "cosc" | "dustsm" | "pressure" | "efiTemp" | "efiWind" | "efiRain" | "capAlerts" | "soilMoisture40" | "soilMoisture100" | "moistureAnom40" | "moistureAnom100" | "drought40" | "drought100" | "fwi" | "dfm10h" | "heatmaps" | "topoMap" | "hurricanes";
|
|
15
|
+
thumbnailUrl: string;
|
|
16
|
+
noValidLocation: true;
|
|
17
|
+
addShakyClass: true;
|
|
18
|
+
doNotSave: true;
|
|
19
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & {
|
|
20
|
+
type: "windy-poi";
|
|
21
|
+
ident: string;
|
|
22
|
+
poiIcon: import("../../types/iconfont").Iconfont;
|
|
23
|
+
noValidLocation: true;
|
|
24
|
+
addShakyClass: true;
|
|
25
|
+
doNotSave: true;
|
|
26
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
27
|
+
type: "airport";
|
|
28
|
+
icao: string;
|
|
29
|
+
iata?: string;
|
|
30
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
31
|
+
type: "heliport";
|
|
32
|
+
icao: string;
|
|
33
|
+
iata?: string;
|
|
34
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
35
|
+
type: "station";
|
|
36
|
+
stationId: `radiation-${string}` | `airq-${string}` | `ad-${string}` | `wmo-${string}` | `madis-${string}` | `buoy-${string}` | `dbuoy-${string}` | `pws-${string}` | `ship-${string}`;
|
|
37
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
38
|
+
type: "webcam";
|
|
39
|
+
webcamId: number;
|
|
40
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
41
|
+
type: "radiosonde";
|
|
42
|
+
id: string;
|
|
43
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
44
|
+
type: import("@plugins/search/search").StandardSearchType;
|
|
45
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & {
|
|
46
|
+
type: "hurricane";
|
|
47
|
+
strength: import("../../plugins/_shared/hurricanes/types").StormStrength;
|
|
48
|
+
stormId: string;
|
|
49
|
+
addShakyClass: true;
|
|
50
|
+
doNotSave: true;
|
|
51
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & {
|
|
52
|
+
type: "route";
|
|
53
|
+
fromTo: [import("@plugins/search/search").AirportSearchResult, import("@plugins/search/search").AirportSearchResult];
|
|
54
|
+
distance: number;
|
|
55
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@windy/interfaces").LatLon & {
|
|
13
56
|
title: string;
|
|
14
|
-
|
|
57
|
+
cc?: import("@windy/types").ISOCountryCode | "xx";
|
|
58
|
+
} & {
|
|
59
|
+
type: "fav";
|
|
60
|
+
} & {
|
|
61
|
+
id: string;
|
|
62
|
+
pin2top?: number;
|
|
63
|
+
pin2homepage?: number;
|
|
64
|
+
updated: number;
|
|
65
|
+
} & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
66
|
+
noValidLocation?: false;
|
|
15
67
|
type: "fav";
|
|
16
|
-
}
|
|
17
|
-
type: "
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
68
|
+
}), (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & {
|
|
69
|
+
type: "windy-overlay";
|
|
70
|
+
ident: "visibility" | "radar" | "satellite" | "radarPlus" | "wind" | "gust" | "gustAccu" | "turbulence" | "icing" | "rain" | "rainAccu" | "snowAccu" | "snowcover" | "ptype" | "thunder" | "temp" | "dewpoint" | "rh" | "deg0" | "wetbulbtemp" | "solarpower" | "uvindex" | "clouds" | "hclouds" | "mclouds" | "lclouds" | "fog" | "cloudtop" | "cbase" | "cape" | "ccl" | "waves" | "swell1" | "swell2" | "swell3" | "wwaves" | "sst" | "currents" | "currentsTide" | "aqi" | "no2" | "pm2p5" | "aod550" | "gtco3" | "tcso2" | "go3" | "cosc" | "dustsm" | "pressure" | "efiTemp" | "efiWind" | "efiRain" | "capAlerts" | "soilMoisture40" | "soilMoisture100" | "moistureAnom40" | "moistureAnom100" | "drought40" | "drought100" | "fwi" | "dfm10h" | "heatmaps" | "topoMap" | "hurricanes";
|
|
71
|
+
thumbnailUrl: string;
|
|
72
|
+
noValidLocation: true;
|
|
73
|
+
addShakyClass: true;
|
|
74
|
+
doNotSave: true;
|
|
75
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & {
|
|
76
|
+
type: "windy-poi";
|
|
77
|
+
ident: string;
|
|
78
|
+
poiIcon: import("../../types/iconfont").Iconfont;
|
|
79
|
+
noValidLocation: true;
|
|
80
|
+
addShakyClass: true;
|
|
81
|
+
doNotSave: true;
|
|
82
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
21
83
|
type: "airport";
|
|
22
84
|
icao: string;
|
|
23
|
-
|
|
85
|
+
iata?: string;
|
|
86
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
87
|
+
type: "heliport";
|
|
88
|
+
icao: string;
|
|
89
|
+
iata?: string;
|
|
90
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
24
91
|
type: "station";
|
|
25
92
|
stationId: `radiation-${string}` | `airq-${string}` | `ad-${string}` | `wmo-${string}` | `madis-${string}` | `buoy-${string}` | `dbuoy-${string}` | `pws-${string}` | `ship-${string}`;
|
|
26
|
-
} | {
|
|
93
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
27
94
|
type: "webcam";
|
|
28
95
|
webcamId: number;
|
|
29
|
-
} | {
|
|
96
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
97
|
+
type: "radiosonde";
|
|
98
|
+
id: string;
|
|
99
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
100
|
+
type: import("@plugins/search/search").StandardSearchType;
|
|
101
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & {
|
|
102
|
+
type: "hurricane";
|
|
103
|
+
strength: import("../../plugins/_shared/hurricanes/types").StormStrength;
|
|
104
|
+
stormId: string;
|
|
105
|
+
addShakyClass: true;
|
|
106
|
+
doNotSave: true;
|
|
107
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@plugins/search/search").RequiredSearchItemProperties & import("@windy/interfaces").LatLon & {
|
|
30
108
|
type: "route";
|
|
31
|
-
|
|
109
|
+
fromTo: [import("@plugins/search/search").AirportSearchResult, import("@plugins/search/search").AirportSearchResult];
|
|
110
|
+
distance: number;
|
|
111
|
+
}) | (import("@plugins/search/search").SearchRecentItem & import("@windy/interfaces").LatLon & {
|
|
112
|
+
title: string;
|
|
113
|
+
cc?: import("@windy/types").ISOCountryCode | "xx";
|
|
114
|
+
} & {
|
|
115
|
+
type: "fav";
|
|
116
|
+
} & {
|
|
117
|
+
id: string;
|
|
118
|
+
pin2top?: number;
|
|
119
|
+
pin2homepage?: number;
|
|
120
|
+
updated: number;
|
|
121
|
+
} & import("@plugins/search/search").CountryAndRegionInformation & {
|
|
122
|
+
noValidLocation?: false;
|
|
123
|
+
type: "fav";
|
|
32
124
|
})>;
|
|
33
|
-
export declare const searchRecentsIdb: IDB<string, SearchRecent, SearchRecent>;
|
|
34
125
|
/** Db of stored user alerts */
|
|
35
126
|
export declare const userAlertsIdb: IDB<string, AlertResponse, AlertRequest>;
|
|
36
127
|
/** Db of stored notams marked as read */
|
|
37
128
|
export declare const markedNotamsIdb: IDB<`${string}_${string}/${string}`, MarkedNotams, MarkedNotams>;
|
|
38
|
-
/** Latest used minifests */
|
|
39
|
-
export declare const minifestsIdb: IDB<string, MinifestObject, MinifestObject>;
|
|
40
129
|
/** Seen articles */
|
|
41
|
-
export declare const seenArticlesIdb: IDB<string, SeenArticle, SeenArticle>;
|
|
130
|
+
export declare const seenArticlesIdb: IDB<string | number, SeenArticle, SeenArticle>;
|
|
42
131
|
/** Seen promos */
|
|
43
132
|
export declare const seenPromosIdb: IDB<string, PromoInfoObject, PromoInfoObject>;
|
|
44
133
|
/** Custom user colors */
|
|
45
134
|
export declare const customColorsIdb: IDB<AnyColorIdent, UserColor, UserColor>;
|
|
135
|
+
/** Cap alerts that were slided from left to right on startup screen */
|
|
136
|
+
export declare const slidedCapAlertsIdb: IDB<string, CapAlertSlided, CapAlertSlided>;
|
|
137
|
+
/** Seen stories */
|
|
138
|
+
export declare const seenStoriesIdb: IDB<string, SeenStory, SeenStory>;
|
|
139
|
+
/** Log of pages & events that happened on this device */
|
|
140
|
+
export declare const logIdb: IDB<`plugin/${string}` | `version/${string}` | `pois/${string}` | `subscription/${string}` | `airport/${string}` | `station/${string}` | `garmin/${string}` | `onboarding/${string}` | `articles/${string}` | `isolinesType/${string}` | `overlay/${string}` | `level/${string}` | `product/${string}` | `acRange/${string}` | `isolinesOn/${string}` | `path/${string}` | `startup/${string}` | `404/${string}` | `promo/${string}` | `appRating/${string}` | `appOpening/${string}` | `detail2/${string}` | `appsflyer/${string}` | `weather/${string}` | `events/${string}` | `locationPermissionPopup/${string}` | `widgetPromo/${string}` | `storyEvent/${string}`, number, number>;
|
|
141
|
+
/** Log of locations, that user uses on this device */
|
|
142
|
+
export declare const popularLocationsIdb: IDB<string, number, number>;
|
|
143
|
+
/** Seen stories */
|
|
144
|
+
export declare const likedStoryCommentsIdb: IDB<string, boolean, boolean>;
|
|
145
|
+
/** Installed external plugins */
|
|
146
|
+
export declare const installedPluginsIdb: IDB<`windy-plugin-${string}`, InstalledExternalPluginConfig, InstalledExternalPluginConfig>;
|
|
147
|
+
export declare const clearIndexedDB: () => Promise<void>;
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
import type { LatLon } from '@windy/interfaces';
|
|
2
|
+
import type { Overlays, Products, Pois, Levels } from '@windy/rootScope.d';
|
|
3
|
+
import type { DetailDisplayType, StationId, Timestamp } from '@windy/types';
|
|
4
|
+
export type QueryStringImakerParams = LatLon & {
|
|
5
|
+
zoom: number;
|
|
6
|
+
overlay?: Overlays;
|
|
7
|
+
level?: Levels;
|
|
8
|
+
displayPressureIsolines?: boolean;
|
|
9
|
+
product?: Products;
|
|
10
|
+
pois?: Pois;
|
|
11
|
+
timestamp?: Timestamp;
|
|
12
|
+
} & ({
|
|
13
|
+
type: 'map';
|
|
14
|
+
} | {
|
|
15
|
+
type: 'detail';
|
|
16
|
+
detailDisplay?: DetailDisplayType;
|
|
17
|
+
detailProduct?: Products;
|
|
18
|
+
/** Can be absolute or relative number (for debugging purposes) */
|
|
19
|
+
moveToTimestamp?: Timestamp;
|
|
20
|
+
} | {
|
|
21
|
+
type: 'station';
|
|
22
|
+
/** Format is the same as used in URL, for example `wmo-1158` */
|
|
23
|
+
stationId: StationId;
|
|
24
|
+
/** Can be absolute or relative number (for debugging purposes) */
|
|
25
|
+
moveToTimestamp?: Timestamp;
|
|
26
|
+
});
|
|
27
|
+
export interface RenderMapParams extends LatLon {
|
|
28
|
+
zoom: number;
|
|
29
|
+
overlay?: Overlays;
|
|
30
|
+
level?: Levels;
|
|
31
|
+
displayPressureIsolines?: boolean;
|
|
32
|
+
displayParticles?: boolean;
|
|
33
|
+
product?: Products;
|
|
34
|
+
pois?: Pois;
|
|
35
|
+
timestamp?: Timestamp;
|
|
36
|
+
}
|
|
37
|
+
export interface RenderDetailParams extends RenderMapParams {
|
|
38
|
+
detailDisplay?: DetailDisplayType;
|
|
39
|
+
detailProduct?: Products;
|
|
40
|
+
/** Can be absolute or relative number (for debugging purposes) */
|
|
41
|
+
moveToTimestamp?: Timestamp;
|
|
42
|
+
}
|
|
43
|
+
export interface RenderStationParams extends RenderMapParams {
|
|
44
|
+
stationId: StationId;
|
|
45
|
+
moveToTimestamp?: Timestamp;
|
|
46
|
+
}
|
|
47
|
+
export declare const renderMap: (params: RenderMapParams) => Promise<string[]>;
|
|
48
|
+
export declare const renderDetail: (params: RenderDetailParams) => Promise<string[]>;
|
|
49
|
+
export declare const renderStation: (params: RenderStationParams) => Promise<string[]>;
|
|
@@ -10,5 +10,5 @@ export declare const latestBcasts: BcastHistory[];
|
|
|
10
10
|
* @param msg
|
|
11
11
|
* @param data
|
|
12
12
|
*/
|
|
13
|
-
export declare const addLatestBcast: (ident: string, msg: string, data?: unknown) => void;
|
|
13
|
+
export declare const addLatestBcast: (ident: string, msg: string, data?: string | unknown) => void;
|
|
14
14
|
export declare const getLatestBcasts: (now: Timestamp) => string | undefined;
|
package/types/client/layers.d.ts
CHANGED
|
@@ -1,4 +1,5 @@
|
|
|
1
|
-
import { Layer
|
|
1
|
+
import { Layer } from '@windy/Layer';
|
|
2
|
+
import { WaveLayer } from '@windy/LayerClasses';
|
|
2
3
|
import type { NumberedMetric, PrecipMetric, PtypeMetric } from '@windy/MetricClasses';
|
|
3
4
|
declare const layers: {
|
|
4
5
|
capAlerts: Layer<undefined>;
|
|
@@ -76,5 +77,6 @@ declare const layers: {
|
|
|
76
77
|
turbulence: Layer<NumberedMetric>;
|
|
77
78
|
icing: Layer<NumberedMetric>;
|
|
78
79
|
topoMap: Layer<undefined>;
|
|
80
|
+
aqi: Layer<NumberedMetric>;
|
|
79
81
|
};
|
|
80
82
|
export default layers;
|