{"version":3,"sources":["webpack:///./node_modules/@ionic/vue/node_modules/@ionic/core/dist/esm-es5/index-4d91f03a.js","webpack:///./node_modules/@ionic/vue/node_modules/@ionic/core/dist/esm-es5/theme-18cbe2cc.js","webpack:///./node_modules/@ionic/vue/node_modules/@ionic/core/dist/esm-es5/framework-delegate-c2e2e1f4.js","webpack:///./node_modules/@ionic/vue/node_modules/@ionic/core/dist/esm-es5/ion-popover-ios.entry.js"],"names":["iosTransitionAnimation","mdTransitionAnimation","transition","opts","Promise","resolve","reject","beforeTransition","runTransition","then","result","animation","destroy","afterTransition","error","enteringEl","leavingEl","setZIndex","direction","showGoBack","classList","add","remove","setPageHidden","animationBuilder","ani","this","_a","label","getAnimationBuilder","sent","noAnimation","undefined","getAnimation","_b","animated","duration","mode","trans","mod","didComplete","waitForReady","trys","push","create","baseEl","fireWillEvents","playTransition","progressCallback","fireDidEvents","hasCompleted","defaultDeep","deep","promises","deepWait","deepReady","shallowReady","all","notifyViewReady","viewIsReady","promise","onFinish","currentStep","progressStart","play","lifecycle","el","eventName","ev","CustomEvent","bubbles","cancelable","dispatchEvent","componentOnReady","element","stencilEl","Array","from","children","map","hidden","setAttribute","removeAttribute","style","zIndex","getIonPageElement","contains","ionPage","querySelector","hostContext","selector","closest","createColorClasses","color","length","getClassList","classes","array","isArray","split","filter","c","trim","getClassMap","forEach","SCHEME","openURL","url","router","test","document","preventDefault","attachComponent","delegate","container","component","cssClasses","componentProps","attachViewToDom","HTMLElement","Error","ownerDocument","createElement","Object","assign","appendChild","detachComponent","parentElement","removeViewFromDom","iosEnterAnimation","originY","originX","contentEl","contentDimentions","getBoundingClientRect","contentWidth","width","contentHeight","height","bodyWidth","defaultView","innerWidth","bodyHeight","innerHeight","targetDim","target","targetTop","top","targetLeft","left","targetWidth","targetHeight","arrowEl","arrowDim","arrowWidth","arrowHeight","display","arrowCSS","popoverCSS","checkSafeAreaLeft","checkSafeAreaRight","POPOVER_IOS_BODY_PADDING","className","bottom","transformOrigin","baseAnimation","backdropAnimation","wrapperAnimation","addElement","fromTo","easing","addAnimation","iosLeaveAnimation","mdEnterAnimation","POPOVER_MD_BODY_PADDING","doc","isRTL","dir","contentAnimation","viewportAnimation","beforeStyles","mdLeaveAnimation","Popover","class_1","hostRef","_this","presented","keyboardClose","backdropDismiss","showBackdrop","translucent","onDismiss","stopPropagation","dismiss","onBackdropTap","onLifecycle","modalEvent","usersElement","name","LIFECYCLE_MAP","type","event","detail","didPresent","willPresent","willDismiss","didDismiss","prototype","present","data","popover","role","shouldDismiss","onDidDismiss","onWillDismiss","render","overlayIndex","class","cssClass","onIonPopoverDidPresent","onIonPopoverWillPresent","onIonPopoverWillDismiss","onIonPopoverDidDismiss","onIonDismiss","onIonBackdropTap","tappable","visible","defineProperty","get","enumerable","configurable"],"mappings":"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","file":"js/chunk-3609acea.03fb556c.js","sourcesContent":["import { __awaiter, __generator } from \"tslib\";\nimport { w as writeTask } from './core-feeeff0d.js';\nimport { b as LIFECYCLE_WILL_LEAVE, L as LIFECYCLE_WILL_ENTER, a as LIFECYCLE_DID_ENTER, c as LIFECYCLE_DID_LEAVE } from './constants-3c3e1099.js';\nvar iosTransitionAnimation = function () { return import('./ios.transition-504cdd09.js'); };\nvar mdTransitionAnimation = function () { return import('./md.transition-fea2bbfb.js'); };\nvar transition = function (opts) {\n return new Promise(function (resolve, reject) {\n writeTask(function () {\n beforeTransition(opts);\n runTransition(opts).then(function (result) {\n if (result.animation) {\n result.animation.destroy();\n }\n afterTransition(opts);\n resolve(result);\n }, function (error) {\n afterTransition(opts);\n reject(error);\n });\n });\n });\n};\nvar beforeTransition = function (opts) {\n var enteringEl = opts.enteringEl;\n var leavingEl = opts.leavingEl;\n setZIndex(enteringEl, leavingEl, opts.direction);\n if (opts.showGoBack) {\n enteringEl.classList.add('can-go-back');\n }\n else {\n enteringEl.classList.remove('can-go-back');\n }\n setPageHidden(enteringEl, false);\n if (leavingEl) {\n setPageHidden(leavingEl, false);\n }\n};\nvar runTransition = function (opts) { return __awaiter(void 0, void 0, void 0, function () {\n var animationBuilder, ani;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, getAnimationBuilder(opts)];\n case 1:\n animationBuilder = _a.sent();\n ani = (animationBuilder)\n ? animation(animationBuilder, opts)\n : noAnimation(opts);\n return [2 /*return*/, ani];\n }\n });\n}); };\nvar afterTransition = function (opts) {\n var enteringEl = opts.enteringEl;\n var leavingEl = opts.leavingEl;\n enteringEl.classList.remove('ion-page-invisible');\n if (leavingEl !== undefined) {\n leavingEl.classList.remove('ion-page-invisible');\n }\n};\nvar getAnimationBuilder = function (opts) { return __awaiter(void 0, void 0, void 0, function () {\n var getAnimation, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (!opts.leavingEl || !opts.animated || opts.duration === 0) {\n return [2 /*return*/, undefined];\n }\n if (opts.animationBuilder) {\n return [2 /*return*/, opts.animationBuilder];\n }\n if (!(opts.mode === 'ios')) return [3 /*break*/, 2];\n return [4 /*yield*/, iosTransitionAnimation()];\n case 1:\n _a = (_b.sent()).iosTransitionAnimation;\n return [3 /*break*/, 4];\n case 2: return [4 /*yield*/, mdTransitionAnimation()];\n case 3:\n _a = (_b.sent()).mdTransitionAnimation;\n _b.label = 4;\n case 4:\n getAnimation = _a;\n return [2 /*return*/, getAnimation];\n }\n });\n}); };\nvar animation = function (animationBuilder, opts) { return __awaiter(void 0, void 0, void 0, function () {\n var trans, mod, err_1, didComplete;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, waitForReady(opts, true)];\n case 1:\n _a.sent();\n _a.label = 2;\n case 2:\n _a.trys.push([2, 5, , 6]);\n return [4 /*yield*/, import('./index-69c37885.js')];\n case 3:\n mod = _a.sent();\n return [4 /*yield*/, mod.create(animationBuilder, opts.baseEl, opts)];\n case 4:\n trans = _a.sent();\n return [3 /*break*/, 6];\n case 5:\n err_1 = _a.sent();\n trans = animationBuilder(opts.baseEl, opts);\n return [3 /*break*/, 6];\n case 6:\n fireWillEvents(opts.enteringEl, opts.leavingEl);\n return [4 /*yield*/, playTransition(trans, opts)];\n case 7:\n didComplete = _a.sent();\n if (opts.progressCallback) {\n opts.progressCallback(undefined);\n }\n if (didComplete) {\n fireDidEvents(opts.enteringEl, opts.leavingEl);\n }\n return [2 /*return*/, {\n hasCompleted: didComplete,\n animation: trans\n }];\n }\n });\n}); };\nvar noAnimation = function (opts) { return __awaiter(void 0, void 0, void 0, function () {\n var enteringEl, leavingEl;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n enteringEl = opts.enteringEl;\n leavingEl = opts.leavingEl;\n return [4 /*yield*/, waitForReady(opts, false)];\n case 1:\n _a.sent();\n fireWillEvents(enteringEl, leavingEl);\n fireDidEvents(enteringEl, leavingEl);\n return [2 /*return*/, {\n hasCompleted: true\n }];\n }\n });\n}); };\nvar waitForReady = function (opts, defaultDeep) { return __awaiter(void 0, void 0, void 0, function () {\n var deep, promises;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n deep = opts.deepWait !== undefined ? opts.deepWait : defaultDeep;\n promises = deep ? [\n deepReady(opts.enteringEl),\n deepReady(opts.leavingEl),\n ] : [\n shallowReady(opts.enteringEl),\n shallowReady(opts.leavingEl),\n ];\n return [4 /*yield*/, Promise.all(promises)];\n case 1:\n _a.sent();\n return [4 /*yield*/, notifyViewReady(opts.viewIsReady, opts.enteringEl)];\n case 2:\n _a.sent();\n return [2 /*return*/];\n }\n });\n}); };\nvar notifyViewReady = function (viewIsReady, enteringEl) { return __awaiter(void 0, void 0, void 0, function () {\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (!viewIsReady) return [3 /*break*/, 2];\n return [4 /*yield*/, viewIsReady(enteringEl)];\n case 1:\n _a.sent();\n _a.label = 2;\n case 2: return [2 /*return*/];\n }\n });\n}); };\nvar playTransition = function (trans, opts) {\n var progressCallback = opts.progressCallback;\n // TODO: Remove AnimationBuilder\n var promise = new Promise(function (resolve) {\n trans.onFinish(function (currentStep) {\n if (typeof currentStep === 'number') {\n resolve(currentStep === 1);\n }\n else if (trans.hasCompleted !== undefined) {\n resolve(trans.hasCompleted);\n }\n });\n });\n // cool, let's do this, start the transition\n if (progressCallback) {\n // this is a swipe to go back, just get the transition progress ready\n // kick off the swipe animation start\n trans.progressStart(true);\n progressCallback(trans);\n }\n else {\n // only the top level transition should actually start \"play\"\n // kick it off and let it play through\n // ******** DOM WRITE ****************\n trans.play();\n }\n // create a callback for when the animation is done\n return promise;\n};\nvar fireWillEvents = function (enteringEl, leavingEl) {\n lifecycle(leavingEl, LIFECYCLE_WILL_LEAVE);\n lifecycle(enteringEl, LIFECYCLE_WILL_ENTER);\n};\nvar fireDidEvents = function (enteringEl, leavingEl) {\n lifecycle(enteringEl, LIFECYCLE_DID_ENTER);\n lifecycle(leavingEl, LIFECYCLE_DID_LEAVE);\n};\nvar lifecycle = function (el, eventName) {\n if (el) {\n var ev = new CustomEvent(eventName, {\n bubbles: false,\n cancelable: false,\n });\n el.dispatchEvent(ev);\n }\n};\nvar shallowReady = function (el) {\n if (el && el.componentOnReady) {\n return el.componentOnReady();\n }\n return Promise.resolve();\n};\nvar deepReady = function (el) { return __awaiter(void 0, void 0, void 0, function () {\n var element, stencilEl;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n element = el;\n if (!element) return [3 /*break*/, 4];\n if (!(element.componentOnReady != null)) return [3 /*break*/, 2];\n return [4 /*yield*/, element.componentOnReady()];\n case 1:\n stencilEl = _a.sent();\n if (stencilEl != null) {\n return [2 /*return*/];\n }\n _a.label = 2;\n case 2: return [4 /*yield*/, Promise.all(Array.from(element.children).map(deepReady))];\n case 3:\n _a.sent();\n _a.label = 4;\n case 4: return [2 /*return*/];\n }\n });\n}); };\nvar setPageHidden = function (el, hidden) {\n if (hidden) {\n el.setAttribute('aria-hidden', 'true');\n el.classList.add('ion-page-hidden');\n }\n else {\n el.hidden = false;\n el.removeAttribute('aria-hidden');\n el.classList.remove('ion-page-hidden');\n }\n};\nvar setZIndex = function (enteringEl, leavingEl, direction) {\n if (enteringEl !== undefined) {\n enteringEl.style.zIndex = (direction === 'back')\n ? '99'\n : '101';\n }\n if (leavingEl !== undefined) {\n leavingEl.style.zIndex = '100';\n }\n};\nvar getIonPageElement = function (element) {\n if (element.classList.contains('ion-page')) {\n return element;\n }\n var ionPage = element.querySelector(':scope > .ion-page, :scope > ion-nav, :scope > ion-tabs');\n if (ionPage) {\n return ionPage;\n }\n // idk, return the original element so at least something animates and we don't have a null pointer\n return element;\n};\nexport { deepReady as d, getIonPageElement as g, lifecycle as l, setPageHidden as s, transition as t };\n","import { __awaiter, __generator } from \"tslib\";\nvar hostContext = function (selector, el) {\n return el.closest(selector) !== null;\n};\n/**\n * Create the mode and color classes for the component based on the classes passed in\n */\nvar createColorClasses = function (color) {\n var _a;\n return (typeof color === 'string' && color.length > 0) ? (_a = {\n 'ion-color': true\n },\n _a[\"ion-color-\" + color] = true,\n _a) : undefined;\n};\nvar getClassList = function (classes) {\n if (classes !== undefined) {\n var array = Array.isArray(classes) ? classes : classes.split(' ');\n return array\n .filter(function (c) { return c != null; })\n .map(function (c) { return c.trim(); })\n .filter(function (c) { return c !== ''; });\n }\n return [];\n};\nvar getClassMap = function (classes) {\n var map = {};\n getClassList(classes).forEach(function (c) { return map[c] = true; });\n return map;\n};\nvar SCHEME = /^[a-z][a-z0-9+\\-.]*:/;\nvar openURL = function (url, ev, direction) { return __awaiter(void 0, void 0, void 0, function () {\n var router;\n return __generator(this, function (_a) {\n if (url != null && url[0] !== '#' && !SCHEME.test(url)) {\n router = document.querySelector('ion-router');\n if (router) {\n if (ev != null) {\n ev.preventDefault();\n }\n return [2 /*return*/, router.push(url, direction)];\n }\n }\n return [2 /*return*/, false];\n });\n}); };\nexport { createColorClasses as c, getClassMap as g, hostContext as h, openURL as o };\n","import { __awaiter, __generator } from \"tslib\";\nvar attachComponent = function (delegate, container, component, cssClasses, componentProps) { return __awaiter(void 0, void 0, void 0, function () {\n var el;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0:\n if (delegate) {\n return [2 /*return*/, delegate.attachViewToDom(container, component, componentProps, cssClasses)];\n }\n if (typeof component !== 'string' && !(component instanceof HTMLElement)) {\n throw new Error('framework delegate is missing');\n }\n el = (typeof component === 'string')\n ? container.ownerDocument && container.ownerDocument.createElement(component)\n : component;\n if (cssClasses) {\n cssClasses.forEach(function (c) { return el.classList.add(c); });\n }\n if (componentProps) {\n Object.assign(el, componentProps);\n }\n container.appendChild(el);\n if (!el.componentOnReady) return [3 /*break*/, 2];\n return [4 /*yield*/, el.componentOnReady()];\n case 1:\n _a.sent();\n _a.label = 2;\n case 2: return [2 /*return*/, el];\n }\n });\n}); };\nvar detachComponent = function (delegate, element) {\n if (element) {\n if (delegate) {\n var container = element.parentElement;\n return delegate.removeViewFromDom(container, element);\n }\n element.remove();\n }\n return Promise.resolve();\n};\nexport { attachComponent as a, detachComponent as d };\n","import { __awaiter, __generator } from \"tslib\";\nimport { r as registerInstance, c as getIonMode, d as createEvent, h, H as Host, e as getElement } from './core-feeeff0d.js';\nimport './config-3c7f3790.js';\nimport './helpers-46f4a262.js';\nimport { c as createAnimation } from './animation-af478fe9.js';\nimport './constants-3c3e1099.js';\nimport { B as BACKDROP, d as prepareOverlay, e as present, f as dismiss, g as eventMethod } from './overlays-10640d86.js';\nimport { g as getClassMap } from './theme-18cbe2cc.js';\nimport { a as attachComponent, d as detachComponent } from './framework-delegate-c2e2e1f4.js';\nimport { d as deepReady } from './index-4d91f03a.js';\n/**\n * iOS Popover Enter Animation\n */\nvar iosEnterAnimation = function (baseEl, ev) {\n var originY = 'top';\n var originX = 'left';\n var contentEl = baseEl.querySelector('.popover-content');\n var contentDimentions = contentEl.getBoundingClientRect();\n var contentWidth = contentDimentions.width;\n var contentHeight = contentDimentions.height;\n var bodyWidth = baseEl.ownerDocument.defaultView.innerWidth;\n var bodyHeight = baseEl.ownerDocument.defaultView.innerHeight;\n // If ev was passed, use that for target element\n var targetDim = ev && ev.target && ev.target.getBoundingClientRect();\n var targetTop = targetDim != null && 'top' in targetDim ? targetDim.top : bodyHeight / 2 - contentHeight / 2;\n var targetLeft = targetDim != null && 'left' in targetDim ? targetDim.left : bodyWidth / 2;\n var targetWidth = (targetDim && targetDim.width) || 0;\n var targetHeight = (targetDim && targetDim.height) || 0;\n var arrowEl = baseEl.querySelector('.popover-arrow');\n var arrowDim = arrowEl.getBoundingClientRect();\n var arrowWidth = arrowDim.width;\n var arrowHeight = arrowDim.height;\n if (targetDim == null) {\n arrowEl.style.display = 'none';\n }\n var arrowCSS = {\n top: targetTop + targetHeight,\n left: targetLeft + targetWidth / 2 - arrowWidth / 2\n };\n var popoverCSS = {\n top: targetTop + targetHeight + (arrowHeight - 1),\n left: targetLeft + targetWidth / 2 - contentWidth / 2\n };\n // If the popover left is less than the padding it is off screen\n // to the left so adjust it, else if the width of the popover\n // exceeds the body width it is off screen to the right so adjust\n //\n var checkSafeAreaLeft = false;\n var checkSafeAreaRight = false;\n // If the popover left is less than the padding it is off screen\n // to the left so adjust it, else if the width of the popover\n // exceeds the body width it is off screen to the right so adjust\n // 25 is a random/arbitrary number. It seems to work fine for ios11\n // and iPhoneX. Is it perfect? No. Does it work? Yes.\n if (popoverCSS.left < POPOVER_IOS_BODY_PADDING + 25) {\n checkSafeAreaLeft = true;\n popoverCSS.left = POPOVER_IOS_BODY_PADDING;\n }\n else if (contentWidth + POPOVER_IOS_BODY_PADDING + popoverCSS.left + 25 > bodyWidth) {\n // Ok, so we're on the right side of the screen,\n // but now we need to make sure we're still a bit further right\n // cus....notchurally... Again, 25 is random. It works tho\n checkSafeAreaRight = true;\n popoverCSS.left = bodyWidth - contentWidth - POPOVER_IOS_BODY_PADDING;\n originX = 'right';\n }\n // make it pop up if there's room above\n if (targetTop + targetHeight + contentHeight > bodyHeight && targetTop - contentHeight > 0) {\n arrowCSS.top = targetTop - (arrowHeight + 1);\n popoverCSS.top = targetTop - contentHeight - (arrowHeight - 1);\n baseEl.className = baseEl.className + ' popover-bottom';\n originY = 'bottom';\n // If there isn't room for it to pop up above the target cut it off\n }\n else if (targetTop + targetHeight + contentHeight > bodyHeight) {\n contentEl.style.bottom = POPOVER_IOS_BODY_PADDING + '%';\n }\n arrowEl.style.top = arrowCSS.top + 'px';\n arrowEl.style.left = arrowCSS.left + 'px';\n contentEl.style.top = popoverCSS.top + 'px';\n contentEl.style.left = popoverCSS.left + 'px';\n if (checkSafeAreaLeft) {\n contentEl.style.left = \"calc(\" + popoverCSS.left + \"px + var(--ion-safe-area-left, 0px))\";\n }\n if (checkSafeAreaRight) {\n contentEl.style.left = \"calc(\" + popoverCSS.left + \"px - var(--ion-safe-area-right, 0px))\";\n }\n contentEl.style.transformOrigin = originY + ' ' + originX;\n var baseAnimation = createAnimation();\n var backdropAnimation = createAnimation();\n var wrapperAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 0.01, 0.08);\n wrapperAnimation\n .addElement(baseEl.querySelector('.popover-wrapper'))\n .fromTo('opacity', 0.01, 1);\n return baseAnimation\n .addElement(baseEl)\n .easing('ease')\n .duration(100)\n .addAnimation([backdropAnimation, wrapperAnimation]);\n};\nvar POPOVER_IOS_BODY_PADDING = 5;\n/**\n * iOS Popover Leave Animation\n */\nvar iosLeaveAnimation = function (baseEl) {\n var baseAnimation = createAnimation();\n var backdropAnimation = createAnimation();\n var wrapperAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 0.08, 0);\n wrapperAnimation\n .addElement(baseEl.querySelector('.popover-wrapper'))\n .fromTo('opacity', 0.99, 0);\n return baseAnimation\n .addElement(baseEl)\n .easing('ease')\n .duration(500)\n .addAnimation([backdropAnimation, wrapperAnimation]);\n};\n/**\n * Md Popover Enter Animation\n */\nvar mdEnterAnimation = function (baseEl, ev) {\n var POPOVER_MD_BODY_PADDING = 12;\n var doc = baseEl.ownerDocument;\n var isRTL = doc.dir === 'rtl';\n var originY = 'top';\n var originX = isRTL ? 'right' : 'left';\n var contentEl = baseEl.querySelector('.popover-content');\n var contentDimentions = contentEl.getBoundingClientRect();\n var contentWidth = contentDimentions.width;\n var contentHeight = contentDimentions.height;\n var bodyWidth = doc.defaultView.innerWidth;\n var bodyHeight = doc.defaultView.innerHeight;\n // If ev was passed, use that for target element\n var targetDim = ev && ev.target && ev.target.getBoundingClientRect();\n // As per MD spec, by default position the popover below the target (trigger) element\n var targetTop = targetDim != null && 'bottom' in targetDim\n ? targetDim.bottom\n : bodyHeight / 2 - contentHeight / 2;\n var targetLeft = targetDim != null && 'left' in targetDim\n ? isRTL\n ? targetDim.left - contentWidth + targetDim.width\n : targetDim.left\n : bodyWidth / 2 - contentWidth / 2;\n var targetHeight = (targetDim && targetDim.height) || 0;\n var popoverCSS = {\n top: targetTop,\n left: targetLeft\n };\n // If the popover left is less than the padding it is off screen\n // to the left so adjust it, else if the width of the popover\n // exceeds the body width it is off screen to the right so adjust\n if (popoverCSS.left < POPOVER_MD_BODY_PADDING) {\n popoverCSS.left = POPOVER_MD_BODY_PADDING;\n // Same origin in this case for both LTR & RTL\n // Note: in LTR, originX is already 'left'\n originX = 'left';\n }\n else if (contentWidth + POPOVER_MD_BODY_PADDING + popoverCSS.left >\n bodyWidth) {\n popoverCSS.left = bodyWidth - contentWidth - POPOVER_MD_BODY_PADDING;\n // Same origin in this case for both LTR & RTL\n // Note: in RTL, originX is already 'right'\n originX = 'right';\n }\n // If the popover when popped down stretches past bottom of screen,\n // make it pop up if there's room above\n if (targetTop + targetHeight + contentHeight > bodyHeight &&\n targetTop - contentHeight > 0) {\n popoverCSS.top = targetTop - contentHeight - targetHeight;\n baseEl.className = baseEl.className + ' popover-bottom';\n originY = 'bottom';\n // If there isn't room for it to pop up above the target cut it off\n }\n else if (targetTop + targetHeight + contentHeight > bodyHeight) {\n contentEl.style.bottom = POPOVER_MD_BODY_PADDING + 'px';\n }\n var baseAnimation = createAnimation();\n var backdropAnimation = createAnimation();\n var wrapperAnimation = createAnimation();\n var contentAnimation = createAnimation();\n var viewportAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 0.01, 0.32);\n wrapperAnimation\n .addElement(baseEl.querySelector('.popover-wrapper'))\n .fromTo('opacity', 0.01, 1);\n contentAnimation\n .addElement(contentEl)\n .beforeStyles({\n 'top': popoverCSS.top + \"px\",\n 'left': popoverCSS.left + \"px\",\n 'transform-origin': originY + \" \" + originX\n })\n .fromTo('transform', 'scale(0.001)', 'scale(1)');\n viewportAnimation\n .addElement(baseEl.querySelector('.popover-viewport'))\n .fromTo('opacity', 0.01, 1);\n return baseAnimation\n .addElement(baseEl)\n .easing('cubic-bezier(0.36,0.66,0.04,1)')\n .duration(300)\n .addAnimation([backdropAnimation, wrapperAnimation, contentAnimation, viewportAnimation]);\n};\n/**\n * Md Popover Leave Animation\n */\nvar mdLeaveAnimation = function (baseEl) {\n var baseAnimation = createAnimation();\n var backdropAnimation = createAnimation();\n var wrapperAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 0.32, 0);\n wrapperAnimation\n .addElement(baseEl.querySelector('.popover-wrapper'))\n .fromTo('opacity', 0.99, 0);\n return baseAnimation\n .addElement(baseEl)\n .easing('ease')\n .duration(500)\n .addAnimation([backdropAnimation, wrapperAnimation]);\n};\nvar Popover = /** @class */ (function () {\n function class_1(hostRef) {\n var _this = this;\n registerInstance(this, hostRef);\n this.presented = false;\n this.mode = getIonMode(this);\n /**\n * If `true`, the keyboard will be automatically dismissed when the overlay is presented.\n */\n this.keyboardClose = true;\n /**\n * If `true`, the popover will be dismissed when the backdrop is clicked.\n */\n this.backdropDismiss = true;\n /**\n * If `true`, a backdrop will be displayed behind the popover.\n */\n this.showBackdrop = true;\n /**\n * If `true`, the popover will be translucent.\n * Only applies when the mode is `\"ios\"` and the device supports\n * [`backdrop-filter`](https://developer.mozilla.org/en-US/docs/Web/CSS/backdrop-filter#Browser_compatibility).\n */\n this.translucent = false;\n /**\n * If `true`, the popover will animate.\n */\n this.animated = true;\n this.onDismiss = function (ev) {\n ev.stopPropagation();\n ev.preventDefault();\n _this.dismiss();\n };\n this.onBackdropTap = function () {\n _this.dismiss(undefined, BACKDROP);\n };\n this.onLifecycle = function (modalEvent) {\n var el = _this.usersElement;\n var name = LIFECYCLE_MAP[modalEvent.type];\n if (el && name) {\n var event = new CustomEvent(name, {\n bubbles: false,\n cancelable: false,\n detail: modalEvent.detail\n });\n el.dispatchEvent(event);\n }\n };\n prepareOverlay(this.el);\n this.didPresent = createEvent(this, \"ionPopoverDidPresent\", 7);\n this.willPresent = createEvent(this, \"ionPopoverWillPresent\", 7);\n this.willDismiss = createEvent(this, \"ionPopoverWillDismiss\", 7);\n this.didDismiss = createEvent(this, \"ionPopoverDidDismiss\", 7);\n }\n /**\n * Present the popover overlay after it has been created.\n */\n class_1.prototype.present = function () {\n return __awaiter(this, void 0, void 0, function () {\n var container, data, _a;\n return __generator(this, function (_b) {\n switch (_b.label) {\n case 0:\n if (this.presented) {\n return [2 /*return*/];\n }\n container = this.el.querySelector('.popover-content');\n if (!container) {\n throw new Error('container is undefined');\n }\n data = Object.assign(Object.assign({}, this.componentProps), { popover: this.el });\n _a = this;\n return [4 /*yield*/, attachComponent(this.delegate, container, this.component, ['popover-viewport', this.el['s-sc']], data)];\n case 1:\n _a.usersElement = _b.sent();\n return [4 /*yield*/, deepReady(this.usersElement)];\n case 2:\n _b.sent();\n return [2 /*return*/, present(this, 'popoverEnter', iosEnterAnimation, mdEnterAnimation, this.event)];\n }\n });\n });\n };\n /**\n * Dismiss the popover overlay after it has been presented.\n *\n * @param data Any data to emit in the dismiss events.\n * @param role The role of the element that is dismissing the popover. For example, 'cancel' or 'backdrop'.\n */\n class_1.prototype.dismiss = function (data, role) {\n return __awaiter(this, void 0, void 0, function () {\n var shouldDismiss;\n return __generator(this, function (_a) {\n switch (_a.label) {\n case 0: return [4 /*yield*/, dismiss(this, data, role, 'popoverLeave', iosLeaveAnimation, mdLeaveAnimation, this.event)];\n case 1:\n shouldDismiss = _a.sent();\n if (!shouldDismiss) return [3 /*break*/, 3];\n return [4 /*yield*/, detachComponent(this.delegate, this.usersElement)];\n case 2:\n _a.sent();\n _a.label = 3;\n case 3: return [2 /*return*/, shouldDismiss];\n }\n });\n });\n };\n /**\n * Returns a promise that resolves when the popover did dismiss.\n */\n class_1.prototype.onDidDismiss = function () {\n return eventMethod(this.el, 'ionPopoverDidDismiss');\n };\n /**\n * Returns a promise that resolves when the popover will dismiss.\n */\n class_1.prototype.onWillDismiss = function () {\n return eventMethod(this.el, 'ionPopoverWillDismiss');\n };\n class_1.prototype.render = function () {\n var _a;\n var mode = getIonMode(this);\n var onLifecycle = this.onLifecycle;\n return (h(Host, { \"aria-modal\": \"true\", \"no-router\": true, style: {\n zIndex: \"\" + (20000 + this.overlayIndex),\n }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), (_a = {}, _a[mode] = true, _a['popover-translucent'] = this.translucent, _a)), onIonPopoverDidPresent: onLifecycle, onIonPopoverWillPresent: onLifecycle, onIonPopoverWillDismiss: onLifecycle, onIonPopoverDidDismiss: onLifecycle, onIonDismiss: this.onDismiss, onIonBackdropTap: this.onBackdropTap }, h(\"ion-backdrop\", { tappable: this.backdropDismiss, visible: this.showBackdrop }), h(\"div\", { class: \"popover-wrapper\" }, h(\"div\", { class: \"popover-arrow\" }), h(\"div\", { class: \"popover-content\" }))));\n };\n Object.defineProperty(class_1.prototype, \"el\", {\n get: function () { return getElement(this); },\n enumerable: true,\n configurable: true\n });\n Object.defineProperty(class_1, \"style\", {\n get: function () { return \".sc-ion-popover-ios-h{--background:var(--ion-background-color,#fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;left:0;right:0;top:0;bottom:0;display:-ms-flexbox;display:flex;position:fixed;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;color:var(--ion-text-color,#000);z-index:1001}.overlay-hidden.sc-ion-popover-ios-h{display:none}.popover-wrapper.sc-ion-popover-ios{opacity:0;z-index:10}.popover-content.sc-ion-popover-ios{display:-ms-flexbox;display:flex;position:absolute;-ms-flex-direction:column;flex-direction:column;width:var(--width);min-width:var(--min-width);max-width:var(--max-width);height:var(--height);min-height:var(--min-height);max-height:var(--max-height);background:var(--background);-webkit-box-shadow:var(--box-shadow);box-shadow:var(--box-shadow);overflow:auto;z-index:10}.popover-viewport.sc-ion-popover-ios{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px}.sc-ion-popover-ios-h{--width:200px;--max-height:90%;--box-shadow:none}.popover-content.sc-ion-popover-ios{border-radius:10px}.popover-arrow.sc-ion-popover-ios{display:block;position:absolute;width:20px;height:10px;overflow:hidden}.popover-arrow.sc-ion-popover-ios:after{left:3px;top:3px;border-radius:3px;position:absolute;width:14px;height:14px;-webkit-transform:rotate(45deg);transform:rotate(45deg);background:var(--background);content:\\\"\\\";z-index:10}[dir=rtl].sc-ion-popover-ios-h .popover-arrow.sc-ion-popover-ios:after, [dir=rtl] .sc-ion-popover-ios-h .popover-arrow.sc-ion-popover-ios:after, [dir=rtl].sc-ion-popover-ios .popover-arrow.sc-ion-popover-ios:after{left:unset;right:unset;right:3px}.popover-bottom.sc-ion-popover-ios-h .popover-arrow.sc-ion-popover-ios{top:auto;bottom:-10px}.popover-bottom.sc-ion-popover-ios-h .popover-arrow.sc-ion-popover-ios:after{top:-6px}\\@supports ((-webkit-backdrop-filter:blur(0)) or (backdrop-filter:blur(0))){.popover-translucent.sc-ion-popover-ios-h .popover-arrow.sc-ion-popover-ios:after, .popover-translucent.sc-ion-popover-ios-h .popover-content.sc-ion-popover-ios{background:rgba(var(--ion-background-color-rgb,255,255,255),.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}\"; },\n enumerable: true,\n configurable: true\n });\n return class_1;\n}());\nvar LIFECYCLE_MAP = {\n 'ionPopoverDidPresent': 'ionViewDidEnter',\n 'ionPopoverWillPresent': 'ionViewWillEnter',\n 'ionPopoverWillDismiss': 'ionViewWillLeave',\n 'ionPopoverDidDismiss': 'ionViewDidLeave',\n};\nexport { Popover as ion_popover };\n"],"sourceRoot":""}