135 lines
2.9 KiB
TypeScript
135 lines
2.9 KiB
TypeScript
import {
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
MODE_LOAD_SET,
|
|
MODE_OPTIONS_SET,
|
|
MODE_SB_SET,
|
|
MODE_STATION_SET,
|
|
MODE_UNLOAD_SET,
|
|
MODE_ZFW_SET,
|
|
} from '../constants';
|
|
import { SimBrief } from '../types/general';
|
|
|
|
export const loadAircraft = () => {
|
|
Coherent.call(
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
JSON.stringify({
|
|
mode: MODE_LOAD_SET,
|
|
})
|
|
);
|
|
};
|
|
|
|
export const unloadAircraft = () => {
|
|
Coherent.call(
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
JSON.stringify({
|
|
mode: MODE_UNLOAD_SET,
|
|
})
|
|
);
|
|
};
|
|
|
|
export const inRangeOf = (value: number, target: number, tolerance: number = 10) => {
|
|
return Math.abs(value - target) < tolerance;
|
|
};
|
|
|
|
export const CoherentCallZFWEntry = (ZFWTarget: number, CGTarget: number) => {
|
|
Coherent.call(
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
JSON.stringify({
|
|
mode: MODE_ZFW_SET,
|
|
ZFWTarget: ZFWTarget,
|
|
CGTarget: CGTarget,
|
|
})
|
|
);
|
|
};
|
|
|
|
export const CoherentCallStationEntryPax = (
|
|
business1: number,
|
|
business2: number,
|
|
economy1: number,
|
|
economy2: number,
|
|
forwardCargo: number,
|
|
rearCargo: number
|
|
) => {
|
|
Coherent.call(
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
JSON.stringify({
|
|
mode: MODE_STATION_SET,
|
|
business1,
|
|
business2,
|
|
economy1,
|
|
economy2,
|
|
forwardCargo,
|
|
rearCargo,
|
|
})
|
|
);
|
|
};
|
|
|
|
export const CoherentCallStationEntryF = (
|
|
upper1: number,
|
|
upper2: number,
|
|
upper3: number,
|
|
upper4: number,
|
|
lowerForward: number,
|
|
lowerRear: number
|
|
) => {
|
|
Coherent.call(
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
JSON.stringify({
|
|
mode: MODE_STATION_SET,
|
|
upper1,
|
|
upper2,
|
|
upper3,
|
|
upper4,
|
|
lowerForward,
|
|
lowerRear,
|
|
})
|
|
);
|
|
};
|
|
|
|
export const CoherentCallSBEntryPax = (CGTarget: number, SBPlan?: SimBrief) => {
|
|
const payload = {
|
|
mode: MODE_SB_SET,
|
|
cargo: SBPlan?.cargo,
|
|
numPax: SBPlan ? parseInt(SBPlan.pax as unknown as string) : undefined,
|
|
CGTarget: CGTarget,
|
|
plannedZFW: SBPlan?.plannedZFW,
|
|
plannedGW: SBPlan?.plannedGW,
|
|
};
|
|
const string = JSON.stringify(payload);
|
|
|
|
Coherent.call(COHERENT_COMM_BUS_WASM_CALL, COMM_BUS_UPDATE_TARGET_EVENT, string);
|
|
};
|
|
|
|
export const CoherentCallSBEntryF = (CGTarget: number, SBPlan?: SimBrief) => {
|
|
Coherent.call(
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
JSON.stringify({
|
|
mode: MODE_SB_SET,
|
|
cargo: SBPlan?.cargo,
|
|
CGTarget: CGTarget,
|
|
plannedZFW: SBPlan?.plannedZFW,
|
|
plannedGW: SBPlan?.plannedGW,
|
|
})
|
|
);
|
|
};
|
|
|
|
export const CoherentCallOptionsSet = (GSXSync?: boolean, paxWeight?: number, bagWeight?: number) => {
|
|
Coherent.call(
|
|
COHERENT_COMM_BUS_WASM_CALL,
|
|
COMM_BUS_UPDATE_TARGET_EVENT,
|
|
JSON.stringify({
|
|
mode: MODE_OPTIONS_SET,
|
|
GSXSync,
|
|
paxWeight,
|
|
bagWeight,
|
|
})
|
|
);
|
|
};
|