File: /home/mmtprep/public_html/mathzen.mmtprep.com/assets/modales-zNa05bdf.js.map
{"version":3,"file":"modales-zNa05bdf.js","sources":["../../src/lib/outils/modales.js"],"sourcesContent":["import { context } from '../../modules/context.js'\n\n/**\n * Fonction créant le bouton d'aide utilisée par les différentes fonctions modal_ type de contenu\n * @param numeroExercice\n * @param contenu code HTML\n * @param icone\n * @author Rémi Angot\n */\nexport function creerModal (numeroExercice, contenu, labelBouton, icone) {\n if (context.isHtml) {\n let HTML = ''\n HTML = `<div id=\"aide-${numeroExercice}\" class=\"group\">\n <div id=\"aide-trigger-${numeroExercice}\">?</div>\n <div id=\"aide-content-${numeroExercice}\">\n ${contenu}\n </div>\n </div>`\n return HTML\n } else {\n return ''\n }\n}\n\n/**\n * Fonction créant le bouton d'aide utilisée par les différentes fonctions modal_ type de contenu\n * @param numeroExercice\n * @param contenu code HTML\n * @param icone\n * @author Rémi Angot\n */\nexport function creerBoutonMathalea2d (numeroExercice, fonction, labelBouton = 'Aide', icone = 'info circle') {\n return `<button class=\"inline-block px-6 py-2.5 mr-10 my-5 ml-6 bg-coopmaths text-white font-medium text-xs leading-tight uppercase rounded shadow-md transform hover:scale-110 hover:bg-coopmaths-dark hover:shadow-lg focus:bg-coopmaths-dark focus:shadow-lg focus:outline-none focus:ring-0 active:bg-coopmaths-dark active:shadow-lg transition duration-150 ease-in-out\" id = \"btnMathALEA2d_${numeroExercice}\" onclick=\"${fonction}\"><i class=\"large ${icone} icon\"></i>${labelBouton}</button>`\n}\n\n/**\n * Créé un bouton pour une aide modale avec un texte court\n * @param numeroExercice\n * @param texte Texte court qui sera affiché comme un titre\n * @param labelBouton Titre du bouton (par défaut Aide)\n * @param icone Nom de l'icone (par défaut c'est info circle icon), liste complète sur https://semantic-ui.com/elements/icon.html\n * @author Rémi Angot\n */\nexport function modalTexteCourt (numeroExercice, texte, labelBouton = 'Aide', icone = 'info circle') {\n const contenu = `<div class=\"header\">${texte}</div>`\n return creerModal(numeroExercice, contenu, labelBouton, icone)\n}\n\n/**\n * Créé un bouton pour une aide modale avec un texte et une vidéo YouTube\n * @param numeroExercice\n * @param idYoutube\n * @param titre Texte court qui sera affiché comme un titre\n * @param labelBouton Titre du bouton (par défaut Aide)\n * @param icone Nom de l'icone (par défaut c'est youtube icon), liste complète sur https://semantic-ui.com/elements/icon.html\n * @author Rémi Angot\n */\nexport function modalYoutube (numeroExercice, idYoutube, titre, labelBouton = 'Aide - Vidéo', icone = 'youtube') {\n let contenu\n if (idYoutube.substring(0, 4) === 'http') {\n if (idYoutube.slice(-4) === '.pdf') {\n contenu = `<div class=\"header\">${titre}</div><div class=\"content\"><p align=\"center\"><object type=\"application/pdf\" data=\"${idYoutube}\" width=\"560\" height=\"315\"> </object></p></div>`\n }\n if (idYoutube.substring(0, 17) === 'https://youtu.be/') {\n contenu = `<div class=\"header\">${titre}</div><div class=\"content\"><p align=\"center\"><iframe width=\"560\" height=\"315\" src=\"https://www.youtube-nocookie.com/embed/${idYoutube.substring(17)}\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe></p></div>`\n } else {\n contenu = `<div class=\"header\">${titre}</div><div class=\"content\"><p align=\"center\"><iframe width=\"560\" height=\"315\" sandbox=\"allow-same-origin allow-scripts allow-popups\" src=\"${idYoutube}\" frameborder=\"0\" allowfullscreen></iframe></p></div>`\n }\n } else if (idYoutube.substring(0, 4) === '<ifr') {\n contenu = `<div class=\"header\">${titre}</div><div class=\"content\"><p align=\"center\">${idYoutube}</p></div>`\n } else {\n contenu = `<div class=\"header\">${titre}</div><div class=\"content\"><p align=\"center\"><iframe width=\"560\" height=\"315\" src=\"https://www.youtube-nocookie.com/embed/${idYoutube}?rel=0&showinfo=0\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe></p></div>`\n }\n return creerModal(numeroExercice, contenu, labelBouton, icone)\n}\n\n/**\n * Créé un bouton pour une aide modale avec un titre et un texte\n * @param numeroExercice\n * @param titre\n * @param texte\n * @param labelBouton Titre du bouton (par défaut Aide)\n * @param icone Nom de l'icone (par défaut c'est info circle icon), liste complète sur https://semantic-ui.com/elements/icon.html\n * @author Rémi Angot\n */\nexport function modalTexteLong (numeroExercice, titre, texte, labelBouton = 'Aide', icone = 'info circle') {\n let contenu = ''\n contenu = `<div class=\"aide-header\">${titre}</div>`\n contenu += `<div class=\"aide-content\">${texte}</div>`\n return creerModal(numeroExercice, contenu, labelBouton, icone)\n}\n\n/**\n * Créé un bouton pour une aide modale avec un titre et un texte\n * @param numeroExercice\n * @param url\n * @param labelBouton Titre du bouton (par défaut Aide)\n * @param icone Nom de l'icone (par défaut c'est info circle icon), liste complète sur https://semantic-ui.com/elements/icon.html\n * @author Rémi Angot\n */\nexport function modalUrl (numeroExercice, url, labelBouton = 'Aide', icone = 'info circle') {\n const contenu = `<iframe width=\"100%\" height=\"600\" src=\"${url}\" frameborder=\"0\" ></iframe>`\n return creerModal(numeroExercice, contenu, labelBouton, icone)\n}\n\n/**\n * Créé un bouton pour une aide modale avec un texte et une vidéo YouTube\n * @param numeroExercice\n * @param urlPdf\n * @param titre Texte court qui sera affiché comme un titre\n * @param labelBouton Titre du bouton (par défaut Aide)\n * @param icone Nom de l'icone (par défaut c'est file pdf icon), liste complète sur https://semantic-ui.com/elements/icon.html\n * @author Rémi Angot\n */\nexport function modalPdf (numeroExercice, urlPdf, titre = 'Aide', labelBouton = 'Aide - PDF', icone = 'file pdf') {\n const contenu = `<div class=\"header\">${titre}</div><div class=\"content\"><p align=\"center\"><embed src=${urlPdf} width=90% height=500 type='application/pdf'/></p></div>`\n return creerModal(numeroExercice, contenu, labelBouton, icone)\n}\n\n/**\n * Créé un bouton pour une aide modale avec une vidéo\n * @param numeroExercice désigne l'id du modal qui doit être unique\n * @param urlVideo\n * @param titre Texte court qui sera affiché comme un titre\n * @param labelBouton Titre du bouton (par défaut Vidéo)\n * @param icone Nom de l'icone (par défaut c'est file video outline icon), liste complète sur https://semantic-ui.com/elements/icon.html\n * @author Sébastien Lozano\n */\nexport function modalVideo (numeroExercice, urlVideo, titre, labelBouton = 'Vidéo', icone = 'file video outline') {\n // let contenu = `<div class=\"header\">${titre}</div><div class=\"content\"><p align=\"center\"><iframe width=\"560\" height=\"315\" src=\"${urlVideo}\" frameborder=\"0\" allow=\"accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture\" allowfullscreen></iframe></p></div>`\n const contenu = `\n <div class=\"header\">${titre}</div>\n <div class=\"content\">\n <div class=\"embed-responsive embed-responsive-16by9\" align=\"center\">\n <video width=\"560\" height=\"315\" controls preload=\"none\" style=\"max-width: 100%\">\n <source src=\"` + urlVideo + `\">\n Votre navigateur ne gère pas l'élément <code>video</code>.\n </video>\n </div>\n </div>`\n return creerModal(numeroExercice, contenu, labelBouton, icone)\n}\n\n/**\n *\n * @param {number} numeroExercice\n * @param {string} urlImage\n * @param {string} titre = ce qui est écrit en titre de l'image\n * @param {string} labelBouton = ce qui est écrit sur le bouton à côté de l'icône d'image.\n * @param {string} icone\n */\nexport function modalImage (numeroExercice, urlImage, titre, labelBouton = 'Illustration', icone = 'image') {\n const contenu = `<div class=\"header\">${titre}</div><div class=\"image content\"><img class=\"ui centered medium image\" src=\"${urlImage}\"></div>`\n return creerModal(numeroExercice, contenu, labelBouton, icone)\n}\n"],"names":["creerModal","numeroExercice","contenu","labelBouton","icone","context","HTML","creerBoutonMathalea2d","fonction","modalTexteCourt","texte","modalYoutube","idYoutube","titre","modalTexteLong","modalUrl","url","modalPdf","urlPdf","modalVideo","urlVideo","modalImage","urlImage"],"mappings":"wCASO,SAASA,EAAYC,EAAgBC,EAASC,EAAaC,EAAO,CACvE,GAAIC,EAAQ,OAAQ,CAClB,IAAIC,EAAO,GACX,OAAAA,EAAO,iBAAiBL,CAAc;AAAA,8BACZA,CAAc;AAAA,8BACdA,CAAc;AAAA,QACpCC,CAAO;AAAA;AAAA,cAGJI,CACX,KACI,OAAO,EAEX,CASO,SAASC,EAAuBN,EAAgBO,EAAUL,EAAc,OAAQC,EAAQ,cAAe,CAC5G,MAAO,8XAA8XH,CAAc,cAAcO,CAAQ,qBAAqBJ,CAAK,cAAcD,CAAW,WAC9d,CAUO,SAASM,EAAiBR,EAAgBS,EAAOP,EAAc,OAAQC,EAAQ,cAAe,CACnG,MAAMF,EAAU,uBAAuBQ,CAAK,SAC5C,OAAOV,EAAWC,EAAgBC,CAA2B,CAC/D,CAWO,SAASS,EAAcV,EAAgBW,EAAWC,EAAOV,EAAc,eAAgBC,EAAQ,UAAW,CAC/G,IAAIF,EACJ,OAAIU,EAAU,UAAU,EAAG,CAAC,IAAM,QAC5BA,EAAU,MAAM,EAAE,IAAM,SAC1BV,EAAU,uBAAuBW,CAAK,qFAAqFD,CAAS,mDAElIA,EAAU,UAAU,EAAG,EAAE,IAAM,oBACjCV,EAAU,uBAAuBW,CAAK,6HAA6HD,EAAU,UAAU,EAAE,CAAC,wIAE1LV,EAAU,uBAAuBW,CAAK,6IAA6ID,CAAS,yDAErLA,EAAU,UAAU,EAAG,CAAC,IAAM,OACvCV,EAAU,uBAAuBW,CAAK,gDAAgDD,CAAS,aAE/FV,EAAU,uBAAuBW,CAAK,6HAA6HD,CAAS,yJAEvKZ,EAAWC,EAAgBC,CAA2B,CAC/D,CAWO,SAASY,EAAgBb,EAAgBY,EAAOH,EAAOP,EAAc,OAAQC,EAAQ,cAAe,CACzG,IAAIF,EAAU,GACd,OAAAA,EAAU,4BAA4BW,CAAK,SAC3CX,GAAW,6BAA6BQ,CAAK,SACtCV,EAAWC,EAAgBC,CAA2B,CAC/D,CAUO,SAASa,EAAUd,EAAgBe,EAAKb,EAAc,OAAQC,EAAQ,cAAe,CAC1F,MAAMF,EAAU,2CAA2Cc,CAAG,+BAC9D,OAAOhB,EAAWC,EAAgBC,CAA2B,CAC/D,CAWO,SAASe,EAAUhB,EAAgBiB,EAAQL,EAAQ,OAAQV,EAAc,aAAcC,EAAQ,WAAY,CAChH,MAAMF,EAAU,uBAAuBW,CAAK,2DAA2DK,CAAM,2DAC7G,OAAOlB,EAAWC,EAAgBC,CAA2B,CAC/D,CAWO,SAASiB,EAAYlB,EAAgBmB,EAAUP,EAAOV,EAAc,QAASC,EAAQ,qBAAsB,CAEhH,MAAMF,EAAU;AAAA,wBACMW,CAAK;AAAA;AAAA;AAAA;AAAA,uBAIJO,EAAW;AAAA;AAAA;AAAA;AAAA,UAKlC,OAAOpB,EAAWC,EAAgBC,CAA2B,CAC/D,CAUO,SAASmB,EAAYpB,EAAgBqB,EAAUT,EAAOV,EAAc,eAAgBC,EAAQ,QAAS,CAC1G,MAAMF,EAAU,uBAAuBW,CAAK,+EAA+ES,CAAQ,WACnI,OAAOtB,EAAWC,EAAgBC,CAA2B,CAC/D"}