File: /var/www/vhost/disk-apps/pwa.sports-crowd.com/node_modules/@ionic/core/dist/cjs/index.cjs.js
/*!
* (C) Ionic http://ionicframework.com - MIT License
*/
'use strict';
Object.defineProperty(exports, '__esModule', { value: true });
const animation = require('./animation-766087ba.js');
const ios_transition = require('./ios.transition-58f8106a.js');
const md_transition = require('./md.transition-eb963040.js');
const cubicBezier = require('./cubic-bezier-0e51923d.js');
const index = require('./index-def9efb5.js');
const ionicGlobal = require('./ionic-global-b4ea2adc.js');
const helpers = require('./helpers-ebc49e0f.js');
const config = require('./config-803b8420.js');
const index$1 = require('./index-9f105a7f.js');
const index$2 = require('./index-d56ebe04.js');
const overlays = require('./overlays-279bc1a4.js');
require('./index-823295fd.js');
require('./gesture-controller-e2865472.js');
require('./index-cbf0b508.js');
require('./hardware-back-button-bae6e13a.js');
/**
* This is a plugin for Swiper that allows it to work
* with Ionic Framework and the routing integrations.
* Without this plugin, Swiper would be incapable of correctly
* determining the dimensions of the slides component as
* each view is initially hidden before transitioning in.
*/
const setupSwiperInIonic = (swiper, watchForIonPageChanges = true) => {
if (typeof window === 'undefined') {
return;
}
const swiperEl = swiper.el;
const ionPage = swiperEl.closest('.ion-page');
if (!ionPage) {
if (watchForIonPageChanges) {
/**
* If no ion page found, it is possible
* that we are in the overlay setup step
* where the inner component has been
* created but not attached to the DOM yet.
* If so, wait for the .ion-page class to
* appear on the root div and re-run setup.
*/
const rootNode = swiperEl.getRootNode();
if (rootNode.tagName === 'DIV') {
const mo = new MutationObserver((m) => {
const mutation = m[0];
const wasEmpty = mutation.oldValue === null;
const hasIonPage = rootNode.classList.contains('ion-page');
/**
* Now that we have an .ion-page class
* we can safely attempt setup again.
*/
if (wasEmpty && hasIonPage) {
mo.disconnect();
/**
* Set false here so we do not
* get infinite loops
*/
setupSwiperInIonic(swiper, false);
}
});
mo.observe(rootNode, {
attributeFilter: ['class'],
attributeOldValue: true,
});
}
}
return;
}
/**
* If using slides in a modal or
* popover we need to wait for the
* overlay to be shown as these components
* are hidden when they are initially created.
*/
const modalOrPopover = swiperEl.closest('ion-modal, ion-popover');
if (modalOrPopover) {
const eventName = modalOrPopover.tagName === 'ION-MODAL' ? 'ionModalWillPresent' : 'ionPopoverWillPresent';
const overlayCallback = () => {
/**
* We need an raf here so the update
* is fired one tick after the overlay is shown.
*/
helpers.raf(() => {
swiperEl.swiper.update();
helpers.removeEventListener(modalOrPopover, eventName, overlayCallback);
});
};
helpers.addEventListener(modalOrPopover, eventName, overlayCallback);
}
else {
/**
* If using slides in a page
* we need to wait for the ion-page-invisible
* class to be removed so Swiper can correctly
* compute the dimensions of the slides.
*/
const mo = new MutationObserver((m) => {
var _a;
const mutation = m[0];
const wasPageHidden = (_a = mutation.oldValue) === null || _a === void 0 ? void 0 : _a.includes('ion-page-invisible');
const isPageHidden = ionPage.classList.contains('ion-page-invisible');
/**
* Only update Swiper if the page was
* hidden but is no longer hidden.
*/
if (!isPageHidden && isPageHidden !== wasPageHidden) {
swiperEl.swiper.update();
}
});
mo.observe(ionPage, {
attributeFilter: ['class'],
attributeOldValue: true,
});
}
/**
* We also need to listen for the appload event
* which is emitted by Stencil in the
* event that Swiper is being used on the
* view that is rendered initially.
*/
const onAppLoad = () => {
swiperEl.swiper.update();
helpers.removeEventListener(window, 'appload', onAppLoad);
};
helpers.addEventListener(window, 'appload', onAppLoad);
};
const IonicSwiper = {
name: 'ionic',
on: {
afterInit(swiper) {
console.warn('[Deprecation Warning]: The IonicSwiper module has been deprecated in favor of the IonSlides module. This change was made to better support the Swiper 7 release. The IonicSwiper module will be removed in Ionic 7.0. See https://ionicframework.com/docs/api/slides#migration for revised migration steps.');
setupSwiperInIonic(swiper);
},
},
};
const IonicSlides = (opts) => {
const { swiper, extendParams } = opts;
const slidesParams = {
effect: undefined,
direction: 'horizontal',
initialSlide: 0,
loop: false,
parallax: false,
slidesPerView: 1,
spaceBetween: 0,
speed: 300,
slidesPerColumn: 1,
slidesPerColumnFill: 'column',
slidesPerGroup: 1,
centeredSlides: false,
slidesOffsetBefore: 0,
slidesOffsetAfter: 0,
touchEventsTarget: 'container',
freeMode: false,
freeModeMomentum: true,
freeModeMomentumRatio: 1,
freeModeMomentumBounce: true,
freeModeMomentumBounceRatio: 1,
freeModeMomentumVelocityRatio: 1,
freeModeSticky: false,
freeModeMinimumVelocity: 0.02,
autoHeight: false,
setWrapperSize: false,
zoom: {
maxRatio: 3,
minRatio: 1,
toggle: false,
},
touchRatio: 1,
touchAngle: 45,
simulateTouch: true,
touchStartPreventDefault: false,
shortSwipes: true,
longSwipes: true,
longSwipesRatio: 0.5,
longSwipesMs: 300,
followFinger: true,
threshold: 0,
touchMoveStopPropagation: true,
touchReleaseOnEdges: false,
iOSEdgeSwipeDetection: false,
iOSEdgeSwipeThreshold: 20,
resistance: true,
resistanceRatio: 0.85,
watchSlidesProgress: false,
watchSlidesVisibility: false,
preventClicks: true,
preventClicksPropagation: true,
slideToClickedSlide: false,
loopAdditionalSlides: 0,
noSwiping: true,
runCallbacksOnInit: true,
coverflowEffect: {
rotate: 50,
stretch: 0,
depth: 100,
modifier: 1,
slideShadows: true,
},
flipEffect: {
slideShadows: true,
limitRotation: true,
},
cubeEffect: {
slideShadows: true,
shadow: true,
shadowOffset: 20,
shadowScale: 0.94,
},
fadeEffect: {
crossFade: false,
},
a11y: {
prevSlideMessage: 'Previous slide',
nextSlideMessage: 'Next slide',
firstSlideMessage: 'This is the first slide',
lastSlideMessage: 'This is the last slide',
},
};
if (swiper.pagination) {
slidesParams.pagination = {
type: 'bullets',
clickable: false,
hideOnClick: false,
};
}
if (swiper.scrollbar) {
slidesParams.scrollbar = {
hide: true,
};
}
extendParams(slidesParams);
};
exports.createAnimation = animation.createAnimation;
exports.iosTransitionAnimation = ios_transition.iosTransitionAnimation;
exports.mdTransitionAnimation = md_transition.mdTransitionAnimation;
exports.getTimeGivenProgression = cubicBezier.getTimeGivenProgression;
exports.createGesture = index.createGesture;
exports.getPlatforms = ionicGlobal.getPlatforms;
exports.initialize = ionicGlobal.initialize;
exports.isPlatform = ionicGlobal.isPlatform;
exports.componentOnReady = helpers.componentOnReady;
exports.IonicSafeString = config.IonicSafeString;
exports.getMode = config.getMode;
exports.setupConfig = config.setupConfig;
exports.LIFECYCLE_DID_ENTER = index$1.LIFECYCLE_DID_ENTER;
exports.LIFECYCLE_DID_LEAVE = index$1.LIFECYCLE_DID_LEAVE;
exports.LIFECYCLE_WILL_ENTER = index$1.LIFECYCLE_WILL_ENTER;
exports.LIFECYCLE_WILL_LEAVE = index$1.LIFECYCLE_WILL_LEAVE;
exports.LIFECYCLE_WILL_UNLOAD = index$1.LIFECYCLE_WILL_UNLOAD;
exports.menuController = index$2.menuController;
exports.actionSheetController = overlays.actionSheetController;
exports.alertController = overlays.alertController;
exports.loadingController = overlays.loadingController;
exports.modalController = overlays.modalController;
exports.pickerController = overlays.pickerController;
exports.popoverController = overlays.popoverController;
exports.toastController = overlays.toastController;
exports.IonicSlides = IonicSlides;
exports.IonicSwiper = IonicSwiper;