diff --git a/package-lock.json b/package-lock.json index 0974c84..f9470e8 100644 --- a/package-lock.json +++ b/package-lock.json @@ -10953,7 +10953,7 @@ }, "node_modules/protobuf-ts": { "version": "1.0.0", - "resolved": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#873cef415993fc91a18e8b3ff80cdc6531f4e78d", + "resolved": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#e476940999616206e9f2fa5cec3ac6807b18cd2d", "dependencies": { "protobufjs": "^6.8.8" } diff --git a/src/bin/BinSettings.tsx b/src/bin/BinSettings.tsx index c65bd31..413ac1f 100644 --- a/src/bin/BinSettings.tsx +++ b/src/bin/BinSettings.tsx @@ -2222,11 +2222,13 @@ export default function BinSettings(props: Props) { - {!isCustomInventory && ( Moisture + {isCustomInventory && ( + You are using a custom Grain type, the drying estimate may not be accurate + )} - )} + ); }; diff --git a/src/component/ComponentForm.tsx b/src/component/ComponentForm.tsx index aae1e24..e542ed0 100644 --- a/src/component/ComponentForm.tsx +++ b/src/component/ComponentForm.tsx @@ -133,7 +133,7 @@ export default function ComponentForm(props: Props) { length: "0", height: "0", width: "0", - sensorDistance: "0" + sensorDistance: "0", }); const [compMode, setCompMode] = useState(); //const [numCalibrations, setNumCalibrations] = useState(0) @@ -204,7 +204,7 @@ export default function ComponentForm(props: Props) { length: length.toFixed(2), width: width.toFixed(2), height: height.toFixed(2), - sensorDistance: sensorDistance.toFixed(2) + sensorDistance: sensorDistance.toFixed(2), }); }, [component]); @@ -377,6 +377,12 @@ export default function ComponentForm(props: Props) { setForm(f); }; + const toggleReverseNodes = (event: any) => { + let f = cloneDeep(form); + f.component.settings.reverseNodes = event.target.checked; + setForm(f); + }; + const updateGrainType = (option: Option | null) => { let f = cloneDeep(form); @@ -908,6 +914,42 @@ export default function ComponentForm(props: Props) { ); }; + const reverseCheck = () => { + const {reverseNodes} = form.component.settings + let ext = extension(component.type(), component.subType()) + + if (ext.isArray && device.featureSupported("reverseNodes")) { + return ( + + + + } + label={Reverse Nodes} + labelPlacement="top" + className={classes.switchControl} + disabled={!canEdit} + /> + + + ) + } + return + } + const generalForm = () => { const { component, @@ -975,6 +1017,7 @@ export default function ComponentForm(props: Props) { )} {component.settings.type === quack.ComponentType.COMPONENT_TYPE_GRAIN_CABLE && grainSelect()} + {reverseCheck()} {component.settings.type === quack.ComponentType.COMPONENT_TYPE_GRAIN_CABLE && ( = new Map([ v2EthBlue: "2.0.44" } ],[ + "reverseNodes", + { + photon: "N/A", + electron: "N/A", + v2Wifi: "N/A", + v2Cell: "N/A", + v2WifiS3: "N/A", + v2CellS3: "N/A", + v2CellBlack: "2.1.8", + v2CellGreen: "N/A", + v2WifiBlue: "2.1.8", + v2CellBlue: "2.1.8", + v2EthBlue: "2.1.8" + } + ], + [ "detectI2C", { photon: "N/A", @@ -57,11 +73,11 @@ const featureVersions: Map = new Map([ v2Cell: "N/A", v2WifiS3: "N/A", v2CellS3: "N/A", - v2CellBlack: "2.1.8", + v2CellBlack: "2.1.9", v2CellGreen: "N/A", - v2WifiBlue: "2.1.8", - v2CellBlue: "2.1.8", - v2EthBlue: "2.1.8" + v2WifiBlue: "2.1.9", + v2CellBlue: "2.1.9", + v2EthBlue: "2.1.9" } ] ]);