From a6c1def2639604880e4a68c454c7366db8d1a69f Mon Sep 17 00:00:00 2001 From: Alex Anderson Date: Fri, 29 Jul 2022 19:57:42 -0400 Subject: [PATCH] feat(Triggers): Adds Remote Access Code triggers. Closes #3241 --- .github/workflows/deploy.yml | 2 +- server/triggers/index.js | 1 + server/triggers/remoteAccess.ts | 25 ++++++ .../Triggers/components/triggers/index.js | 1 + .../components/triggers/remoteAccess.tsx | 77 +++++++++++++++++++ 5 files changed, 105 insertions(+), 1 deletion(-) create mode 100644 server/triggers/remoteAccess.ts create mode 100644 src/containers/FlightDirector/Triggers/components/triggers/remoteAccess.tsx diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index baaabe538..777a1871f 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -47,7 +47,7 @@ jobs: needs: build strategy: matrix: - os: [macos-10.15, ubuntu-18.04, windows-2019] + os: [macos-latest, ubuntu-18.04, windows-2019] steps: - name: Check out Git repository diff --git a/server/triggers/index.js b/server/triggers/index.js index a778f0268..b5239a446 100644 --- a/server/triggers/index.js +++ b/server/triggers/index.js @@ -19,3 +19,4 @@ export * from "./engines"; export * from "./internalComm"; export * from "./jumpDrive"; export * from "./lighting"; +export * from "./remoteAccess"; diff --git a/server/triggers/remoteAccess.ts b/server/triggers/remoteAccess.ts new file mode 100644 index 000000000..32e997821 --- /dev/null +++ b/server/triggers/remoteAccess.ts @@ -0,0 +1,25 @@ +import App from "../app"; + +export function remoteAccessSendCode({simulatorId, code}) { + console.log(simulatorId, code); + return {simulatorId, code}; +} + +export function remoteAccessUpdateCode({ + simulatorId, + codeId, + state, +}: { + simulatorId: string; + codeId: string; + state: "Denied" | "Accepted"; +}) { + const simulator = App.simulators.find(s => s.id === simulatorId); + const code = simulator.ship.remoteAccessCodes.find(c => c.id === codeId); + console.log(simulatorId, state, code.code); + return { + simulatorId, + state: state === "Accepted" ? "true" : "false", + code: code.code, + }; +} diff --git a/src/containers/FlightDirector/Triggers/components/triggers/index.js b/src/containers/FlightDirector/Triggers/components/triggers/index.js index 115867dae..b154e976a 100644 --- a/src/containers/FlightDirector/Triggers/components/triggers/index.js +++ b/src/containers/FlightDirector/Triggers/components/triggers/index.js @@ -22,3 +22,4 @@ export * from "./engines"; export * from "./internalComm"; export * from "./jumpDrive"; export * from "./lighting"; +export * from "./remoteAccess"; diff --git a/src/containers/FlightDirector/Triggers/components/triggers/remoteAccess.tsx b/src/containers/FlightDirector/Triggers/components/triggers/remoteAccess.tsx new file mode 100644 index 000000000..2c2217a48 --- /dev/null +++ b/src/containers/FlightDirector/Triggers/components/triggers/remoteAccess.tsx @@ -0,0 +1,77 @@ +import React from "react"; + +export const remoteAccessSendCode = { + name: "remoteAccessSendCode", + objectKey: "remoteAccessSendCode", + category: "Triggers", + component: () => ( +
+ Event: Remote Access Code Sent +
+ "Code" is the code that was sent. +
+
+ ), + outputs: [ + { + id: "triggerOut", + color: "orange", + title: "Triggers the action", + type: "Trigger", + }, + { + id: "code", + color: "yellow", + title: "Code", + type: "String", + }, + ], + inputs: [], + config: [], +}; +export const remoteAccessUpdateCode = { + name: "remoteAccessUpdateCode", + objectKey: "remoteAccessUpdateCode", + category: "Triggers", + component: () => ( +
+ Event: Remote Access Code Accepted/Denied +
+ "Code" is the code that was sent. +
+
+ + Possible "State" options:{" "} +
+ true: Code was accepted +
+
+ false: Code was rejected +
+
+
+
+ ), + outputs: [ + { + id: "triggerOut", + color: "orange", + title: "Triggers the action", + type: "Trigger", + }, + { + id: "code", + color: "yellow", + title: "Code", + type: "String", + }, + { + id: "state", + color: "green", + title: "State", + type: "String", + }, + ], + inputs: [], + config: [], +};