diff --git a/package-lock.json b/package-lock.json
index dc86b31..2a91371 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -43,7 +43,7 @@
"mui-tel-input": "^7.0.0",
"notistack": "^3.0.1",
"openweathermap-ts": "^1.2.10",
- "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#staging",
+ "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#imperial_bushels",
"query-string": "^9.2.1",
"react": "^18.3.1",
"react-beautiful-dnd": "^13.1.1",
@@ -11967,7 +11967,7 @@
},
"node_modules/protobuf-ts": {
"version": "1.0.0",
- "resolved": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#ab9e8d4fd38f9af7802398403d38fddda5eb01da",
+ "resolved": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#7649feaa2222b555fe15fe9e4a19244c23f0e442",
"dependencies": {
"protobufjs": "^6.8.8"
}
diff --git a/package.json b/package.json
index 90ac71b..b535c88 100644
--- a/package.json
+++ b/package.json
@@ -55,7 +55,7 @@
"mui-tel-input": "^7.0.0",
"notistack": "^3.0.1",
"openweathermap-ts": "^1.2.10",
- "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#staging",
+ "protobuf-ts": "git+https://gitlab+deploy-token-50627:hv8mB4WkyvtjBpJKU1rN@gitlab.com/brandx/protobuf-ts.git#imperial_bushels",
"query-string": "^9.2.1",
"react": "^18.3.1",
"react-beautiful-dnd": "^13.1.1",
diff --git a/src/grain/CustomGrainForm.tsx b/src/grain/CustomGrainForm.tsx
index 905931c..23e4f71 100644
--- a/src/grain/CustomGrainForm.tsx
+++ b/src/grain/CustomGrainForm.tsx
@@ -18,7 +18,9 @@ export default function CustomGrainForm(props: Props) {
const [constantB, setConstantB] = useState("0")
const [constantC, setConstantC] = useState("0")
const [kgPerBushel, setKgPerBushel] = useState("0")
- const [bushelsPerTonne, setBushelsPerTonne] = useState("0")
+ const [bushelsPerTonne, setBushelsPerTonne] = useState("0")//this is metric
+ const [lbPerBushel, setLbPerBushel] = useState("0")
+ const [bushelsPerTon, setBushelsPerTon] = useState("0")//this is imperial
const valid = useRef(false)
useEffect(()=>{
@@ -35,14 +37,25 @@ export default function CustomGrainForm(props: Props) {
}
},[grainSettings])
- const validate = (name: string, group: string, constA: string, constB: string, constC: string, kgPerBushel: string, bushelsPerTonne: string) => {
+ const validate = (
+ name: string,
+ group: string,
+ constA: string,
+ constB: string,
+ constC: string,
+ kgPerBushel: string,
+ bushelsPerTonne: string,
+ lbPerBushel: string,
+ bushelsPerTon: string) => {
if (name === "") return false
if (group === "") return false
if (isNaN(parseFloat(constA))) return false
if (isNaN(parseFloat(constB))) return false
if (isNaN(parseFloat(constC))) return false
if (isNaN(parseFloat(kgPerBushel))) return false
+ if (isNaN(parseFloat(lbPerBushel))) return false
if (isNaN(parseFloat(bushelsPerTonne))) return false
+ if (isNaN(parseFloat(bushelsPerTon))) return false
return true
}
@@ -64,7 +77,7 @@ export default function CustomGrainForm(props: Props) {
setName(name)
let settings = cloneDeep(newGrainSettings)
settings.name = name
- valid.current = validate(name, group, constantA, constantB, constantC, kgPerBushel, bushelsPerTonne)
+ valid.current = validate(name, group, constantA, constantB, constantC, kgPerBushel, bushelsPerTonne, lbPerBushel, bushelsPerTon)
settingsChanged(settings)
}}/>
@@ -121,7 +134,7 @@ export default function CustomGrainForm(props: Props) {
onChange={(e) => {
let val = e.target.value
setConstantA(val)
- valid.current = validate(name, group, val, constantB, constantC, kgPerBushel, bushelsPerTonne)
+ valid.current = validate(name, group, val, constantB, constantC, kgPerBushel, bushelsPerTonne, lbPerBushel, bushelsPerTon)
let settings = cloneDeep(newGrainSettings)
if(!isNaN(parseFloat(val))){
settings.a = parseFloat(val)
@@ -139,7 +152,7 @@ export default function CustomGrainForm(props: Props) {
onChange={(e) => {
let val = e.target.value
setConstantB(val)
- valid.current = validate(name, group, constantA, val, constantC, kgPerBushel, bushelsPerTonne)
+ valid.current = validate(name, group, constantA, val, constantC, kgPerBushel, bushelsPerTonne, lbPerBushel, bushelsPerTon)
let settings = cloneDeep(newGrainSettings)
if(!isNaN(parseFloat(val))){
settings.b = parseFloat(val)
@@ -157,7 +170,7 @@ export default function CustomGrainForm(props: Props) {
onChange={(e) => {
let val = e.target.value
setConstantC(val)
- valid.current = validate(name, group, constantA, constantB, val, kgPerBushel, bushelsPerTonne)
+ valid.current = validate(name, group, constantA, constantB, val, kgPerBushel, bushelsPerTonne, lbPerBushel, bushelsPerTon)
let settings = cloneDeep(newGrainSettings)
if(!isNaN(parseFloat(val))){
settings.c = parseFloat(val)
@@ -175,14 +188,40 @@ export default function CustomGrainForm(props: Props) {
onChange={(e) => {
let val = e.target.value
setKgPerBushel(val)
- valid.current = validate(name, group, constantA, constantB, constantC, val, bushelsPerTonne)
+ valid.current = validate(name, group, constantA, constantB, constantC, val, bushelsPerTonne, lbPerBushel, bushelsPerTon)
let settings = cloneDeep(newGrainSettings)
if(!isNaN(parseFloat(val))){
settings.kgPerBushel = parseFloat(val)
+ //then calculate the kilograms to pounds and update it as well
+ let newLb = Math.round((parseFloat(val)*2.205)*100)/100
+ settings.poundsPerBushel = newLb
+ setLbPerBushel(newLb.toString())
}
settingsChanged(settings)
}}
label="kg per Bushel"/>
+ {
+ let val = e.target.value
+ setLbPerBushel(val)
+ valid.current = validate(name, group, constantA, constantB, constantC, kgPerBushel, bushelsPerTonne, val, bushelsPerTon)
+ let settings = cloneDeep(newGrainSettings)
+ if(!isNaN(parseFloat(val))){
+ settings.poundsPerBushel = parseFloat(val)
+ //then calculate the pounds to kilograms and update it as well
+ let newKg = Math.round((parseFloat(val)/2.205)*100)/100
+ settings.kgPerBushel = newKg
+ setKgPerBushel(newKg.toString())
+ }
+ settingsChanged(settings)
+ }}
+ label="lb per Bushel"/>
{
let val = e.target.value
setBushelsPerTonne(val)
- valid.current = validate(name, group, constantA, constantB, constantC, kgPerBushel, val)
+ valid.current = validate(name, group, constantA, constantB, constantC, kgPerBushel, val, lbPerBushel, bushelsPerTon)
let settings = cloneDeep(newGrainSettings)
if(!isNaN(parseFloat(val))){
settings.bushelsPerTonne = parseFloat(val)
+ let newTon = Math.round((parseFloat(val)*1.102)*100)/100
+ settings.bushelsPerTon = newTon
+ setBushelsPerTon(newTon.toString())
}
settingsChanged(settings)
}}
label="Bushels per Tonne"/>
+ {
+ let val = e.target.value
+ setBushelsPerTon(val)
+ valid.current = validate(name, group, constantA, constantB, constantC, kgPerBushel, bushelsPerTonne, lbPerBushel, val)
+ let settings = cloneDeep(newGrainSettings)
+ if(!isNaN(parseFloat(val))){
+ settings.bushelsPerTon = parseFloat(val)
+ let newTonne = Math.round((parseFloat(val)/1.102)*100)/100
+ settings.bushelsPerTonne = newTonne
+ setBushelsPerTonne(newTonne.toString())
+ }
+ settingsChanged(settings)
+ }}
+ label="Bushels per Ton"/>
)
}
diff --git a/src/services/whiteLabel.ts b/src/services/whiteLabel.ts
index c9346d4..29c4427 100644
--- a/src/services/whiteLabel.ts
+++ b/src/services/whiteLabel.ts
@@ -337,7 +337,7 @@ export function getWhitelabel(): WhiteLabel {
return BXT_WHITE_LABEL;
}
if (window.location.origin.includes("localhost")) {
- return STAGING_WHITELABEL;
+ return STREAMLINE_WHITE_LABEL;
}
if (window.location.origin.includes("staging") || import.meta.env.VITE_LOCAL_STAGING=='true') {
return STAGING_WHITELABEL;