import { Controller } from 'stimulus'; /* * This is an example Stimulus controller! * * Any element with a data-controller="default" attribute will cause * this controller to be executed. The name "default" comes from the filename: * default_controller.js -> "default" * * Delete this file or adapt it for your use! */ export default class extends Controller { connect() { this.element.querySelector('.full-scren-modal').classList.add('d-none'); var popup = this.element; popup.addEventListener('click', function (ev) { var closeBtn = ev.target.closest && ev.target.closest('[data-qa="close-button"]'); if (!closeBtn || !popup.contains(closeBtn)) { return; } if (typeof $ !== 'undefined' && typeof $(popup).modal === 'function') { $(popup).modal('hide'); } if (window.location.hash === '#pay-success') { history.replaceState(null, '', window.location.pathname + window.location.search); } }, true); } fullScreen() { var btn = this.element.querySelector('.full-scren-modal') if (btn.classList.contains('fa-window-maximize')) { btn.classList.add('fa-window-minimize'); btn.classList.remove('fa-window-maximize'); this.element.style.paddingRight = 0; this.element.querySelector('.modal-dialog').style.maxWidth = window.innerWidth + 'px'; this.element.querySelector('.modal-dialog').style.height = window.innerHeight + 'px'; this.element.querySelector('.modal-dialog').style.margin = 0; } else { btn.classList.remove('fa-window-minimize'); btn.classList.add('fa-window-maximize'); this.element.style.paddingRight = ''; this.element.querySelector('.modal-dialog').style.maxWidth = ''; this.element.querySelector('.modal-dialog').style.height = ''; this.element.querySelector('.modal-dialog').style.margin = ''; } } }