}
diff --git a/src/components/superviseur.tsx b/src/components/superviseur.tsx
index 0d4fc9e..6a670d6 100644
--- a/src/components/superviseur.tsx
+++ b/src/components/superviseur.tsx
@@ -1,4 +1,12 @@
-import {ECRANS, ECRANS_AUTRES, ECRANS_DIRECTION, ECRANS_SALLES} from "src/data/Ecrans.ts";
+import {
+ ECRANS,
+ ECRANS_ASCENSEUR,
+ ECRANS_AUTRES,
+ ECRANS_BARS,
+ ECRANS_DIRECTION,
+ ECRANS_SALLES,
+ ECRANS_VESTIAIRE
+} from "src/data/Ecrans.ts";
import React from "react";
import {ConfigEcran} from "src/types.ts";
import {useSearchParams} from "react-router-dom";
@@ -21,24 +29,34 @@ export function Superviseur() {
style={{marginRight: '10px'}}>[{ecran.id}] {ecran.nom}
})
}
- Salles
-
- {ECRANS_SALLES.map((ecran) => {
- return ;
- })}
-
- Directions
-
- {ECRANS_DIRECTION.map((ecran) => {
- return ;
- })}
-
- Autres
-
- {ECRANS_AUTRES.map((ecran) => {
- return ;
- })}
-
+ {[{
+ title: "Salles",
+ ecrans: ECRANS_SALLES
+ }, {
+ title: "Directions",
+ ecrans: ECRANS_DIRECTION
+ }, {
+ title: "Autres",
+ ecrans: ECRANS_AUTRES
+ }, {
+ title: "Ascenseurs",
+ ecrans: ECRANS_ASCENSEUR
+ }, {
+ title: "Bars",
+ ecrans: ECRANS_BARS
+ }, {
+ title: "Vestiaire",
+ ecrans: ECRANS_VESTIAIRE
+ }].map(({title, ecrans}) => (
+ <>
+ {title}
+
+ {ecrans.map((ecran) => {
+ return ;
+ })}
+
+ >
+ ))}
>;
}
diff --git a/src/data/Ecrans.ts b/src/data/Ecrans.ts
index f410096..e4d8038 100644
--- a/src/data/Ecrans.ts
+++ b/src/data/Ecrans.ts
@@ -413,16 +413,17 @@ export const ECRANS_ASCENSEUR_SPEAKER: ConfigEcran[] = [
tags: ['ascenseur'],
}
]
+export const ASCENSEUR_EFFRAYANT: ConfigEcran = {
+ id: 'ASC3',
+ nom: 'Ascenseur',
+ ratio: '16_9',
+ resolution: '1920x1080',
+ orientation: 'landscape',
+ tags: ['ascenseur'],
+};
export const ECRANS_ASCENSEUR: ConfigEcran[] = [
...ECRANS_ASCENSEUR_SPEAKER,
- {
- id: 'ASC3',
- nom: 'Ascenseur',
- ratio: '16_9',
- resolution: '1920x1080',
- orientation: 'landscape',
- tags: ['ascenseur'],
- }
+ ASCENSEUR_EFFRAYANT
]
export const ECRANS_VESTIAIRE: ConfigEcran[] = [
diff --git a/src/main.tsx b/src/main.tsx
index fcadeb4..c72cbcb 100644
--- a/src/main.tsx
+++ b/src/main.tsx
@@ -12,11 +12,9 @@ import {Superviseur} from "src/components/superviseur.tsx";
let buildTime: string
ReactDOM.createRoot(document.getElementById('root')!).render(
-
-
-
-
- ,
+
+
+
)
function App() {
diff --git a/src/remotion/components/default-remotion.tsx b/src/remotion/components/default-remotion.tsx
index cc0c068..f76c187 100644
--- a/src/remotion/components/default-remotion.tsx
+++ b/src/remotion/components/default-remotion.tsx
@@ -5,6 +5,7 @@ import {
import {DevfestNantesDefault} from "src/remotion/compositions/showcases/devfestNantes/DevfestNantesDefault.tsx";
import {Player} from "@remotion/player";
+
export const DefaultRemotion: React.FC<{ portrait?: boolean }> = ({portrait}) => {
const currentTemplate = portrait ? {
compositionName: 'DevfestNantesDefaultTotem',
diff --git a/src/remotion/components/scary-elevator-remotion.tsx b/src/remotion/components/scary-elevator-remotion.tsx
new file mode 100644
index 0000000..983969d
--- /dev/null
+++ b/src/remotion/components/scary-elevator-remotion.tsx
@@ -0,0 +1,26 @@
+import React from "react";
+import {Howl} from 'howler';
+import {DefaultRemotion} from "src/remotion/components/default-remotion.tsx";
+
+
+export const ScaryElevatorRemotion: typeof DefaultRemotion = (props) => {
+
+ const sound = React.useMemo(() => new Howl({
+ src: ['scary-elevator-short.mp3'],
+ volume: 0.1
+ }), [])
+
+ React.useEffect(() => {
+ const interval = setInterval(() => {
+ sound.play()
+ }, 60000)
+ return () => {
+ sound.stop()
+ clearInterval(interval)
+ }
+ }, [])
+ return <>
+ sound.play()}>
+
+ >
+}
\ No newline at end of file