Add and update classes for client-side data management

This commit is contained in:
André Wahlberg 2020-11-27 14:00:58 +01:00
parent ca4a6bd011
commit 00208f9f86
5 changed files with 62 additions and 17 deletions

View File

@ -25,20 +25,37 @@ Tutorials för React går att hitta [här](https://www.youtube.com/playlist?list
* ``public/index.html`` är den enda HTML-fil vi kommer ha i appen, detta eftersom vi bygger en s.k. SPA (Single Page Application). Man ändrar oftast inget i denna fil utöver möjligtvis innehållet i ``<head>``, detta eftersom React hanterar hela vårt UI. * ``public/index.html`` är den enda HTML-fil vi kommer ha i appen, detta eftersom vi bygger en s.k. SPA (Single Page Application). Man ändrar oftast inget i denna fil utöver möjligtvis innehållet i ``<head>``, detta eftersom React hanterar hela vårt UI.
* Ursprungspunkten för React är ``src/index.js``. * Ursprungspunkten för React är ``src/index.js``.
<!--
## Upplägg ## Upplägg
``` mermaid ```mermaid
classDiagram classDiagram
class User
User : String deviceId
User : Coordinates location
User : nearbyStops()
class User class Coordinates
User : Subscription[] subs Coordinates : Float lon
User : Location loc Coordinates : Float lat
class Line class Stop
Stop : String name
Stop : Track[] locations
Stop : Departure[] departures
class Subscription class Departure
Subscription : Line line Departure : String lineName
Departure : Stop finalStop
Departure : String time
Departure : String trafficInfo
``` class Track
--> Track : String name
User <.. Coordinates
User <.. Stop
Stop <.. Departure
Departure <.. Stop
Stop <.. Track
```

View File

@ -0,0 +1,15 @@
/*
Denna klass är en modell för platskoordinater.
lon : Float (Longitud)
lat : Float (Latitud)
*/
class Coordinates {
constructor(lon, lat) {
this.lon = lon;
this.lat = lat;
}
}
export default Coordinates;

View File

@ -2,17 +2,17 @@
Denna klass är en modell för avgångar. Denna klass är en modell för avgångar.
lineName : String (Linjenamnet) lineName : String (Linjenamnet)
destination : String (Exempelvis "Mot Heden") finalStop : Stop (Ändhållplats)
time : String (Avgångstid) time : String (Avgångstid)
info : String (Trafikinformation) trafficInfo : String (Trafikinformation)
*/ */
class Departure { class Departure {
constructor(lineName, destination, time, info) { constructor(lineName, finalStop, time, trafficInfo) {
this.lineName = lineName; this.lineName = lineName;
this.destination = destination; this.finalStop = finalStop;
this.time = time; this.time = time;
this.info = info; this.trafficInfo = trafficInfo;
} }
} }

View File

@ -2,7 +2,7 @@
Denna klass är en modell för hållplatser. Denna klass är en modell för hållplatser.
name : String (Hållplatsens namn) name : String (Hållplatsens namn)
locations : String[] (Möjliga lägen) locations : Track[] (Möjliga lägen)
departures : Departure[] (Avgångar från hållplatsen) departures : Departure[] (Avgångar från hållplatsen)
*/ */

13
src/classes/Track.js Normal file
View File

@ -0,0 +1,13 @@
/*
Denna klass är en modell för hållplatslägen, ex. "Läge A" eller "Spår 3".
name : String (Lägets namn)
*/
class Track {
constructor(name) {
this.name = name;
}
}
export default Track;