Skip to content

Commit

Permalink
Merge branch 'master' into prefare-alerts
Browse files Browse the repository at this point in the history
  • Loading branch information
cmaddox5 committed Aug 15, 2023
2 parents 0b8d4e1 + 46a4ad3 commit 913850c
Show file tree
Hide file tree
Showing 19 changed files with 473 additions and 8 deletions.
19 changes: 19 additions & 0 deletions assets/css/triptych_v2.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
@import "colors";
@import "fonts/inter_font_face";
@import "fonts/helvetica_font_face";
@import "v2/common/widget";

@import "v2/triptych/screen_container";

@import "v2/triptych/screen/normal";

@import "v2/triptych/body/normal";

@import "v2/lcd_common_styles/page_load_no_data";
@import "v2/lcd_common_styles/no_data";

@import "v2/placeholder";

body {
margin: 0px;
}
9 changes: 9 additions & 0 deletions assets/css/v2/triptych/body/normal.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
.body-normal__main-content {
position: absolute;
top: 0px;
left: 0px;
width: 1080px;
height: 1648px;
z-index: 1;
overflow: hidden;
}
24 changes: 24 additions & 0 deletions assets/css/v2/triptych/screen/normal.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,24 @@
.screen-normal {
width: 1080px;
margin-left: auto;
margin-right: auto;
position: relative;
}

.screen-normal__header {
position: absolute;
top: 0px;
left: 0px;
width: 1080px;
height: 272px;
overflow: hidden;
}

.screen-normal__body {
position: absolute;
top: 272px;
left: 0px;
width: 1080px;
height: 1648px;
overflow: hidden;
}
7 changes: 7 additions & 0 deletions assets/css/v2/triptych/screen_container.scss
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
.screen-container {
position: relative;
width: 1080px;
height: 1920px;
margin: 0px auto;
overflow: hidden;
}
80 changes: 80 additions & 0 deletions assets/src/apps/v2/triptych.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,80 @@
declare function require(name: string): string;
// tslint:disable-next-line
require("../../../css/triptych_v2.scss");

import React from "react";
import ReactDOM from "react-dom";
import { BrowserRouter as Router, Route, Switch } from "react-router-dom";
import ScreenPage from "Components/v2/screen_page";
import {
ResponseMapper,
ResponseMapperContext,
LOADING_LAYOUT,
} from "Components/v2/screen_container";
import { MappingContext } from "Components/v2/widget";

import NormalScreen from "Components/v2/bus_shelter/normal_screen";
import NormalBody from "Components/v2/bus_shelter/normal_body";

import Placeholder from "Components/v2/placeholder";

import SimulationScreenPage from "Components/v2/simulation_screen_page";
import PageLoadNoData from "Components/v2/lcd/page_load_no_data";
import NoData from "Components/v2/lcd/no_data";

const TYPE_TO_COMPONENT = {
screen_normal: NormalScreen,
body_normal: NormalBody,
placeholder: Placeholder,
page_load_no_data: PageLoadNoData,
no_data: NoData,
};

const DISABLED_LAYOUT = {
full_screen: {
type: "no_data",
show_alternatives: true,
},
type: "screen_takeover",
};

const FAILURE_LAYOUT = DISABLED_LAYOUT;

const responseMapper: ResponseMapper = (apiResponse) => {
switch (apiResponse.state) {
case "success":
case "simulation_success":
return apiResponse.data;
case "disabled":
return DISABLED_LAYOUT;
case "failure":
return FAILURE_LAYOUT;
case "loading":
return LOADING_LAYOUT;
}
};

const App = (): JSX.Element => {
return (
<Router>
<Switch>
<Route exact path="/v2/screen/:id/simulation">
<MappingContext.Provider value={TYPE_TO_COMPONENT}>
<ResponseMapperContext.Provider value={responseMapper}>
<SimulationScreenPage />
</ResponseMapperContext.Provider>
</MappingContext.Provider>
</Route>
<Route path="/v2/screen/:id">
<MappingContext.Provider value={TYPE_TO_COMPONENT}>
<ResponseMapperContext.Provider value={responseMapper}>
<ScreenPage />
</ResponseMapperContext.Provider>
</MappingContext.Provider>
</Route>
</Switch>
</Router>
);
};

ReactDOM.render(<App />, document.getElementById("app"));
6 changes: 6 additions & 0 deletions assets/src/components/admin/admin_add_modal.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,6 +24,7 @@ const fields = [
"solari_large",
"solari_large_v2",
"pre_fare_v2",
"triptych_v2",
]),
},
{
Expand Down Expand Up @@ -88,6 +89,11 @@ const defaultAppParamsByAppId = {
stop_name: "",
},
},
triptych_v2: {
header: {
stop_name: "",
},
},
};

const initialFormValues = _.fromPairs(
Expand Down
9 changes: 9 additions & 0 deletions assets/src/components/admin/admin_tables.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -757,6 +757,14 @@ const SolariLargeV2ScreensTable = (): JSX.Element => {
return <AdminTable columns={v2SolariColumns} dataFilter={dataFilter} />;
};

const TriptychV2ScreensTable = (): JSX.Element => {
const dataFilter = ({ app_id }) => {
return app_id === "triptych_v2";
};

return <AdminTable columns={[...v2Columns]} dataFilter={dataFilter} />;
};

export {
AllScreensTable,
BusScreensTable,
Expand All @@ -772,4 +780,5 @@ export {
SolariLargeV2ScreensTable,
BusShelterV2ScreensTable,
PreFareV2ScreensTable,
TriptychV2ScreensTable,
};
3 changes: 2 additions & 1 deletion assets/webpack.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -30,7 +30,8 @@ module.exports = (env, options) => ({
solari_large_v2: "./src/apps/v2/solari_large.tsx",
dup_v2: "./src/apps/v2/dup.tsx",
bus_shelter_v2: "./src/apps/v2/bus_shelter.tsx",
pre_fare_v2: "./src/apps/v2/pre_fare.tsx"
pre_fare_v2: "./src/apps/v2/pre_fare.tsx",
triptych_v2: "./src/apps/v2/triptych.tsx"
},
output: {
filename: "[name].js",
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading

0 comments on commit 913850c

Please sign in to comment.