File: /var/www/moodledata/mdata-dda/localcache/js/4b9927fa22509abf7fe90f6ba003a66c6c219383
H5P.ConfirmationDialog=(function(EventDispatcher){"use strict";function ConfirmationDialog(options){EventDispatcher.call(this);var self=this;H5P.ConfirmationDialog.uniqueId+=1;var uniqueId=H5P.ConfirmationDialog.uniqueId;options=options||{};options.headerText=options.headerText||H5P.t('confirmDialogHeader');options.dialogText=options.dialogText||H5P.t('confirmDialogBody');options.cancelText=options.cancelText||H5P.t('cancelLabel');options.confirmText=options.confirmText||H5P.t('confirmLabel');function dialogConfirmed(e){self.hide();self.trigger('confirmed');e.preventDefault()}
function dialogCanceled(e){self.hide();self.trigger('canceled');e.preventDefault()}
function flowTo(element,e){element.focus();e.preventDefault()}
var exitButtonOffset=2*16;var shadowOffset=8;var resizeIFrame=!1;var popupBackground=document.createElement('div');popupBackground.classList.add('h5p-confirmation-dialog-background','hidden','hiding');var popup=document.createElement('div');popup.classList.add('h5p-confirmation-dialog-popup','hidden');if(options.classes){options.classes.forEach(function(popupClass){popup.classList.add(popupClass)})}
popup.setAttribute('role','dialog');popup.setAttribute('aria-labelledby','h5p-confirmation-dialog-dialog-text-'+uniqueId);popupBackground.appendChild(popup);popup.addEventListener('keydown',function(e){if(e.key==='Escape'){dialogCanceled(e)}});var header=document.createElement('div');header.classList.add('h5p-confirmation-dialog-header');popup.appendChild(header);var headerText=document.createElement('div');headerText.classList.add('h5p-confirmation-dialog-header-text');headerText.innerHTML=options.headerText;header.appendChild(headerText);var body=document.createElement('div');body.classList.add('h5p-confirmation-dialog-body');popup.appendChild(body);var text=document.createElement('div');text.classList.add('h5p-confirmation-dialog-text');text.innerHTML=options.dialogText;text.id='h5p-confirmation-dialog-dialog-text-'+uniqueId;body.appendChild(text);var buttons=document.createElement('div');buttons.classList.add('h5p-confirmation-dialog-buttons');body.appendChild(buttons);var cancelButton=document.createElement('button');cancelButton.classList.add('h5p-core-cancel-button');cancelButton.textContent=options.cancelText;var confirmButton=document.createElement('button');confirmButton.classList.add('h5p-core-button');confirmButton.classList.add('h5p-confirmation-dialog-confirm-button');confirmButton.textContent=options.confirmText;var exitButton=document.createElement('button');exitButton.classList.add('h5p-confirmation-dialog-exit');exitButton.tabIndex=-1;exitButton.setAttribute('aria-label',options.cancelText);cancelButton.addEventListener('click',dialogCanceled);cancelButton.addEventListener('keydown',function(e){if(e.key===' '){dialogCanceled(e)}else if(e.key==='Tab'&&e.shiftKey){const nextbutton=options.hideExit?confirmButton:exitButton;flowTo(nextbutton,e)}});if(!options.hideCancel){buttons.appendChild(cancelButton)}else{buttons.classList.add('center')}
confirmButton.addEventListener('click',dialogConfirmed);confirmButton.addEventListener('keydown',function(e){if(e.key===' '){dialogConfirmed(e)}else if(e.key==='Tab'&&!e.shiftKey){let nextButton=confirmButton;if(!options.hideExit){nextButton=exitButton}else if(!options.hideCancel){nextButton=cancelButton}
flowTo(nextButton,e)}});buttons.appendChild(confirmButton);exitButton.addEventListener('click',dialogCanceled);exitButton.addEventListener('keydown',function(e){if(e.key===' '){dialogCanceled(e)}else if(e.key==='Tab'&&!e.shiftKey){const nextButton=options.hideCancel?confirmButton:cancelButton;flowTo(nextButton,e)}});if(!options.hideExit){popup.appendChild(exitButton)}
var wrapperElement;var focusPredator;var wrapperSiblingsHidden=[];var popupSiblingsHidden=[];var previouslyFocused;this.appendTo=function(wrapper){wrapperElement=wrapper;return this};var captureFocus=function(e){if(!popupBackground.contains(e.target)){e.preventDefault();confirmButton.focus()}};var hideSiblings=function(element){var hiddenSiblings=[];var siblings=element.parentNode.children;var i;for(i=0;i<siblings.length;i+=1){hiddenSiblings[i]=siblings[i].getAttribute('aria-hidden')?!0:!1;if(siblings[i]!==element){siblings[i].setAttribute('aria-hidden',!0)}}
return hiddenSiblings};var restoreSiblings=function(element,hiddenSiblings){var siblings=element.parentNode.children;var i;for(i=0;i<siblings.length;i+=1){if(siblings[i]!==element&&!hiddenSiblings[i]){siblings[i].removeAttribute('aria-hidden')}}};var startCapturingFocus=function(){focusPredator=wrapperElement.parentNode||wrapperElement;focusPredator.addEventListener('focus',captureFocus,!0)};var stopCapturingFocus=function(){focusPredator.removeAttribute('aria-hidden');focusPredator.removeEventListener('focus',captureFocus,!0)};var disableUnderlay=function(){wrapperSiblingsHidden=hideSiblings(wrapperElement);popupSiblingsHidden=hideSiblings(popupBackground)};var restoreUnderlay=function(){restoreSiblings(wrapperElement,wrapperSiblingsHidden);restoreSiblings(popupBackground,popupSiblingsHidden)};var fitToContainer=function(offsetTop){var popupOffsetTop=parseInt(popup.style.top,10);if(offsetTop!==undefined){popupOffsetTop=offsetTop}
if(!popupOffsetTop){popupOffsetTop=0}
if(popupOffsetTop+popup.offsetHeight>wrapperElement.offsetHeight){popupOffsetTop=wrapperElement.offsetHeight-popup.offsetHeight-shadowOffset}
if(popupOffsetTop-exitButtonOffset<=0){popupOffsetTop=exitButtonOffset+shadowOffset;resizeIFrame=!0}
popup.style.top=popupOffsetTop+'px'};this.show=function(offsetTop){previouslyFocused=document.activeElement;wrapperElement.appendChild(popupBackground);startCapturingFocus();disableUnderlay();popupBackground.classList.remove('hidden');fitToContainer(offsetTop);setTimeout(function(){popup.classList.remove('hidden');popupBackground.classList.remove('hiding');setTimeout(function(){confirmButton.focus();if(resizeIFrame&&options.instance){var minHeight=parseInt(popup.offsetHeight,10)+exitButtonOffset+(2*shadowOffset);self.setViewPortMinimumHeight(minHeight);options.instance.trigger('resize');resizeIFrame=!1}},100)},0);return this};this.hide=function(){popupBackground.classList.add('hiding');popup.classList.add('hidden');stopCapturingFocus();if(!options.skipRestoreFocus){previouslyFocused.focus()}
restoreUnderlay();setTimeout(function(){popupBackground.classList.add('hidden');wrapperElement.removeChild(popupBackground);self.setViewPortMinimumHeight(null)},100);return this};this.getElement=function(){return popup};this.getPreviouslyFocused=function(){return previouslyFocused};this.setViewPortMinimumHeight=function(minHeight){var container=document.querySelector('.h5p-container')||document.body;container.style.minHeight=(typeof minHeight==='number')?(minHeight+'px'):minHeight}}
ConfirmationDialog.prototype=Object.create(EventDispatcher.prototype);ConfirmationDialog.prototype.constructor=ConfirmationDialog;return ConfirmationDialog}(H5P.EventDispatcher));H5P.ConfirmationDialog.uniqueId=-1