Development (#94)
* CEC-371 Car ECU display (#79) * Merge Development (#53) * Use responsive iframe control for charts (#49) * Use responsive iframe control to charts * Move external Grafana link to Dashboard page * Remove unused embedded style class * Add button label * added delete button to deploy packages * Fix unit test warning Remove unused route from test * Fix styling of button * minor fixes per pr review Co-authored-by: jcw-fisker <jwatson@fiskerinc.com> Co-authored-by: John Cotten Watson <83605808+jcw-fisker@users.noreply.github.com> * Development Merge (#57) * CEC-287 Car connection status (#59) (#60) * Car connection status * Formatting * Merge Development (#64) * Add connection status to vehicles page * ConnectedIcon control * Handle Style * Development (#67) * preliminary map for vehicles * weird zoom bug * passing react tests * fixing warnings and updating snapshots * update node environment to 14 * addressing comments by changing variable types and adding styles to home page title * adding CODEOWNERS file * fixing token error * CEC-371 Update car ECUs display (#78) * Clean up className styles Update car status page to show update and ECUs * Add update ecu version button Show all ECUs on car status page Only show car ecus for search Co-authored-by: jcw-fisker <jwatson@fiskerinc.com> Co-authored-by: John Cotten Watson <83605808+jcw-fisker@users.noreply.github.com> Co-authored-by: Drew Taylor <69828061+drew-fisker@users.noreply.github.com> * CEC-394 Car update log (#81) * CEC-394 Car update status control * Remove Datadog RUM Remove package update components Move control components into Controls folder Add Car update status page * Display update status log Clean up unused update package code * Remove console.logs * no vars * adding timestamp to vehicle popup * modifying vehicle data query * removing extraneous code * removing console log * Clean up SonarCloud warnings (#83) * Clean up SonarCloud warnings * Bogus security warning * Fix another warning * Fix unauthorized locations request * Fix update progress control * CEC-563 New manifest format (#88) * Add ManifestCreateContext Update create manifest page * Finish UI changes and API integration * Fixes * Fix test * Remove manifest ECU file version and type * Fixes * Add manifest ecu file type control * Fix Sonar warnings * Fix test * Update codeowners * Formatting * CEC-553 Change file type to string (#90) * CEC-553 File type uses string enum * Fix test timeout * Fix * Merge development * Increase timeout * Clean up (#95) * Clean up Mock missing methods * Smell Co-authored-by: jcw-fisker <jwatson@fiskerinc.com> Co-authored-by: John Cotten Watson <83605808+jcw-fisker@users.noreply.github.com> Co-authored-by: Drew Taylor <69828061+drew-fisker@users.noreply.github.com> Co-authored-by: Drew Taylor <dtaylor@fiskerinc.com>
This commit is contained in:
79
src/components/Controls/ManifestECUFileList/index.jsx
Normal file
79
src/components/Controls/ManifestECUFileList/index.jsx
Normal file
@@ -0,0 +1,79 @@
|
||||
import React from "react";
|
||||
import {
|
||||
Table,
|
||||
TableBody,
|
||||
TableCell,
|
||||
TableFooter,
|
||||
TableRow,
|
||||
} from "@material-ui/core";
|
||||
|
||||
import FileDragArea from "../FileDragArea";
|
||||
import ListHead from "../ListHead";
|
||||
import SubListItem from "../SubListItem";
|
||||
import { useManifestCreateContext } from "../../Contexts/ManifestCreateContext";
|
||||
import ManifestECUFileTypes from "../ManifestECUFileTypes";
|
||||
|
||||
const options = [
|
||||
{
|
||||
label: "Filename",
|
||||
field: "filename",
|
||||
readonly: true,
|
||||
},
|
||||
{
|
||||
label: "Offset",
|
||||
field: "offset",
|
||||
},
|
||||
{
|
||||
label: "Checksum",
|
||||
field: "checksum",
|
||||
},
|
||||
{
|
||||
label: "Type",
|
||||
field: "type",
|
||||
control: ManifestECUFileTypes,
|
||||
},
|
||||
{
|
||||
label: "",
|
||||
field: "filename",
|
||||
delete: true,
|
||||
},
|
||||
];
|
||||
|
||||
const ManifestECUFileList = ({ data }) => {
|
||||
const { addECUFile, deleteECUFile } = useManifestCreateContext();
|
||||
|
||||
const onAddFile = (files) => {
|
||||
addECUFile(data.data_id, files);
|
||||
};
|
||||
|
||||
const onDeletFile = (filename) => {
|
||||
deleteECUFile(data.data_id, filename);
|
||||
};
|
||||
|
||||
return (
|
||||
<Table>
|
||||
{data && data.files && data.files.length > 0 && (
|
||||
<ListHead options={options} />
|
||||
)}
|
||||
<TableBody>
|
||||
{data.files.map((file) => (
|
||||
<SubListItem
|
||||
key={file.filename}
|
||||
data={file}
|
||||
options={options}
|
||||
onDelete={onDeletFile}
|
||||
/>
|
||||
))}
|
||||
</TableBody>
|
||||
<TableFooter>
|
||||
<TableRow>
|
||||
<TableCell colSpan={options.length}>
|
||||
<FileDragArea onFileSelect={onAddFile}>ADD FILES</FileDragArea>
|
||||
</TableCell>
|
||||
</TableRow>
|
||||
</TableFooter>
|
||||
</Table>
|
||||
);
|
||||
};
|
||||
|
||||
export default ManifestECUFileList;
|
||||
Reference in New Issue
Block a user