Skip to content

Commit 84169ac

Browse files
committed
there are two lines
technically i have completed the objective
1 parent fef5a8d commit 84169ac

File tree

1 file changed

+35
-36
lines changed

1 file changed

+35
-36
lines changed

client/src/pages/Strategy.tsx

Lines changed: 35 additions & 36 deletions
Original file line numberDiff line numberDiff line change
@@ -38,20 +38,22 @@ function Strategy() {
3838
} catch {}
3939

4040
let [searchParams, setSearchParams] = useSearchParams();
41-
const [data, setData] = useState([]);
41+
const [data, setData] = useState<
42+
{ createdAt: string; dateStamp: number; dataKey: number }[]
43+
>([]);
4244
const [telemetryType, setTelemetryType] = useState(localGraph["type"] ?? []);
4345
const [messageNumber, setMessageNumber] = useState(
44-
localGraph["number"] ?? [],
46+
localGraph["number"] ?? []
4547
);
4648
const [dataKey, setDataKey] = useState(localGraph["key"] ?? []);
4749
const [startTime, setStartTime] = useState(
48-
localGraph["start"] ?? "2023-04-16 12:00",
50+
localGraph["start"] ?? "2023-04-16 12:00"
4951
);
5052
const [endTime, setEndTime] = useState(
51-
localGraph["end"] ?? "2023-04-16 12:10",
53+
localGraph["end"] ?? "2023-04-16 12:10"
5254
);
5355
const autoUpdate = JSON.parse(
54-
localStorage.getItem("toggleAutoUpdate") ?? "true",
56+
localStorage.getItem("toggleAutoUpdate") ?? "true"
5557
);
5658
const [regStartTime, setRegStartTime] = useState("2023-04-16 12:00");
5759
const [regEndTime, setRegEndTime] = useState("2023-04-16 12:10");
@@ -76,7 +78,7 @@ function Strategy() {
7678
value: combinedString,
7779
label: combinedString,
7880
};
79-
}),
81+
})
8082
);
8183
const [rawData, setRawData] = useState<any[]>([]);
8284
const [rawData2, setRawData2] = useState<any[]>([]);
@@ -136,7 +138,7 @@ function Strategy() {
136138
$gte: moment(startTime).utc().format("YYYY-MM-DD HH:mm"),
137139
$lte: moment(endTime).utc().format("YYYY-MM-DD HH:mm"),
138140
},
139-
},
141+
}
140142
);
141143
} else {
142144
result = await getAllModuleItem(
@@ -148,7 +150,7 @@ function Strategy() {
148150
$gte: moment(startTime).utc().format("YYYY-MM-DD HH:mm"),
149151
$lte: moment(endTime).utc().format("YYYY-MM-DD HH:mm"),
150152
},
151-
},
153+
}
152154
);
153155
}
154156
setRawData2(result2);
@@ -158,7 +160,7 @@ function Strategy() {
158160
}
159161

160162
async function modifyData() {
161-
const data = {
163+
const metadata = {
162164
key: dataKey,
163165
type: telemetryType,
164166
number: messageNumber,
@@ -172,9 +174,9 @@ function Strategy() {
172174
)
173175
return;
174176

175-
setSearchParams(data);
177+
setSearchParams(metadata);
176178

177-
localStorage.setItem("graph", JSON.stringify(data));
179+
localStorage.setItem("graph", JSON.stringify(metadata));
178180

179181
const response = rawData;
180182
const response2 = rawData2;
@@ -204,7 +206,7 @@ function Strategy() {
204206
"battVoltage",
205207
response2,
206208
"motorCurrentPkAvg",
207-
dataKey,
209+
dataKey
208210
);
209211
} else {
210212
toTransform = response;
@@ -217,34 +219,34 @@ function Strategy() {
217219
.map((dataPoint) => ({
218220
...dataPoint,
219221
dateStamp: Math.floor(
220-
new Date(dataPoint["createdAt"]).getTime() / granularityMs,
222+
new Date(dataPoint["createdAt"]).getTime() / granularityMs
221223
),
222224
}))
223225
.filter(
224226
(dataPoint) =>
225227
dataPoint[dataKey[latestStatChange]] >= minTrimVal &&
226-
dataPoint[dataKey[latestStatChange]] <= maxTrimVal,
228+
dataPoint[dataKey[latestStatChange]] <= maxTrimVal
227229
);
228230
} else {
229231
filteredResponseTemp = toTransform.map((dataPoint) => ({
230232
...dataPoint,
231233
dateStamp: Math.floor(
232-
new Date(dataPoint["createdAt"]).getTime() / granularityMs,
234+
new Date(dataPoint["createdAt"]).getTime() / granularityMs
233235
),
234236
}));
235237
}
236238

237239
const filteredResponse = filteredResponseTemp.reduce(
238240
(accumulator, currentValue) => {
239241
const duplicateDateStamp = accumulator.find(
240-
(item) => item.dateStamp === currentValue.dateStamp,
242+
(item) => item.dateStamp === currentValue.dateStamp
241243
);
242244
if (!duplicateDateStamp) {
243245
accumulator.push(currentValue);
244246
}
245247
return accumulator;
246248
},
247-
[],
249+
[]
248250
);
249251

250252
let sum = 0;
@@ -275,15 +277,14 @@ function Strategy() {
275277

276278
try {
277279
startTimestamp = new Date(
278-
filteredResponse[0]["dateStamp"] * granularityMs,
280+
filteredResponse[0]["dateStamp"] * granularityMs
279281
).getTime();
280282
} catch {
281283
return;
282284
}
283285

284286
const endTimestamp = new Date(
285-
filteredResponse[filteredResponse.length - 1]["dateStamp"] *
286-
granularityMs,
287+
filteredResponse[filteredResponse.length - 1]["dateStamp"] * granularityMs
287288
).getTime();
288289

289290
const givenTimespan = endTimestamp - startTimestamp;
@@ -301,12 +302,12 @@ function Strategy() {
301302

302303
const regStartStamp = Math.max(
303304
oldRegStartStamp,
304-
(startTimestamp + 3600000) / granularityMs,
305+
(startTimestamp + 3600000) / granularityMs
305306
);
306307

307308
const regEndStamp = Math.min(
308309
oldRegEndStamp,
309-
(endTimestamp + 3600000) / granularityMs,
310+
(endTimestamp + 3600000) / granularityMs
310311
);
311312

312313
let filteredRegResponse;
@@ -315,18 +316,18 @@ function Strategy() {
315316
filteredRegResponse = filteredResponse.filter(
316317
(dataPoint) =>
317318
dataPoint["dateStamp"] >= regStartStamp - 3600000 / granularityMs &&
318-
dataPoint["dateStamp"] <= regEndStamp - 3600000 / granularityMs,
319+
dataPoint["dateStamp"] <= regEndStamp - 3600000 / granularityMs
319320
);
320321
} else {
321322
filteredRegResponse = filteredResponse;
322323
}
323324

324325
const regXValues = filteredRegResponse.map(
325-
(dataPoint) => dataPoint["dateStamp"],
326+
(dataPoint) => dataPoint["dateStamp"]
326327
);
327328

328329
const regYValues = filteredRegResponse.map(
329-
(dataPoint) => dataPoint[dataKey[latestStatChange]],
330+
(dataPoint) => dataPoint[dataKey[latestStatChange]]
330331
);
331332

332333
const lastValue =
@@ -353,7 +354,7 @@ function Strategy() {
353354

354355
let scaledXAxis = Array.from(
355356
{ length: xValues.length * toExtrapolate },
356-
(_, i) => i,
357+
(_, i) => i
357358
);
358359

359360
const xValGap =
@@ -393,7 +394,7 @@ function Strategy() {
393394

394395
if (toExtrapolate > 1) {
395396
setDerivedRegressionEnd(
396-
extendedRegression[extendedRegression.length - 1]["regression"],
397+
extendedRegression[extendedRegression.length - 1]["regression"]
397398
);
398399
} else {
399400
setDerivedRegressionEnd(0);
@@ -405,7 +406,7 @@ function Strategy() {
405406
finalToGraph = extendedRegression.map((dataPoint) => ({
406407
...dataPoint,
407408
createdAt: new Date(
408-
dataPoint["dateStamp"] * granularityMs,
409+
dataPoint["dateStamp"] * granularityMs
409410
).toISOString(),
410411
regRange:
411412
dataPoint["dateStamp"] >= regStartStamp - 3600000 / granularityMs &&
@@ -417,14 +418,12 @@ function Strategy() {
417418
finalToGraph = extendedRegression.map((dataPoint) => ({
418419
...dataPoint,
419420
createdAt: new Date(
420-
dataPoint["dateStamp"] * granularityMs,
421+
dataPoint["dateStamp"] * granularityMs
421422
).toISOString(),
422423
}));
423424
}
424425

425-
setData(finalToGraph as any);
426-
console.log(data);
427-
console.log(dataKey);
426+
setData((prevData) => [...prevData, ...finalToGraph]);
428427
setIsPressed(false);
429428
}
430429

@@ -471,7 +470,7 @@ function Strategy() {
471470

472471
if (actionMeta.option) {
473472
const changedIndex = selectedOptions.findIndex(
474-
(option) => option.value === actionMeta.option.value,
473+
(option) => option.value === actionMeta.option.value
475474
);
476475
setLatestStatChange(changedIndex);
477476
} else {
@@ -795,7 +794,7 @@ function Strategy() {
795794
defaultValue={granularityMs}
796795
onBlur={(event) =>
797796
setGranularityMs(
798-
parseInt((event.target as HTMLInputElement).value),
797+
parseInt((event.target as HTMLInputElement).value)
799798
)
800799
}
801800
onFocus={(event) => event.target.select()}
@@ -823,7 +822,7 @@ function Strategy() {
823822
onFocus={(event) => event.target.select()}
824823
onBlur={(event) =>
825824
setMaxTrimVal(
826-
parseInt((event.target as HTMLInputElement).value),
825+
parseInt((event.target as HTMLInputElement).value)
827826
)
828827
}
829828
onKeyDown={(event) => {
@@ -850,7 +849,7 @@ function Strategy() {
850849
defaultValue={minTrimVal}
851850
onBlur={(event) =>
852851
setMinTrimVal(
853-
parseInt((event.target as HTMLInputElement).value),
852+
parseInt((event.target as HTMLInputElement).value)
854853
)
855854
}
856855
onFocus={(event) => event.target.select()}

0 commit comments

Comments
 (0)