1 line
32 KiB
Plaintext
1 line
32 KiB
Plaintext
{"version":3,"sources":["webpack:///node_modules/@ionic/core/dist/esm/ion-popover.entry.js"],"names":["iosEnterAnimation","baseEl","ev","originY","originX","contentEl","querySelector","contentDimentions","getBoundingClientRect","contentWidth","width","contentHeight","height","bodyWidth","ownerDocument","defaultView","innerWidth","bodyHeight","innerHeight","targetDim","target","targetTop","top","targetLeft","left","targetWidth","targetHeight","arrowEl","arrowDim","arrowWidth","arrowHeight","style","display","arrowCSS","popoverCSS","checkSafeAreaLeft","checkSafeAreaRight","POPOVER_IOS_BODY_PADDING","className","bottom","transformOrigin","baseAnimation","backdropAnimation","wrapperAnimation","addElement","fromTo","beforeStyles","afterClearStyles","easing","duration","addAnimation","iosLeaveAnimation","mdEnterAnimation","POPOVER_MD_BODY_PADDING","doc","isRTL","dir","contentAnimation","viewportAnimation","mdLeaveAnimation","popoverIosCss","popoverMdCss","Popover","hostRef","didPresent","willPresent","willDismiss","didDismiss","presented","keyboardClose","backdropDismiss","showBackdrop","translucent","animated","onDismiss","stopPropagation","preventDefault","dismiss","onBackdropTap","undefined","onLifecycle","modalEvent","el","usersElement","name","LIFECYCLE_MAP","type","event","CustomEvent","bubbles","cancelable","detail","dispatchEvent","container","Error","data","Object","assign","componentProps","popover","delegate","component","role","shouldDismiss","mode","tabindex","zIndex","overlayIndex","cssClass","onIonPopoverDidPresent","onIonPopoverWillPresent","onIonPopoverWillDismiss","onIonPopoverDidDismiss","onIonDismiss","onIonBackdropTap","tappable","visible","ios","md"],"mappings":"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","file":"22-es5.js","sourcesContent":["import { r as registerInstance, e as createEvent, h, H as Host, i as getElement } from './index-92848855.js';\nimport { b as getIonMode } from './ionic-global-23e7365a.js';\nimport './helpers-5c745fbd.js';\nimport { c as createAnimation } from './animation-a635a2fc.js';\nimport { e as deepReady } from './index-9b2fc761.js';\nimport './hardware-back-button-7b6ede21.js';\nimport { B as BACKDROP, e as prepareOverlay, d as present, f as dismiss, g as eventMethod } from './overlays-c5d9d644.js';\nimport { g as getClassMap } from './theme-5641d27f.js';\nimport { a as attachComponent, d as detachComponent } from './framework-delegate-d1eb6504.js';\n\n/**\n * iOS Popover Enter Animation\n */\nconst iosEnterAnimation = (baseEl, ev) => {\n let originY = 'top';\n let originX = 'left';\n const contentEl = baseEl.querySelector('.popover-content');\n const contentDimentions = contentEl.getBoundingClientRect();\n const contentWidth = contentDimentions.width;\n const contentHeight = contentDimentions.height;\n const bodyWidth = baseEl.ownerDocument.defaultView.innerWidth;\n const bodyHeight = baseEl.ownerDocument.defaultView.innerHeight;\n // If ev was passed, use that for target element\n const targetDim = ev && ev.target && ev.target.getBoundingClientRect();\n const targetTop = targetDim != null && 'top' in targetDim ? targetDim.top : bodyHeight / 2 - contentHeight / 2;\n const targetLeft = targetDim != null && 'left' in targetDim ? targetDim.left : bodyWidth / 2;\n const targetWidth = (targetDim && targetDim.width) || 0;\n const targetHeight = (targetDim && targetDim.height) || 0;\n const arrowEl = baseEl.querySelector('.popover-arrow');\n const arrowDim = arrowEl.getBoundingClientRect();\n const arrowWidth = arrowDim.width;\n const arrowHeight = arrowDim.height;\n if (targetDim == null) {\n arrowEl.style.display = 'none';\n }\n const arrowCSS = {\n top: targetTop + targetHeight,\n left: targetLeft + targetWidth / 2 - arrowWidth / 2\n };\n const 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 let checkSafeAreaLeft = false;\n let 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 const baseAnimation = createAnimation();\n const backdropAnimation = createAnimation();\n const wrapperAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')\n .beforeStyles({\n 'pointer-events': 'none'\n })\n .afterClearStyles(['pointer-events']);\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};\nconst POPOVER_IOS_BODY_PADDING = 5;\n\n/**\n * iOS Popover Leave Animation\n */\nconst iosLeaveAnimation = (baseEl) => {\n const baseAnimation = createAnimation();\n const backdropAnimation = createAnimation();\n const wrapperAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 'var(--backdrop-opacity)', 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/**\n * Md Popover Enter Animation\n */\nconst mdEnterAnimation = (baseEl, ev) => {\n const POPOVER_MD_BODY_PADDING = 12;\n const doc = baseEl.ownerDocument;\n const isRTL = doc.dir === 'rtl';\n let originY = 'top';\n let originX = isRTL ? 'right' : 'left';\n const contentEl = baseEl.querySelector('.popover-content');\n const contentDimentions = contentEl.getBoundingClientRect();\n const contentWidth = contentDimentions.width;\n const contentHeight = contentDimentions.height;\n const bodyWidth = doc.defaultView.innerWidth;\n const bodyHeight = doc.defaultView.innerHeight;\n // If ev was passed, use that for target element\n const targetDim = ev && ev.target && ev.target.getBoundingClientRect();\n // As per MD spec, by default position the popover below the target (trigger) element\n const targetTop = targetDim != null && 'bottom' in targetDim\n ? targetDim.bottom\n : bodyHeight / 2 - contentHeight / 2;\n const targetLeft = targetDim != null && 'left' in targetDim\n ? isRTL\n ? targetDim.left - contentWidth + targetDim.width\n : targetDim.left\n : bodyWidth / 2 - contentWidth / 2;\n const targetHeight = (targetDim && targetDim.height) || 0;\n const 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 const baseAnimation = createAnimation();\n const backdropAnimation = createAnimation();\n const wrapperAnimation = createAnimation();\n const contentAnimation = createAnimation();\n const viewportAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 0.01, 'var(--backdrop-opacity)')\n .beforeStyles({\n 'pointer-events': 'none'\n })\n .afterClearStyles(['pointer-events']);\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/**\n * Md Popover Leave Animation\n */\nconst mdLeaveAnimation = (baseEl) => {\n const baseAnimation = createAnimation();\n const backdropAnimation = createAnimation();\n const wrapperAnimation = createAnimation();\n backdropAnimation\n .addElement(baseEl.querySelector('ion-backdrop'))\n .fromTo('opacity', 'var(--backdrop-opacity)', 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\nconst popoverIosCss = \".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;outline:none;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;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}.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 .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-h .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-content.sc-ion-popover-ios,.popover-translucent.sc-ion-popover-ios-h .popover-arrow.sc-ion-popover-ios::after{background:rgba(var(--ion-background-color-rgb, 255, 255, 255), 0.8);-webkit-backdrop-filter:saturate(180%) blur(20px);backdrop-filter:saturate(180%) blur(20px)}}\";\n\nconst popoverMdCss = \".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;outline:none;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);--backdrop-opacity:var(--ion-backdrop-opacity, 0.32)}.popover-content.sc-ion-popover-md{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}[dir=rtl].sc-ion-popover-md .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-h .popover-content.sc-ion-popover-md{-webkit-transform-origin:right top;transform-origin:right top}.popover-viewport.sc-ion-popover-md{-webkit-transition-delay:100ms;transition-delay:100ms}\";\n\nconst Popover = class {\n constructor(hostRef) {\n registerInstance(this, hostRef);\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 this.presented = false;\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 = (ev) => {\n ev.stopPropagation();\n ev.preventDefault();\n this.dismiss();\n };\n this.onBackdropTap = () => {\n this.dismiss(undefined, BACKDROP);\n };\n this.onLifecycle = (modalEvent) => {\n const el = this.usersElement;\n const name = LIFECYCLE_MAP[modalEvent.type];\n if (el && name) {\n const event = new CustomEvent(name, {\n bubbles: false,\n cancelable: false,\n detail: modalEvent.detail\n });\n el.dispatchEvent(event);\n }\n };\n }\n connectedCallback() {\n prepareOverlay(this.el);\n }\n /**\n * Present the popover overlay after it has been created.\n */\n async present() {\n if (this.presented) {\n return;\n }\n const container = this.el.querySelector('.popover-content');\n if (!container) {\n throw new Error('container is undefined');\n }\n const data = Object.assign(Object.assign({}, this.componentProps), { popover: this.el });\n this.usersElement = await attachComponent(this.delegate, container, this.component, ['popover-viewport', this.el['s-sc']], data);\n await deepReady(this.usersElement);\n return present(this, 'popoverEnter', iosEnterAnimation, mdEnterAnimation, this.event);\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 async dismiss(data, role) {\n const shouldDismiss = await dismiss(this, data, role, 'popoverLeave', iosLeaveAnimation, mdLeaveAnimation, this.event);\n if (shouldDismiss) {\n await detachComponent(this.delegate, this.usersElement);\n }\n return shouldDismiss;\n }\n /**\n * Returns a promise that resolves when the popover did dismiss.\n */\n onDidDismiss() {\n return eventMethod(this.el, 'ionPopoverDidDismiss');\n }\n /**\n * Returns a promise that resolves when the popover will dismiss.\n */\n onWillDismiss() {\n return eventMethod(this.el, 'ionPopoverWillDismiss');\n }\n render() {\n const mode = getIonMode(this);\n const { onLifecycle } = this;\n return (h(Host, { \"aria-modal\": \"true\", \"no-router\": true, tabindex: \"-1\", style: {\n zIndex: `${20000 + this.overlayIndex}`,\n }, class: Object.assign(Object.assign({}, getClassMap(this.cssClass)), { [mode]: true, 'popover-translucent': this.translucent }), 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\", { tabindex: \"0\" }), h(\"div\", { class: \"popover-wrapper ion-overlay-wrapper\" }, h(\"div\", { class: \"popover-arrow\" }), h(\"div\", { class: \"popover-content\" })), h(\"div\", { tabindex: \"0\" })));\n }\n get el() { return getElement(this); }\n};\nconst LIFECYCLE_MAP = {\n 'ionPopoverDidPresent': 'ionViewDidEnter',\n 'ionPopoverWillPresent': 'ionViewWillEnter',\n 'ionPopoverWillDismiss': 'ionViewWillLeave',\n 'ionPopoverDidDismiss': 'ionViewDidLeave',\n};\nPopover.style = {\n ios: popoverIosCss,\n md: popoverMdCss\n};\n\nexport { Popover as ion_popover };\n"]} |