{"version":3,"sources":["webpack:///./node_modules/@ionic/core/dist/esm-es5/theme-18cbe2cc.js","webpack:///./node_modules/@ionic/core/dist/esm-es5/framework-delegate-c2e2e1f4.js","webpack:///./node_modules/@ionic/core/dist/esm-es5/index-4d91f03a.js","webpack:///./node_modules/@ionic/core/dist/esm-es5/ion-popover-md.entry.js"],"names":["hostContext","selector","el","closest","createColorClasses","color","_a","length","undefined","getClassList","classes","array","Array","isArray","split","filter","c","map","trim","getClassMap","forEach","SCHEME","openURL","url","ev","direction","router","this","test","document","querySelector","preventDefault","push","attachComponent","delegate","container","component","cssClasses","componentProps","label","attachViewToDom","HTMLElement","Error","ownerDocument","createElement","classList","add","Object","assign","appendChild","componentOnReady","sent","detachComponent","element","parentElement","removeViewFromDom","remove","Promise","resolve","iosTransitionAnimation","mdTransitionAnimation","transition","opts","reject","beforeTransition","runTransition","then","result","animation","destroy","afterTransition","error","enteringEl","leavingEl","setZIndex","showGoBack","setPageHidden","animationBuilder","ani","getAnimationBuilder","noAnimation","getAnimation","_b","animated","duration","mode","trans","mod","didComplete","waitForReady","trys","create","baseEl","fireWillEvents","playTransition","progressCallback","fireDidEvents","hasCompleted","defaultDeep","deep","promises","deepWait","deepReady","shallowReady","all","notifyViewReady","viewIsReady","promise","onFinish","currentStep","progressStart","play","lifecycle","eventName","CustomEvent","bubbles","cancelable","dispatchEvent","stencilEl","from","children","hidden","setAttribute","removeAttribute","style","zIndex","getIonPageElement","contains","ionPage","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-7debd47e.2a70adf6.js","sourcesContent":["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 { 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\";\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-md-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-md-h{display:none}.popover-wrapper.sc-ion-popover-md{opacity:0;z-index:10}.popover-content.sc-ion-popover-md{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-md{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px}.sc-ion-popover-md-h{--width:250px;--max-height:90%;--box-shadow:0 5px 5px -3px rgba(0,0,0,0.2),0 8px 10px 1px rgba(0,0,0,0.14),0 3px 14px 2px rgba(0,0,0,0.12)}.popover-content.sc-ion-popover-md{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}[dir=rtl].sc-ion-popover-md-h .popover-content.sc-ion-popover-md, [dir=rtl] .sc-ion-popover-md-h .popover-content.sc-ion-popover-md, [dir=rtl].sc-ion-popover-md .popover-content.sc-ion-popover-md{-webkit-transform-origin:right top;transform-origin:right top}.popover-viewport.sc-ion-popover-md{-webkit-transition-delay:.1s;transition-delay:.1s}\"; },\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":""}