Added SavedGarden and PlantTemplate to FE- need to investigate type errors

pull/801/head
Rick Carlino 2018-04-19 14:02:11 -05:00
parent 2f4050787c
commit b98f9385c6
6 changed files with 43 additions and 16 deletions

View File

@ -25,7 +25,7 @@ export function fakeSequence(): TaggedSequence {
locals: { kind: "scope_declaration", args: {} },
},
id: 12,
color: "red",
color,
name: "fake",
kind: "sequence",
body: []

View File

@ -131,6 +131,10 @@ export class API {
get deviceConfigPath() { return `${this.baseUrl}/api/device_configs`; }
/** /api/pin_bindings/:id */
get pinBindingPath() { return `${this.baseUrl}/api/pin_bindings/`; }
/** /api/saved_gardens/:id */
get savedGardensPath() { return `${this.baseUrl}/api/saved_gardens`; }
/** /api/plant_templates/:id */
get plantTemplatePath() { return `${this.baseUrl}/api/plant_templates`; }
/** /api/farmware_installations/:id */
get farmwareInstallationPath() {
return `${this.baseUrl}/api/farmware_installations`;

View File

@ -264,3 +264,12 @@ export interface CurrentPointPayl {
r: number;
color?: string;
}
/** WIP */
export interface PlantTemplate {
}
/** WIP */
export interface SavedGarden {
}

View File

@ -78,7 +78,9 @@ export function emptyState(): RestResources {
Sensor: [],
FarmwareInstallation: [],
DeviceConfig: [],
PinBinding: []
PinBinding: [],
PlantTemplate: [],
SavedGarden: []
},
byKindAndId: {},
references: {}
@ -136,6 +138,8 @@ export let resourceReducer = generateReducer
case "Sensor":
case "FarmwareInstallation":
case "PinBinding":
case "PlantTemplate":
case "SavedGarden":
reindexResource(s.index, resource);
dontTouchThis(resource);
s.index.references[resource.uuid] = resource;
@ -154,22 +158,24 @@ export let resourceReducer = generateReducer
case "Crop":
case "Device":
case "FarmEvent":
case "FarmwareInstallation":
case "FbosConfig":
case "FirmwareConfig":
case "Image":
case "Log":
case "Peripheral":
case "PinBinding":
case "Point":
case "Regimen":
case "Sensor":
case "SensorReading":
case "Sequence":
case "Tool":
case "User":
case "WebcamFeed":
case "WebAppConfig":
case "FbosConfig":
case "FirmwareConfig":
case "SensorReading":
case "Image":
case "Sensor":
case "FarmwareInstallation":
case "PinBinding":
case "WebcamFeed":
case "PlantTemplate":
case "SavedGarden":
removeFromIndex(s.index, resource);
break;
default:

View File

@ -39,16 +39,17 @@ export type ResourceName =
| "Peripheral"
| "PinBinding"
| "Plant"
| "PlantTemplate"
| "Point"
| "Regimen"
| "SavedGarden"
| "Sensor"
| "SensorReading"
| "Sequence"
| "Tool"
| "User"
| "WebAppConfig"
| "WebcamFeed"
| "PinBinding";
| "WebcamFeed";
export interface TaggedResourceBase {
kind: ResourceName;
@ -95,22 +96,24 @@ export type TaggedResource =
| TaggedCrop
| TaggedDevice
| TaggedFarmEvent
| TaggedFarmwareInstallation
| TaggedFbosConfig
| TaggedFirmwareConfig
| TaggedImage
| TaggedLog
| TaggedPeripheral
| TaggedPinBinding
| TaggedPlantTemplate
| TaggedPoint
| TaggedRegimen
| TaggedSavedGarden
| TaggedSensor
| TaggedSensorReading
| TaggedSequence
| TaggedTool
| TaggedUser
| TaggedWebAppConfig
| TaggedWebcamFeed
| TaggedFarmwareInstallation
| TaggedPinBinding;
| TaggedWebcamFeed;
export type TaggedPinBinding = Resource<"PinBinding", PinBinding>;
export type TaggedDeviceConfig = Resource<"DeviceConfig", DeviceConfig>;
@ -127,6 +130,8 @@ export type TaggedFirmwareConfig = Resource<"FirmwareConfig", FirmwareConfig>;
export type TaggedWebAppConfig = Resource<"WebAppConfig", WebAppConfig>;
export type TaggedSensorReading = Resource<"SensorReading", SensorReading>;
export type TaggedSensor = Resource<"Sensor", Sensor>;
export type TaggedSavedGarden = Resource<"SavedGarden", SavedGarden>;
export type TaggedPlantTemplate = Resource<"PlantTemplate", PlantTemplate>;
type PointUnion = GenericPointer | PlantPointer | ToolSlotPointer;

View File

@ -5,7 +5,7 @@ import { Sequence } from "../sequences/interfaces";
import { Tool } from "../tools/interfaces";
import { Regimen } from "../regimens/interfaces";
import { Peripheral } from "../controls/peripherals/interfaces";
import { FarmEvent } from "../farm_designer/interfaces";
import { FarmEvent, SavedGarden, PlantTemplate } from "../farm_designer/interfaces";
import { Image } from "../farmware/images/interfaces";
import { DeviceAccountSettings } from "../devices/interfaces";
import { ResourceName } from "../resources/tagged_resources";
@ -59,4 +59,7 @@ export function fetchSyncData(dispatch: Function) {
API.current.farmwareInstallationPath);
fetch<DeviceConfig[]>("DeviceConfig", API.current.deviceConfigPath);
fetch<PinBinding[]>("PinBinding", API.current.pinBindingPath);
fetch<SavedGarden[]>("SavedGarden", API.current.savedGardensPath);
fetch<PlantTemplate[]>("PlantTemplate", API.current.plantTemplatePath);
}