/
interfaces.ts
25 lines (19 loc) · 974 Bytes
/
interfaces.ts
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
import { Regimen } from "../../../regimens/interfaces";
import { Sequence } from "../../../sequences/interfaces";
import { FarmEvent } from "farmbot/dist/resources/api_resources";
/** Would it be better to make a fully formed farm event? Join regimen, sequence, etc. */
/** STEP 1: Extract querying of data and formatting of data into two
* sep. function. This function will join `executable` on `farm_event`. */
export type FarmEventWithExecutable = FarmEventWithRegimen | FarmEventWithSequence;
/** Takes a farm event and merges it with its sequence object. */
export interface FarmEventWithSequence extends FarmEvent {
executable_type: "Sequence";
executable: Sequence;
}
/** Takes a farm event and merges it with its regimen object. */
export interface FarmEventWithRegimen extends FarmEvent {
executable_type: "Regimen";
executable: Regimen;
}
/** STEP 2: Once all the resource queries are done, create data that looks
* like `CalendarDay`. */