diff --git a/frontend/package-lock.json b/frontend/package-lock.json index 6b53f8cce6e94c5f58850d8616c3dc7c09e94db1..d4fc8381cfa68e7aa5f834a4010d04a1607d2f8c 100644 --- a/frontend/package-lock.json +++ b/frontend/package-lock.json @@ -3832,6 +3832,14 @@ "chalk": "^2.0.1" } }, + "loose-envify": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/loose-envify/-/loose-envify-1.4.0.tgz", + "integrity": "sha512-lyuxPGr/Wfhrlem2CL/UcnUc1zcqKAImBDzukY7Y5F/yQiNdko6+fRLevlw1HgMySw7f611UIY408EtxRSoK3Q==", + "requires": { + "js-tokens": "^3.0.0 || ^4.0.0" + } + }, "magic-string": { "version": "0.22.5", "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.22.5.tgz", @@ -5042,6 +5050,25 @@ "resolved": "https://registry.npmjs.org/range-parser/-/range-parser-1.2.1.tgz", "integrity": "sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==" }, + "react": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react/-/react-17.0.2.tgz", + "integrity": "sha512-gnhPt75i/dq/z3/6q/0asP78D0u592D5L1pd7M8P+dck6Fu/jJeL6iVVK23fptSUZj8Vjf++7wXA8UNclGQcbA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, + "react-dom": { + "version": "17.0.2", + "resolved": "https://registry.npmjs.org/react-dom/-/react-dom-17.0.2.tgz", + "integrity": "sha512-s4h96KtLDUQlsENhMn1ar8t2bEa+q/YAtj8pPPdIjPDGBDIVNsrD9aXNWqspUe6AzKCIG0C1HZZLqLV7qpOBGA==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1", + "scheduler": "^0.20.2" + } + }, "readable-stream": { "version": "2.3.7", "resolved": "https://registry.npmjs.org/readable-stream/-/readable-stream-2.3.7.tgz", @@ -5290,6 +5317,15 @@ "xmlchars": "^2.1.1" } }, + "scheduler": { + "version": "0.20.2", + "resolved": "https://registry.npmjs.org/scheduler/-/scheduler-0.20.2.tgz", + "integrity": "sha512-2eWfGgAqqWFGqtdMmcL5zCMK1U8KlXv8SQFGglL3CEtd0aDVDWgeF/YoCmvln55m5zSk3J/20hTaSBeSObsQDQ==", + "requires": { + "loose-envify": "^1.1.0", + "object-assign": "^4.1.1" + } + }, "semver": { "version": "5.7.1", "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.1.tgz", diff --git a/frontend/package.json b/frontend/package.json index 5ef5b251e4daf465083a22dbc7db84c7d3bdb05d..cff6686cadc69f4c42295439f1348365196d5735 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -10,6 +10,8 @@ "author": "Matt Grau", "license": "ISC", "dependencies": { - "parcel-bundler": "^1.12.5" + "parcel-bundler": "^1.12.5", + "react": "^17.0.2", + "react-dom": "^17.0.2" } -} \ No newline at end of file +} diff --git a/frontend/src/device.jsx b/frontend/src/device.jsx new file mode 100644 index 0000000000000000000000000000000000000000..4ab83b17780c90ac2d746070f57b0125bfba131e --- /dev/null +++ b/frontend/src/device.jsx @@ -0,0 +1,27 @@ +import React from 'react' + +export default class Device extends React.Component { + render() { + return ( + <div> + <div> + <h3>Device Name</h3> + </div> + <div> + <div> + <label>Voltage</label> + <input></input> + </div> + <div> + <label>Current</label> + <input></input> + </div> + <div> + <label>Resistance</label> + <input></input> + </div> + </div> + </div> + ) + } +} \ No newline at end of file diff --git a/frontend/src/index.js b/frontend/src/index.js index 4f3ac027854720e0516a9970c7c18d4d7d14c4c9..5aef46490c8f622a7a81748a0067fdc6fa4d7e01 100644 --- a/frontend/src/index.js +++ b/frontend/src/index.js @@ -1 +1,6 @@ -console.log('Hello World!') \ No newline at end of file +import React from "react"; +import ReactDOM from "react-dom"; + +import Device from './device' + +ReactDOM.render(<Device />, document.getElementById("root"));