iobroker.jetframe 1.0.0
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/LICENSE +21 -0
- package/README.md +357 -0
- package/admin/SF-Pro.ttf +0 -0
- package/admin/admin.d.ts +65 -0
- package/admin/frame.html +982 -0
- package/admin/frame.html.bak-aircraft-card-real-row-20260518-1608 +1236 -0
- package/admin/frame.html.bak-aircraft-card-structure-20260518-1517 +1236 -0
- package/admin/frame.html.bak-aircraft-logo-id-fix-20260518-1639 +1239 -0
- package/admin/frame.html.bak-shortcut-test +1236 -0
- package/admin/frame.html.bak-tablet-class-20260518-1729 +1239 -0
- package/admin/heatmap.html +216 -0
- package/admin/index.html +268 -0
- package/admin/index_m.html +1749 -0
- package/admin/jetframe.css +1260 -0
- package/admin/jetframe.css.bak-airbus-landscape-fix +4630 -0
- package/admin/jetframe.css.bak-aircraft-card-clean-equal-20260518-1438 +4899 -0
- package/admin/jetframe.css.bak-aircraft-card-real-row-20260518-1608 +4814 -0
- package/admin/jetframe.css.bak-aircraft-card-row-left-20260518-1525 +4604 -0
- package/admin/jetframe.css.bak-aircraft-card-slim-equal-20260518-1446 +4647 -0
- package/admin/jetframe.css.bak-aircraft-card-structure-20260518-1517 +4646 -0
- package/admin/jetframe.css.bak-aircraft-inline-final-20260518-1527 +4654 -0
- package/admin/jetframe.css.bak-aircraft-row-compact-fix-20260518-1639 +4763 -0
- package/admin/jetframe.css.bak-before-aircrafttype-purge +4818 -0
- package/admin/jetframe.css.bak-before-cleanup +4670 -0
- package/admin/jetframe.css.bak-before-remove-tablet-only-20260518-1711 +4896 -0
- package/admin/jetframe.css.bak-before-tablet-layout-rework-20260518-1650 +4914 -0
- package/admin/jetframe.css.bak-clean-duplicate-fonts-20260518-1340 +4975 -0
- package/admin/jetframe.css.bak-clean-old-index-fix-20260518-1937 +5167 -0
- package/admin/jetframe.css.bak-hardleft-airbus +4751 -0
- package/admin/jetframe.css.bak-index-iphone-landscape-20260518-1931 +5030 -0
- package/admin/jetframe.css.bak-index-landscape-final-20260518-1941 +5167 -0
- package/admin/jetframe.css.bak-index-landscape-real-20260518-1936 +5186 -0
- package/admin/jetframe.css.bak-landscape-compact-jumbo-bold-20260518-1343 +4802 -0
- package/admin/jetframe.css.bak-logo-align-final +4551 -0
- package/admin/jetframe.css.bak-logo-final2 +4551 -0
- package/admin/jetframe.css.bak-narrowbody-font-fix +4992 -0
- package/admin/jetframe.css.bak-nuke-airbus-align +4790 -0
- package/admin/jetframe.css.bak-pill-balance-20260518-1603 +4773 -0
- package/admin/jetframe.css.bak-pill-balance-fix +4910 -0
- package/admin/jetframe.css.bak-radar-fix-fonts +4710 -0
- package/admin/jetframe.css.bak-shortcut-test +4899 -0
- package/admin/jetframe.css.bak-smaller-aircraft-card-fonts-20260518-1345 +4897 -0
- package/admin/jetframe.css.bak-tablet-fix-real-20260518-1748 +4945 -0
- package/admin/jetframe.css.bak-tablet-fullscreen-fix-20260518-1804 +4972 -0
- package/admin/jetframe.css.bak-tablet-landscape-layout-20260518-1645 +4802 -0
- package/admin/jetframe.css.bak-tablet-layout-final-20260518-1839 +4802 -0
- package/admin/jetframe.css.bak-tablet-layout-v3-20260518-1729 +4802 -0
- package/admin/jetframe.css.bak-tablet-layout-v4-20260518-1801 +4957 -0
- package/admin/jetframe.css.bak-tablet-layout-v5-20260518-1843 +4970 -0
- package/admin/jetframe.css.bak-tablet-layout-v6-20260518-1848 +4958 -0
- package/admin/jetframe.css.bak-tablet-layout-v7-20260518-1909 +4985 -0
- package/admin/jetframe.css.bak-tablet-only-landscape-v2-20260518-1707 +4802 -0
- package/admin/jetframe.css.bak-tablet-pages-final-20260519-1857 +5188 -0
- package/admin/jetframe.css.bak-tablet-pages-final-20260519-1859 +5347 -0
- package/admin/jetframe.css.bak-tablet-pages-v2-20260519-190807 +5349 -0
- package/admin/jetframe.css.bak-typography-align-final +4818 -0
- package/admin/jetframe.png +0 -0
- package/admin/manifest.webmanifest +15 -0
- package/admin/src/app.tsx +58 -0
- package/admin/src/components/settings.tsx +97 -0
- package/admin/src/i18n/de.json +11 -0
- package/admin/src/i18n/en.json +11 -0
- package/admin/src/i18n/es.json +11 -0
- package/admin/src/i18n/fr.json +11 -0
- package/admin/src/i18n/i18n.d.ts +28 -0
- package/admin/src/i18n/it.json +11 -0
- package/admin/src/i18n/nl.json +11 -0
- package/admin/src/i18n/pl.json +11 -0
- package/admin/src/i18n/pt.json +11 -0
- package/admin/src/i18n/ru.json +11 -0
- package/admin/src/i18n/uk.json +11 -0
- package/admin/src/i18n/zh-cn.json +11 -0
- package/admin/src/index.tsx +25 -0
- package/admin/stats.html +228 -0
- package/admin/style.css +32 -0
- package/admin/tsconfig.json +11 -0
- package/admin/words.js +46 -0
- package/build/lib/adsb.js +218 -0
- package/build/lib/adsb.js.map +7 -0
- package/build/lib/airportNamesDe.js +131 -0
- package/build/lib/airportNamesDe.js.map +7 -0
- package/build/lib/airports.js +281 -0
- package/build/lib/airports.js.map +7 -0
- package/build/lib/classify.js +339 -0
- package/build/lib/classify.js.map +7 -0
- package/build/lib/config.js +103 -0
- package/build/lib/config.js.map +7 -0
- package/build/lib/flightInfo.js +1409 -0
- package/build/lib/flightInfo.js.map +7 -0
- package/build/lib/geo.js +84 -0
- package/build/lib/geo.js.map +7 -0
- package/build/lib/images.js +422 -0
- package/build/lib/images.js.map +7 -0
- package/build/lib/specialLiveries.js +342 -0
- package/build/lib/specialLiveries.js.map +7 -0
- package/build/lib/states.js +971 -0
- package/build/lib/states.js.map +7 -0
- package/build/lib/staticFiles.js +73 -0
- package/build/lib/staticFiles.js.map +7 -0
- package/build/lib/types.js +17 -0
- package/build/lib/types.js.map +7 -0
- package/build/lib/visConfig.js +52 -0
- package/build/lib/visConfig.js.map +7 -0
- package/build/main.js +1454 -0
- package/build/main.js.map +7 -0
- package/io-package.json +169 -0
- package/package.json +82 -0
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 backfisch88 <h@h.de>
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/README.md
ADDED
|
@@ -0,0 +1,357 @@
|
|
|
1
|
+

|
|
2
|
+
|
|
3
|
+
# ioBroker.jetframe
|
|
4
|
+
|
|
5
|
+
[](https://www.npmjs.com/package/iobroker.jetframe)
|
|
6
|
+
[](https://www.npmjs.com/package/iobroker.jetframe)
|
|
7
|
+

|
|
8
|
+

|
|
9
|
+
|
|
10
|
+
[](https://github.com/backfisch88/ioBroker.jetframe/actions/workflows/test-and-release.yml)
|
|
11
|
+
|
|
12
|
+
---
|
|
13
|
+
|
|
14
|
+
# ✈️ JetFrame
|
|
15
|
+
|
|
16
|
+
JetFrame is a modern FlightWall adapter for ioBroker.
|
|
17
|
+
|
|
18
|
+
It detects nearby aircraft based on your window position and visualizes them with live flight information, airline branding, aircraft metadata and optional speech announcements.
|
|
19
|
+
|
|
20
|
+
---
|
|
21
|
+
|
|
22
|
+
# ✨ Features
|
|
23
|
+
|
|
24
|
+
- Live aircraft detection
|
|
25
|
+
- Window-direction based filtering
|
|
26
|
+
- Apple-style glass UI
|
|
27
|
+
- Airline logos
|
|
28
|
+
- Manufacturer logos
|
|
29
|
+
- Flight routes
|
|
30
|
+
- Aircraft type detection
|
|
31
|
+
- Callsign / flight number
|
|
32
|
+
- Live ADS-B data
|
|
33
|
+
- JetPhotos integration
|
|
34
|
+
- Special liveries
|
|
35
|
+
- Browser speech synthesis
|
|
36
|
+
- Flyover animations
|
|
37
|
+
- Adaptive mobile UI
|
|
38
|
+
- Responsive standalone WebApp
|
|
39
|
+
- Heatmap statistics
|
|
40
|
+
- Emergency / Squawk support
|
|
41
|
+
- Aircraft prioritization
|
|
42
|
+
- Optional image caching
|
|
43
|
+
|
|
44
|
+
---
|
|
45
|
+
|
|
46
|
+
# 🛠 Requirements
|
|
47
|
+
|
|
48
|
+
- ioBroker
|
|
49
|
+
- web adapter
|
|
50
|
+
- simple-api adapter
|
|
51
|
+
- modern browser (Safari or Chrome recommended)
|
|
52
|
+
|
|
53
|
+
---
|
|
54
|
+
|
|
55
|
+
# 🚀 Usage
|
|
56
|
+
|
|
57
|
+
1. Install and start the required ioBroker adapters:
|
|
58
|
+
- `web`
|
|
59
|
+
- `simple-api`
|
|
60
|
+
|
|
61
|
+
2. Configure JetFrame in the adapter settings:
|
|
62
|
+
- your home position
|
|
63
|
+
- nearest airport
|
|
64
|
+
- visible viewing direction
|
|
65
|
+
- Simple-API host and port
|
|
66
|
+
- visualization source
|
|
67
|
+
- optional image providers
|
|
68
|
+
- optional image caching
|
|
69
|
+
|
|
70
|
+
3. Open the WebApp:
|
|
71
|
+
|
|
72
|
+
http://IPADRESSE:8082/jetframe/
|
|
73
|
+
|
|
74
|
+
Direct pages:
|
|
75
|
+
|
|
76
|
+
http://IPADRESSE:8082/jetframe/frame.html
|
|
77
|
+
http://IPADRESSE:8082/jetframe/heatmap.html
|
|
78
|
+
|
|
79
|
+
Example:
|
|
80
|
+
|
|
81
|
+
http://192.168.178.10:8082/jetframe/
|
|
82
|
+
|
|
83
|
+
Optional URL overrides:
|
|
84
|
+
|
|
85
|
+
http://IPADRESSE:8082/jetframe/frame.html?apiHost=192.168.178.10&apiPort=8087&source=current
|
|
86
|
+
|
|
87
|
+
Available sources:
|
|
88
|
+
|
|
89
|
+
current
|
|
90
|
+
airport
|
|
91
|
+
overflight
|
|
92
|
+
|
|
93
|
+
---
|
|
94
|
+
|
|
95
|
+
# 🌐 Standalone WebApp
|
|
96
|
+
|
|
97
|
+
JetFrame now includes a modern standalone WebApp interface.
|
|
98
|
+
|
|
99
|
+
Includes:
|
|
100
|
+
|
|
101
|
+
- responsive mobile layout
|
|
102
|
+
- fullscreen iPhone/iPad support
|
|
103
|
+
- standalone kiosk mode
|
|
104
|
+
- live flight frame
|
|
105
|
+
- heatmap statistics
|
|
106
|
+
- welcome/start page
|
|
107
|
+
- navigation between pages
|
|
108
|
+
- Apple-style UI
|
|
109
|
+
|
|
110
|
+
Recommended setup:
|
|
111
|
+
|
|
112
|
+
1. Open in Safari
|
|
113
|
+
2. Share
|
|
114
|
+
3. Add to Home Screen
|
|
115
|
+
|
|
116
|
+
JetFrame launches like a native fullscreen app.
|
|
117
|
+
|
|
118
|
+
Optimized for:
|
|
119
|
+
|
|
120
|
+
- iPad wall displays
|
|
121
|
+
- kitchen dashboards
|
|
122
|
+
- kiosk installations
|
|
123
|
+
- airport spotting stations
|
|
124
|
+
|
|
125
|
+
---
|
|
126
|
+
|
|
127
|
+
# 🖼️ Images & Logos
|
|
128
|
+
|
|
129
|
+
JetFrame no longer ships with bundled images or logos.
|
|
130
|
+
|
|
131
|
+
This keeps:
|
|
132
|
+
|
|
133
|
+
- package size smaller
|
|
134
|
+
- updates faster
|
|
135
|
+
- licensing cleaner
|
|
136
|
+
- customization easier
|
|
137
|
+
|
|
138
|
+
Users can configure their own image/logo providers.
|
|
139
|
+
|
|
140
|
+
---
|
|
141
|
+
|
|
142
|
+
## Manufacturer Logos
|
|
143
|
+
|
|
144
|
+
Example using logo.dev:
|
|
145
|
+
|
|
146
|
+
AIRBUS=https://img.logo.dev/airbus.com?token=APIKEY&size=80&retina=true&format=png
|
|
147
|
+
BOEING=https://img.logo.dev/boeing.com?token=APIKEY&size=80&retina=true&format=png
|
|
148
|
+
EMBRAER=https://img.logo.dev/embraer.com?token=APIKEY&size=80&retina=true&format=png
|
|
149
|
+
|
|
150
|
+
Configured via:
|
|
151
|
+
|
|
152
|
+
- externalManufacturerLogos
|
|
153
|
+
- manufacturerLogoUrls
|
|
154
|
+
|
|
155
|
+
---
|
|
156
|
+
|
|
157
|
+
## Airline Logos
|
|
158
|
+
|
|
159
|
+
Example airline logo source:
|
|
160
|
+
|
|
161
|
+
https://raw.githubusercontent.com/Jxck-S/airline-logos/refs/heads/main/fr24_banners
|
|
162
|
+
|
|
163
|
+
Supports:
|
|
164
|
+
|
|
165
|
+
- airline logos
|
|
166
|
+
- aircraft images
|
|
167
|
+
- optional local caching
|
|
168
|
+
- external image providers
|
|
169
|
+
|
|
170
|
+
---
|
|
171
|
+
|
|
172
|
+
# 💾 Optional Image Caching
|
|
173
|
+
|
|
174
|
+
Caching of external images can now be enabled or disabled.
|
|
175
|
+
|
|
176
|
+
Supports caching for:
|
|
177
|
+
|
|
178
|
+
- airline logos
|
|
179
|
+
- manufacturer logos
|
|
180
|
+
- aircraft images
|
|
181
|
+
|
|
182
|
+
Useful for:
|
|
183
|
+
|
|
184
|
+
- kiosk systems
|
|
185
|
+
- reducing API traffic
|
|
186
|
+
- faster loading
|
|
187
|
+
|
|
188
|
+
---
|
|
189
|
+
|
|
190
|
+
# 🌍 Configurable API Host
|
|
191
|
+
|
|
192
|
+
The WebApp supports configurable API hosts.
|
|
193
|
+
|
|
194
|
+
Example:
|
|
195
|
+
|
|
196
|
+
http://IP:8082/jetframe/frame.html?apiHost=192.168.178.10&apiPort=8087
|
|
197
|
+
|
|
198
|
+
Useful for:
|
|
199
|
+
|
|
200
|
+
- reverse proxies
|
|
201
|
+
- Docker
|
|
202
|
+
- Home Assistant dashboards
|
|
203
|
+
- remote panels
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
# 📡 Configurable ADS-B Sources
|
|
208
|
+
|
|
209
|
+
Supported:
|
|
210
|
+
|
|
211
|
+
- adsb.lol
|
|
212
|
+
- adsb.fi
|
|
213
|
+
- automatic fallback switching
|
|
214
|
+
- configurable source priority
|
|
215
|
+
|
|
216
|
+
Improved handling for:
|
|
217
|
+
|
|
218
|
+
- 503 errors
|
|
219
|
+
- connection resets
|
|
220
|
+
- automatic failover
|
|
221
|
+
|
|
222
|
+
---
|
|
223
|
+
|
|
224
|
+
# 🚨 Flight Prioritization
|
|
225
|
+
|
|
226
|
+
JetFrame dynamically prioritizes aircraft.
|
|
227
|
+
|
|
228
|
+
Priority examples:
|
|
229
|
+
|
|
230
|
+
- special liveries
|
|
231
|
+
- emergency squawks
|
|
232
|
+
- emergency aircraft
|
|
233
|
+
- runway relevance
|
|
234
|
+
- airport relevance
|
|
235
|
+
- aircraft near viewing direction
|
|
236
|
+
|
|
237
|
+
Special aircraft automatically appear before normal traffic.
|
|
238
|
+
|
|
239
|
+
---
|
|
240
|
+
|
|
241
|
+
# 📊 Heatmap
|
|
242
|
+
|
|
243
|
+
Heatmap features:
|
|
244
|
+
|
|
245
|
+
- responsive landscape mode
|
|
246
|
+
- auto-fit layout
|
|
247
|
+
- optimized iPhone usage
|
|
248
|
+
- top airlines
|
|
249
|
+
- top routes
|
|
250
|
+
- best traffic time
|
|
251
|
+
- current hour statistics
|
|
252
|
+
- fullscreen-friendly layout
|
|
253
|
+
|
|
254
|
+
---
|
|
255
|
+
|
|
256
|
+
# 📦 Installation
|
|
257
|
+
|
|
258
|
+
iobroker url https://github.com/backfisch88/ioBroker.jetframe/releases/latest/download/iobroker.jetframe-0.6.0.tgz --host this
|
|
259
|
+
|
|
260
|
+
---
|
|
261
|
+
|
|
262
|
+
# ⚠️ Legal Notice
|
|
263
|
+
|
|
264
|
+
JetFrame may display publicly available aviation-related information including:
|
|
265
|
+
|
|
266
|
+
- airline names
|
|
267
|
+
- aircraft metadata
|
|
268
|
+
- airport information
|
|
269
|
+
- aircraft images
|
|
270
|
+
- airline logos
|
|
271
|
+
- manufacturer logos
|
|
272
|
+
- live flight tracking data
|
|
273
|
+
|
|
274
|
+
All trademarks, logos, airline names, aircraft images and related content remain the property of their respective owners.
|
|
275
|
+
|
|
276
|
+
JetFrame is not affiliated with, endorsed by or officially connected to any airline, airport, aircraft manufacturer, JetPhotos, ADS-B provider or flight tracking service.
|
|
277
|
+
|
|
278
|
+
The adapter is intended exclusively for:
|
|
279
|
+
|
|
280
|
+
- private use
|
|
281
|
+
- informational purposes
|
|
282
|
+
- non-commercial local visualizations
|
|
283
|
+
|
|
284
|
+
Users are responsible for complying with the licenses and API terms of configured external services.
|
|
285
|
+
|
|
286
|
+
---
|
|
287
|
+
|
|
288
|
+
# 🚀 Roadmap
|
|
289
|
+
|
|
290
|
+
Planned future features:
|
|
291
|
+
|
|
292
|
+
- historical statistics
|
|
293
|
+
- better airport heatmaps
|
|
294
|
+
- optional map integration
|
|
295
|
+
|
|
296
|
+
---
|
|
297
|
+
|
|
298
|
+
# Changelog
|
|
299
|
+
|
|
300
|
+
## WORK IN PROGRESS
|
|
301
|
+
|
|
302
|
+
### v1.0.0
|
|
303
|
+
|
|
304
|
+
✨ New
|
|
305
|
+
|
|
306
|
+
- Added standalone WebApp
|
|
307
|
+
- Added welcome/start page
|
|
308
|
+
- Added responsive heatmap
|
|
309
|
+
- Added fullscreen iPhone/iPad support
|
|
310
|
+
- Added configurable API host support
|
|
311
|
+
- Added external manufacturer logo support
|
|
312
|
+
- Added external airline logo support
|
|
313
|
+
- Added optional image caching
|
|
314
|
+
- Added improved aircraft prioritization
|
|
315
|
+
- Added automatic ADS-B fallback handling
|
|
316
|
+
- Added landscape auto-fit layout
|
|
317
|
+
- Added top airlines and routes statistics
|
|
318
|
+
- Added configurable image provider support
|
|
319
|
+
|
|
320
|
+
🛠 Improvements
|
|
321
|
+
|
|
322
|
+
- Improved mobile layouts
|
|
323
|
+
- Improved iPhone standalone support
|
|
324
|
+
- Improved heatmap scaling
|
|
325
|
+
- Improved emergency prioritization
|
|
326
|
+
- Improved image handling
|
|
327
|
+
- Reduced package size significantly
|
|
328
|
+
- Removed bundled image/logo dependencies
|
|
329
|
+
- Improved fallback handling for adsb.lol / adsb.fi
|
|
330
|
+
- Improved fullscreen experience
|
|
331
|
+
- Improved Apple-style UI consistency
|
|
332
|
+
|
|
333
|
+
### v0.5.0
|
|
334
|
+
|
|
335
|
+
- Added configurable visualization settings
|
|
336
|
+
- Added aircraft prioritization
|
|
337
|
+
- Added emergency / Squawk support
|
|
338
|
+
- Added overflight mode
|
|
339
|
+
- Added improved visualization handling
|
|
340
|
+
|
|
341
|
+
### v0.4.0
|
|
342
|
+
|
|
343
|
+
- Initial release
|
|
344
|
+
|
|
345
|
+
---
|
|
346
|
+
|
|
347
|
+
# License
|
|
348
|
+
|
|
349
|
+
MIT License
|
|
350
|
+
|
|
351
|
+
Copyright (c) 2026 backfisch88
|
|
352
|
+
|
|
353
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
354
|
+
of this software and associated documentation files.
|
|
355
|
+
|
|
356
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND.
|
|
357
|
+
OF ANY KIND.
|
package/admin/SF-Pro.ttf
ADDED
|
Binary file
|
package/admin/admin.d.ts
ADDED
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
declare let systemDictionary: Record<string, Record<string, string>>;
|
|
2
|
+
|
|
3
|
+
declare let load: (settings: Record<string, unknown>, onChange: (hasChanges: boolean) => void) => void;
|
|
4
|
+
declare let save: (callback: (settings: Record<string, unknown>) => void) => void;
|
|
5
|
+
|
|
6
|
+
// make load and save exist on the window object
|
|
7
|
+
interface Window {
|
|
8
|
+
load: typeof load;
|
|
9
|
+
save: typeof save;
|
|
10
|
+
}
|
|
11
|
+
|
|
12
|
+
declare const instance: number;
|
|
13
|
+
declare const adapter: string;
|
|
14
|
+
/**
|
|
15
|
+
* Translates text
|
|
16
|
+
*
|
|
17
|
+
* @param text
|
|
18
|
+
* @param arg1
|
|
19
|
+
* @param arg2
|
|
20
|
+
* @param arg3
|
|
21
|
+
*/
|
|
22
|
+
declare function _(text: string, arg1?: string, arg2?: string, arg3?: string): string;
|
|
23
|
+
declare const socket: ioBrokerSocket;
|
|
24
|
+
declare function sendTo(
|
|
25
|
+
instance: any,
|
|
26
|
+
command: string,
|
|
27
|
+
message: any,
|
|
28
|
+
callback: (result: SendToResult) => void | Promise<void>,
|
|
29
|
+
): void;
|
|
30
|
+
|
|
31
|
+
interface SendToResult {
|
|
32
|
+
error?: string | Error;
|
|
33
|
+
result?: any;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
// tslint:disable-next-line:class-name
|
|
37
|
+
interface ioBrokerSocket {
|
|
38
|
+
emit(command: 'subscribeObjects', pattern: string, callback?: (err?: string) => void | Promise<void>): void;
|
|
39
|
+
emit(command: 'subscribeStates', pattern: string, callback?: (err?: string) => void | Promise<void>): void;
|
|
40
|
+
emit(command: 'unsubscribeObjects', pattern: string, callback?: (err?: string) => void | Promise<void>): void;
|
|
41
|
+
emit(command: 'unsubscribeStates', pattern: string, callback?: (err?: string) => void | Promise<void>): void;
|
|
42
|
+
|
|
43
|
+
emit(
|
|
44
|
+
event: 'getObjectView',
|
|
45
|
+
view: 'system',
|
|
46
|
+
type: 'device',
|
|
47
|
+
options: ioBroker.GetObjectViewParams,
|
|
48
|
+
callback: (err: string | undefined, result?: any) => void | Promise<void>,
|
|
49
|
+
): void;
|
|
50
|
+
emit(event: 'getStates', callback: (err: string | undefined, result?: Record<string, any>) => void): void;
|
|
51
|
+
emit(event: 'getState', id: string, callback: (err: string | undefined, result?: ioBroker.State) => void): void;
|
|
52
|
+
emit(
|
|
53
|
+
event: 'setState',
|
|
54
|
+
id: string,
|
|
55
|
+
state: unknown,
|
|
56
|
+
callback: (err: string | undefined, result?: any) => void,
|
|
57
|
+
): void;
|
|
58
|
+
|
|
59
|
+
on(event: 'objectChange', handler: ioBroker.ObjectChangeHandler): void;
|
|
60
|
+
on(event: 'stateChange', handler: ioBroker.StateChangeHandler): void;
|
|
61
|
+
removeEventHandler(event: 'objectChange', handler: ioBroker.ObjectChangeHandler): void;
|
|
62
|
+
removeEventHandler(event: 'stateChange', handler: ioBroker.StateChangeHandler): void;
|
|
63
|
+
|
|
64
|
+
// TODO: other events
|
|
65
|
+
}
|