@fboes/aerofly-custom-missions 1.9.0 → 1.9.1

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/CHANGELOG.md CHANGED
@@ -2,6 +2,10 @@
2
2
 
3
3
  This changelog documents all notable changes to the Aerofly Custom Missions project. Each version entry includes a list of changes, with the most recent version at the top.
4
4
 
5
+ ## [1.9.1] - 2026-05-24
6
+
7
+ - Exporting `AeroflyNavRouteBase`
8
+
5
9
  ## [1.9.0] - 2026-04-20
6
10
 
7
11
  - Added new convenience method to set aircraft systems from general aircraft configuration state. Please note that this will also be used as fallback on flight setting creation.
@@ -10,7 +10,7 @@ export class AeroflySettingsFlight {
10
10
  this.gear = 1;
11
11
  /**
12
12
  * Throttle is supposed to be set to
13
- * - 0 on "ColdAndDark", "BeforeStart", "OnGround" and "Takeoff" configuration
13
+ * - 0 on "ColdAndDark", "BeforeStart", "Parking", "OnGround" and "Takeoff" configuration
14
14
  * - 0.4 on "ShortFinal" and "Final" configuration
15
15
  * - 0.6 on "Cruise" configuration
16
16
  */
@@ -19,7 +19,7 @@ export class AeroflySettingsFlight {
19
19
  * Flaps is supposed to be set to 1 on "ShortFinal" and "Final" configurations
20
20
  */
21
21
  this.flaps = 0;
22
- this.configuration = "OnGround";
22
+ this.configuration = "Parking";
23
23
  this.onGround = true;
24
24
  this.configuration = configuration;
25
25
  this.setConfiguration(configuration);
@@ -59,6 +59,7 @@ export class AeroflySettingsFlight {
59
59
  this.onGround =
60
60
  configuration === "ColdAndDark" ||
61
61
  configuration === "BeforeStart" ||
62
+ configuration === "Parking" ||
62
63
  configuration === "OnGround" ||
63
64
  configuration === "Takeoff";
64
65
  this.gear = configuration === "Cruise" ? 0 : 1;
package/dist/index.js CHANGED
@@ -14,6 +14,7 @@ export { AeroflyTimeUtc } from "./dto-flight/AeroflyTimeUtc.js";
14
14
  export { AeroflySettingsWind } from "./dto-flight/AeroflySettingsWind.js";
15
15
  export { AeroflySettingsCloud } from "./dto-flight/AeroflySettingsCloud.js";
16
16
  export { AeroflyNavigationConfig } from "./dto-flight/AeroflyNavigationConfig.js";
17
+ export { AeroflyNavRouteBase } from "./dto-flight/AeroflyNavRouteBase.js";
17
18
  export { AeroflyNavRouteDestination, AeroflyNavRouteOrigin } from "./dto-flight/AeroflyNavRouteAirports.js";
18
19
  export { AeroflyNavRouteDepartureRunway, AeroflyNavRouteDestinationRunway, } from "./dto-flight/AeroflyNavRouteRunway.js";
19
20
  export { AeroflyNavRouteApproach, AeroflyNavRouteArrival, AeroflyNavRouteDeparture, } from "./dto-flight/AeroflyNavRouteTransition.js";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fboes/aerofly-custom-missions",
3
- "version": "1.9.0",
3
+ "version": "1.9.1",
4
4
  "description": "Builder for Aerofly FS4 Custom Missions Files",
5
5
  "main": "dist/index.js",
6
6
  "scripts": {
@@ -5,6 +5,7 @@ export type AeroflySettingsFlightConfiguration =
5
5
  | "Keep"
6
6
  | "ColdAndDark"
7
7
  | "BeforeStart" // TODO
8
+ | "Parking"
8
9
  | "OnGround"
9
10
  | "Takeoff"
10
11
  | "Cruise"
@@ -16,7 +17,7 @@ export class AeroflySettingsFlight {
16
17
 
17
18
  /**
18
19
  * Throttle is supposed to be set to
19
- * - 0 on "ColdAndDark", "BeforeStart", "OnGround" and "Takeoff" configuration
20
+ * - 0 on "ColdAndDark", "BeforeStart", "Parking", "OnGround" and "Takeoff" configuration
20
21
  * - 0.4 on "ShortFinal" and "Final" configuration
21
22
  * - 0.6 on "Cruise" configuration
22
23
  */
@@ -26,7 +27,7 @@ export class AeroflySettingsFlight {
26
27
  * Flaps is supposed to be set to 1 on "ShortFinal" and "Final" configurations
27
28
  */
28
29
  flaps: number = 0;
29
- configuration: AeroflySettingsFlightConfiguration = "OnGround";
30
+ configuration: AeroflySettingsFlightConfiguration = "Parking";
30
31
  onGround: boolean = true;
31
32
 
32
33
  /**
@@ -117,6 +118,7 @@ export class AeroflySettingsFlight {
117
118
  this.onGround =
118
119
  configuration === "ColdAndDark" ||
119
120
  configuration === "BeforeStart" ||
121
+ configuration === "Parking" ||
120
122
  configuration === "OnGround" ||
121
123
  configuration === "Takeoff";
122
124
  this.gear = configuration === "Cruise" ? 0 : 1;
package/src/index.ts CHANGED
@@ -17,6 +17,7 @@ export { AeroflySettingsWind } from "./dto-flight/AeroflySettingsWind.js";
17
17
  export { AeroflySettingsCloud } from "./dto-flight/AeroflySettingsCloud.js";
18
18
  export { AeroflyNavigationConfig } from "./dto-flight/AeroflyNavigationConfig.js";
19
19
 
20
+ export { AeroflyNavRouteBase } from "./dto-flight/AeroflyNavRouteBase.js";
20
21
  export { AeroflyNavRouteDestination, AeroflyNavRouteOrigin } from "./dto-flight/AeroflyNavRouteAirports.js";
21
22
  export {
22
23
  AeroflyNavRouteDepartureRunway,
@@ -4,6 +4,7 @@ export type AeroflySettingsFlightConfiguration =
4
4
  | "Keep"
5
5
  | "ColdAndDark"
6
6
  | "BeforeStart"
7
+ | "Parking"
7
8
  | "OnGround"
8
9
  | "Takeoff"
9
10
  | "Cruise"
@@ -18,7 +19,7 @@ export declare class AeroflySettingsFlight {
18
19
  gear: number;
19
20
  /**
20
21
  * Throttle is supposed to be set to
21
- * - 0 on "ColdAndDark", "BeforeStart", "OnGround" and "Takeoff" configuration
22
+ * - 0 on "ColdAndDark", "BeforeStart", "Parking", "OnGround" and "Takeoff" configuration
22
23
  * - 0.4 on "ShortFinal" and "Final" configuration
23
24
  * - 0.6 on "Cruise" configuration
24
25
  */
@@ -1 +1 @@
1
- {"version":3,"file":"AeroflySettingsFlight.d.ts","sourceRoot":"","sources":["../../src/dto-flight/AeroflySettingsFlight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAW,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,MAAM,MAAM,kCAAkC,GACxC,MAAM,GACN,aAAa,GACb,aAAa,GACb,UAAU,GACV,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,OAAO,CAAC;AAEd,qBAAa,qBAAqB;IA6BnB,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,MAAM;IAChB,cAAc,EAAE,MAAM;IACtB,cAAc,EAAE,MAAM;IACtB,SAAS,EAAE,MAAM;IAhC5B,IAAI,EAAE,MAAM,CAAK;IAEjB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAK;IAErB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAK;IAClB,aAAa,EAAE,kCAAkC,CAAc;IAC/D,QAAQ,EAAE,OAAO,CAAQ;IAEzB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;gBAGJ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,SAAS,GAAE,MAAU,EAC5B,EACI,IAAQ,EACR,QAAY,EACZ,KAAS,EACT,aAA0B,EAC1B,QAAe,EACf,OAAY,EACZ,MAAW,GACd,GAAE,OAAO,CAAC,qBAAqB,CAAM;IAqB1C,MAAM,CAAC,YAAY,CACf,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,SAAS,GAAE,MAAU,EACrB,oBAAoB,GAAE,OAAO,CAAC,qBAAqB,CAAM,GAC1D,qBAAqB;IAWxB,MAAM,CAAC,iBAAiB,CACpB,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,EAAE,mBAAmB,EAC7B,WAAW,EAAE,mBAAmB,EAChC,oBAAoB,GAAE,OAAO,CAAC,qBAAqB,CAAM,GAC1D,qBAAqB;IAQxB;;OAEG;IACH,gBAAgB,CAAC,aAAa,EAAE,kCAAkC;IA4BlE;;OAEG;IACH,IAAI,QAAQ,IAAI,mBAAmB,CAElC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,EAKzC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,mBAAmB,CAIlC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,EAGzC;IAED,IAAI,WAAW,IAAI,mBAAmB,CAErC;IAED,IAAI,WAAW,CAAC,WAAW,EAAE,mBAAmB,EAE/C;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,CAAC,WAAW,EAAE,MAAM,EAElC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAE5B;IAED,UAAU,IAAI,wBAAwB;IAwBtC,MAAM;IAQN;;OAEG;IACH,QAAQ,IAAI,MAAM;CAGrB"}
1
+ {"version":3,"file":"AeroflySettingsFlight.d.ts","sourceRoot":"","sources":["../../src/dto-flight/AeroflySettingsFlight.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,mBAAmB,EAAE,mBAAmB,EAAW,MAAM,oBAAoB,CAAC;AACvF,OAAO,EAAE,wBAAwB,EAAE,MAAM,qCAAqC,CAAC;AAE/E,MAAM,MAAM,kCAAkC,GACxC,MAAM,GACN,aAAa,GACb,aAAa,GACb,SAAS,GACT,UAAU,GACV,SAAS,GACT,QAAQ,GACR,YAAY,GACZ,OAAO,CAAC;AAEd,qBAAa,qBAAqB;IA6BnB,SAAS,EAAE,MAAM;IACjB,QAAQ,EAAE,MAAM;IAChB,cAAc,EAAE,MAAM;IACtB,cAAc,EAAE,MAAM;IACtB,SAAS,EAAE,MAAM;IAhC5B,IAAI,EAAE,MAAM,CAAK;IAEjB;;;;;OAKG;IACH,QAAQ,EAAE,MAAM,CAAK;IAErB;;OAEG;IACH,KAAK,EAAE,MAAM,CAAK;IAClB,aAAa,EAAE,kCAAkC,CAAa;IAC9D,QAAQ,EAAE,OAAO,CAAQ;IAEzB;;OAEG;IACH,OAAO,EAAE,MAAM,CAAC;IAEhB;;OAEG;IACH,MAAM,EAAE,MAAM,CAAC;gBAGJ,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,cAAc,EAAE,MAAM,EACtB,cAAc,EAAE,MAAM,EACtB,SAAS,GAAE,MAAU,EAC5B,EACI,IAAQ,EACR,QAAY,EACZ,KAAS,EACT,aAA0B,EAC1B,QAAe,EACf,OAAY,EACZ,MAAW,GACd,GAAE,OAAO,CAAC,qBAAqB,CAAM;IAqB1C,MAAM,CAAC,YAAY,CACf,SAAS,EAAE,MAAM,EACjB,QAAQ,EAAE,MAAM,EAChB,WAAW,EAAE,MAAM,EACnB,cAAc,EAAE,MAAM,EACtB,SAAS,GAAE,MAAU,EACrB,oBAAoB,GAAE,OAAO,CAAC,qBAAqB,CAAM,GAC1D,qBAAqB;IAWxB,MAAM,CAAC,iBAAiB,CACpB,QAAQ,EAAE,mBAAmB,EAC7B,QAAQ,EAAE,mBAAmB,EAC7B,WAAW,EAAE,mBAAmB,EAChC,oBAAoB,GAAE,OAAO,CAAC,qBAAqB,CAAM,GAC1D,qBAAqB;IAQxB;;OAEG;IACH,gBAAgB,CAAC,aAAa,EAAE,kCAAkC;IA6BlE;;OAEG;IACH,IAAI,QAAQ,IAAI,mBAAmB,CAElC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,EAKzC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,mBAAmB,CAIlC;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,mBAAmB,EAGzC;IAED,IAAI,WAAW,IAAI,mBAAmB,CAErC;IAED,IAAI,WAAW,CAAC,WAAW,EAAE,mBAAmB,EAE/C;IAED;;OAEG;IACH,IAAI,WAAW,IAAI,MAAM,CAExB;IAED,IAAI,WAAW,CAAC,WAAW,EAAE,MAAM,EAElC;IAED;;OAEG;IACH,IAAI,QAAQ,IAAI,MAAM,CAErB;IAED,IAAI,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAE5B;IAED,UAAU,IAAI,wBAAwB;IAwBtC,MAAM;IAQN;;OAEG;IACH,QAAQ,IAAI,MAAM;CAGrB"}
package/types/index.d.ts CHANGED
@@ -13,6 +13,7 @@ export { AeroflyTimeUtc } from "./dto-flight/AeroflyTimeUtc.js";
13
13
  export { AeroflySettingsWind } from "./dto-flight/AeroflySettingsWind.js";
14
14
  export { AeroflySettingsCloud } from "./dto-flight/AeroflySettingsCloud.js";
15
15
  export { AeroflyNavigationConfig } from "./dto-flight/AeroflyNavigationConfig.js";
16
+ export { AeroflyNavRouteBase } from "./dto-flight/AeroflyNavRouteBase.js";
16
17
  export { AeroflyNavRouteDestination, AeroflyNavRouteOrigin } from "./dto-flight/AeroflyNavRouteAirports.js";
17
18
  export {
18
19
  AeroflyNavRouteDepartureRunway,
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAI/E,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAC5G,OAAO,EACH,8BAA8B,EAC9B,gCAAgC,GACnC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,GAC3B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,oBAAoB,EAAE,MAAM,+BAA+B,CAAC;AACrE,OAAO,EAAE,cAAc,EAAE,MAAM,yBAAyB,CAAC;AACzD,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,wBAAwB,EAAE,MAAM,mCAAmC,CAAC;AAC7E,OAAO,EAAE,6BAA6B,EAAE,MAAM,wCAAwC,CAAC;AACvF,OAAO,EAAE,mBAAmB,EAAE,MAAM,8BAA8B,CAAC;AACnE,OAAO,EAAE,yBAAyB,EAAE,MAAM,oCAAoC,CAAC;AAI/E,OAAO,EAAE,aAAa,EAAE,MAAM,+BAA+B,CAAC;AAC9D,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,qBAAqB,EAAE,MAAM,uCAAuC,CAAC;AAC9E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAClF,OAAO,EAAE,cAAc,EAAE,MAAM,gCAAgC,CAAC;AAChE,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,oBAAoB,EAAE,MAAM,sCAAsC,CAAC;AAC5E,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC;AAElF,OAAO,EAAE,mBAAmB,EAAE,MAAM,qCAAqC,CAAC;AAC1E,OAAO,EAAE,0BAA0B,EAAE,qBAAqB,EAAE,MAAM,yCAAyC,CAAC;AAC5G,OAAO,EACH,8BAA8B,EAC9B,gCAAgC,GACnC,MAAM,uCAAuC,CAAC;AAC/C,OAAO,EACH,uBAAuB,EACvB,sBAAsB,EACtB,wBAAwB,GAC3B,MAAM,2CAA2C,CAAC;AACnD,OAAO,EAAE,uBAAuB,EAAE,MAAM,yCAAyC,CAAC"}
@@ -1,269 +0,0 @@
1
- {
2
- "$schema": "http://json-schema.org/draft-07/schema#",
3
- "$id": "https://raw.githubusercontent.com/fboes/aerofly-custom-missions/refs/heads/main/docs/custom_missions_user.schema.json",
4
- "title": "Aerofly Custom User Missions JSON",
5
- "type": "array",
6
- "items": {
7
- "type": "object",
8
- "properties": {
9
- "title": {
10
- "type": "string",
11
- "description": "Title of this flight plan"
12
- },
13
- "checkpoints": {
14
- "type": "array",
15
- "items": {
16
- "type": "object",
17
- "properties": {
18
- "type": {
19
- "type": "string",
20
- "enum": [
21
- "origin",
22
- "departure_runway",
23
- "departure",
24
- "waypoint",
25
- "arrival",
26
- "approach",
27
- "destination_runway",
28
- "destination"
29
- ],
30
- "description": "Type of waypoint. Flight plans usually start with 'origin', followed by 'departure_runway'. Flight plans usually end with 'destination_runway', followed by 'destination'"
31
- },
32
- "name": {
33
- "type": "string",
34
- "description": "ICAO identifier for airports, name of navaids, free text for any other type of waypoint. Uppercased"
35
- },
36
- "longitude": {
37
- "type": "number",
38
- "description": "Easting, using the World Geodetic System 1984 (WGS 84) [WGS84] datum, with longitude and latitude units of decimal degrees; [-180,180]",
39
- "minimum": -180,
40
- "maximum": 180
41
- },
42
- "latitude": {
43
- "type": "number",
44
- "description": "Northing, using the World Geodetic System 1984 (WGS 84) [WGS84] datum, with longitude and latitude units of decimal degrees; [-90,90]",
45
- "minimum": -90,
46
- "maximum": 90
47
- },
48
- "altitude": {
49
- "type": "number",
50
- "description": "The height in meters above or below the WGS 84 reference ellipsoid"
51
- },
52
- "frequency": {
53
- "type": ["number", "null"],
54
- "description": "Navaid frequency given in Hertz"
55
- },
56
- "flyOver": {
57
- "type": ["boolean", "null"],
58
- "description": "Whether to fly over the waypoint"
59
- }
60
- },
61
- "required": ["type", "name", "longitude", "latitude"]
62
- }
63
- },
64
- "description": {
65
- "type": "string",
66
- "description": "Description text, mission briefing, etc"
67
- },
68
- "flightSetting": {
69
- "type": "string",
70
- "enum": [
71
- "cold_and_dark",
72
- "before_start",
73
- "taxi",
74
- "takeoff",
75
- "cruise",
76
- "approach",
77
- "landing",
78
- "winch_launch",
79
- "aerotow",
80
- "pushback"
81
- ],
82
- "description": "Flight setting of aircraft, , like \"taxi\", \"cruise\""
83
- },
84
- "aircraft": {
85
- "type": "object",
86
- "properties": {
87
- "name": {
88
- "type": "string",
89
- "description": "Lowercased identifier for Aerofly FS4 aircraft, e.g. \"c172\". The current list of Aerofly FS4 aircraft codes can be obtained from https://fboes.github.io/aerofly-data/data/aircraft.html or https://fboes.github.io/aerofly-data/data/aircraft-liveries.json"
90
- },
91
- "livery": {
92
- "type": "string",
93
- "description": "Lowercased identifier for Aerofly FS4 paint scheme for given aircraft. The current list of Aerofly FS4 paint schemes can be obtained from https://fboes.github.io/aerofly-data/data/aircraft-liveries.json"
94
- },
95
- "icao": {
96
- "type": "string",
97
- "description": "Upperacsed ICAO identifier for aircraft"
98
- }
99
- },
100
- "required": ["name"]
101
- },
102
- "callsign": {
103
- "type": "string",
104
- "description": "Callsign of aircraft. This string is supposed to be uppercased. Default to an empty string."
105
- },
106
- "fuelMass": {
107
- "type": ["number", "null"],
108
- "description": "Fuel mass in kg. The potential maximum fuel mass can be obtained from https://fboes.github.io/aerofly-data/data/aircraft-liveries.json.",
109
- "minimum": 0
110
- },
111
- "payloadMass": {
112
- "type": ["number", "null"],
113
- "description": "Payload mass in kg. The potential maximum payload mass can be obtained from https://fboes.github.io/aerofly-data/data/aircraft-liveries.json.",
114
- "minimum": 0
115
- },
116
- "origin": {
117
- "type": "object",
118
- "properties": {
119
- "icao": {
120
- "type": "string"
121
- },
122
- "longitude": {
123
- "type": "number",
124
- "description": "Easting, using the World Geodetic System 1984 (WGS 84) [WGS84] datum, with longitude and latitude units of decimal degrees; [-180,180]",
125
- "minimum": -180,
126
- "maximum": 180
127
- },
128
- "latitude": {
129
- "type": "number",
130
- "description": "Northing, using the World Geodetic System 1984 (WGS 84) [WGS84] datum, with longitude and latitude units of decimal degrees; [-90,90]",
131
- "minimum": -90,
132
- "maximum": 90
133
- },
134
- "dir": {
135
- "type": "number",
136
- "description": "Heading, given in degree"
137
- },
138
- "alt": {
139
- "type": "number",
140
- "description": "The height in meters above or below the WGS 84 reference ellipsoid"
141
- }
142
- },
143
- "required": ["icao", "longitude", "latitude", "dir", "alt"]
144
- },
145
- "destination": {
146
- "type": "object",
147
- "description": "Destination airport information",
148
- "properties": {
149
- "icao": {
150
- "type": "string",
151
- "description": "ICAO identifier of airport"
152
- },
153
- "longitude": {
154
- "type": "number",
155
- "description": "Easting, using the World Geodetic System 1984 (WGS 84) [WGS84] datum, with longitude and latitude units of decimal degrees; [-180,180]",
156
- "minimum": -180,
157
- "maximum": 180
158
- },
159
- "latitude": {
160
- "type": "number",
161
- "description": "Northing, using the World Geodetic System 1984 (WGS 84) [WGS84] datum, with longitude and latitude units of decimal degrees; [-90,90]",
162
- "minimum": -90,
163
- "maximum": 90
164
- },
165
- "dir": {
166
- "type": "number",
167
- "description": "Heading, given in degree",
168
- "minimum": 0,
169
- "maximum": 360
170
- },
171
- "alt": {
172
- "type": "number",
173
- "description": "The height in meters above or below the WGS 84 reference ellipsoid"
174
- }
175
- },
176
- "required": ["icao", "longitude", "latitude", "dir", "alt"]
177
- },
178
- "conditions": {
179
- "type": "object",
180
- "properties": {
181
- "clouds": {
182
- "type": "array",
183
- "items": {
184
- "type": "object",
185
- "properties": {
186
- "cover": {
187
- "type": "number",
188
- "description": "Cloud cover as normalized value [0,1], where 0 = clear, 1 = overcast",
189
- "minimum": 0,
190
- "maximum": 1
191
- },
192
- "base": {
193
- "type": "number",
194
- "description": "Cloud base height in meters above WGS 84 reference ellipsoid",
195
- "minimum": 0
196
- }
197
- },
198
- "required": ["cover", "base"]
199
- }
200
- },
201
- "time": {
202
- "type": "string",
203
- "format": "date-time",
204
- "description": "UTC time and day, given as ISO 8601 string, e.g. \"2024-05-28T11:00:00Z\""
205
- },
206
- "wind": {
207
- "type": "object",
208
- "properties": {
209
- "direction": {
210
- "type": "number",
211
- "description": "Wind direction where the wind is coming from, in degrees",
212
- "minimum": 0,
213
- "maximum": 360
214
- },
215
- "speed": {
216
- "type": "number",
217
- "description": "Wind speed in kts",
218
- "minimum": 0
219
- },
220
- "gusts": {
221
- "type": "number",
222
- "description": "Gust speed in kts",
223
- "minimum": 0
224
- }
225
- },
226
- "required": ["direction", "speed"]
227
- },
228
- "turbulenceStrength": {
229
- "type": "number",
230
- "description": "normalized value [0,1]",
231
- "minimum": 0,
232
- "maximum": 1
233
- },
234
- "thermalStrength": {
235
- "type": "number",
236
- "description": "normalized value [0,1]",
237
- "minimum": 0,
238
- "maximum": 1
239
- },
240
- "visibility": {
241
- "type": "number",
242
- "description": "Given in meters",
243
- "minimum": 0
244
- }
245
- },
246
- "required": [
247
- "clouds",
248
- "time",
249
- "wind",
250
- "turbulenceStrength",
251
- "thermalStrength",
252
- "visibility"
253
- ]
254
- }
255
- },
256
- "required": [
257
- "title",
258
- "checkpoints",
259
- "description",
260
- "flightSetting",
261
- "aircraft",
262
- "fuelMass",
263
- "payloadMass",
264
- "origin",
265
- "destination",
266
- "conditions"
267
- ]
268
- }
269
- }