{"version":3,"file":"static/js/585.a5a6c6b5.chunk.js","mappings":"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","sources":["jeux/ordre/ItemPreview.js","jeux/ordre/Carte.js","jeux/ordre/CaseBas.js","jeux/ordre/CartesBas.js","jeux/ordre/CaseHaut.js","jeux/ordre/CartesHaut.js","jeux/ordre/Logique.js","jeux/ordre/Resultat.js","jeux/ordre/JeuOrdre.js"],"sourcesContent":["import { usePreview } from 'react-dnd-multi-backend'\r\n\r\nimport React from 'react';\r\n\r\nconst ItemPreview = () => {\r\n const preview = usePreview()\r\n if (!preview.display) {\r\n return null\r\n }\r\n const {itemType, item, style} = preview;\r\n \r\n\r\n\r\n\r\n return (\r\n
{item.titre} \r\n
\r\n );\r\n};\r\n\r\nexport default ItemPreview;","import React, { useState } from 'react'\r\nimport { useDrag } from 'react-dnd';\r\nimport ItemPreview from './ItemPreview'\r\n\r\nexport const Carte = ({element, game }) => {\r\n const {pos,titre, place} = element;\r\n\r\n const [{ isDragging }, dragRef] = useDrag({\r\n type: 'carte',\r\n item: () => {\r\n game.modifierAfficheCommentaire(false);\r\n return {pos, place, titre}\r\n },\r\n canDrag: (item) => {return true\r\n },\r\n \r\n collect: (monitor) => ({\r\n isDragging: monitor.isDragging()\r\n })\r\n })\r\n\r\n return (\r\n \r\n
{ element.titre !== \"\" &&
\r\n
}
\r\n )\r\n}","import React, { useState } from 'react'\r\nimport { useDrop } from 'react-dnd';\r\nimport { Carte } from './Carte';\r\n\r\n\r\nexport const CaseBas = ({ game, element }) => {\r\n const { pos, place, commentaire } = element;\r\n const [{ isOver }, dropRef] = useDrop({\r\n accept: 'carte',\r\n drop: (item) => {\r\n game.modifierCartes(item, pos, \"bas\");\r\n },\r\n canDrop: (item) => {\r\n return game.canDropTabBas(pos);\r\n },\r\n collect: (monitor) => ({\r\n isOver: !!monitor.isOver(),\r\n canDrop: !!monitor.canDrop(),\r\n }),\r\n })\r\n\r\n\r\n function clic() {\r\n let info = game.obtenirTitre();\r\n\r\n if (info.commentaire) {\r\n game.modifierCommentaire(commentaire, element.titre);\r\n game.modifierAfficheCommentaire(true);\r\n }\r\n }\r\n\r\n return (\r\n
\r\n
\r\n )\r\n}","import React, { useState } from 'react';\r\nimport { CaseBas } from './CaseBas';\r\n\r\n\r\nexport function CartesBas({game}) \r\n{\r\n const [tabCartesBas, setTabCartesBas] = useState(game.tabCartesBas)\r\n game.ajouteObserverCartesBas(setTabCartesBas);\r\n\r\n return
{tabCartesBas.map((element, i) => )}
\r\n \r\n}","import React from 'react-dnd';\r\nimport { Carte } from './Carte';\r\nimport { useDrop } from 'react-dnd';\r\n\r\nexport const CaseHaut = ({ game, element }) => {\r\n\r\n const { pos, place, commentaire } = element;\r\n const [{ isOver }, dropRef] = useDrop({\r\n accept: 'carte',\r\n drop: (item) => {\r\n game.modifierCartes(item, pos, \"haut\");\r\n },\r\n canDrop: (item) => {\r\n return game.canDropTabHaut(pos);\r\n },\r\n collect: (monitor) => ({\r\n isOver: !!monitor.isOver(),\r\n canDrop: !!monitor.canDrop(),\r\n }),\r\n })\r\n\r\n function clic() {\r\n let info = game.obtenirTitre();\r\n\r\n if (info.commentaire && commentaire != '') {\r\n game.modifierCommentaire(commentaire, element.titre);\r\n game.modifierAfficheCommentaire(true);\r\n }\r\n }\r\n return (\r\n
\r\n
\r\n )\r\n}","import React, { useState } from 'react';\r\nimport { CaseHaut } from './CaseHaut';\r\n\r\n\r\nexport function CartesHaut({game}) \r\n{\r\n const [tabCartesHaut, setCartesHaut] = useState(game.tabCartesHaut)\r\n game.ajouteObserverCartesHaut(setCartesHaut);\r\n\r\n\r\n\r\n return
{tabCartesHaut.map((element, i) => )}
\r\n \r\n}","\r\nimport { dataOrdre } from \"./data\";\r\nimport { creerRaccouciTitre, obtenirType } from './utilitaire';\r\nconst moisFrancais = [\r\n 'janvier', 'février', 'mars', 'avril', 'mai', 'juin',\r\n 'juillet', 'août', 'septembre', 'octobre', 'novembre', 'décembre'\r\n];\r\nconst NOMBRECARTES = 6;\r\nexport default class Logique {\r\n constructor() {\r\n\r\n this.reset();\r\n this.no = 0;\r\n this.categorie = 0;\r\n this.type = 0;\r\n }\r\n\r\n\r\n\r\n\r\n\r\n setCategorie() {\r\n this.categorie = dataOrdre[this.no].categorie;\r\n }\r\n\r\n\r\n\r\n setType() {\r\n this.type = dataOrdre[this.no].type;\r\n \r\n }\r\n\r\n\r\n\r\n static melangerTableau(tableau) {\r\n for (let i = tableau.length - 1; i > 0; i--) {\r\n const j = Math.floor(Math.random() * (i + 1));\r\n [tableau[i], tableau[j]] = [tableau[j], tableau[i]]; // Échange des éléments\r\n }\r\n return tableau;\r\n }\r\n obtenirInfoTitre() {\r\n \r\n return obtenirType(this.type);\r\n\r\n }\r\n construireOrdre() {\r\n if (this.categorie === 1) {\r\n return this.construireOrdreHistoire();\r\n }\r\n if (this.categorie === 2 || this.categorie === 3 || this.categorie === 4) {\r\n return this.construireOrdreGeo();\r\n }\r\n }\r\n\r\n construireOrdreHistoire() {\r\n let date;\r\n let dataOrdreCopie = JSON.parse(JSON.stringify(dataOrdre[this.no].jeu));\r\n let dataOrdreMelange = Logique.melangerTableau(dataOrdreCopie).slice(0, NOMBRECARTES);\r\n\r\n\r\n for (let index = 0; index < NOMBRECARTES; index++) {\r\n\r\n let data = dataOrdreMelange[index];\r\n\r\n \r\n\r\n data.dateUtilisateur = data.info1 + (data.info2 !== '' ? \" - \" + data.info2 : '');\r\n if (data.info1.length <= 4) {\r\n data.date = new Date(data.info1, 1, 1).getTime();\r\n continue;\r\n\r\n }\r\n if (data.info1.length > 7) {\r\n let decoupe = data.info1.split('/');\r\n data.date = new Date(decoupe[2], decoupe[1], decoupe[0]).getTime();\r\n continue;\r\n\r\n } else {\r\n let decoupe = data.info1.split('/');\r\n data.date = new Date(decoupe[1], decoupe[0], 1).getTime();\r\n continue;\r\n }\r\n }\r\n dataOrdreMelange.sort((a, b) => a.date - b.date);\r\n\r\n for (let index = 0; index < dataOrdreMelange.length; index++) {\r\n let data = dataOrdreMelange[index];\r\n data.ordre = index;\r\n }\r\n\r\n let tableauMelange = Logique.melangerTableau(dataOrdreMelange);\r\n return tableauMelange;\r\n\r\n }\r\n\r\n\r\n\r\n construireOrdreGeo() {\r\n let date;\r\n let dataOrdreCopie = JSON.parse(JSON.stringify(dataOrdre[this.no].jeu));\r\n let dataOrdreMelange = Logique.melangerTableau(dataOrdreCopie).slice(0, NOMBRECARTES);\r\n\r\n\r\n for (let index = 0; index < NOMBRECARTES; index++) {\r\n\r\n let data = dataOrdreMelange[index];\r\n\r\n\r\n data.dateUtilisateur = data.info1;\r\n let decoupe = data.info1.split(' ');\r\n\r\n data.date = decoupe[0];\r\n }\r\n dataOrdreMelange.sort((a, b) => a.date - b.date);\r\n\r\n for (let index = 0; index < dataOrdreMelange.length; index++) {\r\n let data = dataOrdreMelange[index];\r\n data.ordre = index;\r\n }\r\n\r\n let tableauMelange = Logique.melangerTableau(dataOrdreMelange);\r\n return tableauMelange;\r\n\r\n }\r\n\r\n reset() {\r\n this.tabCartesHaut = [];\r\n this.tabCartesBas = [];\r\n this.observerCartesBas = null;\r\n this.observerCartesHaut = null;\r\n this.observerCommentaire = null;\r\n this.observerAfficheCommentaire = null;\r\n this.observerAfficheFin = null;\r\n this.observerFin = null;\r\n this.commentaire = '';\r\n this.nbErreurs = 0;\r\n }\r\n\r\n resetData() {\r\n this.tabCartesHaut = [];\r\n this.tabCartesBas = [];\r\n this.commentaire = '';\r\n this.nbErreurs = 0;\r\n }\r\n construireDonnees() {\r\n\r\n let donneesJeu = this.construireOrdre();\r\n\r\n for (let index = 0; index < NOMBRECARTES; index++) {\r\n this.tabCartesHaut.push({ pos: index, titre: '', place: 'haut', etat: 'vide', ordre: -1, dateUtilisateur: '', commentaire: '' });\r\n this.tabCartesBas.push({ pos: index, titre: donneesJeu[index].titre, place: 'bas', etat: 'rempli', ordre: donneesJeu[index].ordre, dateUtilisateur: donneesJeu[index].dateUtilisateur, commentaire: donneesJeu[index].commentaire });\r\n }\r\n\r\n\r\n }\r\n\r\n\r\n verifierEtatHaut(pos) {\r\n return this.tabCartesHaut[pos].etat === 'vide';\r\n }\r\n\r\n verifierEtatBas(pos) {\r\n return this.tabCartesBas[pos].etat === 'vide';\r\n }\r\n ajouteObserverAfficheCommentaire(setAfficheCommentaire) {\r\n this.observerAfficheCommentaire = setAfficheCommentaire;\r\n }\r\n\r\n ajouteObserverAfficheFin(setAfficheFin) {\r\n this.observerAfficheFin = setAfficheFin;\r\n }\r\n\r\n ajouteObserverCommentaire(setCommentaire) {\r\n this.observerCommentaire = setCommentaire;\r\n }\r\n\r\n ajouteObserverCartesHaut(setCartesHaut) {\r\n this.observerCartesHaut = setCartesHaut;\r\n }\r\n\r\n ajouteObserverCartesBas(setCartesBas) {\r\n this.observerCartesBas = setCartesBas;\r\n }\r\n ajouteObserverFin(fin) {\r\n this.observerFin = fin;\r\n }\r\n\r\n modifierCartesHaut() {\r\n this.observerCartesHaut([...this.tabCartesHaut]);\r\n }\r\n\r\n modifierCartesBas() {\r\n this.observerCartesBas([...this.tabCartesBas]);\r\n }\r\n\r\n modifierAfficheCommentaire(etat) {\r\n\r\n this.observerAfficheCommentaire(etat);\r\n }\r\n\r\n modifierAfficheFin(etat) {\r\n\r\n this.observerAfficheFin(etat);\r\n }\r\n\r\n modifierCommentaire(texte, titre) {\r\n this.observerCommentaire(\"
\" + titre + \"
\" + \"
\" + texte + \"
\");\r\n }\r\n\r\n modifierFin(resultat, nbErreurs) {\r\n\r\n this.observerFin(resultat, nbErreurs);\r\n }\r\n obtenirTitre() {\r\n\r\n let titre = dataOrdre[this.no].titre;\r\n let commentaire = dataOrdre[this.no].commentaire;\r\n return { titre, commentaire };\r\n }\r\n\r\n modifierCartes(element, pos, hauteur) {\r\n\r\n\r\n if (hauteur === \"bas\" && element.place === \"bas\") {\r\n this.modifBasVersBas(element, pos);\r\n }\r\n if (hauteur === \"bas\" && element.place === \"haut\") {\r\n this.modifHautVersBas(element, pos);\r\n }\r\n if (hauteur === \"haut\" && element.place === \"haut\") {\r\n this.modifHautVersHaut(element, pos);\r\n }\r\n if (hauteur === \"haut\" && element.place === \"bas\") {\r\n this.modifBasVersHaut(element, pos);\r\n }\r\n }\r\n\r\n modifBasVersBas(element, pos) {\r\n this.tabCartesBas[element.pos].etat = 'vide';\r\n this.tabCartesBas[pos].etat = 'rempli';\r\n this.tabCartesBas[pos].titre = this.tabCartesBas[element.pos].titre;\r\n this.tabCartesBas[pos].commentaire = this.tabCartesBas[element.pos].commentaire;\r\n this.tabCartesBas[pos].ordre = this.tabCartesBas[element.pos].ordre;\r\n this.tabCartesBas[pos].dateUtilisateur = this.tabCartesBas[element.pos].dateUtilisateur;\r\n this.tabCartesBas[element.pos].titre = '';\r\n this.modifierCartesBas();\r\n }\r\n\r\n modifBasVersHaut(element, pos) {\r\n this.tabCartesBas[element.pos].etat = 'vide';\r\n this.tabCartesHaut[pos].etat = 'rempli';\r\n element.place = 'haut';\r\n this.tabCartesHaut[pos].titre = this.tabCartesBas[element.pos].titre;\r\n this.tabCartesHaut[pos].commentaire = this.tabCartesBas[element.pos].commentaire;\r\n this.tabCartesHaut[pos].ordre = this.tabCartesBas[element.pos].ordre;\r\n this.tabCartesHaut[pos].dateUtilisateur = this.tabCartesBas[element.pos].dateUtilisateur;\r\n this.tabCartesBas[element.pos].titre = '';\r\n\r\n this.modifierCartesBas();\r\n this.modifierCartesHaut();\r\n this.boutonFinJeu();\r\n }\r\n\r\n boutonFinJeu() {\r\n if (this.tabCartesHaut.findIndex(x => x.etat === 'vide') === -1) {\r\n this.modifierAfficheFin(true);\r\n\r\n }\r\n else {\r\n this.modifierAfficheFin(false);\r\n }\r\n }\r\n\r\n finDuJeu() {\r\n if (this.tabCartesHaut.findIndex(x => x.etat === 'vide') === -1) {\r\n let resultat = this.verifierVictoire();\r\n if (this.nbErreurs === 0) {\r\n for (let index = 0; index < this.tabCartesBas.length; index++) {\r\n this.tabCartesHaut[index].titre = `
${this.tabCartesHaut[index].titre}
${this.tabCartesHaut[index].dateUtilisateur}
`\r\n }\r\n }\r\n else {\r\n \r\n let bonnesReponses = JSON.parse(JSON.stringify(this.tabCartesHaut));\r\n bonnesReponses.sort((a, b) => a.ordre - b.ordre);\r\n for (let index = 0; index < this.tabCartesBas.length; index++) {\r\n for (let index = 0; index < this.tabCartesHaut.length; index++) {\r\n this.tabCartesBas[index].titre = `
${bonnesReponses[index].titre}
${bonnesReponses[index].dateUtilisateur}
`\r\n\r\n }\r\n this.tabCartesHaut[index].titre = `
${this.tabCartesHaut[index].titre}
`\r\n }\r\n }\r\n this.modifierFin();\r\n this.modifierCartesHaut();\r\n this.modifierCartesBas();\r\n\r\n }\r\n }\r\n\r\n modifHautVersHaut(element, pos) {\r\n this.tabCartesHaut[element.pos].etat = 'vide';\r\n this.tabCartesHaut[pos].etat = 'rempli';\r\n this.tabCartesHaut[pos].titre = this.tabCartesHaut[element.pos].titre;\r\n this.tabCartesHaut[pos].commentaire = this.tabCartesHaut[element.pos].commentaire;\r\n this.tabCartesHaut[pos].ordre = this.tabCartesHaut[element.pos].ordre;\r\n this.tabCartesHaut[pos].dateUtilisateur = this.tabCartesHaut[element.pos].dateUtilisateur;\r\n this.tabCartesHaut[element.pos].titre = '';\r\n\r\n this.modifierCartesHaut();\r\n this.boutonFinJeu();\r\n }\r\n\r\n modifHautVersBas(element, pos) {\r\n this.tabCartesHaut[element.pos].etat = 'vide';\r\n this.tabCartesBas[pos].etat = 'rempli';\r\n element.place = 'bas';\r\n this.tabCartesBas[pos].titre = this.tabCartesHaut[element.pos].titre;\r\n this.tabCartesBas[pos].commentaire = this.tabCartesHaut[element.pos].commentaire;\r\n this.tabCartesBas[pos].ordre = this.tabCartesHaut[element.pos].ordre;\r\n this.tabCartesBas[pos].dateUtilisateur = this.tabCartesHaut[element.pos].dateUtilisateur;\r\n this.tabCartesHaut[element.pos].titre = '';\r\n this.modifierCartesBas();\r\n this.modifierCartesHaut();\r\n this.boutonFinJeu();\r\n }\r\n\r\n verifierVictoire() {\r\n let tabErreur = [];\r\n this.nbErreurs = 0;\r\n for (let index = 0; index < this.tabCartesHaut.length; index++) {\r\n if (this.tabCartesHaut[index].ordre !== index) {\r\n tabErreur.push(false);\r\n this.nbErreurs++;\r\n }\r\n else {\r\n if (this.tabCartesHaut[index].etat !== 'vide') {\r\n tabErreur.push(true);\r\n }\r\n }\r\n\r\n }\r\n return tabErreur;\r\n }\r\n canDropTabHaut(pos) {\r\n \r\n return this.tabCartesHaut[pos].etat === 'vide';\r\n }\r\n\r\n canDropTabBas(pos) {\r\n return this.tabCartesBas[pos].etat === 'vide';\r\n }\r\n\r\n}","import React, { Component } from 'react';\r\nimport { Input, Button} from 'antd';\r\n\r\nimport Ad from '../../components/commun/AdSense';\r\nimport Confetti from \"react-confetti\";\r\nimport { readFirstName, addFirstName } from '../../components/commun/localStorage';\r\n\r\nexport default class Resultat extends Component {\r\n\r\n\r\n constructor(props) {\r\n super(props);\r\n let prenom = readFirstName() || '';\r\n \r\n this.state = {\r\n prenom,\r\n afficherPrenom : prenom=== '' ? true : false\r\n }\r\n }\r\n componentDidMount() {\r\n \r\n \r\n if (this.state.prenom !== '')\r\n {\r\n this.envoyerMessage(this.state.prenom);\r\n }\r\n\r\n }\r\n \r\n\r\n ok = () => {\r\n if (this.state.prenom !== '' ) {\r\n addFirstName(this.state.prenom);\r\n this.envoyerMessage(this.state.prenom);\r\n } \r\n this.setState({ afficherPrenom: false });\r\n }\r\n ajouterPrenom = () => {\r\n if (this.state.afficherPrenom) {\r\n return

Entre ton prénom pour être inscrit au tableau d'honneur.

\r\n this.setState({ prenom: event.target.value })} value={this.state.prenom}>\r\n
\r\n\r\n }\r\n }\r\n\r\n envoyerMessage = (prenom) =>\r\n {\r\n let url = new URL(process.env.REACT_APP_URL_QUIZAJOUTERTABLEAU);\r\n var data = new FormData();\r\n data.append('prenom', prenom);\r\n data.append('type', this.props.typeExo)\r\n fetch(url, {\r\n method: \"POST\",\r\n body: data\r\n })\r\n }\r\n\r\n render()\r\n {\r\n return
\r\n {}\r\n
\r\n {this.ajouterPrenom()}\r\n\r\n
\r\n }\r\n}","import React, { useEffect, useState } from 'react'\r\nimport { DndProvider, TouchTransition, MouseTransition } from 'react-dnd-multi-backend'\r\nimport { HTML5Backend } from 'react-dnd-html5-backend';\r\nimport { TouchBackend } from 'react-dnd-touch-backend';\r\nimport { CartesBas } from './CartesBas';\r\nimport { CartesHaut } from './CartesHaut';\r\nimport Logique from './Logique';\r\nimport { Button, message } from 'antd';\r\nimport { Helmet } from 'react-helmet';\r\nimport { dataOrdre } from './data';\r\nimport fleche from '../../images/fleche.png';\r\nimport { Link } from 'react-router-dom';\r\nimport Ad from '../../components/commun/AdSense';\r\nimport Resultat from './Resultat';\r\nimport { creerRaccouciTitre } from './utilitaire';\r\nconst HTML5toTouch = {\r\n backends: [\r\n {\r\n id: 'html5',\r\n backend: HTML5Backend,\r\n transition: MouseTransition,\r\n },\r\n {\r\n id: 'touch',\r\n backend: TouchBackend,\r\n options: { enableMouseEvents: true },\r\n preview: true,\r\n transition: TouchTransition,\r\n },\r\n ],\r\n}\r\nlet game = new Logique();\r\nlet no = 0;\r\n\r\n\r\nexport default function JeuOrdre(props) {\r\n\r\n const [afficheCommentaire, setAfficheCommentaire] = useState(false);\r\n const [afficheResultat, setAfficheResultat] = useState(false);\r\n const [commentaire, setCommentaire] = useState('');\r\n const [titre, setTitre] = useState('');\r\n const [explication, setExplication] = useState('');\r\n const [afficheAide, setAfficheAide] = useState(true);\r\n\r\n const [afficheFin, setAfficheFin] = useState(false);\r\n const [nbAide, setNbAide] = useState(2);\r\n\r\n useEffect(() => () => game.reset(), []);\r\n function fin(resultat) {\r\n setAfficheResultat(true);\r\n if (game.nbErreurs === 0) {\r\n message.success(\"Bravo ! Tu es un champion 🍾\");\r\n }\r\n else {\r\n message.error(\"Mauvais ordre\");\r\n }\r\n }\r\n\r\n const [afficheJeu, setAfficheJeu] = useState(false);\r\n\r\n useEffect(() => {\r\n\r\n no = props.match.params.no == null ? 1 : props.match.params.no;\r\n game.no = no;\r\n game.setCategorie()\r\n game.setType();\r\n game.construireDonnees();\r\n game.ajouteObserverAfficheCommentaire(setAfficheCommentaire);\r\n game.ajouteObserverCommentaire(setCommentaire);\r\n game.ajouteObserverAfficheFin(setAfficheFin);\r\n game.ajouteObserverFin(fin);\r\n setAfficheJeu(true);\r\n let info = game.obtenirTitre();\r\n setTitre(info.titre);\r\n let msg = game.obtenirInfoTitre();\r\n if (info.commentaire) {\r\n message.success(\"Tu peux cliquer sur les cartes pour plus d'information.\");\r\n msg += \" Clique sur les cartes pour obtenir de l'aide.\"\r\n }\r\n setExplication(msg);\r\n }, []);\r\n\r\n\r\n function nouveauJeu() {\r\n\r\n game.resetData();\r\n game.construireDonnees();\r\n resetJeu();\r\n }\r\n\r\n function resetJeu() {\r\n setAfficheJeu(false);\r\n setAfficheResultat(false);\r\n setAfficheCommentaire(false);\r\n setAfficheFin(false);\r\n setAfficheAide(true);\r\n setNbAide(2);\r\n window.setTimeout(() => {\r\n setAfficheJeu(true);\r\n }, 150)\r\n let info = game.obtenirTitre();\r\n setTitre(info.titre);\r\n let msg = game.obtenirInfoTitre();\r\n if (info.commentaire) {\r\n msg += \" Clique sur les cartes pour obtenir de l'aide.\"\r\n }\r\n setExplication(msg);\r\n }\r\n\r\n function recommencer() {\r\n\r\n\r\n nouveauJeu();\r\n }\r\n\r\n function clicLien(event) {\r\n const id = parseInt(event.currentTarget.id);\r\n\r\n game.no = id;\r\n game.setCategorie()\r\n game.setType();\r\n resetJeu();\r\n nouveauJeu(id);\r\n\r\n }\r\n\r\n useEffect(() => {\r\n if (nbAide === 0) setAfficheAide(false);\r\n }, [nbAide]);\r\n\r\n\r\n function aide() {\r\n setNbAide(prevState => prevState - 1);\r\n let tabTotal = game.verifierVictoire();\r\n let tabErreurs = tabTotal.filter(x => x === true);\r\n message.success(`Il y a ${tabErreurs.length} carte(s) bien placée(s).`,3)\r\n }\r\n\r\n function finDuJeu() {\r\n game.finDuJeu();\r\n }\r\n\r\n return (\r\n\r\n \r\n \r\n Dans l'ordre : {titre}\r\n \r\n \r\n\r\n {afficheJeu &&
\r\n
\r\n \r\n \r\n
\"fleche\"
\r\n \r\n
\r\n
{afficheCommentaire &&
\r\n
\r\n
\r\n
}\r\n {afficheResultat &&
{game.nbErreurs === 0 ?
Super, tu as gagné !
:
Tu as fait {game.nbErreurs} {game.nbErreurs === 1 ? 'faute' : 'fautes'}
}
}\r\n\r\n
Remettre dans l'ordre
\r\n {!afficheResultat &&\r\n \r\n {afficheFin && }\r\n {afficheAide && }\r\n \r\n
\r\n
{titre}
\r\n\r\n
{explication}
\r\n
}\r\n {afficheResultat &&
\r\n
Accueil
\r\n
Autres jeux du même type
\r\n
{dataOrdre.map((jeu, i) =>
{jeu.titre}
)}\r\n
\r\n }\r\n\r\n
}\r\n
)\r\n}"],"names":["preview","usePreview","display","itemType","item","style","className","titre","Carte","element","game","pos","place","useDrag","type","modifierAfficheCommentaire","canDrag","collect","monitor","isDragging","dragRef","ref","dangerouslySetInnerHTML","__html","CaseBas","commentaire","useDrop","accept","drop","modifierCartes","canDrop","canDropTabBas","isOver","dropRef","onClick","obtenirTitre","modifierCommentaire","id","verifierEtatBas","CartesBas","useState","tabCartesBas","setTabCartesBas","ajouteObserverCartesBas","map","i","CaseHaut","canDropTabHaut","verifierEtatHaut","CartesHaut","tabCartesHaut","setCartesHaut","ajouteObserverCartesHaut","Logique","this","reset","no","categorie","dataOrdre","obtenirType","construireOrdreHistoire","construireOrdreGeo","dataOrdreCopie","JSON","parse","stringify","jeu","dataOrdreMelange","melangerTableau","slice","index","data","dateUtilisateur","info1","info2","length","date","Date","getTime","decoupe","split","sort","a","b","ordre","observerCartesBas","observerCartesHaut","observerCommentaire","observerAfficheCommentaire","observerAfficheFin","observerFin","nbErreurs","donneesJeu","construireOrdre","push","etat","setAfficheCommentaire","setAfficheFin","setCommentaire","setCartesBas","fin","texte","resultat","hauteur","modifBasVersBas","modifHautVersBas","modifHautVersHaut","modifBasVersHaut","modifierCartesBas","modifierCartesHaut","boutonFinJeu","findIndex","x","modifierAfficheFin","verifierVictoire","bonnesReponses","modifierFin","tabErreur","tableau","j","Math","floor","random","Resultat","props","ok","state","prenom","addFirstName","envoyerMessage","setState","afficherPrenom","ajouterPrenom","maxLength","width","placeholder","onChange","event","target","value","url","URL","process","FormData","append","typeExo","fetch","method","body","readFirstName","Component","HTML5toTouch","backends","backend","HTML5Backend","transition","MouseTransition","TouchBackend","options","enableMouseEvents","TouchTransition","JeuOrdre","afficheCommentaire","afficheResultat","setAfficheResultat","setTitre","explication","setExplication","afficheAide","setAfficheAide","afficheFin","nbAide","setNbAide","message","useEffect","afficheJeu","setAfficheJeu","nouveauJeu","resetData","construireDonnees","resetJeu","window","setTimeout","info","msg","obtenirInfoTitre","clicLien","parseInt","currentTarget","setCategorie","setType","match","params","ajouteObserverAfficheCommentaire","ajouteObserverCommentaire","ajouteObserverAfficheFin","ajouteObserverFin","Helmet","name","content","src","alt","creerRaccouciTitre","size","finDuJeu","prevState","tabErreurs","filter","to"],"sourceRoot":""}