@ionic/core 7.5.7-dev.11700601419.1c57af2e → 7.5.7-dev.11701113479.149fdab6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/components/alert.js +1 -1
- package/components/backdrop.js +0 -12
- package/components/gesture-controller.js +1 -1
- package/components/ion-content.js +1 -1
- package/components/ion-datetime.js +29 -62
- package/components/ion-infinite-scroll.js +3 -11
- package/components/ion-picker-legacy-column.d.ts +11 -0
- package/components/{ion-picker-column.js → ion-picker-legacy-column.js} +2 -2
- package/components/{ion-picker-column.d.ts → ion-picker-legacy.d.ts} +4 -4
- package/components/ion-picker-legacy.js +309 -0
- package/components/overlays.js +11 -4
- package/components/picker-column-internal.js +12 -7
- package/components/picker-column.js +3 -3
- package/dist/cjs/{button-active-af897e0e.js → button-active-cd07b55b.js} +1 -1
- package/dist/cjs/{gesture-controller-b46721be.js → gesture-controller-d6a3f907.js} +1 -0
- package/dist/cjs/{index-0ee995e4.js → index-0f8b33f8.js} +1 -1
- package/dist/cjs/index.cjs.js +3 -3
- package/dist/cjs/ion-action-sheet.cjs.entry.js +4 -4
- package/dist/cjs/ion-alert.cjs.entry.js +5 -5
- package/dist/cjs/ion-app_8.cjs.entry.js +2 -2
- package/dist/cjs/ion-backdrop.cjs.entry.js +0 -12
- package/dist/cjs/ion-datetime_3.cjs.entry.js +30 -43
- package/dist/cjs/ion-infinite-scroll_2.cjs.entry.js +3 -11
- package/dist/cjs/ion-item-option_3.cjs.entry.js +1 -1
- package/dist/cjs/ion-loading.cjs.entry.js +2 -1
- package/dist/cjs/ion-menu_3.cjs.entry.js +3 -3
- package/dist/cjs/ion-modal.cjs.entry.js +3 -3
- package/dist/cjs/ion-nav_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-picker-column-internal.cjs.entry.js +11 -7
- package/dist/cjs/ion-popover.cjs.entry.js +2 -1
- package/dist/cjs/ion-range.cjs.entry.js +1 -1
- package/dist/cjs/ion-refresher_2.cjs.entry.js +3 -3
- package/dist/cjs/ion-reorder_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-segment_2.cjs.entry.js +1 -1
- package/dist/cjs/ion-select_3.cjs.entry.js +2 -1
- package/dist/cjs/ion-toast.cjs.entry.js +2 -1
- package/dist/cjs/ion-toggle.cjs.entry.js +1 -1
- package/dist/cjs/ionic.cjs.js +1 -1
- package/dist/cjs/loader.cjs.js +1 -1
- package/dist/cjs/{overlays-2ffc5f27.js → overlays-dbb71984.js} +11 -4
- package/dist/cjs/{swipe-back-d0412fb6.js → swipe-back-a6dc6e5d.js} +2 -2
- package/dist/collection/collection-manifest.json +6 -6
- package/dist/collection/components/alert/alert.ios.css +10 -0
- package/dist/collection/components/backdrop/backdrop.js +0 -12
- package/dist/collection/components/content/content.css +0 -4
- package/dist/collection/components/datetime/datetime.ios.css +83 -24
- package/dist/collection/components/datetime/datetime.js +19 -34
- package/dist/collection/components/datetime/datetime.md.css +88 -24
- package/dist/collection/components/datetime/test/a11y/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/a11y/datetime.spec.js +6 -9
- package/dist/collection/components/datetime/test/basic/datetime.e2e.js +10 -0
- package/dist/collection/components/datetime/test/disabled/datetime.spec.js +33 -0
- package/dist/collection/components/datetime/test/month-year-picker/datetime.e2e.js +1 -1
- package/dist/collection/components/datetime/test/readonly/datetime.e2e.js +2 -2
- package/dist/collection/components/infinite-scroll/infinite-scroll.js +3 -11
- package/dist/collection/components/picker-column-internal/picker-column-internal.ios.css +11 -3
- package/dist/collection/components/picker-column-internal/picker-column-internal.js +27 -5
- package/dist/collection/components/picker-column-internal/picker-column-internal.md.css +11 -3
- package/dist/collection/components/picker-column-internal/test/disabled/picker-column-internal.e2e.js +34 -5
- package/dist/collection/components/{picker-column → picker-column-legacy}/picker-column.js +5 -5
- package/dist/collection/components/{picker-column → picker-column-legacy}/test/picker-column-aria.spec.js +3 -3
- package/dist/collection/components/{picker-column → picker-column-legacy}/test/picker-column-dynamic.spec.js +2 -2
- package/dist/collection/components/{picker-column → picker-column-legacy}/test/picker-column.spec.js +2 -2
- package/dist/collection/components/{picker-column → picker-column-legacy}/test/standalone/picker-column.e2e.js +3 -3
- package/dist/collection/components/{picker → picker-legacy}/picker.js +7 -5
- package/dist/collection/components/{picker → picker-legacy}/test/basic/picker.e2e.js +2 -2
- package/dist/collection/components/{picker → picker-legacy}/test/is-open/picker.e2e.js +4 -4
- package/dist/collection/components/{picker → picker-legacy}/test/picker-id.spec.js +5 -5
- package/dist/collection/components/{picker → picker-legacy}/test/trigger/picker.e2e.js +1 -1
- package/dist/collection/utils/gesture/gesture-controller.js +1 -1
- package/dist/collection/utils/overlays.js +11 -4
- package/dist/collection/utils/test/overlays/overlays-scroll-blocking.spec.js +65 -0
- package/dist/docs.json +32 -43
- package/dist/esm/{button-active-ce5cba4c.js → button-active-5b0516e7.js} +1 -1
- package/dist/esm/{gesture-controller-0fa396c4.js → gesture-controller-3723db7c.js} +1 -1
- package/dist/esm/{index-ff313b19.js → index-32cbee52.js} +2 -2
- package/dist/esm/index.js +3 -3
- package/dist/esm/ion-action-sheet.entry.js +4 -4
- package/dist/esm/ion-alert.entry.js +5 -5
- package/dist/esm/ion-app_8.entry.js +2 -2
- package/dist/esm/ion-backdrop.entry.js +0 -12
- package/dist/esm/ion-datetime_3.entry.js +29 -42
- package/dist/esm/ion-infinite-scroll_2.entry.js +3 -11
- package/dist/esm/ion-item-option_3.entry.js +1 -1
- package/dist/esm/ion-loading.entry.js +2 -1
- package/dist/esm/ion-menu_3.entry.js +3 -3
- package/dist/esm/ion-modal.entry.js +3 -3
- package/dist/esm/ion-nav_2.entry.js +1 -1
- package/dist/esm/ion-picker-column-internal.entry.js +11 -7
- package/dist/esm/ion-popover.entry.js +2 -1
- package/dist/esm/ion-range.entry.js +1 -1
- package/dist/esm/ion-refresher_2.entry.js +3 -3
- package/dist/esm/ion-reorder_2.entry.js +1 -1
- package/dist/esm/ion-segment_2.entry.js +1 -1
- package/dist/esm/ion-select_3.entry.js +2 -1
- package/dist/esm/ion-toast.entry.js +2 -1
- package/dist/esm/ion-toggle.entry.js +1 -1
- package/dist/esm/ionic.js +1 -1
- package/dist/esm/loader.js +1 -1
- package/dist/esm/{overlays-6c9feb7e.js → overlays-789cd7a7.js} +11 -4
- package/dist/esm/{swipe-back-0f3bfc8e.js → swipe-back-cc4c2bcb.js} +2 -2
- package/dist/esm-es5/{button-active-ce5cba4c.js → button-active-5b0516e7.js} +1 -1
- package/dist/esm-es5/{gesture-controller-0fa396c4.js → gesture-controller-3723db7c.js} +1 -1
- package/dist/esm-es5/{index-ff313b19.js → index-32cbee52.js} +1 -1
- package/dist/esm-es5/index.js +1 -1
- package/dist/esm-es5/ion-action-sheet.entry.js +1 -1
- package/dist/esm-es5/ion-alert.entry.js +1 -1
- package/dist/esm-es5/ion-app_8.entry.js +1 -1
- package/dist/esm-es5/ion-backdrop.entry.js +1 -1
- package/dist/esm-es5/ion-datetime_3.entry.js +1 -1
- package/dist/esm-es5/ion-infinite-scroll_2.entry.js +1 -1
- package/dist/esm-es5/ion-item-option_3.entry.js +1 -1
- package/dist/esm-es5/ion-loading.entry.js +1 -1
- package/dist/esm-es5/ion-menu_3.entry.js +1 -1
- package/dist/esm-es5/ion-modal.entry.js +1 -1
- package/dist/esm-es5/ion-nav_2.entry.js +1 -1
- package/dist/esm-es5/ion-picker-column-internal.entry.js +1 -1
- package/dist/esm-es5/ion-popover.entry.js +1 -1
- package/dist/esm-es5/ion-range.entry.js +1 -1
- package/dist/esm-es5/ion-refresher_2.entry.js +1 -1
- package/dist/esm-es5/ion-reorder_2.entry.js +1 -1
- package/dist/esm-es5/ion-segment_2.entry.js +1 -1
- package/dist/esm-es5/ion-select_3.entry.js +1 -1
- package/dist/esm-es5/ion-toast.entry.js +1 -1
- package/dist/esm-es5/ion-toggle.entry.js +1 -1
- package/dist/esm-es5/ionic.js +1 -1
- package/dist/esm-es5/loader.js +1 -1
- package/dist/esm-es5/overlays-789cd7a7.js +4 -0
- package/dist/esm-es5/swipe-back-cc4c2bcb.js +4 -0
- package/dist/html.html-data.json +2 -2
- package/dist/ionic/index.esm.js +1 -1
- package/dist/ionic/ionic.esm.js +1 -1
- package/dist/ionic/p-02d8fdba.system.entry.js +4 -0
- package/dist/ionic/{p-f3c82f74.system.entry.js → p-06e6d235.system.entry.js} +2 -2
- package/dist/ionic/p-0c244faf.entry.js +4 -0
- package/dist/ionic/{p-e0b06b65.js → p-100ef961.js} +1 -1
- package/dist/ionic/p-1a368f2e.system.entry.js +4 -0
- package/dist/ionic/{p-34d2de14.system.entry.js → p-22813b28.system.entry.js} +1 -1
- package/dist/ionic/p-234b9617.system.entry.js +4 -0
- package/dist/ionic/p-25c34422.system.entry.js +4 -0
- package/dist/ionic/p-2804781b.entry.js +4 -0
- package/dist/ionic/p-29fe18ef.entry.js +4 -0
- package/dist/ionic/p-2ad38423.system.entry.js +4 -0
- package/dist/ionic/{p-7176cea3.entry.js → p-2ba9414e.entry.js} +1 -1
- package/dist/ionic/{p-fa8d4788.system.js → p-2e1794df.system.js} +1 -1
- package/dist/ionic/{p-e627ed84.js → p-302091ab.js} +1 -1
- package/dist/ionic/{p-67ed452a.system.entry.js → p-3f88eab8.system.entry.js} +1 -1
- package/dist/ionic/p-40903d34.system.js +1 -1
- package/dist/ionic/{p-0dc0d9b5.entry.js → p-477a182e.entry.js} +1 -1
- package/dist/ionic/{p-377c636c.system.entry.js → p-4f3e2767.system.entry.js} +1 -1
- package/dist/ionic/{p-3de79805.entry.js → p-56224549.entry.js} +1 -1
- package/dist/ionic/{p-965677f1.entry.js → p-5ce11143.entry.js} +1 -1
- package/dist/ionic/{p-9e852ff1.system.js → p-6500b298.system.js} +1 -1
- package/dist/ionic/p-6893f6e4.entry.js +4 -0
- package/dist/ionic/{p-b2a74a72.entry.js → p-835e0346.entry.js} +1 -1
- package/dist/ionic/{p-39044fe6.system.entry.js → p-878c7aa5.system.entry.js} +1 -1
- package/dist/ionic/p-8b4ab236.entry.js +4 -0
- package/dist/ionic/{p-f37b4b79.entry.js → p-939d903b.entry.js} +1 -1
- package/dist/ionic/{p-6d812360.system.entry.js → p-966cf574.system.entry.js} +1 -1
- package/dist/ionic/p-992d3bad.entry.js +4 -0
- package/dist/ionic/{p-1cb5f2f8.system.entry.js → p-9b5301cc.system.entry.js} +1 -1
- package/dist/ionic/p-9c967a65.system.entry.js +4 -0
- package/dist/ionic/{p-8e1bded3.entry.js → p-9e6bf9ed.entry.js} +1 -1
- package/dist/ionic/{p-6e23777e.system.entry.js → p-a4cda7a8.system.entry.js} +1 -1
- package/dist/ionic/{p-09d142b3.system.js → p-a57f223c.system.js} +1 -1
- package/dist/ionic/{p-8b1be026.js → p-a7e2ac5c.js} +1 -1
- package/dist/ionic/p-af016cd3.entry.js +4 -0
- package/dist/ionic/{p-bed722c4.system.entry.js → p-b3e79338.system.entry.js} +1 -1
- package/dist/ionic/p-b4cbb736.js +4 -0
- package/dist/ionic/{p-4fa201a7.entry.js → p-b6a8588f.entry.js} +1 -1
- package/dist/ionic/{p-73411c1b.entry.js → p-c1229981.entry.js} +1 -1
- package/dist/ionic/{p-db5043df.system.entry.js → p-c31fc05f.system.entry.js} +1 -1
- package/dist/ionic/p-c56b6570.system.entry.js +4 -0
- package/dist/ionic/p-c59d068a.entry.js +4 -0
- package/dist/ionic/{p-a936d224.system.js → p-c7fd81ba.system.js} +1 -1
- package/dist/ionic/p-dc565ca3.js +4 -0
- package/dist/ionic/p-dd837fa8.entry.js +4 -0
- package/dist/ionic/p-e8400078.system.entry.js +4 -0
- package/dist/ionic/p-e88ed07f.system.js +4 -0
- package/dist/ionic/p-eb07ec1a.system.entry.js +4 -0
- package/dist/ionic/p-eb5697b5.system.js +4 -0
- package/dist/ionic/{p-3ce8c3e3.entry.js → p-ee800093.entry.js} +1 -1
- package/dist/ionic/p-f0559c5d.system.entry.js +4 -0
- package/dist/ionic/p-fdd22426.entry.js +4 -0
- package/dist/types/components/backdrop/backdrop.d.ts +0 -3
- package/dist/types/components/datetime/datetime.d.ts +0 -1
- package/dist/types/components/infinite-scroll/infinite-scroll.d.ts +0 -7
- package/dist/types/components/menu/menu.d.ts +1 -1
- package/dist/types/components/picker-column-internal/picker-column-internal.d.ts +4 -0
- package/dist/types/components/{picker-column → picker-column-legacy}/picker-column.d.ts +1 -1
- package/dist/types/components/{picker → picker-legacy}/picker.d.ts +1 -1
- package/dist/types/components.d.ts +138 -130
- package/dist/types/interface.d.ts +1 -1
- package/dist/types/utils/config.d.ts +2 -2
- package/dist/types/utils/gesture/gesture-controller.d.ts +1 -0
- package/dist/types/utils/overlays.d.ts +5 -2
- package/hydrate/index.js +50 -75
- package/package.json +1 -1
- package/components/ion-picker.d.ts +0 -11
- package/components/ion-picker.js +0 -307
- package/dist/collection/components/infinite-scroll/test/small-dom-update/infinite-scroll.e2e.js +0 -31
- package/dist/esm-es5/overlays-6c9feb7e.js +0 -4
- package/dist/esm-es5/swipe-back-0f3bfc8e.js +0 -4
- package/dist/ionic/p-0d8e9393.entry.js +0 -4
- package/dist/ionic/p-18e01b30.system.entry.js +0 -4
- package/dist/ionic/p-1e5165db.system.entry.js +0 -4
- package/dist/ionic/p-4794e0ac.system.entry.js +0 -4
- package/dist/ionic/p-4dbac22d.entry.js +0 -4
- package/dist/ionic/p-64296b15.entry.js +0 -4
- package/dist/ionic/p-6eec9c40.entry.js +0 -4
- package/dist/ionic/p-6f4fbf04.entry.js +0 -4
- package/dist/ionic/p-800ef057.js +0 -4
- package/dist/ionic/p-8dbdb163.system.js +0 -4
- package/dist/ionic/p-8f8bc519.system.entry.js +0 -4
- package/dist/ionic/p-97e31c0a.system.js +0 -4
- package/dist/ionic/p-a5c1e6ce.entry.js +0 -4
- package/dist/ionic/p-a9c3699b.system.entry.js +0 -4
- package/dist/ionic/p-ad61e508.entry.js +0 -4
- package/dist/ionic/p-b203659a.system.entry.js +0 -4
- package/dist/ionic/p-b91fe549.entry.js +0 -4
- package/dist/ionic/p-c919498d.entry.js +0 -4
- package/dist/ionic/p-cf425ec5.system.entry.js +0 -4
- package/dist/ionic/p-d91e93ac.system.entry.js +0 -4
- package/dist/ionic/p-ddfc4ef4.system.entry.js +0 -4
- package/dist/ionic/p-e6b240a0.js +0 -4
- package/dist/ionic/p-eae972be.system.entry.js +0 -4
- package/dist/ionic/p-f54ddd19.entry.js +0 -4
- /package/dist/collection/components/{picker-column → picker-column-legacy}/picker-column.ios.css +0 -0
- /package/dist/collection/components/{picker-column → picker-column-legacy}/picker-column.md.css +0 -0
- /package/dist/collection/components/{picker-column → picker-column-legacy}/test/test.utils.js +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/animations/ios.enter.js +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/animations/ios.leave.js +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/picker-interface.js +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/picker.ios.css +0 -0
- /package/dist/collection/components/{picker → picker-legacy}/picker.md.css +0 -0
- /package/dist/types/components/{picker-column → picker-column-legacy}/test/test.utils.d.ts +0 -0
- /package/dist/types/components/{picker → picker-legacy}/animations/ios.enter.d.ts +0 -0
- /package/dist/types/components/{picker → picker-legacy}/animations/ios.leave.d.ts +0 -0
- /package/dist/types/components/{picker → picker-legacy}/picker-interface.d.ts +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import{__awaiter,__generator}from"tslib";
|
|
2
2
|
/*!
|
|
3
3
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
4
|
-
*/import{r as registerInstance,d as createEvent,h,H as Host,f as getElement}from"./index-7c9b1bca.js";import{C as CoreDelegate,a as attachComponent,d as detachComponent}from"./framework-delegate-aa433dea.js";import{r as raf,g as getElementRoot,a as addEventListener,m as hasLazyBuild}from"./helpers-3379ba19.js";import{c as createLockController}from"./lock-controller-e8c6c051.js";import{p as printIonWarning}from"./index-595d62c9.js";import{B as BACKDROP,j as prepareOverlay,k as setOverlayId,f as present,o as focusFirstDescendant,g as dismiss,h as eventMethod}from"./overlays-6c9feb7e.js";import{b as getIonMode,a as isPlatform}from"./ionic-global-40e42e7f.js";import{g as getClassMap}from"./theme-17531cdf.js";import{e as deepReady,w as waitForMount}from"./index-6a0ccabb.js";import{c as createAnimation}from"./animation-8aa13916.js";import"./index-7a14ecec.js";import"./hardware-back-button-39299f84.js";var getArrowDimensions=function(e){if(!e){return{arrowWidth:0,arrowHeight:0}}var t=e.getBoundingClientRect(),r=t.width,o=t.height;return{arrowWidth:r,arrowHeight:o}};var getPopoverDimensions=function(e,t,r){var o=t.getBoundingClientRect();var i=o.height;var n=o.width;if(e==="cover"&&r){var a=r.getBoundingClientRect();n=a.width}return{contentWidth:n,contentHeight:i}};var configureDismissInteraction=function(e,t,r,o){var i=[];var n=getElementRoot(o);var a=n.querySelector(".popover-content");switch(t){case"hover":i=[{eventName:"mouseenter",callback:function(t){var o=document.elementFromPoint(t.clientX,t.clientY);if(o===e){return}r.dismiss(undefined,undefined,false)}}];break;case"context-menu":case"click":default:i=[{eventName:"click",callback:function(t){var o=t.target;var i=o.closest("[data-ion-popover-trigger]");if(i===e){t.stopPropagation();return}r.dismiss(undefined,undefined,false)}}];break}i.forEach((function(e){var t=e.eventName,r=e.callback;return a.addEventListener(t,r)}));return function(){i.forEach((function(e){var t=e.eventName,r=e.callback;return a.removeEventListener(t,r)}))}};var configureTriggerInteraction=function(e,t,r){var o=[];switch(t){case"hover":var i;o=[{eventName:"mouseenter",callback:function(e){return __awaiter(void 0,void 0,void 0,(function(){return __generator(this,(function(t){e.stopPropagation();if(i){clearTimeout(i)}i=setTimeout((function(){raf((function(){r.presentFromTrigger(e);i=undefined}))}),100);return[2]}))}))}},{eventName:"mouseleave",callback:function(e){if(i){clearTimeout(i)}var t=e.relatedTarget;if(!t){return}if(t.closest("ion-popover")!==r){r.dismiss(undefined,undefined,false)}}},{eventName:"click",callback:function(e){return e.stopPropagation()}},{eventName:"ionPopoverActivateTrigger",callback:function(e){return r.presentFromTrigger(e,true)}}];break;case"context-menu":o=[{eventName:"contextmenu",callback:function(e){e.preventDefault();r.presentFromTrigger(e)}},{eventName:"click",callback:function(e){return e.stopPropagation()}},{eventName:"ionPopoverActivateTrigger",callback:function(e){return r.presentFromTrigger(e,true)}}];break;case"click":default:o=[{eventName:"click",callback:function(e){return r.presentFromTrigger(e)}},{eventName:"ionPopoverActivateTrigger",callback:function(e){return r.presentFromTrigger(e,true)}}];break}o.forEach((function(t){var r=t.eventName,o=t.callback;return e.addEventListener(r,o)}));e.setAttribute("data-ion-popover-trigger","true");return function(){o.forEach((function(t){var r=t.eventName,o=t.callback;return e.removeEventListener(r,o)}));e.removeAttribute("data-ion-popover-trigger")}};var getIndexOfItem=function(e,t){if(!t||t.tagName!=="ION-ITEM"){return-1}return e.findIndex((function(e){return e===t}))};var getNextItem=function(e,t){var r=getIndexOfItem(e,t);return e[r+1]};var getPrevItem=function(e,t){var r=getIndexOfItem(e,t);return e[r-1]};var focusItem=function(e){var t=getElementRoot(e);var r=t.querySelector("button");if(r){raf((function(){return r.focus()}))}};var isTriggerElement=function(e){return e.hasAttribute("data-ion-popover-trigger")};var configureKeyboardInteraction=function(e){var t=function(t){return __awaiter(void 0,void 0,void 0,(function(){var r,o,i,n,a,s,p,c,v,f,d;return __generator(this,(function(u){switch(u.label){case 0:o=document.activeElement;i=[];n=(r=t.target)===null||r===void 0?void 0:r.tagName;if(n!=="ION-POPOVER"&&n!=="ION-ITEM"){return[2]}try{i=Array.from(e.querySelectorAll("ion-item:not(ion-popover ion-popover *):not([disabled])"))}catch(e){}a=t.key;switch(a){case"ArrowLeft":return[3,1];case"ArrowDown":return[3,3];case"ArrowUp":return[3,4];case"Home":return[3,5];case"End":return[3,6];case"ArrowRight":return[3,7];case" ":return[3,7];case"Enter":return[3,7]}return[3,8];case 1:return[4,e.getParentPopover()];case 2:s=u.sent();if(s){e.dismiss(undefined,undefined,false)}return[3,8];case 3:t.preventDefault();p=getNextItem(i,o);if(p!==undefined){focusItem(p)}return[3,8];case 4:t.preventDefault();c=getPrevItem(i,o);if(c!==undefined){focusItem(c)}return[3,8];case 5:t.preventDefault();v=i[0];if(v!==undefined){focusItem(v)}return[3,8];case 6:t.preventDefault();f=i[i.length-1];if(f!==undefined){focusItem(f)}return[3,8];case 7:if(o&&isTriggerElement(o)){d=new CustomEvent("ionPopoverActivateTrigger");o.dispatchEvent(d)}return[3,8];case 8:return[2]}}))}))};e.addEventListener("keydown",t);return function(){return e.removeEventListener("keydown",t)}};var getPopoverPosition=function(e,t,r,o,i,n,a,s,p,c,v){var f;var d={top:0,left:0,width:0,height:0};switch(n){case"event":if(!v){return p}var u=v;d={top:u.clientY,left:u.clientX,width:1,height:1};break;case"trigger":default:var l=v;var h=c||((f=l===null||l===void 0?void 0:l.detail)===null||f===void 0?void 0:f.ionShadowTarget)||(l===null||l===void 0?void 0:l.target);if(!h){return p}var g=h.getBoundingClientRect();d={top:g.top,left:g.left,width:g.width,height:g.height};break}var m=calculatePopoverSide(a,d,t,r,o,i,e);var x=calculatePopoverAlign(s,a,d,t,r);var w=m.top+x.top;var b=m.left+x.left;var k=calculateArrowPosition(a,o,i,w,b,t,r,e),P=k.arrowTop,A=k.arrowLeft;var y=calculatePopoverOrigin(a,s,e),I=y.originX,D=y.originY;return{top:w,left:b,referenceCoordinates:d,arrowTop:P,arrowLeft:A,originX:I,originY:D}};var calculatePopoverOrigin=function(e,t,r){switch(e){case"top":return{originX:getOriginXAlignment(t),originY:"bottom"};case"bottom":return{originX:getOriginXAlignment(t),originY:"top"};case"left":return{originX:"right",originY:getOriginYAlignment(t)};case"right":return{originX:"left",originY:getOriginYAlignment(t)};case"start":return{originX:r?"left":"right",originY:getOriginYAlignment(t)};case"end":return{originX:r?"right":"left",originY:getOriginYAlignment(t)}}};var getOriginXAlignment=function(e){switch(e){case"start":return"left";case"center":return"center";case"end":return"right"}};var getOriginYAlignment=function(e){switch(e){case"start":return"top";case"center":return"center";case"end":return"bottom"}};var calculateArrowPosition=function(e,t,r,o,i,n,a,s){var p={arrowTop:o+a/2-t/2,arrowLeft:i+n-t/2};var c={arrowTop:o+a/2-t/2,arrowLeft:i-t*1.5};switch(e){case"top":return{arrowTop:o+a,arrowLeft:i+n/2-t/2};case"bottom":return{arrowTop:o-r,arrowLeft:i+n/2-t/2};case"left":return p;case"right":return c;case"start":return s?c:p;case"end":return s?p:c;default:return{arrowTop:0,arrowLeft:0}}};var calculatePopoverSide=function(e,t,r,o,i,n,a){var s={top:t.top,left:t.left-r-i};var p={top:t.top,left:t.left+t.width+i};switch(e){case"top":return{top:t.top-o-n,left:t.left};case"right":return p;case"bottom":return{top:t.top+t.height+n,left:t.left};case"left":return s;case"start":return a?p:s;case"end":return a?s:p}};var calculatePopoverAlign=function(e,t,r,o,i){switch(e){case"center":return calculatePopoverCenterAlign(t,r,o,i);case"end":return calculatePopoverEndAlign(t,r,o,i);case"start":default:return{top:0,left:0}}};var calculatePopoverEndAlign=function(e,t,r,o){switch(e){case"start":case"end":case"left":case"right":return{top:-(o-t.height),left:0};case"top":case"bottom":default:return{top:0,left:-(r-t.width)}}};var calculatePopoverCenterAlign=function(e,t,r,o){switch(e){case"start":case"end":case"left":case"right":return{top:-(o/2-t.height/2),left:0};case"top":case"bottom":default:return{top:0,left:-(r/2-t.width/2)}}};var calculateWindowAdjustment=function(e,t,r,o,i,n,a,s,p,c,v,f,d,u,l){if(d===void 0){d=0}if(u===void 0){u=0}if(l===void 0){l=0}var h=d;var g=u;var m=r;var x=t;var w;var b=c;var k=v;var P=false;var A=false;var y=f?f.top+f.height:n/2-s/2;var I=f?f.height:0;var D=false;if(m<o+p){m=o;P=true;b="left"}else if(a+o+m+p>i){A=true;m=i-a-o;b="right"}if(y+I+s>n&&(e==="top"||e==="bottom")){if(y-s>0){x=Math.max(12,y-s-I-(l-1));h=x+s;k="bottom";D=true}else{w=o}}return{top:x,left:m,bottom:w,originX:b,originY:k,checkSafeAreaLeft:P,checkSafeAreaRight:A,arrowTop:h,arrowLeft:g,addPopoverBottomClass:D}};var shouldShowArrow=function(e,t,r,o){if(t===void 0){t=false}if(!r&&!o){return false}if(e!=="top"&&e!=="bottom"&&t){return false}return true};var POPOVER_IOS_BODY_PADDING=5;var iosEnterAnimation=function(e,t){var r;var o=t.event,i=t.size,n=t.trigger,a=t.reference,s=t.side,p=t.align;var c=e.ownerDocument;var v=c.dir==="rtl";var f=c.defaultView.innerWidth;var d=c.defaultView.innerHeight;var u=getElementRoot(e);var l=u.querySelector(".popover-content");var h=u.querySelector(".popover-arrow");var g=n||((r=o===null||o===void 0?void 0:o.detail)===null||r===void 0?void 0:r.ionShadowTarget)||(o===null||o===void 0?void 0:o.target);var m=getPopoverDimensions(i,l,g),x=m.contentWidth,w=m.contentHeight;var b=getArrowDimensions(h),k=b.arrowWidth,P=b.arrowHeight;var A={top:d/2-w/2,left:f/2-x/2,originX:v?"right":"left",originY:"top"};var y=getPopoverPosition(v,x,w,k,P,a,s,p,A,n,o);var I=i==="cover"?0:POPOVER_IOS_BODY_PADDING;var D=i==="cover"?0:25;var E=calculateWindowAdjustment(s,y.top,y.left,I,f,d,x,w,D,y.originX,y.originY,y.referenceCoordinates,y.arrowTop,y.arrowLeft,P),O=E.originX,_=E.originY,C=E.top,L=E.left,T=E.bottom,j=E.checkSafeAreaLeft,M=E.checkSafeAreaRight,Y=E.arrowTop,N=E.arrowLeft,R=E.addPopoverBottomClass;var W=createAnimation();var X=createAnimation();var z=createAnimation();X.addElement(u.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]);z.addElement(u.querySelector(".popover-arrow")).addElement(u.querySelector(".popover-content")).fromTo("opacity",.01,1);return W.easing("ease").duration(100).beforeAddWrite((function(){if(i==="cover"){e.style.setProperty("--width","".concat(x,"px"))}if(R){e.classList.add("popover-bottom")}if(T!==undefined){l.style.setProperty("bottom","".concat(T,"px"))}var t=" + var(--ion-safe-area-left, 0)";var r=" - var(--ion-safe-area-right, 0)";var a="".concat(L,"px");if(j){a="".concat(L,"px").concat(t)}if(M){a="".concat(L,"px").concat(r)}l.style.setProperty("top","calc(".concat(C,"px + var(--offset-y, 0))"));l.style.setProperty("left","calc(".concat(a," + var(--offset-x, 0))"));l.style.setProperty("transform-origin","".concat(_," ").concat(O));if(h!==null){var p=y.top!==C||y.left!==L;var c=shouldShowArrow(s,p,o,n);if(c){h.style.setProperty("top","calc(".concat(Y,"px + var(--offset-y, 0))"));h.style.setProperty("left","calc(".concat(N,"px + var(--offset-x, 0))"))}else{h.style.setProperty("display","none")}}})).addAnimation([X,z])};var iosLeaveAnimation=function(e){var t=getElementRoot(e);var r=t.querySelector(".popover-content");var o=t.querySelector(".popover-arrow");var i=createAnimation();var n=createAnimation();var a=createAnimation();n.addElement(t.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0);a.addElement(t.querySelector(".popover-arrow")).addElement(t.querySelector(".popover-content")).fromTo("opacity",.99,0);return i.easing("ease").afterAddWrite((function(){e.style.removeProperty("--width");e.classList.remove("popover-bottom");r.style.removeProperty("top");r.style.removeProperty("left");r.style.removeProperty("bottom");r.style.removeProperty("transform-origin");if(o){o.style.removeProperty("top");o.style.removeProperty("left");o.style.removeProperty("display")}})).duration(300).addAnimation([n,a])};var POPOVER_MD_BODY_PADDING=12;var mdEnterAnimation=function(e,t){var r;var o=t.event,i=t.size,n=t.trigger,a=t.reference,s=t.side,p=t.align;var c=e.ownerDocument;var v=c.dir==="rtl";var f=c.defaultView.innerWidth;var d=c.defaultView.innerHeight;var u=getElementRoot(e);var l=u.querySelector(".popover-content");var h=n||((r=o===null||o===void 0?void 0:o.detail)===null||r===void 0?void 0:r.ionShadowTarget)||(o===null||o===void 0?void 0:o.target);var g=getPopoverDimensions(i,l,h),m=g.contentWidth,x=g.contentHeight;var w={top:d/2-x/2,left:f/2-m/2,originX:v?"right":"left",originY:"top"};var b=getPopoverPosition(v,m,x,0,0,a,s,p,w,n,o);var k=i==="cover"?0:POPOVER_MD_BODY_PADDING;var P=calculateWindowAdjustment(s,b.top,b.left,k,f,d,m,x,0,b.originX,b.originY,b.referenceCoordinates),A=P.originX,y=P.originY,I=P.top,D=P.left,E=P.bottom;var O=createAnimation();var _=createAnimation();var C=createAnimation();var L=createAnimation();var T=createAnimation();_.addElement(u.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]);C.addElement(u.querySelector(".popover-wrapper")).duration(150).fromTo("opacity",.01,1);L.addElement(l).beforeStyles({top:"calc(".concat(I,"px + var(--offset-y, 0px))"),left:"calc(".concat(D,"px + var(--offset-x, 0px))"),"transform-origin":"".concat(y," ").concat(A)}).beforeAddWrite((function(){if(E!==undefined){l.style.setProperty("bottom","".concat(E,"px"))}})).fromTo("transform","scale(0.8)","scale(1)");T.addElement(u.querySelector(".popover-viewport")).fromTo("opacity",.01,1);return O.easing("cubic-bezier(0.36,0.66,0.04,1)").duration(300).beforeAddWrite((function(){if(i==="cover"){e.style.setProperty("--width","".concat(m,"px"))}if(y==="bottom"){e.classList.add("popover-bottom")}})).addAnimation([_,C,L,T])};var mdLeaveAnimation=function(e){var t=getElementRoot(e);var r=t.querySelector(".popover-content");var o=createAnimation();var i=createAnimation();var n=createAnimation();i.addElement(t.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0);n.addElement(t.querySelector(".popover-wrapper")).fromTo("opacity",.99,0);return o.easing("ease").afterAddWrite((function(){e.style.removeProperty("--width");e.classList.remove("popover-bottom");r.style.removeProperty("top");r.style.removeProperty("left");r.style.removeProperty("bottom");r.style.removeProperty("transform-origin")})).duration(150).addAnimation([i,n])};var popoverIosCss=':host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;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}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{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{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, #e6e6e6)}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden}.popover-arrow::after{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}@supports (inset-inline-start: 0){.popover-arrow::after{inset-inline-start:3px}}@supports not (inset-inline-start: 0){.popover-arrow::after{left:3px}:host-context([dir=rtl]) .popover-arrow::after{left:unset;right:unset;right:3px}[dir=rtl] .popover-arrow::after{left:unset;right:unset;right:3px}@supports selector(:dir(rtl)){.popover-arrow::after:dir(rtl){left:unset;right:unset;right:3px}}}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::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)}}';var popoverMdCss=":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;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}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{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{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--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{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]) .popover-content{-webkit-transform-origin:right top;transform-origin:right top}[dir=rtl] .popover-content{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.popover-viewport{-webkit-transition-delay:100ms;transition-delay:100ms}.popover-wrapper{opacity:0}";var Popover=function(){function e(e){var t=this;registerInstance(this,e);this.didPresent=createEvent(this,"ionPopoverDidPresent",7);this.willPresent=createEvent(this,"ionPopoverWillPresent",7);this.willDismiss=createEvent(this,"ionPopoverWillDismiss",7);this.didDismiss=createEvent(this,"ionPopoverDidDismiss",7);this.didPresentShorthand=createEvent(this,"didPresent",7);this.willPresentShorthand=createEvent(this,"willPresent",7);this.willDismissShorthand=createEvent(this,"willDismiss",7);this.didDismissShorthand=createEvent(this,"didDismiss",7);this.ionMount=createEvent(this,"ionMount",7);this.parentPopover=null;this.coreDelegate=CoreDelegate();this.lockController=createLockController();this.inline=false;this.focusDescendantOnPresent=false;this.onBackdropTap=function(){t.dismiss(undefined,BACKDROP)};this.onLifecycle=function(e){var r=t.usersElement;var o=LIFECYCLE_MAP[e.type];if(r&&o){var i=new CustomEvent(o,{bubbles:false,cancelable:false,detail:e.detail});r.dispatchEvent(i)}};this.configureTriggerInteraction=function(){var e=t,r=e.trigger,o=e.triggerAction,i=e.el,n=e.destroyTriggerInteraction;if(n){n()}if(r===undefined){return}var a=t.triggerEl=r!==undefined?document.getElementById(r):null;if(!a){printIonWarning('A trigger element with the ID "'.concat(r,'" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.'),t.el);return}t.destroyTriggerInteraction=configureTriggerInteraction(a,o,i)};this.configureKeyboardInteraction=function(){var e=t,r=e.destroyKeyboardInteraction,o=e.el;if(r){r()}t.destroyKeyboardInteraction=configureKeyboardInteraction(o)};this.configureDismissInteraction=function(){var e=t,r=e.destroyDismissInteraction,o=e.parentPopover,i=e.triggerAction,n=e.triggerEl,a=e.el;if(!o||!n){return}if(r){r()}t.destroyDismissInteraction=configureDismissInteraction(n,i,a,o)};this.presented=false;this.hasController=false;this.delegate=undefined;this.overlayIndex=undefined;this.enterAnimation=undefined;this.leaveAnimation=undefined;this.component=undefined;this.componentProps=undefined;this.keyboardClose=true;this.cssClass=undefined;this.backdropDismiss=true;this.event=undefined;this.showBackdrop=true;this.translucent=false;this.animated=true;this.htmlAttributes=undefined;this.triggerAction="click";this.trigger=undefined;this.size="auto";this.dismissOnSelect=false;this.reference="trigger";this.side="bottom";this.alignment=undefined;this.arrow=true;this.isOpen=false;this.keyboardEvents=false;this.keepContentsMounted=false}e.prototype.onTriggerChange=function(){this.configureTriggerInteraction()};e.prototype.onIsOpenChange=function(e,t){if(e===true&&t===false){this.present()}else if(e===false&&t===true){this.dismiss()}};e.prototype.connectedCallback=function(){var e=this,t=e.configureTriggerInteraction,r=e.el;prepareOverlay(r);t()};e.prototype.disconnectedCallback=function(){var e=this.destroyTriggerInteraction;if(e){e()}};e.prototype.componentWillLoad=function(){var e=this.el;var t=setOverlayId(e);this.parentPopover=e.closest("ion-popover:not(#".concat(t,")"));if(this.alignment===undefined){this.alignment=getIonMode(this)==="ios"?"center":"start"}};e.prototype.componentDidLoad=function(){var e=this;var t=this,r=t.parentPopover,o=t.isOpen;if(o===true){raf((function(){return e.present()}))}if(r){addEventListener(r,"ionPopoverWillDismiss",(function(){e.dismiss(undefined,undefined,false)}))}};e.prototype.presentFromTrigger=function(e,t){if(t===void 0){t=false}return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){switch(r.label){case 0:this.focusDescendantOnPresent=t;return[4,this.present(e)];case 1:r.sent();this.focusDescendantOnPresent=false;return[2]}}))}))};e.prototype.getDelegate=function(e){if(e===void 0){e=false}if(this.workingDelegate&&!e){return{delegate:this.workingDelegate,inline:this.inline}}var t=this.el.parentNode;var r=this.inline=t!==null&&!this.hasController;var o=this.workingDelegate=r?this.delegate||this.coreDelegate:this.delegate;return{inline:r,delegate:o}};e.prototype.present=function(e){return __awaiter(this,void 0,void 0,(function(){var t,r,o,i,n,a;return __generator(this,(function(s){switch(s.label){case 0:return[4,this.lockController.lock()];case 1:t=s.sent();if(this.presented){t();return[2]}r=this.el;o=this.getDelegate(true),i=o.inline,n=o.delegate;this.ionMount.emit();a=this;return[4,attachComponent(n,r,this.component,["popover-viewport"],this.componentProps,i)];case 2:a.usersElement=s.sent();if(!this.keyboardEvents){this.configureKeyboardInteraction()}this.configureDismissInteraction();if(!hasLazyBuild(r))return[3,4];return[4,deepReady(this.usersElement)];case 3:s.sent();return[3,6];case 4:if(!!this.keepContentsMounted)return[3,6];return[4,waitForMount()];case 5:s.sent();s.label=6;case 6:return[4,present(this,"popoverEnter",iosEnterAnimation,mdEnterAnimation,{event:e||this.event,size:this.size,trigger:this.triggerEl,reference:this.reference,side:this.side,align:this.alignment})];case 7:s.sent();if(this.focusDescendantOnPresent){focusFirstDescendant(this.el,this.el)}t();return[2]}}))}))};e.prototype.dismiss=function(e,t,r){if(r===void 0){r=true}return __awaiter(this,void 0,void 0,(function(){var o,i,n,a,s,p;return __generator(this,(function(c){switch(c.label){case 0:return[4,this.lockController.lock()];case 1:o=c.sent();i=this,n=i.destroyKeyboardInteraction,a=i.destroyDismissInteraction;if(r&&this.parentPopover){this.parentPopover.dismiss(e,t,r)}return[4,dismiss(this,e,t,"popoverLeave",iosLeaveAnimation,mdLeaveAnimation,this.event)];case 2:s=c.sent();if(!s)return[3,4];if(n){n();this.destroyKeyboardInteraction=undefined}if(a){a();this.destroyDismissInteraction=undefined}p=this.getDelegate().delegate;return[4,detachComponent(p,this.usersElement)];case 3:c.sent();c.label=4;case 4:o();return[2,s]}}))}))};e.prototype.getParentPopover=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.parentPopover]}))}))};e.prototype.onDidDismiss=function(){return eventMethod(this.el,"ionPopoverDidDismiss")};e.prototype.onWillDismiss=function(){return eventMethod(this.el,"ionPopoverWillDismiss")};e.prototype.render=function(){var e;var t=this;var r=getIonMode(this);var o=this,i=o.onLifecycle,n=o.parentPopover,a=o.dismissOnSelect,s=o.side,p=o.arrow,c=o.htmlAttributes;var v=isPlatform("desktop");var f=p&&!n;return h(Host,Object.assign({"aria-modal":"true","no-router":true,tabindex:"-1"},c,{style:{zIndex:"".concat(2e4+this.overlayIndex)},class:Object.assign(Object.assign({},getClassMap(this.cssClass)),(e={},e[r]=true,e["popover-translucent"]=this.translucent,e["overlay-hidden"]=true,e["popover-desktop"]=v,e["popover-side-".concat(s)]=true,e["popover-nested"]=!!n,e)),onIonPopoverDidPresent:i,onIonPopoverWillPresent:i,onIonPopoverWillDismiss:i,onIonPopoverDidDismiss:i,onIonBackdropTap:this.onBackdropTap}),!n&&h("ion-backdrop",{tappable:this.backdropDismiss,visible:this.showBackdrop,part:"backdrop"}),h("div",{class:"popover-wrapper ion-overlay-wrapper",onClick:a?function(){return t.dismiss()}:undefined},f&&h("div",{class:"popover-arrow",part:"arrow"}),h("div",{class:"popover-content",part:"content"},h("slot",null))))};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{trigger:["onTriggerChange"],triggerAction:["onTriggerChange"],isOpen:["onIsOpenChange"]}},enumerable:false,configurable:true});return e}();var LIFECYCLE_MAP={ionPopoverDidPresent:"ionViewDidEnter",ionPopoverWillPresent:"ionViewWillEnter",ionPopoverWillDismiss:"ionViewWillLeave",ionPopoverDidDismiss:"ionViewDidLeave"};Popover.style={ios:popoverIosCss,md:popoverMdCss};export{Popover as ion_popover};
|
|
4
|
+
*/import{r as registerInstance,d as createEvent,h,H as Host,f as getElement}from"./index-7c9b1bca.js";import{C as CoreDelegate,a as attachComponent,d as detachComponent}from"./framework-delegate-aa433dea.js";import{r as raf,g as getElementRoot,a as addEventListener,m as hasLazyBuild}from"./helpers-3379ba19.js";import{c as createLockController}from"./lock-controller-e8c6c051.js";import{p as printIonWarning}from"./index-595d62c9.js";import{B as BACKDROP,j as prepareOverlay,k as setOverlayId,f as present,o as focusFirstDescendant,g as dismiss,h as eventMethod}from"./overlays-789cd7a7.js";import{b as getIonMode,a as isPlatform}from"./ionic-global-40e42e7f.js";import{g as getClassMap}from"./theme-17531cdf.js";import{e as deepReady,w as waitForMount}from"./index-6a0ccabb.js";import{c as createAnimation}from"./animation-8aa13916.js";import"./index-7a14ecec.js";import"./gesture-controller-3723db7c.js";import"./hardware-back-button-39299f84.js";var getArrowDimensions=function(e){if(!e){return{arrowWidth:0,arrowHeight:0}}var t=e.getBoundingClientRect(),r=t.width,o=t.height;return{arrowWidth:r,arrowHeight:o}};var getPopoverDimensions=function(e,t,r){var o=t.getBoundingClientRect();var i=o.height;var n=o.width;if(e==="cover"&&r){var a=r.getBoundingClientRect();n=a.width}return{contentWidth:n,contentHeight:i}};var configureDismissInteraction=function(e,t,r,o){var i=[];var n=getElementRoot(o);var a=n.querySelector(".popover-content");switch(t){case"hover":i=[{eventName:"mouseenter",callback:function(t){var o=document.elementFromPoint(t.clientX,t.clientY);if(o===e){return}r.dismiss(undefined,undefined,false)}}];break;case"context-menu":case"click":default:i=[{eventName:"click",callback:function(t){var o=t.target;var i=o.closest("[data-ion-popover-trigger]");if(i===e){t.stopPropagation();return}r.dismiss(undefined,undefined,false)}}];break}i.forEach((function(e){var t=e.eventName,r=e.callback;return a.addEventListener(t,r)}));return function(){i.forEach((function(e){var t=e.eventName,r=e.callback;return a.removeEventListener(t,r)}))}};var configureTriggerInteraction=function(e,t,r){var o=[];switch(t){case"hover":var i;o=[{eventName:"mouseenter",callback:function(e){return __awaiter(void 0,void 0,void 0,(function(){return __generator(this,(function(t){e.stopPropagation();if(i){clearTimeout(i)}i=setTimeout((function(){raf((function(){r.presentFromTrigger(e);i=undefined}))}),100);return[2]}))}))}},{eventName:"mouseleave",callback:function(e){if(i){clearTimeout(i)}var t=e.relatedTarget;if(!t){return}if(t.closest("ion-popover")!==r){r.dismiss(undefined,undefined,false)}}},{eventName:"click",callback:function(e){return e.stopPropagation()}},{eventName:"ionPopoverActivateTrigger",callback:function(e){return r.presentFromTrigger(e,true)}}];break;case"context-menu":o=[{eventName:"contextmenu",callback:function(e){e.preventDefault();r.presentFromTrigger(e)}},{eventName:"click",callback:function(e){return e.stopPropagation()}},{eventName:"ionPopoverActivateTrigger",callback:function(e){return r.presentFromTrigger(e,true)}}];break;case"click":default:o=[{eventName:"click",callback:function(e){return r.presentFromTrigger(e)}},{eventName:"ionPopoverActivateTrigger",callback:function(e){return r.presentFromTrigger(e,true)}}];break}o.forEach((function(t){var r=t.eventName,o=t.callback;return e.addEventListener(r,o)}));e.setAttribute("data-ion-popover-trigger","true");return function(){o.forEach((function(t){var r=t.eventName,o=t.callback;return e.removeEventListener(r,o)}));e.removeAttribute("data-ion-popover-trigger")}};var getIndexOfItem=function(e,t){if(!t||t.tagName!=="ION-ITEM"){return-1}return e.findIndex((function(e){return e===t}))};var getNextItem=function(e,t){var r=getIndexOfItem(e,t);return e[r+1]};var getPrevItem=function(e,t){var r=getIndexOfItem(e,t);return e[r-1]};var focusItem=function(e){var t=getElementRoot(e);var r=t.querySelector("button");if(r){raf((function(){return r.focus()}))}};var isTriggerElement=function(e){return e.hasAttribute("data-ion-popover-trigger")};var configureKeyboardInteraction=function(e){var t=function(t){return __awaiter(void 0,void 0,void 0,(function(){var r,o,i,n,a,s,p,c,v,f,d;return __generator(this,(function(u){switch(u.label){case 0:o=document.activeElement;i=[];n=(r=t.target)===null||r===void 0?void 0:r.tagName;if(n!=="ION-POPOVER"&&n!=="ION-ITEM"){return[2]}try{i=Array.from(e.querySelectorAll("ion-item:not(ion-popover ion-popover *):not([disabled])"))}catch(e){}a=t.key;switch(a){case"ArrowLeft":return[3,1];case"ArrowDown":return[3,3];case"ArrowUp":return[3,4];case"Home":return[3,5];case"End":return[3,6];case"ArrowRight":return[3,7];case" ":return[3,7];case"Enter":return[3,7]}return[3,8];case 1:return[4,e.getParentPopover()];case 2:s=u.sent();if(s){e.dismiss(undefined,undefined,false)}return[3,8];case 3:t.preventDefault();p=getNextItem(i,o);if(p!==undefined){focusItem(p)}return[3,8];case 4:t.preventDefault();c=getPrevItem(i,o);if(c!==undefined){focusItem(c)}return[3,8];case 5:t.preventDefault();v=i[0];if(v!==undefined){focusItem(v)}return[3,8];case 6:t.preventDefault();f=i[i.length-1];if(f!==undefined){focusItem(f)}return[3,8];case 7:if(o&&isTriggerElement(o)){d=new CustomEvent("ionPopoverActivateTrigger");o.dispatchEvent(d)}return[3,8];case 8:return[2]}}))}))};e.addEventListener("keydown",t);return function(){return e.removeEventListener("keydown",t)}};var getPopoverPosition=function(e,t,r,o,i,n,a,s,p,c,v){var f;var d={top:0,left:0,width:0,height:0};switch(n){case"event":if(!v){return p}var u=v;d={top:u.clientY,left:u.clientX,width:1,height:1};break;case"trigger":default:var l=v;var h=c||((f=l===null||l===void 0?void 0:l.detail)===null||f===void 0?void 0:f.ionShadowTarget)||(l===null||l===void 0?void 0:l.target);if(!h){return p}var g=h.getBoundingClientRect();d={top:g.top,left:g.left,width:g.width,height:g.height};break}var m=calculatePopoverSide(a,d,t,r,o,i,e);var x=calculatePopoverAlign(s,a,d,t,r);var w=m.top+x.top;var b=m.left+x.left;var k=calculateArrowPosition(a,o,i,w,b,t,r,e),P=k.arrowTop,A=k.arrowLeft;var y=calculatePopoverOrigin(a,s,e),I=y.originX,D=y.originY;return{top:w,left:b,referenceCoordinates:d,arrowTop:P,arrowLeft:A,originX:I,originY:D}};var calculatePopoverOrigin=function(e,t,r){switch(e){case"top":return{originX:getOriginXAlignment(t),originY:"bottom"};case"bottom":return{originX:getOriginXAlignment(t),originY:"top"};case"left":return{originX:"right",originY:getOriginYAlignment(t)};case"right":return{originX:"left",originY:getOriginYAlignment(t)};case"start":return{originX:r?"left":"right",originY:getOriginYAlignment(t)};case"end":return{originX:r?"right":"left",originY:getOriginYAlignment(t)}}};var getOriginXAlignment=function(e){switch(e){case"start":return"left";case"center":return"center";case"end":return"right"}};var getOriginYAlignment=function(e){switch(e){case"start":return"top";case"center":return"center";case"end":return"bottom"}};var calculateArrowPosition=function(e,t,r,o,i,n,a,s){var p={arrowTop:o+a/2-t/2,arrowLeft:i+n-t/2};var c={arrowTop:o+a/2-t/2,arrowLeft:i-t*1.5};switch(e){case"top":return{arrowTop:o+a,arrowLeft:i+n/2-t/2};case"bottom":return{arrowTop:o-r,arrowLeft:i+n/2-t/2};case"left":return p;case"right":return c;case"start":return s?c:p;case"end":return s?p:c;default:return{arrowTop:0,arrowLeft:0}}};var calculatePopoverSide=function(e,t,r,o,i,n,a){var s={top:t.top,left:t.left-r-i};var p={top:t.top,left:t.left+t.width+i};switch(e){case"top":return{top:t.top-o-n,left:t.left};case"right":return p;case"bottom":return{top:t.top+t.height+n,left:t.left};case"left":return s;case"start":return a?p:s;case"end":return a?s:p}};var calculatePopoverAlign=function(e,t,r,o,i){switch(e){case"center":return calculatePopoverCenterAlign(t,r,o,i);case"end":return calculatePopoverEndAlign(t,r,o,i);case"start":default:return{top:0,left:0}}};var calculatePopoverEndAlign=function(e,t,r,o){switch(e){case"start":case"end":case"left":case"right":return{top:-(o-t.height),left:0};case"top":case"bottom":default:return{top:0,left:-(r-t.width)}}};var calculatePopoverCenterAlign=function(e,t,r,o){switch(e){case"start":case"end":case"left":case"right":return{top:-(o/2-t.height/2),left:0};case"top":case"bottom":default:return{top:0,left:-(r/2-t.width/2)}}};var calculateWindowAdjustment=function(e,t,r,o,i,n,a,s,p,c,v,f,d,u,l){if(d===void 0){d=0}if(u===void 0){u=0}if(l===void 0){l=0}var h=d;var g=u;var m=r;var x=t;var w;var b=c;var k=v;var P=false;var A=false;var y=f?f.top+f.height:n/2-s/2;var I=f?f.height:0;var D=false;if(m<o+p){m=o;P=true;b="left"}else if(a+o+m+p>i){A=true;m=i-a-o;b="right"}if(y+I+s>n&&(e==="top"||e==="bottom")){if(y-s>0){x=Math.max(12,y-s-I-(l-1));h=x+s;k="bottom";D=true}else{w=o}}return{top:x,left:m,bottom:w,originX:b,originY:k,checkSafeAreaLeft:P,checkSafeAreaRight:A,arrowTop:h,arrowLeft:g,addPopoverBottomClass:D}};var shouldShowArrow=function(e,t,r,o){if(t===void 0){t=false}if(!r&&!o){return false}if(e!=="top"&&e!=="bottom"&&t){return false}return true};var POPOVER_IOS_BODY_PADDING=5;var iosEnterAnimation=function(e,t){var r;var o=t.event,i=t.size,n=t.trigger,a=t.reference,s=t.side,p=t.align;var c=e.ownerDocument;var v=c.dir==="rtl";var f=c.defaultView.innerWidth;var d=c.defaultView.innerHeight;var u=getElementRoot(e);var l=u.querySelector(".popover-content");var h=u.querySelector(".popover-arrow");var g=n||((r=o===null||o===void 0?void 0:o.detail)===null||r===void 0?void 0:r.ionShadowTarget)||(o===null||o===void 0?void 0:o.target);var m=getPopoverDimensions(i,l,g),x=m.contentWidth,w=m.contentHeight;var b=getArrowDimensions(h),k=b.arrowWidth,P=b.arrowHeight;var A={top:d/2-w/2,left:f/2-x/2,originX:v?"right":"left",originY:"top"};var y=getPopoverPosition(v,x,w,k,P,a,s,p,A,n,o);var I=i==="cover"?0:POPOVER_IOS_BODY_PADDING;var D=i==="cover"?0:25;var E=calculateWindowAdjustment(s,y.top,y.left,I,f,d,x,w,D,y.originX,y.originY,y.referenceCoordinates,y.arrowTop,y.arrowLeft,P),O=E.originX,_=E.originY,C=E.top,L=E.left,j=E.bottom,T=E.checkSafeAreaLeft,M=E.checkSafeAreaRight,Y=E.arrowTop,N=E.arrowLeft,R=E.addPopoverBottomClass;var W=createAnimation();var X=createAnimation();var z=createAnimation();X.addElement(u.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]);z.addElement(u.querySelector(".popover-arrow")).addElement(u.querySelector(".popover-content")).fromTo("opacity",.01,1);return W.easing("ease").duration(100).beforeAddWrite((function(){if(i==="cover"){e.style.setProperty("--width","".concat(x,"px"))}if(R){e.classList.add("popover-bottom")}if(j!==undefined){l.style.setProperty("bottom","".concat(j,"px"))}var t=" + var(--ion-safe-area-left, 0)";var r=" - var(--ion-safe-area-right, 0)";var a="".concat(L,"px");if(T){a="".concat(L,"px").concat(t)}if(M){a="".concat(L,"px").concat(r)}l.style.setProperty("top","calc(".concat(C,"px + var(--offset-y, 0))"));l.style.setProperty("left","calc(".concat(a," + var(--offset-x, 0))"));l.style.setProperty("transform-origin","".concat(_," ").concat(O));if(h!==null){var p=y.top!==C||y.left!==L;var c=shouldShowArrow(s,p,o,n);if(c){h.style.setProperty("top","calc(".concat(Y,"px + var(--offset-y, 0))"));h.style.setProperty("left","calc(".concat(N,"px + var(--offset-x, 0))"))}else{h.style.setProperty("display","none")}}})).addAnimation([X,z])};var iosLeaveAnimation=function(e){var t=getElementRoot(e);var r=t.querySelector(".popover-content");var o=t.querySelector(".popover-arrow");var i=createAnimation();var n=createAnimation();var a=createAnimation();n.addElement(t.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0);a.addElement(t.querySelector(".popover-arrow")).addElement(t.querySelector(".popover-content")).fromTo("opacity",.99,0);return i.easing("ease").afterAddWrite((function(){e.style.removeProperty("--width");e.classList.remove("popover-bottom");r.style.removeProperty("top");r.style.removeProperty("left");r.style.removeProperty("bottom");r.style.removeProperty("transform-origin");if(o){o.style.removeProperty("top");o.style.removeProperty("left");o.style.removeProperty("display")}})).duration(300).addAnimation([n,a])};var POPOVER_MD_BODY_PADDING=12;var mdEnterAnimation=function(e,t){var r;var o=t.event,i=t.size,n=t.trigger,a=t.reference,s=t.side,p=t.align;var c=e.ownerDocument;var v=c.dir==="rtl";var f=c.defaultView.innerWidth;var d=c.defaultView.innerHeight;var u=getElementRoot(e);var l=u.querySelector(".popover-content");var h=n||((r=o===null||o===void 0?void 0:o.detail)===null||r===void 0?void 0:r.ionShadowTarget)||(o===null||o===void 0?void 0:o.target);var g=getPopoverDimensions(i,l,h),m=g.contentWidth,x=g.contentHeight;var w={top:d/2-x/2,left:f/2-m/2,originX:v?"right":"left",originY:"top"};var b=getPopoverPosition(v,m,x,0,0,a,s,p,w,n,o);var k=i==="cover"?0:POPOVER_MD_BODY_PADDING;var P=calculateWindowAdjustment(s,b.top,b.left,k,f,d,m,x,0,b.originX,b.originY,b.referenceCoordinates),A=P.originX,y=P.originY,I=P.top,D=P.left,E=P.bottom;var O=createAnimation();var _=createAnimation();var C=createAnimation();var L=createAnimation();var j=createAnimation();_.addElement(u.querySelector("ion-backdrop")).fromTo("opacity",.01,"var(--backdrop-opacity)").beforeStyles({"pointer-events":"none"}).afterClearStyles(["pointer-events"]);C.addElement(u.querySelector(".popover-wrapper")).duration(150).fromTo("opacity",.01,1);L.addElement(l).beforeStyles({top:"calc(".concat(I,"px + var(--offset-y, 0px))"),left:"calc(".concat(D,"px + var(--offset-x, 0px))"),"transform-origin":"".concat(y," ").concat(A)}).beforeAddWrite((function(){if(E!==undefined){l.style.setProperty("bottom","".concat(E,"px"))}})).fromTo("transform","scale(0.8)","scale(1)");j.addElement(u.querySelector(".popover-viewport")).fromTo("opacity",.01,1);return O.easing("cubic-bezier(0.36,0.66,0.04,1)").duration(300).beforeAddWrite((function(){if(i==="cover"){e.style.setProperty("--width","".concat(m,"px"))}if(y==="bottom"){e.classList.add("popover-bottom")}})).addAnimation([_,C,L,j])};var mdLeaveAnimation=function(e){var t=getElementRoot(e);var r=t.querySelector(".popover-content");var o=createAnimation();var i=createAnimation();var n=createAnimation();i.addElement(t.querySelector("ion-backdrop")).fromTo("opacity","var(--backdrop-opacity)",0);n.addElement(t.querySelector(".popover-wrapper")).fromTo("opacity",.99,0);return o.easing("ease").afterAddWrite((function(){e.style.removeProperty("--width");e.classList.remove("popover-bottom");r.style.removeProperty("top");r.style.removeProperty("left");r.style.removeProperty("bottom");r.style.removeProperty("transform-origin")})).duration(150).addAnimation([i,n])};var popoverIosCss=':host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;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}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{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{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--width:200px;--max-height:90%;--box-shadow:none;--backdrop-opacity:var(--ion-backdrop-opacity, 0.08)}:host(.popover-desktop){--box-shadow:0px 4px 16px 0px rgba(0, 0, 0, 0.12)}.popover-content{border-radius:10px}:host(.popover-desktop) .popover-content{border:0.5px solid var(--ion-color-step-100, #e6e6e6)}.popover-arrow{display:block;position:absolute;width:20px;height:10px;overflow:hidden}.popover-arrow::after{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}@supports (inset-inline-start: 0){.popover-arrow::after{inset-inline-start:3px}}@supports not (inset-inline-start: 0){.popover-arrow::after{left:3px}:host-context([dir=rtl]) .popover-arrow::after{left:unset;right:unset;right:3px}[dir=rtl] .popover-arrow::after{left:unset;right:unset;right:3px}@supports selector(:dir(rtl)){.popover-arrow::after:dir(rtl){left:unset;right:unset;right:3px}}}:host(.popover-bottom) .popover-arrow{top:auto;bottom:-10px}:host(.popover-bottom) .popover-arrow::after{top:-6px}:host(.popover-side-left) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host(.popover-side-right) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host(.popover-side-top) .popover-arrow{-webkit-transform:rotate(180deg);transform:rotate(180deg)}:host(.popover-side-start) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}:host-context([dir=rtl]):host(.popover-side-start) .popover-arrow,:host-context([dir=rtl]).popover-side-start .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}@supports selector(:dir(rtl)){:host(.popover-side-start:dir(rtl)) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}}:host(.popover-side-end) .popover-arrow{-webkit-transform:rotate(-90deg);transform:rotate(-90deg)}:host-context([dir=rtl]):host(.popover-side-end) .popover-arrow,:host-context([dir=rtl]).popover-side-end .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}@supports selector(:dir(rtl)){:host(.popover-side-end:dir(rtl)) .popover-arrow{-webkit-transform:rotate(90deg);transform:rotate(90deg)}}.popover-arrow,.popover-content{opacity:0}@supports ((-webkit-backdrop-filter: blur(0)) or (backdrop-filter: blur(0))){:host(.popover-translucent) .popover-content,:host(.popover-translucent) .popover-arrow::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)}}';var popoverMdCss=":host{--background:var(--ion-background-color, #fff);--min-width:0;--min-height:0;--max-width:auto;--height:auto;--offset-x:0px;--offset-y:0px;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}:host(.popover-nested){pointer-events:none}:host(.popover-nested) .popover-wrapper{pointer-events:auto}:host(.overlay-hidden){display:none}.popover-wrapper{z-index:10}.popover-content{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{--ion-safe-area-top:0px;--ion-safe-area-right:0px;--ion-safe-area-bottom:0px;--ion-safe-area-left:0px;display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;overflow:hidden}:host(.popover-nested.popover-side-left){--offset-x:5px}:host(.popover-nested.popover-side-right){--offset-x:-5px}:host(.popover-nested.popover-side-start){--offset-x:5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-start),:host-context([dir=rtl]).popover-nested.popover-side-start{--offset-x:-5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-start:dir(rtl)){--offset-x:-5px}}:host(.popover-nested.popover-side-end){--offset-x:-5px}:host-context([dir=rtl]):host(.popover-nested.popover-side-end),:host-context([dir=rtl]).popover-nested.popover-side-end{--offset-x:5px}@supports selector(:dir(rtl)){:host(.popover-nested.popover-side-end:dir(rtl)){--offset-x:5px}}:host{--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{border-radius:4px;-webkit-transform-origin:left top;transform-origin:left top}:host-context([dir=rtl]) .popover-content{-webkit-transform-origin:right top;transform-origin:right top}[dir=rtl] .popover-content{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){.popover-content:dir(rtl){-webkit-transform-origin:right top;transform-origin:right top}}.popover-viewport{-webkit-transition-delay:100ms;transition-delay:100ms}.popover-wrapper{opacity:0}";var Popover=function(){function e(e){var t=this;registerInstance(this,e);this.didPresent=createEvent(this,"ionPopoverDidPresent",7);this.willPresent=createEvent(this,"ionPopoverWillPresent",7);this.willDismiss=createEvent(this,"ionPopoverWillDismiss",7);this.didDismiss=createEvent(this,"ionPopoverDidDismiss",7);this.didPresentShorthand=createEvent(this,"didPresent",7);this.willPresentShorthand=createEvent(this,"willPresent",7);this.willDismissShorthand=createEvent(this,"willDismiss",7);this.didDismissShorthand=createEvent(this,"didDismiss",7);this.ionMount=createEvent(this,"ionMount",7);this.parentPopover=null;this.coreDelegate=CoreDelegate();this.lockController=createLockController();this.inline=false;this.focusDescendantOnPresent=false;this.onBackdropTap=function(){t.dismiss(undefined,BACKDROP)};this.onLifecycle=function(e){var r=t.usersElement;var o=LIFECYCLE_MAP[e.type];if(r&&o){var i=new CustomEvent(o,{bubbles:false,cancelable:false,detail:e.detail});r.dispatchEvent(i)}};this.configureTriggerInteraction=function(){var e=t,r=e.trigger,o=e.triggerAction,i=e.el,n=e.destroyTriggerInteraction;if(n){n()}if(r===undefined){return}var a=t.triggerEl=r!==undefined?document.getElementById(r):null;if(!a){printIonWarning('A trigger element with the ID "'.concat(r,'" was not found in the DOM. The trigger element must be in the DOM when the "trigger" property is set on ion-popover.'),t.el);return}t.destroyTriggerInteraction=configureTriggerInteraction(a,o,i)};this.configureKeyboardInteraction=function(){var e=t,r=e.destroyKeyboardInteraction,o=e.el;if(r){r()}t.destroyKeyboardInteraction=configureKeyboardInteraction(o)};this.configureDismissInteraction=function(){var e=t,r=e.destroyDismissInteraction,o=e.parentPopover,i=e.triggerAction,n=e.triggerEl,a=e.el;if(!o||!n){return}if(r){r()}t.destroyDismissInteraction=configureDismissInteraction(n,i,a,o)};this.presented=false;this.hasController=false;this.delegate=undefined;this.overlayIndex=undefined;this.enterAnimation=undefined;this.leaveAnimation=undefined;this.component=undefined;this.componentProps=undefined;this.keyboardClose=true;this.cssClass=undefined;this.backdropDismiss=true;this.event=undefined;this.showBackdrop=true;this.translucent=false;this.animated=true;this.htmlAttributes=undefined;this.triggerAction="click";this.trigger=undefined;this.size="auto";this.dismissOnSelect=false;this.reference="trigger";this.side="bottom";this.alignment=undefined;this.arrow=true;this.isOpen=false;this.keyboardEvents=false;this.keepContentsMounted=false}e.prototype.onTriggerChange=function(){this.configureTriggerInteraction()};e.prototype.onIsOpenChange=function(e,t){if(e===true&&t===false){this.present()}else if(e===false&&t===true){this.dismiss()}};e.prototype.connectedCallback=function(){var e=this,t=e.configureTriggerInteraction,r=e.el;prepareOverlay(r);t()};e.prototype.disconnectedCallback=function(){var e=this.destroyTriggerInteraction;if(e){e()}};e.prototype.componentWillLoad=function(){var e=this.el;var t=setOverlayId(e);this.parentPopover=e.closest("ion-popover:not(#".concat(t,")"));if(this.alignment===undefined){this.alignment=getIonMode(this)==="ios"?"center":"start"}};e.prototype.componentDidLoad=function(){var e=this;var t=this,r=t.parentPopover,o=t.isOpen;if(o===true){raf((function(){return e.present()}))}if(r){addEventListener(r,"ionPopoverWillDismiss",(function(){e.dismiss(undefined,undefined,false)}))}};e.prototype.presentFromTrigger=function(e,t){if(t===void 0){t=false}return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(r){switch(r.label){case 0:this.focusDescendantOnPresent=t;return[4,this.present(e)];case 1:r.sent();this.focusDescendantOnPresent=false;return[2]}}))}))};e.prototype.getDelegate=function(e){if(e===void 0){e=false}if(this.workingDelegate&&!e){return{delegate:this.workingDelegate,inline:this.inline}}var t=this.el.parentNode;var r=this.inline=t!==null&&!this.hasController;var o=this.workingDelegate=r?this.delegate||this.coreDelegate:this.delegate;return{inline:r,delegate:o}};e.prototype.present=function(e){return __awaiter(this,void 0,void 0,(function(){var t,r,o,i,n,a;return __generator(this,(function(s){switch(s.label){case 0:return[4,this.lockController.lock()];case 1:t=s.sent();if(this.presented){t();return[2]}r=this.el;o=this.getDelegate(true),i=o.inline,n=o.delegate;this.ionMount.emit();a=this;return[4,attachComponent(n,r,this.component,["popover-viewport"],this.componentProps,i)];case 2:a.usersElement=s.sent();if(!this.keyboardEvents){this.configureKeyboardInteraction()}this.configureDismissInteraction();if(!hasLazyBuild(r))return[3,4];return[4,deepReady(this.usersElement)];case 3:s.sent();return[3,6];case 4:if(!!this.keepContentsMounted)return[3,6];return[4,waitForMount()];case 5:s.sent();s.label=6;case 6:return[4,present(this,"popoverEnter",iosEnterAnimation,mdEnterAnimation,{event:e||this.event,size:this.size,trigger:this.triggerEl,reference:this.reference,side:this.side,align:this.alignment})];case 7:s.sent();if(this.focusDescendantOnPresent){focusFirstDescendant(this.el,this.el)}t();return[2]}}))}))};e.prototype.dismiss=function(e,t,r){if(r===void 0){r=true}return __awaiter(this,void 0,void 0,(function(){var o,i,n,a,s,p;return __generator(this,(function(c){switch(c.label){case 0:return[4,this.lockController.lock()];case 1:o=c.sent();i=this,n=i.destroyKeyboardInteraction,a=i.destroyDismissInteraction;if(r&&this.parentPopover){this.parentPopover.dismiss(e,t,r)}return[4,dismiss(this,e,t,"popoverLeave",iosLeaveAnimation,mdLeaveAnimation,this.event)];case 2:s=c.sent();if(!s)return[3,4];if(n){n();this.destroyKeyboardInteraction=undefined}if(a){a();this.destroyDismissInteraction=undefined}p=this.getDelegate().delegate;return[4,detachComponent(p,this.usersElement)];case 3:c.sent();c.label=4;case 4:o();return[2,s]}}))}))};e.prototype.getParentPopover=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.parentPopover]}))}))};e.prototype.onDidDismiss=function(){return eventMethod(this.el,"ionPopoverDidDismiss")};e.prototype.onWillDismiss=function(){return eventMethod(this.el,"ionPopoverWillDismiss")};e.prototype.render=function(){var e;var t=this;var r=getIonMode(this);var o=this,i=o.onLifecycle,n=o.parentPopover,a=o.dismissOnSelect,s=o.side,p=o.arrow,c=o.htmlAttributes;var v=isPlatform("desktop");var f=p&&!n;return h(Host,Object.assign({"aria-modal":"true","no-router":true,tabindex:"-1"},c,{style:{zIndex:"".concat(2e4+this.overlayIndex)},class:Object.assign(Object.assign({},getClassMap(this.cssClass)),(e={},e[r]=true,e["popover-translucent"]=this.translucent,e["overlay-hidden"]=true,e["popover-desktop"]=v,e["popover-side-".concat(s)]=true,e["popover-nested"]=!!n,e)),onIonPopoverDidPresent:i,onIonPopoverWillPresent:i,onIonPopoverWillDismiss:i,onIonPopoverDidDismiss:i,onIonBackdropTap:this.onBackdropTap}),!n&&h("ion-backdrop",{tappable:this.backdropDismiss,visible:this.showBackdrop,part:"backdrop"}),h("div",{class:"popover-wrapper ion-overlay-wrapper",onClick:a?function(){return t.dismiss()}:undefined},f&&h("div",{class:"popover-arrow",part:"arrow"}),h("div",{class:"popover-content",part:"content"},h("slot",null))))};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{trigger:["onTriggerChange"],triggerAction:["onTriggerChange"],isOpen:["onIsOpenChange"]}},enumerable:false,configurable:true});return e}();var LIFECYCLE_MAP={ionPopoverDidPresent:"ionViewDidEnter",ionPopoverWillPresent:"ionViewWillEnter",ionPopoverWillDismiss:"ionViewWillLeave",ionPopoverDidDismiss:"ionViewDidLeave"};Popover.style={ios:popoverIosCss,md:popoverMdCss};export{Popover as ion_popover};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import{__awaiter,__generator}from"tslib";
|
|
2
2
|
/*!
|
|
3
3
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
4
|
-
*/import{r as registerInstance,d as createEvent,h,H as Host,f as getElement}from"./index-7c9b1bca.js";import{f as findClosestIonContent,d as disableContentScrollY,r as resetContentScrollY}from"./index-4392efa5.js";import{c as createLegacyFormController}from"./form-controller-64edeaad.js";import{l as clamp,j as debounceEvent,i as inheritAriaAttributes,d as renderHiddenInput,e as getAriaLabel}from"./helpers-3379ba19.js";import{p as printIonWarning}from"./index-595d62c9.js";import{i as isRTL}from"./dir-912e3e13.js";import{c as createColorClasses,h as hostContext}from"./theme-17531cdf.js";import{b as getIonMode}from"./ionic-global-40e42e7f.js";function getDecimalPlaces(e){if(e%1===0)return 0;return e.toString().split(".")[1].length}function roundToMaxDecimalPlaces(e){var t=[];for(var r=1;r<arguments.length;r++){t[r-1]=arguments[r]}var n=Math.max.apply(Math,t.map((function(e){return getDecimalPlaces(e)})));return Number(e.toFixed(n))}var rangeIosCss=":host{--knob-handle-size:calc(var(--knob-size) * 2);display:-ms-flexbox;display:flex;position:relative;-ms-flex:3;flex:3;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.range-disabled){pointer-events:none}::slotted(ion-label){-ms-flex:initial;flex:initial}::slotted(ion-icon[slot]){font-size:24px}.range-slider{position:relative;-ms-flex:1;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:-webkit-grab;cursor:grab;-ms-touch-action:pan-y;touch-action:pan-y}:host(.range-pressed) .range-slider{cursor:-webkit-grabbing;cursor:grabbing}.range-pin{position:absolute;background:var(--ion-color-base);color:var(--ion-color-contrast);text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.range-knob-handle{top:calc((var(--height) - var(--knob-handle-size)) / 2);-webkit-margin-start:calc(0px - var(--knob-handle-size) / 2);margin-inline-start:calc(0px - var(--knob-handle-size) / 2);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-pack:center;justify-content:center;width:var(--knob-handle-size);height:var(--knob-handle-size);text-align:center}@supports (inset-inline-start: 0){.range-knob-handle{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-knob-handle{left:0}:host-context([dir=rtl]) .range-knob-handle{left:unset;right:unset;right:0}[dir=rtl] .range-knob-handle{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-knob-handle{left:unset}[dir=rtl] .range-knob-handle{left:unset}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset}}.range-knob-handle:active,.range-knob-handle:focus{outline:none}.range-bar-container{border-radius:var(--bar-border-radius);top:calc((var(--height) - var(--bar-height)) / 2);position:absolute;width:100%;height:var(--bar-height)}@supports (inset-inline-start: 0){.range-bar-container{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-bar-container{left:0}:host-context([dir=rtl]) .range-bar-container{left:unset;right:unset;right:0}[dir=rtl] .range-bar-container{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-bar-container{left:unset}[dir=rtl] .range-bar-container{left:unset}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset}}.range-bar{border-radius:var(--bar-border-radius);position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}.range-knob{border-radius:var(--knob-border-radius);top:calc(50% - var(--knob-size) / 2);position:absolute;width:var(--knob-size);height:var(--knob-size);background:var(--knob-background);-webkit-box-shadow:var(--knob-box-shadow);box-shadow:var(--knob-box-shadow);z-index:2;pointer-events:none}@supports (inset-inline-start: 0){.range-knob{inset-inline-start:calc(50% - var(--knob-size) / 2)}}@supports not (inset-inline-start: 0){.range-knob{left:calc(50% - var(--knob-size) / 2)}:host-context([dir=rtl]) .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}[dir=rtl] .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}}}:host-context([dir=rtl]) .range-knob{left:unset}[dir=rtl] .range-knob{left:unset}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset}}:host(.range-pressed) .range-bar-active{will-change:left, right}:host(.in-item){width:100%}:host([slot=start]),:host([slot=end]){width:auto}:host(.in-item) ::slotted(ion-label){-ms-flex-item-align:center;align-self:center}.range-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;height:inherit}::slotted([slot=label]){max-width:200px;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}:host(.range-label-placement-start) .range-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.range-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-end) .range-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.range-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.range-label-placement-stacked) .range-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch}:host(.range-label-placement-stacked) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host-context([dir=rtl]):host(.range-label-placement-stacked) .label-text-wrapper,:host-context([dir=rtl]).range-label-placement-stacked .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.range-label-placement-stacked:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.in-item.range-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.range-label-placement-stacked) .native-wrapper{margin-bottom:0px}:host{--knob-border-radius:50%;--knob-background:#ffffff;--knob-box-shadow:0px 0.5px 4px rgba(0, 0, 0, 0.12), 0px 6px 13px rgba(0, 0, 0, 0.12);--knob-size:26px;--bar-height:4px;--bar-background:var(--ion-color-step-900, #e6e6e6);--bar-background-active:var(--ion-color-primary, #3880ff);--bar-border-radius:2px;--height:42px}:host(.legacy-range){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:8px}:host(.range-item-start-adjustment){-webkit-padding-start:24px;padding-inline-start:24px}:host(.range-item-end-adjustment){-webkit-padding-end:24px;padding-inline-end:24px}:host(.ion-color) .range-bar-active,:host(.ion-color) .range-tick-active{background:var(--ion-color-base)}::slotted([slot=start]){-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}::slotted([slot=end]){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-has-pin:not(.range-label-placement-stacked)){padding-top:calc(8px + 0.75rem)}:host(.range-has-pin.range-label-placement-stacked) .label-text-wrapper{margin-bottom:calc(8px + 0.75rem)}.range-bar-active{bottom:0;width:auto;background:var(--bar-background-active)}.range-bar-active.has-ticks{border-radius:0;-webkit-margin-start:-2px;margin-inline-start:-2px;-webkit-margin-end:-2px;margin-inline-end:-2px}.range-tick{-webkit-margin-start:-2px;margin-inline-start:-2px;border-radius:0;position:absolute;top:17px;width:4px;height:8px;background:var(--ion-color-step-900, #e6e6e6);pointer-events:none}.range-tick-active{background:var(--bar-background-active)}.range-pin{-webkit-transform:translate3d(0, 100%, 0) scale(0.01);transform:translate3d(0, 100%, 0) scale(0.01);-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;min-width:28px;-webkit-transition:-webkit-transform 120ms ease;transition:-webkit-transform 120ms ease;transition:transform 120ms ease;transition:transform 120ms ease, -webkit-transform 120ms ease;background:transparent;color:var(--ion-text-color, #000);font-size:0.75rem;text-align:center}.range-knob-pressed .range-pin,.range-knob-handle.ion-focused .range-pin{-webkit-transform:translate3d(0, calc(-100% + 11px), 0) scale(1);transform:translate3d(0, calc(-100% + 11px), 0) scale(1)}:host(.range-disabled){opacity:0.3}";var rangeMdCss=':host{--knob-handle-size:calc(var(--knob-size) * 2);display:-ms-flexbox;display:flex;position:relative;-ms-flex:3;flex:3;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.range-disabled){pointer-events:none}::slotted(ion-label){-ms-flex:initial;flex:initial}::slotted(ion-icon[slot]){font-size:24px}.range-slider{position:relative;-ms-flex:1;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:-webkit-grab;cursor:grab;-ms-touch-action:pan-y;touch-action:pan-y}:host(.range-pressed) .range-slider{cursor:-webkit-grabbing;cursor:grabbing}.range-pin{position:absolute;background:var(--ion-color-base);color:var(--ion-color-contrast);text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.range-knob-handle{top:calc((var(--height) - var(--knob-handle-size)) / 2);-webkit-margin-start:calc(0px - var(--knob-handle-size) / 2);margin-inline-start:calc(0px - var(--knob-handle-size) / 2);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-pack:center;justify-content:center;width:var(--knob-handle-size);height:var(--knob-handle-size);text-align:center}@supports (inset-inline-start: 0){.range-knob-handle{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-knob-handle{left:0}:host-context([dir=rtl]) .range-knob-handle{left:unset;right:unset;right:0}[dir=rtl] .range-knob-handle{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-knob-handle{left:unset}[dir=rtl] .range-knob-handle{left:unset}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset}}.range-knob-handle:active,.range-knob-handle:focus{outline:none}.range-bar-container{border-radius:var(--bar-border-radius);top:calc((var(--height) - var(--bar-height)) / 2);position:absolute;width:100%;height:var(--bar-height)}@supports (inset-inline-start: 0){.range-bar-container{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-bar-container{left:0}:host-context([dir=rtl]) .range-bar-container{left:unset;right:unset;right:0}[dir=rtl] .range-bar-container{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-bar-container{left:unset}[dir=rtl] .range-bar-container{left:unset}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset}}.range-bar{border-radius:var(--bar-border-radius);position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}.range-knob{border-radius:var(--knob-border-radius);top:calc(50% - var(--knob-size) / 2);position:absolute;width:var(--knob-size);height:var(--knob-size);background:var(--knob-background);-webkit-box-shadow:var(--knob-box-shadow);box-shadow:var(--knob-box-shadow);z-index:2;pointer-events:none}@supports (inset-inline-start: 0){.range-knob{inset-inline-start:calc(50% - var(--knob-size) / 2)}}@supports not (inset-inline-start: 0){.range-knob{left:calc(50% - var(--knob-size) / 2)}:host-context([dir=rtl]) .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}[dir=rtl] .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}}}:host-context([dir=rtl]) .range-knob{left:unset}[dir=rtl] .range-knob{left:unset}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset}}:host(.range-pressed) .range-bar-active{will-change:left, right}:host(.in-item){width:100%}:host([slot=start]),:host([slot=end]){width:auto}:host(.in-item) ::slotted(ion-label){-ms-flex-item-align:center;align-self:center}.range-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;height:inherit}::slotted([slot=label]){max-width:200px;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}:host(.range-label-placement-start) .range-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.range-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-end) .range-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.range-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.range-label-placement-stacked) .range-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch}:host(.range-label-placement-stacked) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host-context([dir=rtl]):host(.range-label-placement-stacked) .label-text-wrapper,:host-context([dir=rtl]).range-label-placement-stacked .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.range-label-placement-stacked:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.in-item.range-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.range-label-placement-stacked) .native-wrapper{margin-bottom:0px}:host{--knob-border-radius:50%;--knob-background:var(--bar-background-active);--knob-box-shadow:none;--knob-size:18px;--bar-height:2px;--bar-background:rgba(var(--ion-color-primary-rgb, 56, 128, 255), 0.26);--bar-background-active:var(--ion-color-primary, #3880ff);--bar-border-radius:0;--height:42px;--pin-background:var(--ion-color-primary, #3880ff);--pin-color:var(--ion-color-primary-contrast, #fff)}:host(.legacy-range) ::slotted([slot=label]){font-size:initial}:host(:not(.legacy-range)) ::slotted(:not(ion-icon)[slot=start]),:host(:not(.legacy-range)) ::slotted(:not(ion-icon)[slot=end]),:host(:not(.legacy-range)) .native-wrapper{font-size:0.75rem}:host(.legacy-range){-webkit-padding-start:14px;padding-inline-start:14px;-webkit-padding-end:14px;padding-inline-end:14px;padding-top:8px;padding-bottom:8px;font-size:0.75rem}:host(.range-item-start-adjustment){-webkit-padding-start:18px;padding-inline-start:18px}:host(.range-item-end-adjustment){-webkit-padding-end:18px;padding-inline-end:18px}:host(.ion-color) .range-bar{background:rgba(var(--ion-color-base-rgb), 0.26)}:host(.ion-color) .range-bar-active,:host(.ion-color) .range-knob,:host(.ion-color) .range-knob::before,:host(.ion-color) .range-pin,:host(.ion-color) .range-pin::before,:host(.ion-color) .range-tick{background:var(--ion-color-base);color:var(--ion-color-contrast)}::slotted([slot=start]){-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:14px;margin-inline-end:14px;margin-top:0;margin-bottom:0}::slotted([slot=end]){-webkit-margin-start:14px;margin-inline-start:14px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-has-pin:not(.range-label-placement-stacked)){padding-top:1.75rem}:host(.range-has-pin.range-label-placement-stacked) .label-text-wrapper{margin-bottom:1.75rem}.range-bar-active{bottom:0;width:auto;background:var(--bar-background-active)}.range-knob{-webkit-transform:scale(0.67);transform:scale(0.67);-webkit-transition-duration:120ms;transition-duration:120ms;-webkit-transition-property:background-color, border, -webkit-transform;transition-property:background-color, border, -webkit-transform;transition-property:transform, background-color, border;transition-property:transform, background-color, border, -webkit-transform;-webkit-transition-timing-function:ease;transition-timing-function:ease;z-index:2}.range-knob::before{border-radius:50%;position:absolute;width:var(--knob-size);height:var(--knob-size);-webkit-transform:scale(1);transform:scale(1);-webkit-transition:0.267s cubic-bezier(0, 0, 0.58, 1);transition:0.267s cubic-bezier(0, 0, 0.58, 1);background:var(--knob-background);content:"";opacity:0.13;pointer-events:none}@supports (inset-inline-start: 0){.range-knob::before{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-knob::before{left:0}:host-context([dir=rtl]) .range-knob::before{left:unset;right:unset;right:0}[dir=rtl] .range-knob::before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-knob::before:dir(rtl){left:unset;right:unset;right:0}}}.range-tick{position:absolute;top:calc((var(--height) - var(--bar-height)) / 2);width:var(--bar-height);height:var(--bar-height);background:var(--bar-background-active);z-index:1;pointer-events:none}.range-tick-active{background:transparent}.range-pin{padding-left:0;padding-right:0;padding-top:8px;padding-bottom:8px;border-radius:50%;-webkit-transform:translate3d(0, 0, 0) scale(0.01);transform:translate3d(0, 0, 0) scale(0.01);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:1.75rem;height:1.75rem;-webkit-transition:background 120ms ease, -webkit-transform 120ms ease;transition:background 120ms ease, -webkit-transform 120ms ease;transition:transform 120ms ease, background 120ms ease;transition:transform 120ms ease, background 120ms ease, -webkit-transform 120ms ease;background:var(--pin-background);color:var(--pin-color)}.range-pin::before{bottom:-1px;-webkit-margin-start:-13px;margin-inline-start:-13px;border-radius:50% 50% 50% 0;position:absolute;width:26px;height:26px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transition:background 120ms ease;transition:background 120ms ease;background:var(--pin-background);content:"";z-index:-1}@supports (inset-inline-start: 0){.range-pin::before{inset-inline-start:50%}}@supports not (inset-inline-start: 0){.range-pin::before{left:50%}:host-context([dir=rtl]) .range-pin::before{left:unset;right:unset;right:50%}[dir=rtl] .range-pin::before{left:unset;right:unset;right:50%}@supports selector(:dir(rtl)){.range-pin::before:dir(rtl){left:unset;right:unset;right:50%}}}:host-context([dir=rtl]) .range-pin::before{left:unset}[dir=rtl] .range-pin::before{left:unset}@supports selector(:dir(rtl)){.range-pin::before:dir(rtl){left:unset}}.range-knob-pressed .range-pin,.range-knob-handle.ion-focused .range-pin{-webkit-transform:translate3d(0, calc(-100% + 4px), 0) scale(1);transform:translate3d(0, calc(-100% + 4px), 0) scale(1)}@media (any-hover: hover){.range-knob-handle:hover .range-knob:before{-webkit-transform:scale(2);transform:scale(2);opacity:0.13}}.range-knob-handle.ion-activated .range-knob:before,.range-knob-handle.ion-focused .range-knob:before,.range-knob-handle.range-knob-pressed .range-knob:before{-webkit-transform:scale(2);transform:scale(2)}.range-knob-handle.ion-focused .range-knob::before{opacity:0.13}.range-knob-handle.ion-activated .range-knob::before,.range-knob-handle.range-knob-pressed .range-knob::before{opacity:0.25}:host(:not(.range-has-pin)) .range-knob-pressed .range-knob,:host(:not(.range-has-pin)) .range-knob-handle.ion-focused .range-knob{-webkit-transform:scale(1);transform:scale(1)}:host(.range-disabled) .range-bar-active,:host(.range-disabled) .range-bar,:host(.range-disabled) .range-tick{background-color:var(--ion-color-step-250, #bfbfbf)}:host(.range-disabled) .range-knob{-webkit-transform:scale(0.55);transform:scale(0.55);outline:5px solid #fff;background-color:var(--ion-color-step-250, #bfbfbf)}:host(.range-disabled) .label-text-wrapper,:host(.range-disabled) ::slotted([slot=start]),:host(.range-disabled) ::slotted([slot=end]){opacity:0.38}';var Range=function(){function e(e){var t=this;registerInstance(this,e);this.ionChange=createEvent(this,"ionChange",7);this.ionInput=createEvent(this,"ionInput",7);this.ionStyle=createEvent(this,"ionStyle",7);this.ionFocus=createEvent(this,"ionFocus",7);this.ionBlur=createEvent(this,"ionBlur",7);this.ionKnobMoveStart=createEvent(this,"ionKnobMoveStart",7);this.ionKnobMoveEnd=createEvent(this,"ionKnobMoveEnd",7);this.rangeId="ion-r-".concat(rangeIds++);this.didLoad=false;this.noUpdate=false;this.hasFocus=false;this.inheritedAttributes={};this.contentEl=null;this.initialContentScrollY=true;this.hasLoggedDeprecationWarning=false;this.clampBounds=function(e){return clamp(t.min,e,t.max)};this.ensureValueInBounds=function(e){if(t.dualKnobs){return{lower:t.clampBounds(e.lower),upper:t.clampBounds(e.upper)}}else{return t.clampBounds(e)}};this.setupGesture=function(){return __awaiter(t,void 0,void 0,(function(){var e,t;var r=this;return __generator(this,(function(n){switch(n.label){case 0:e=this.rangeSlider;if(!e)return[3,2];t=this;return[4,import("./index-ff313b19.js")];case 1:t.gesture=n.sent().createGesture({el:e,gestureName:"range",gesturePriority:100,threshold:0,onStart:function(e){return r.onStart(e)},onMove:function(e){return r.onMove(e)},onEnd:function(e){return r.onEnd(e)}});this.gesture.enable(!this.disabled);n.label=2;case 2:return[2]}}))}))};this.handleKeyboard=function(e,r){var n=t.ensureValueInBounds;var a=t.step;a=a>0?a:1;a=a/(t.max-t.min);if(!r){a*=-1}if(e==="A"){t.ratioA=clamp(0,t.ratioA+a,1)}else{t.ratioB=clamp(0,t.ratioB+a,1)}t.ionKnobMoveStart.emit({value:n(t.value)});t.updateValue();t.emitValueChange();t.ionKnobMoveEnd.emit({value:n(t.value)})};this.onBlur=function(){if(t.hasFocus){t.hasFocus=false;t.ionBlur.emit();t.emitStyle()}};this.onFocus=function(){if(!t.hasFocus){t.hasFocus=true;t.ionFocus.emit();t.emitStyle()}};this.ratioA=0;this.ratioB=0;this.pressedKnob=undefined;this.color=undefined;this.debounce=undefined;this.name=this.rangeId;this.label=undefined;this.dualKnobs=false;this.min=0;this.max=100;this.pin=false;this.pinFormatter=function(e){return Math.round(e)};this.snaps=false;this.step=1;this.ticks=true;this.activeBarStart=undefined;this.disabled=false;this.value=0;this.labelPlacement="start";this.legacy=undefined}e.prototype.debounceChanged=function(){var e=this,t=e.ionInput,r=e.debounce,n=e.originalIonInput;this.ionInput=r===undefined?n!==null&&n!==void 0?n:t:debounceEvent(t,r)};e.prototype.minChanged=function(){if(!this.noUpdate){this.updateRatio()}};e.prototype.maxChanged=function(){if(!this.noUpdate){this.updateRatio()}};e.prototype.activeBarStartChanged=function(){var e=this.activeBarStart;if(e!==undefined){if(e>this.max){printIonWarning("Range: The value of activeBarStart (".concat(e,") is greater than the max (").concat(this.max,"). Valid values are greater than or equal to the min value and less than or equal to the max value."),this.el);this.activeBarStart=this.max}else if(e<this.min){printIonWarning("Range: The value of activeBarStart (".concat(e,") is less than the min (").concat(this.min,"). Valid values are greater than or equal to the min value and less than or equal to the max value."),this.el);this.activeBarStart=this.min}}};e.prototype.disabledChanged=function(){if(this.gesture){this.gesture.enable(!this.disabled)}this.emitStyle()};e.prototype.valueChanged=function(){if(!this.noUpdate){this.updateRatio()}};e.prototype.componentWillLoad=function(){if(this.el.hasAttribute("id")){this.rangeId=this.el.getAttribute("id")}this.inheritedAttributes=inheritAriaAttributes(this.el)};e.prototype.componentDidLoad=function(){this.originalIonInput=this.ionInput;this.setupGesture();this.updateRatio();this.didLoad=true};e.prototype.connectedCallback=function(){var e=this.el;this.legacyFormController=createLegacyFormController(e);this.updateRatio();this.debounceChanged();this.disabledChanged();this.activeBarStartChanged();if(this.didLoad){this.setupGesture()}this.contentEl=findClosestIonContent(this.el)};e.prototype.disconnectedCallback=function(){if(this.gesture){this.gesture.destroy();this.gesture=undefined}};e.prototype.getValue=function(){var e;var t=(e=this.value)!==null&&e!==void 0?e:0;if(this.dualKnobs){if(typeof t==="object"){return t}return{lower:0,upper:t}}else{if(typeof t==="object"){return t.upper}return t}};e.prototype.emitStyle=function(){if(this.legacyFormController.hasLegacyControl()){this.ionStyle.emit({interactive:true,"interactive-disabled":this.disabled})}};e.prototype.emitValueChange=function(){this.value=this.ensureValueInBounds(this.value);this.ionChange.emit({value:this.value})};e.prototype.onStart=function(e){var t=this.contentEl;if(t){this.initialContentScrollY=disableContentScrollY(t)}var r=this.rect=this.rangeSlider.getBoundingClientRect();var n=e.currentX;var a=clamp(0,(n-r.left)/r.width,1);if(isRTL(this.el)){a=1-a}this.pressedKnob=!this.dualKnobs||Math.abs(this.ratioA-a)<Math.abs(this.ratioB-a)?"A":"B";this.setFocus(this.pressedKnob);this.update(n);this.ionKnobMoveStart.emit({value:this.ensureValueInBounds(this.value)})};e.prototype.onMove=function(e){this.update(e.currentX)};e.prototype.onEnd=function(e){var t=this,r=t.contentEl,n=t.initialContentScrollY;if(r){resetContentScrollY(r,n)}this.update(e.currentX);this.pressedKnob=undefined;this.emitValueChange();this.ionKnobMoveEnd.emit({value:this.ensureValueInBounds(this.value)})};e.prototype.update=function(e){var t=this.rect;var r=clamp(0,(e-t.left)/t.width,1);if(isRTL(this.el)){r=1-r}if(this.snaps){r=valueToRatio(ratioToValue(r,this.min,this.max,this.step),this.min,this.max)}if(this.pressedKnob==="A"){this.ratioA=r}else{this.ratioB=r}this.updateValue()};Object.defineProperty(e.prototype,"valA",{get:function(){return ratioToValue(this.ratioA,this.min,this.max,this.step)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"valB",{get:function(){return ratioToValue(this.ratioB,this.min,this.max,this.step)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"ratioLower",{get:function(){if(this.dualKnobs){return Math.min(this.ratioA,this.ratioB)}var e=this.activeBarStart;if(e==null){return 0}return valueToRatio(e,this.min,this.max)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"ratioUpper",{get:function(){if(this.dualKnobs){return Math.max(this.ratioA,this.ratioB)}return this.ratioA},enumerable:false,configurable:true});e.prototype.updateRatio=function(){var e=this.getValue();var t=this,r=t.min,n=t.max;if(this.dualKnobs){this.ratioA=valueToRatio(e.lower,r,n);this.ratioB=valueToRatio(e.upper,r,n)}else{this.ratioA=valueToRatio(e,r,n)}};e.prototype.updateValue=function(){this.noUpdate=true;var e=this,t=e.valA,r=e.valB;this.value=!this.dualKnobs?t:{lower:Math.min(t,r),upper:Math.max(t,r)};this.ionInput.emit({value:this.value});this.noUpdate=false};e.prototype.setFocus=function(e){if(this.el.shadowRoot){var t=this.el.shadowRoot.querySelector(e==="A"?".range-knob-a":".range-knob-b");if(t){t.focus()}}};e.prototype.renderLegacyRange=function(){var e;if(!this.hasLoggedDeprecationWarning){printIonWarning('ion-range now requires providing a label with either the label slot or the "aria-label" attribute. To migrate, remove any usage of "ion-label" and pass the label text to either the component or the "aria-label" attribute.\n\nExample: <ion-range><div slot="label">Volume</div></ion-range>\nExample with aria-label: <ion-range aria-label="Volume"></ion-range>\n\nDevelopers can use the "legacy" property to continue using the legacy form markup. This property will be removed in an upcoming major release of Ionic where this form control will use the modern form markup.',this.el);if(this.legacy){printIonWarning('ion-range is being used with the "legacy" property enabled which will forcibly enable the legacy form markup. This property will be removed in an upcoming major release of Ionic where this form control will use the modern form markup.\n\nDevelopers can dismiss this warning by removing their usage of the "legacy" property and using the new range syntax.',this.el)}this.hasLoggedDeprecationWarning=true}var t=this,r=t.el,n=t.pressedKnob,a=t.disabled,i=t.pin,o=t.rangeId;var s=getIonMode(this);renderHiddenInput(true,r,this.name,JSON.stringify(this.getValue()),a);return h(Host,{onFocusin:this.onFocus,onFocusout:this.onBlur,id:o,class:createColorClasses(this.color,(e={},e[s]=true,e["in-item"]=hostContext("ion-item",r),e["range-disabled"]=a,e["range-pressed"]=n!==undefined,e["range-has-pin"]=i,e["legacy-range"]=true,e))},h("slot",{name:"start"}),this.renderRangeSlider(),h("slot",{name:"end"}))};Object.defineProperty(e.prototype,"hasStartSlotContent",{get:function(){return this.el.querySelector('[slot="start"]')!==null},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"hasEndSlotContent",{get:function(){return this.el.querySelector('[slot="end"]')!==null},enumerable:false,configurable:true});e.prototype.renderRange=function(){var e;var t=this,r=t.disabled,n=t.el,a=t.hasLabel,i=t.rangeId,o=t.pin,s=t.pressedKnob,l=t.labelPlacement,d=t.label;var g=hostContext("ion-item",n);var b=a&&(l==="start"||l==="fixed")||this.hasStartSlotContent;var c=g&&!b;var p=a&&l==="end"||this.hasEndSlotContent;var u=g&&!p;var f=getIonMode(this);renderHiddenInput(true,n,this.name,JSON.stringify(this.getValue()),r);return h(Host,{onFocusin:this.onFocus,onFocusout:this.onBlur,id:i,class:createColorClasses(this.color,(e={},e[f]=true,e["in-item"]=g,e["range-disabled"]=r,e["range-pressed"]=s!==undefined,e["range-has-pin"]=o,e["range-label-placement-".concat(l)]=true,e["range-item-start-adjustment"]=c,e["range-item-end-adjustment"]=u,e))},h("label",{class:"range-wrapper",id:"range-label"},h("div",{class:{"label-text-wrapper":true,"label-text-wrapper-hidden":!a}},d!==undefined?h("div",{class:"label-text"},d):h("slot",{name:"label"})),h("div",{class:"native-wrapper"},h("slot",{name:"start"}),this.renderRangeSlider(),h("slot",{name:"end"}))))};Object.defineProperty(e.prototype,"hasLabel",{get:function(){return this.label!==undefined||this.el.querySelector('[slot="label"]')!==null},enumerable:false,configurable:true});e.prototype.renderRangeSlider=function(){var e;var t=this;var r;var n=this,a=n.min,i=n.max,o=n.step,s=n.el,l=n.handleKeyboard,d=n.pressedKnob,g=n.disabled,b=n.pin,c=n.ratioLower,p=n.ratioUpper,u=n.inheritedAttributes,f=n.rangeId,m=n.pinFormatter;var k=getAriaLabel(s,f).labelText;if(k===undefined||k===null){k=u["aria-label"]}var x="".concat(c*100,"%");var v="".concat(100-p*100,"%");var w=isRTL(this.el);var y=w?"right":"left";var z=w?"left":"right";var C=function(e){var t;return t={},t[y]=e[y],t};if(this.dualKnobs===false){if(this.valA<((r=this.activeBarStart)!==null&&r!==void 0?r:this.min)){x="".concat(p*100,"%");v="".concat(100-c*100,"%")}else{x="".concat(c*100,"%");v="".concat(100-p*100,"%")}}var j=(e={},e[y]=x,e[z]=v,e);var T=[];if(this.snaps&&this.ticks){for(var I=a;I<=i;I+=o){var M=valueToRatio(I,a,i);var A=Math.min(c,p);var E=Math.max(c,p);var R={ratio:M,active:M>=A&&M<=E};R[y]="".concat(M*100,"%");T.push(R)}}var S;if(!this.legacyFormController.hasLegacyControl()&&this.hasLabel){S="range-label"}return h("div",{class:"range-slider",ref:function(e){return t.rangeSlider=e}},T.map((function(e){return h("div",{style:C(e),role:"presentation",class:{"range-tick":true,"range-tick-active":e.active},part:e.active?"tick-active":"tick"})})),h("div",{class:"range-bar-container"},h("div",{class:"range-bar",role:"presentation",part:"bar"}),h("div",{class:{"range-bar":true,"range-bar-active":true,"has-ticks":T.length>0},role:"presentation",style:j,part:"bar-active"})),renderKnob(w,{knob:"A",pressed:d==="A",value:this.valA,ratio:this.ratioA,pin:b,pinFormatter:m,disabled:g,handleKeyboard:l,min:a,max:i,labelText:k,labelledBy:S}),this.dualKnobs&&renderKnob(w,{knob:"B",pressed:d==="B",value:this.valB,ratio:this.ratioB,pin:b,pinFormatter:m,disabled:g,handleKeyboard:l,min:a,max:i,labelText:k,labelledBy:S}))};e.prototype.render=function(){var e=this.legacyFormController;return e.hasLegacyControl()?this.renderLegacyRange():this.renderRange()};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{debounce:["debounceChanged"],min:["minChanged"],max:["maxChanged"],activeBarStart:["activeBarStartChanged"],disabled:["disabledChanged"],value:["valueChanged"]}},enumerable:false,configurable:true});return e}();var renderKnob=function(e,t){var r=t.knob,n=t.value,a=t.ratio,i=t.min,o=t.max,s=t.disabled,l=t.pressed,d=t.pin,g=t.handleKeyboard,b=t.labelText,c=t.labelledBy,p=t.pinFormatter;var u=e?"right":"left";var f=function(){var e={};e[u]="".concat(a*100,"%");return e};return h("div",{onKeyDown:function(e){var t=e.key;if(t==="ArrowLeft"||t==="ArrowDown"){g(r,false);e.preventDefault();e.stopPropagation()}else if(t==="ArrowRight"||t==="ArrowUp"){g(r,true);e.preventDefault();e.stopPropagation()}},class:{"range-knob-handle":true,"range-knob-a":r==="A","range-knob-b":r==="B","range-knob-pressed":l,"range-knob-min":n===i,"range-knob-max":n===o,"ion-activatable":true,"ion-focusable":true},style:f(),role:"slider",tabindex:s?-1:0,"aria-label":c===undefined?b:null,"aria-labelledby":c!==undefined?c:null,"aria-valuemin":i,"aria-valuemax":o,"aria-disabled":s?"true":null,"aria-valuenow":n},d&&h("div",{class:"range-pin",role:"presentation",part:"pin"},p(n)),h("div",{class:"range-knob",role:"presentation",part:"knob"}))};var ratioToValue=function(e,t,r,n){var a=(r-t)*e;if(n>0){a=Math.round(a/n)*n+t}var i=clamp(t,a,r);return roundToMaxDecimalPlaces(i,t,r,n)};var valueToRatio=function(e,t,r){return clamp(0,(e-t)/(r-t),1)};var rangeIds=0;Range.style={ios:rangeIosCss,md:rangeMdCss};export{Range as ion_range};
|
|
4
|
+
*/import{r as registerInstance,d as createEvent,h,H as Host,f as getElement}from"./index-7c9b1bca.js";import{f as findClosestIonContent,d as disableContentScrollY,r as resetContentScrollY}from"./index-4392efa5.js";import{c as createLegacyFormController}from"./form-controller-64edeaad.js";import{l as clamp,j as debounceEvent,i as inheritAriaAttributes,d as renderHiddenInput,e as getAriaLabel}from"./helpers-3379ba19.js";import{p as printIonWarning}from"./index-595d62c9.js";import{i as isRTL}from"./dir-912e3e13.js";import{c as createColorClasses,h as hostContext}from"./theme-17531cdf.js";import{b as getIonMode}from"./ionic-global-40e42e7f.js";function getDecimalPlaces(e){if(e%1===0)return 0;return e.toString().split(".")[1].length}function roundToMaxDecimalPlaces(e){var t=[];for(var r=1;r<arguments.length;r++){t[r-1]=arguments[r]}var n=Math.max.apply(Math,t.map((function(e){return getDecimalPlaces(e)})));return Number(e.toFixed(n))}var rangeIosCss=":host{--knob-handle-size:calc(var(--knob-size) * 2);display:-ms-flexbox;display:flex;position:relative;-ms-flex:3;flex:3;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.range-disabled){pointer-events:none}::slotted(ion-label){-ms-flex:initial;flex:initial}::slotted(ion-icon[slot]){font-size:24px}.range-slider{position:relative;-ms-flex:1;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:-webkit-grab;cursor:grab;-ms-touch-action:pan-y;touch-action:pan-y}:host(.range-pressed) .range-slider{cursor:-webkit-grabbing;cursor:grabbing}.range-pin{position:absolute;background:var(--ion-color-base);color:var(--ion-color-contrast);text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.range-knob-handle{top:calc((var(--height) - var(--knob-handle-size)) / 2);-webkit-margin-start:calc(0px - var(--knob-handle-size) / 2);margin-inline-start:calc(0px - var(--knob-handle-size) / 2);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-pack:center;justify-content:center;width:var(--knob-handle-size);height:var(--knob-handle-size);text-align:center}@supports (inset-inline-start: 0){.range-knob-handle{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-knob-handle{left:0}:host-context([dir=rtl]) .range-knob-handle{left:unset;right:unset;right:0}[dir=rtl] .range-knob-handle{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-knob-handle{left:unset}[dir=rtl] .range-knob-handle{left:unset}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset}}.range-knob-handle:active,.range-knob-handle:focus{outline:none}.range-bar-container{border-radius:var(--bar-border-radius);top:calc((var(--height) - var(--bar-height)) / 2);position:absolute;width:100%;height:var(--bar-height)}@supports (inset-inline-start: 0){.range-bar-container{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-bar-container{left:0}:host-context([dir=rtl]) .range-bar-container{left:unset;right:unset;right:0}[dir=rtl] .range-bar-container{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-bar-container{left:unset}[dir=rtl] .range-bar-container{left:unset}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset}}.range-bar{border-radius:var(--bar-border-radius);position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}.range-knob{border-radius:var(--knob-border-radius);top:calc(50% - var(--knob-size) / 2);position:absolute;width:var(--knob-size);height:var(--knob-size);background:var(--knob-background);-webkit-box-shadow:var(--knob-box-shadow);box-shadow:var(--knob-box-shadow);z-index:2;pointer-events:none}@supports (inset-inline-start: 0){.range-knob{inset-inline-start:calc(50% - var(--knob-size) / 2)}}@supports not (inset-inline-start: 0){.range-knob{left:calc(50% - var(--knob-size) / 2)}:host-context([dir=rtl]) .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}[dir=rtl] .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}}}:host-context([dir=rtl]) .range-knob{left:unset}[dir=rtl] .range-knob{left:unset}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset}}:host(.range-pressed) .range-bar-active{will-change:left, right}:host(.in-item){width:100%}:host([slot=start]),:host([slot=end]){width:auto}:host(.in-item) ::slotted(ion-label){-ms-flex-item-align:center;align-self:center}.range-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;height:inherit}::slotted([slot=label]){max-width:200px;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}:host(.range-label-placement-start) .range-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.range-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-end) .range-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.range-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.range-label-placement-stacked) .range-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch}:host(.range-label-placement-stacked) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host-context([dir=rtl]):host(.range-label-placement-stacked) .label-text-wrapper,:host-context([dir=rtl]).range-label-placement-stacked .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.range-label-placement-stacked:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.in-item.range-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.range-label-placement-stacked) .native-wrapper{margin-bottom:0px}:host{--knob-border-radius:50%;--knob-background:#ffffff;--knob-box-shadow:0px 0.5px 4px rgba(0, 0, 0, 0.12), 0px 6px 13px rgba(0, 0, 0, 0.12);--knob-size:26px;--bar-height:4px;--bar-background:var(--ion-color-step-900, #e6e6e6);--bar-background-active:var(--ion-color-primary, #3880ff);--bar-border-radius:2px;--height:42px}:host(.legacy-range){-webkit-padding-start:16px;padding-inline-start:16px;-webkit-padding-end:16px;padding-inline-end:16px;padding-top:8px;padding-bottom:8px}:host(.range-item-start-adjustment){-webkit-padding-start:24px;padding-inline-start:24px}:host(.range-item-end-adjustment){-webkit-padding-end:24px;padding-inline-end:24px}:host(.ion-color) .range-bar-active,:host(.ion-color) .range-tick-active{background:var(--ion-color-base)}::slotted([slot=start]){-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}::slotted([slot=end]){-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-has-pin:not(.range-label-placement-stacked)){padding-top:calc(8px + 0.75rem)}:host(.range-has-pin.range-label-placement-stacked) .label-text-wrapper{margin-bottom:calc(8px + 0.75rem)}.range-bar-active{bottom:0;width:auto;background:var(--bar-background-active)}.range-bar-active.has-ticks{border-radius:0;-webkit-margin-start:-2px;margin-inline-start:-2px;-webkit-margin-end:-2px;margin-inline-end:-2px}.range-tick{-webkit-margin-start:-2px;margin-inline-start:-2px;border-radius:0;position:absolute;top:17px;width:4px;height:8px;background:var(--ion-color-step-900, #e6e6e6);pointer-events:none}.range-tick-active{background:var(--bar-background-active)}.range-pin{-webkit-transform:translate3d(0, 100%, 0) scale(0.01);transform:translate3d(0, 100%, 0) scale(0.01);-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;min-width:28px;-webkit-transition:-webkit-transform 120ms ease;transition:-webkit-transform 120ms ease;transition:transform 120ms ease;transition:transform 120ms ease, -webkit-transform 120ms ease;background:transparent;color:var(--ion-text-color, #000);font-size:0.75rem;text-align:center}.range-knob-pressed .range-pin,.range-knob-handle.ion-focused .range-pin{-webkit-transform:translate3d(0, calc(-100% + 11px), 0) scale(1);transform:translate3d(0, calc(-100% + 11px), 0) scale(1)}:host(.range-disabled){opacity:0.3}";var rangeMdCss=':host{--knob-handle-size:calc(var(--knob-size) * 2);display:-ms-flexbox;display:flex;position:relative;-ms-flex:3;flex:3;-ms-flex-align:center;align-items:center;font-family:var(--ion-font-family, inherit);-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none;z-index:2}:host(.range-disabled){pointer-events:none}::slotted(ion-label){-ms-flex:initial;flex:initial}::slotted(ion-icon[slot]){font-size:24px}.range-slider{position:relative;-ms-flex:1;flex:1;width:100%;height:var(--height);contain:size layout style;cursor:-webkit-grab;cursor:grab;-ms-touch-action:pan-y;touch-action:pan-y}:host(.range-pressed) .range-slider{cursor:-webkit-grabbing;cursor:grabbing}.range-pin{position:absolute;background:var(--ion-color-base);color:var(--ion-color-contrast);text-align:center;-webkit-box-sizing:border-box;box-sizing:border-box}.range-knob-handle{top:calc((var(--height) - var(--knob-handle-size)) / 2);-webkit-margin-start:calc(0px - var(--knob-handle-size) / 2);margin-inline-start:calc(0px - var(--knob-handle-size) / 2);display:-ms-flexbox;display:flex;position:absolute;-ms-flex-pack:center;justify-content:center;width:var(--knob-handle-size);height:var(--knob-handle-size);text-align:center}@supports (inset-inline-start: 0){.range-knob-handle{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-knob-handle{left:0}:host-context([dir=rtl]) .range-knob-handle{left:unset;right:unset;right:0}[dir=rtl] .range-knob-handle{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-knob-handle{left:unset}[dir=rtl] .range-knob-handle{left:unset}@supports selector(:dir(rtl)){.range-knob-handle:dir(rtl){left:unset}}.range-knob-handle:active,.range-knob-handle:focus{outline:none}.range-bar-container{border-radius:var(--bar-border-radius);top:calc((var(--height) - var(--bar-height)) / 2);position:absolute;width:100%;height:var(--bar-height)}@supports (inset-inline-start: 0){.range-bar-container{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-bar-container{left:0}:host-context([dir=rtl]) .range-bar-container{left:unset;right:unset;right:0}[dir=rtl] .range-bar-container{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset;right:unset;right:0}}}:host-context([dir=rtl]) .range-bar-container{left:unset}[dir=rtl] .range-bar-container{left:unset}@supports selector(:dir(rtl)){.range-bar-container:dir(rtl){left:unset}}.range-bar{border-radius:var(--bar-border-radius);position:absolute;width:100%;height:var(--bar-height);background:var(--bar-background);pointer-events:none}.range-knob{border-radius:var(--knob-border-radius);top:calc(50% - var(--knob-size) / 2);position:absolute;width:var(--knob-size);height:var(--knob-size);background:var(--knob-background);-webkit-box-shadow:var(--knob-box-shadow);box-shadow:var(--knob-box-shadow);z-index:2;pointer-events:none}@supports (inset-inline-start: 0){.range-knob{inset-inline-start:calc(50% - var(--knob-size) / 2)}}@supports not (inset-inline-start: 0){.range-knob{left:calc(50% - var(--knob-size) / 2)}:host-context([dir=rtl]) .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}[dir=rtl] .range-knob{left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset;right:unset;right:calc(50% - var(--knob-size) / 2)}}}:host-context([dir=rtl]) .range-knob{left:unset}[dir=rtl] .range-knob{left:unset}@supports selector(:dir(rtl)){.range-knob:dir(rtl){left:unset}}:host(.range-pressed) .range-bar-active{will-change:left, right}:host(.in-item){width:100%}:host([slot=start]),:host([slot=end]){width:auto}:host(.in-item) ::slotted(ion-label){-ms-flex-item-align:center;align-self:center}.range-wrapper{display:-ms-flexbox;display:flex;position:relative;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center;height:inherit}::slotted([slot=label]){max-width:200px;pointer-events:none;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.label-text-wrapper-hidden{display:none}.native-wrapper{display:-ms-flexbox;display:flex;-ms-flex-positive:1;flex-grow:1;-ms-flex-align:center;align-items:center}:host(.range-label-placement-start) .range-wrapper{-ms-flex-direction:row;flex-direction:row}:host(.range-label-placement-start) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-end) .range-wrapper{-ms-flex-direction:row-reverse;flex-direction:row-reverse}:host(.range-label-placement-end) .label-text-wrapper{-webkit-margin-start:16px;margin-inline-start:16px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:16px;margin-inline-end:16px;margin-top:0;margin-bottom:0}:host(.range-label-placement-fixed) .label-text-wrapper{-ms-flex:0 0 100px;flex:0 0 100px;width:100px;min-width:100px;max-width:200px}:host(.range-label-placement-stacked) .range-wrapper{-ms-flex-direction:column;flex-direction:column;-ms-flex-align:stretch;align-items:stretch}:host(.range-label-placement-stacked) .label-text-wrapper{-webkit-transform-origin:left top;transform-origin:left top;-webkit-transform:scale(0.75);transform:scale(0.75);margin-left:0;margin-right:0;margin-bottom:16px;max-width:calc(100% / 0.75)}:host-context([dir=rtl]):host(.range-label-placement-stacked) .label-text-wrapper,:host-context([dir=rtl]).range-label-placement-stacked .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}@supports selector(:dir(rtl)){:host(.range-label-placement-stacked:dir(rtl)) .label-text-wrapper{-webkit-transform-origin:right top;transform-origin:right top}}:host(.in-item.range-label-placement-stacked) .label-text-wrapper{margin-top:10px;margin-bottom:16px}:host(.in-item.range-label-placement-stacked) .native-wrapper{margin-bottom:0px}:host{--knob-border-radius:50%;--knob-background:var(--bar-background-active);--knob-box-shadow:none;--knob-size:18px;--bar-height:2px;--bar-background:rgba(var(--ion-color-primary-rgb, 56, 128, 255), 0.26);--bar-background-active:var(--ion-color-primary, #3880ff);--bar-border-radius:0;--height:42px;--pin-background:var(--ion-color-primary, #3880ff);--pin-color:var(--ion-color-primary-contrast, #fff)}:host(.legacy-range) ::slotted([slot=label]){font-size:initial}:host(:not(.legacy-range)) ::slotted(:not(ion-icon)[slot=start]),:host(:not(.legacy-range)) ::slotted(:not(ion-icon)[slot=end]),:host(:not(.legacy-range)) .native-wrapper{font-size:0.75rem}:host(.legacy-range){-webkit-padding-start:14px;padding-inline-start:14px;-webkit-padding-end:14px;padding-inline-end:14px;padding-top:8px;padding-bottom:8px;font-size:0.75rem}:host(.range-item-start-adjustment){-webkit-padding-start:18px;padding-inline-start:18px}:host(.range-item-end-adjustment){-webkit-padding-end:18px;padding-inline-end:18px}:host(.ion-color) .range-bar{background:rgba(var(--ion-color-base-rgb), 0.26)}:host(.ion-color) .range-bar-active,:host(.ion-color) .range-knob,:host(.ion-color) .range-knob::before,:host(.ion-color) .range-pin,:host(.ion-color) .range-pin::before,:host(.ion-color) .range-tick{background:var(--ion-color-base);color:var(--ion-color-contrast)}::slotted([slot=start]){-webkit-margin-start:0;margin-inline-start:0;-webkit-margin-end:14px;margin-inline-end:14px;margin-top:0;margin-bottom:0}::slotted([slot=end]){-webkit-margin-start:14px;margin-inline-start:14px;-webkit-margin-end:0;margin-inline-end:0;margin-top:0;margin-bottom:0}:host(.range-has-pin:not(.range-label-placement-stacked)){padding-top:1.75rem}:host(.range-has-pin.range-label-placement-stacked) .label-text-wrapper{margin-bottom:1.75rem}.range-bar-active{bottom:0;width:auto;background:var(--bar-background-active)}.range-knob{-webkit-transform:scale(0.67);transform:scale(0.67);-webkit-transition-duration:120ms;transition-duration:120ms;-webkit-transition-property:background-color, border, -webkit-transform;transition-property:background-color, border, -webkit-transform;transition-property:transform, background-color, border;transition-property:transform, background-color, border, -webkit-transform;-webkit-transition-timing-function:ease;transition-timing-function:ease;z-index:2}.range-knob::before{border-radius:50%;position:absolute;width:var(--knob-size);height:var(--knob-size);-webkit-transform:scale(1);transform:scale(1);-webkit-transition:0.267s cubic-bezier(0, 0, 0.58, 1);transition:0.267s cubic-bezier(0, 0, 0.58, 1);background:var(--knob-background);content:"";opacity:0.13;pointer-events:none}@supports (inset-inline-start: 0){.range-knob::before{inset-inline-start:0}}@supports not (inset-inline-start: 0){.range-knob::before{left:0}:host-context([dir=rtl]) .range-knob::before{left:unset;right:unset;right:0}[dir=rtl] .range-knob::before{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){.range-knob::before:dir(rtl){left:unset;right:unset;right:0}}}.range-tick{position:absolute;top:calc((var(--height) - var(--bar-height)) / 2);width:var(--bar-height);height:var(--bar-height);background:var(--bar-background-active);z-index:1;pointer-events:none}.range-tick-active{background:transparent}.range-pin{padding-left:0;padding-right:0;padding-top:8px;padding-bottom:8px;border-radius:50%;-webkit-transform:translate3d(0, 0, 0) scale(0.01);transform:translate3d(0, 0, 0) scale(0.01);display:-ms-flexbox;display:flex;-ms-flex-align:center;align-items:center;-ms-flex-pack:center;justify-content:center;width:1.75rem;height:1.75rem;-webkit-transition:background 120ms ease, -webkit-transform 120ms ease;transition:background 120ms ease, -webkit-transform 120ms ease;transition:transform 120ms ease, background 120ms ease;transition:transform 120ms ease, background 120ms ease, -webkit-transform 120ms ease;background:var(--pin-background);color:var(--pin-color)}.range-pin::before{bottom:-1px;-webkit-margin-start:-13px;margin-inline-start:-13px;border-radius:50% 50% 50% 0;position:absolute;width:26px;height:26px;-webkit-transform:rotate(-45deg);transform:rotate(-45deg);-webkit-transition:background 120ms ease;transition:background 120ms ease;background:var(--pin-background);content:"";z-index:-1}@supports (inset-inline-start: 0){.range-pin::before{inset-inline-start:50%}}@supports not (inset-inline-start: 0){.range-pin::before{left:50%}:host-context([dir=rtl]) .range-pin::before{left:unset;right:unset;right:50%}[dir=rtl] .range-pin::before{left:unset;right:unset;right:50%}@supports selector(:dir(rtl)){.range-pin::before:dir(rtl){left:unset;right:unset;right:50%}}}:host-context([dir=rtl]) .range-pin::before{left:unset}[dir=rtl] .range-pin::before{left:unset}@supports selector(:dir(rtl)){.range-pin::before:dir(rtl){left:unset}}.range-knob-pressed .range-pin,.range-knob-handle.ion-focused .range-pin{-webkit-transform:translate3d(0, calc(-100% + 4px), 0) scale(1);transform:translate3d(0, calc(-100% + 4px), 0) scale(1)}@media (any-hover: hover){.range-knob-handle:hover .range-knob:before{-webkit-transform:scale(2);transform:scale(2);opacity:0.13}}.range-knob-handle.ion-activated .range-knob:before,.range-knob-handle.ion-focused .range-knob:before,.range-knob-handle.range-knob-pressed .range-knob:before{-webkit-transform:scale(2);transform:scale(2)}.range-knob-handle.ion-focused .range-knob::before{opacity:0.13}.range-knob-handle.ion-activated .range-knob::before,.range-knob-handle.range-knob-pressed .range-knob::before{opacity:0.25}:host(:not(.range-has-pin)) .range-knob-pressed .range-knob,:host(:not(.range-has-pin)) .range-knob-handle.ion-focused .range-knob{-webkit-transform:scale(1);transform:scale(1)}:host(.range-disabled) .range-bar-active,:host(.range-disabled) .range-bar,:host(.range-disabled) .range-tick{background-color:var(--ion-color-step-250, #bfbfbf)}:host(.range-disabled) .range-knob{-webkit-transform:scale(0.55);transform:scale(0.55);outline:5px solid #fff;background-color:var(--ion-color-step-250, #bfbfbf)}:host(.range-disabled) .label-text-wrapper,:host(.range-disabled) ::slotted([slot=start]),:host(.range-disabled) ::slotted([slot=end]){opacity:0.38}';var Range=function(){function e(e){var t=this;registerInstance(this,e);this.ionChange=createEvent(this,"ionChange",7);this.ionInput=createEvent(this,"ionInput",7);this.ionStyle=createEvent(this,"ionStyle",7);this.ionFocus=createEvent(this,"ionFocus",7);this.ionBlur=createEvent(this,"ionBlur",7);this.ionKnobMoveStart=createEvent(this,"ionKnobMoveStart",7);this.ionKnobMoveEnd=createEvent(this,"ionKnobMoveEnd",7);this.rangeId="ion-r-".concat(rangeIds++);this.didLoad=false;this.noUpdate=false;this.hasFocus=false;this.inheritedAttributes={};this.contentEl=null;this.initialContentScrollY=true;this.hasLoggedDeprecationWarning=false;this.clampBounds=function(e){return clamp(t.min,e,t.max)};this.ensureValueInBounds=function(e){if(t.dualKnobs){return{lower:t.clampBounds(e.lower),upper:t.clampBounds(e.upper)}}else{return t.clampBounds(e)}};this.setupGesture=function(){return __awaiter(t,void 0,void 0,(function(){var e,t;var r=this;return __generator(this,(function(n){switch(n.label){case 0:e=this.rangeSlider;if(!e)return[3,2];t=this;return[4,import("./index-32cbee52.js")];case 1:t.gesture=n.sent().createGesture({el:e,gestureName:"range",gesturePriority:100,threshold:0,onStart:function(e){return r.onStart(e)},onMove:function(e){return r.onMove(e)},onEnd:function(e){return r.onEnd(e)}});this.gesture.enable(!this.disabled);n.label=2;case 2:return[2]}}))}))};this.handleKeyboard=function(e,r){var n=t.ensureValueInBounds;var a=t.step;a=a>0?a:1;a=a/(t.max-t.min);if(!r){a*=-1}if(e==="A"){t.ratioA=clamp(0,t.ratioA+a,1)}else{t.ratioB=clamp(0,t.ratioB+a,1)}t.ionKnobMoveStart.emit({value:n(t.value)});t.updateValue();t.emitValueChange();t.ionKnobMoveEnd.emit({value:n(t.value)})};this.onBlur=function(){if(t.hasFocus){t.hasFocus=false;t.ionBlur.emit();t.emitStyle()}};this.onFocus=function(){if(!t.hasFocus){t.hasFocus=true;t.ionFocus.emit();t.emitStyle()}};this.ratioA=0;this.ratioB=0;this.pressedKnob=undefined;this.color=undefined;this.debounce=undefined;this.name=this.rangeId;this.label=undefined;this.dualKnobs=false;this.min=0;this.max=100;this.pin=false;this.pinFormatter=function(e){return Math.round(e)};this.snaps=false;this.step=1;this.ticks=true;this.activeBarStart=undefined;this.disabled=false;this.value=0;this.labelPlacement="start";this.legacy=undefined}e.prototype.debounceChanged=function(){var e=this,t=e.ionInput,r=e.debounce,n=e.originalIonInput;this.ionInput=r===undefined?n!==null&&n!==void 0?n:t:debounceEvent(t,r)};e.prototype.minChanged=function(){if(!this.noUpdate){this.updateRatio()}};e.prototype.maxChanged=function(){if(!this.noUpdate){this.updateRatio()}};e.prototype.activeBarStartChanged=function(){var e=this.activeBarStart;if(e!==undefined){if(e>this.max){printIonWarning("Range: The value of activeBarStart (".concat(e,") is greater than the max (").concat(this.max,"). Valid values are greater than or equal to the min value and less than or equal to the max value."),this.el);this.activeBarStart=this.max}else if(e<this.min){printIonWarning("Range: The value of activeBarStart (".concat(e,") is less than the min (").concat(this.min,"). Valid values are greater than or equal to the min value and less than or equal to the max value."),this.el);this.activeBarStart=this.min}}};e.prototype.disabledChanged=function(){if(this.gesture){this.gesture.enable(!this.disabled)}this.emitStyle()};e.prototype.valueChanged=function(){if(!this.noUpdate){this.updateRatio()}};e.prototype.componentWillLoad=function(){if(this.el.hasAttribute("id")){this.rangeId=this.el.getAttribute("id")}this.inheritedAttributes=inheritAriaAttributes(this.el)};e.prototype.componentDidLoad=function(){this.originalIonInput=this.ionInput;this.setupGesture();this.updateRatio();this.didLoad=true};e.prototype.connectedCallback=function(){var e=this.el;this.legacyFormController=createLegacyFormController(e);this.updateRatio();this.debounceChanged();this.disabledChanged();this.activeBarStartChanged();if(this.didLoad){this.setupGesture()}this.contentEl=findClosestIonContent(this.el)};e.prototype.disconnectedCallback=function(){if(this.gesture){this.gesture.destroy();this.gesture=undefined}};e.prototype.getValue=function(){var e;var t=(e=this.value)!==null&&e!==void 0?e:0;if(this.dualKnobs){if(typeof t==="object"){return t}return{lower:0,upper:t}}else{if(typeof t==="object"){return t.upper}return t}};e.prototype.emitStyle=function(){if(this.legacyFormController.hasLegacyControl()){this.ionStyle.emit({interactive:true,"interactive-disabled":this.disabled})}};e.prototype.emitValueChange=function(){this.value=this.ensureValueInBounds(this.value);this.ionChange.emit({value:this.value})};e.prototype.onStart=function(e){var t=this.contentEl;if(t){this.initialContentScrollY=disableContentScrollY(t)}var r=this.rect=this.rangeSlider.getBoundingClientRect();var n=e.currentX;var a=clamp(0,(n-r.left)/r.width,1);if(isRTL(this.el)){a=1-a}this.pressedKnob=!this.dualKnobs||Math.abs(this.ratioA-a)<Math.abs(this.ratioB-a)?"A":"B";this.setFocus(this.pressedKnob);this.update(n);this.ionKnobMoveStart.emit({value:this.ensureValueInBounds(this.value)})};e.prototype.onMove=function(e){this.update(e.currentX)};e.prototype.onEnd=function(e){var t=this,r=t.contentEl,n=t.initialContentScrollY;if(r){resetContentScrollY(r,n)}this.update(e.currentX);this.pressedKnob=undefined;this.emitValueChange();this.ionKnobMoveEnd.emit({value:this.ensureValueInBounds(this.value)})};e.prototype.update=function(e){var t=this.rect;var r=clamp(0,(e-t.left)/t.width,1);if(isRTL(this.el)){r=1-r}if(this.snaps){r=valueToRatio(ratioToValue(r,this.min,this.max,this.step),this.min,this.max)}if(this.pressedKnob==="A"){this.ratioA=r}else{this.ratioB=r}this.updateValue()};Object.defineProperty(e.prototype,"valA",{get:function(){return ratioToValue(this.ratioA,this.min,this.max,this.step)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"valB",{get:function(){return ratioToValue(this.ratioB,this.min,this.max,this.step)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"ratioLower",{get:function(){if(this.dualKnobs){return Math.min(this.ratioA,this.ratioB)}var e=this.activeBarStart;if(e==null){return 0}return valueToRatio(e,this.min,this.max)},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"ratioUpper",{get:function(){if(this.dualKnobs){return Math.max(this.ratioA,this.ratioB)}return this.ratioA},enumerable:false,configurable:true});e.prototype.updateRatio=function(){var e=this.getValue();var t=this,r=t.min,n=t.max;if(this.dualKnobs){this.ratioA=valueToRatio(e.lower,r,n);this.ratioB=valueToRatio(e.upper,r,n)}else{this.ratioA=valueToRatio(e,r,n)}};e.prototype.updateValue=function(){this.noUpdate=true;var e=this,t=e.valA,r=e.valB;this.value=!this.dualKnobs?t:{lower:Math.min(t,r),upper:Math.max(t,r)};this.ionInput.emit({value:this.value});this.noUpdate=false};e.prototype.setFocus=function(e){if(this.el.shadowRoot){var t=this.el.shadowRoot.querySelector(e==="A"?".range-knob-a":".range-knob-b");if(t){t.focus()}}};e.prototype.renderLegacyRange=function(){var e;if(!this.hasLoggedDeprecationWarning){printIonWarning('ion-range now requires providing a label with either the label slot or the "aria-label" attribute. To migrate, remove any usage of "ion-label" and pass the label text to either the component or the "aria-label" attribute.\n\nExample: <ion-range><div slot="label">Volume</div></ion-range>\nExample with aria-label: <ion-range aria-label="Volume"></ion-range>\n\nDevelopers can use the "legacy" property to continue using the legacy form markup. This property will be removed in an upcoming major release of Ionic where this form control will use the modern form markup.',this.el);if(this.legacy){printIonWarning('ion-range is being used with the "legacy" property enabled which will forcibly enable the legacy form markup. This property will be removed in an upcoming major release of Ionic where this form control will use the modern form markup.\n\nDevelopers can dismiss this warning by removing their usage of the "legacy" property and using the new range syntax.',this.el)}this.hasLoggedDeprecationWarning=true}var t=this,r=t.el,n=t.pressedKnob,a=t.disabled,i=t.pin,o=t.rangeId;var s=getIonMode(this);renderHiddenInput(true,r,this.name,JSON.stringify(this.getValue()),a);return h(Host,{onFocusin:this.onFocus,onFocusout:this.onBlur,id:o,class:createColorClasses(this.color,(e={},e[s]=true,e["in-item"]=hostContext("ion-item",r),e["range-disabled"]=a,e["range-pressed"]=n!==undefined,e["range-has-pin"]=i,e["legacy-range"]=true,e))},h("slot",{name:"start"}),this.renderRangeSlider(),h("slot",{name:"end"}))};Object.defineProperty(e.prototype,"hasStartSlotContent",{get:function(){return this.el.querySelector('[slot="start"]')!==null},enumerable:false,configurable:true});Object.defineProperty(e.prototype,"hasEndSlotContent",{get:function(){return this.el.querySelector('[slot="end"]')!==null},enumerable:false,configurable:true});e.prototype.renderRange=function(){var e;var t=this,r=t.disabled,n=t.el,a=t.hasLabel,i=t.rangeId,o=t.pin,s=t.pressedKnob,l=t.labelPlacement,d=t.label;var g=hostContext("ion-item",n);var b=a&&(l==="start"||l==="fixed")||this.hasStartSlotContent;var c=g&&!b;var p=a&&l==="end"||this.hasEndSlotContent;var u=g&&!p;var f=getIonMode(this);renderHiddenInput(true,n,this.name,JSON.stringify(this.getValue()),r);return h(Host,{onFocusin:this.onFocus,onFocusout:this.onBlur,id:i,class:createColorClasses(this.color,(e={},e[f]=true,e["in-item"]=g,e["range-disabled"]=r,e["range-pressed"]=s!==undefined,e["range-has-pin"]=o,e["range-label-placement-".concat(l)]=true,e["range-item-start-adjustment"]=c,e["range-item-end-adjustment"]=u,e))},h("label",{class:"range-wrapper",id:"range-label"},h("div",{class:{"label-text-wrapper":true,"label-text-wrapper-hidden":!a}},d!==undefined?h("div",{class:"label-text"},d):h("slot",{name:"label"})),h("div",{class:"native-wrapper"},h("slot",{name:"start"}),this.renderRangeSlider(),h("slot",{name:"end"}))))};Object.defineProperty(e.prototype,"hasLabel",{get:function(){return this.label!==undefined||this.el.querySelector('[slot="label"]')!==null},enumerable:false,configurable:true});e.prototype.renderRangeSlider=function(){var e;var t=this;var r;var n=this,a=n.min,i=n.max,o=n.step,s=n.el,l=n.handleKeyboard,d=n.pressedKnob,g=n.disabled,b=n.pin,c=n.ratioLower,p=n.ratioUpper,u=n.inheritedAttributes,f=n.rangeId,m=n.pinFormatter;var k=getAriaLabel(s,f).labelText;if(k===undefined||k===null){k=u["aria-label"]}var x="".concat(c*100,"%");var v="".concat(100-p*100,"%");var w=isRTL(this.el);var y=w?"right":"left";var z=w?"left":"right";var C=function(e){var t;return t={},t[y]=e[y],t};if(this.dualKnobs===false){if(this.valA<((r=this.activeBarStart)!==null&&r!==void 0?r:this.min)){x="".concat(p*100,"%");v="".concat(100-c*100,"%")}else{x="".concat(c*100,"%");v="".concat(100-p*100,"%")}}var j=(e={},e[y]=x,e[z]=v,e);var T=[];if(this.snaps&&this.ticks){for(var I=a;I<=i;I+=o){var M=valueToRatio(I,a,i);var A=Math.min(c,p);var E=Math.max(c,p);var R={ratio:M,active:M>=A&&M<=E};R[y]="".concat(M*100,"%");T.push(R)}}var S;if(!this.legacyFormController.hasLegacyControl()&&this.hasLabel){S="range-label"}return h("div",{class:"range-slider",ref:function(e){return t.rangeSlider=e}},T.map((function(e){return h("div",{style:C(e),role:"presentation",class:{"range-tick":true,"range-tick-active":e.active},part:e.active?"tick-active":"tick"})})),h("div",{class:"range-bar-container"},h("div",{class:"range-bar",role:"presentation",part:"bar"}),h("div",{class:{"range-bar":true,"range-bar-active":true,"has-ticks":T.length>0},role:"presentation",style:j,part:"bar-active"})),renderKnob(w,{knob:"A",pressed:d==="A",value:this.valA,ratio:this.ratioA,pin:b,pinFormatter:m,disabled:g,handleKeyboard:l,min:a,max:i,labelText:k,labelledBy:S}),this.dualKnobs&&renderKnob(w,{knob:"B",pressed:d==="B",value:this.valB,ratio:this.ratioB,pin:b,pinFormatter:m,disabled:g,handleKeyboard:l,min:a,max:i,labelText:k,labelledBy:S}))};e.prototype.render=function(){var e=this.legacyFormController;return e.hasLegacyControl()?this.renderLegacyRange():this.renderRange()};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{debounce:["debounceChanged"],min:["minChanged"],max:["maxChanged"],activeBarStart:["activeBarStartChanged"],disabled:["disabledChanged"],value:["valueChanged"]}},enumerable:false,configurable:true});return e}();var renderKnob=function(e,t){var r=t.knob,n=t.value,a=t.ratio,i=t.min,o=t.max,s=t.disabled,l=t.pressed,d=t.pin,g=t.handleKeyboard,b=t.labelText,c=t.labelledBy,p=t.pinFormatter;var u=e?"right":"left";var f=function(){var e={};e[u]="".concat(a*100,"%");return e};return h("div",{onKeyDown:function(e){var t=e.key;if(t==="ArrowLeft"||t==="ArrowDown"){g(r,false);e.preventDefault();e.stopPropagation()}else if(t==="ArrowRight"||t==="ArrowUp"){g(r,true);e.preventDefault();e.stopPropagation()}},class:{"range-knob-handle":true,"range-knob-a":r==="A","range-knob-b":r==="B","range-knob-pressed":l,"range-knob-min":n===i,"range-knob-max":n===o,"ion-activatable":true,"ion-focusable":true},style:f(),role:"slider",tabindex:s?-1:0,"aria-label":c===undefined?b:null,"aria-labelledby":c!==undefined?c:null,"aria-valuemin":i,"aria-valuemax":o,"aria-disabled":s?"true":null,"aria-valuenow":n},d&&h("div",{class:"range-pin",role:"presentation",part:"pin"},p(n)),h("div",{class:"range-knob",role:"presentation",part:"knob"}))};var ratioToValue=function(e,t,r,n){var a=(r-t)*e;if(n>0){a=Math.round(a/n)*n+t}var i=clamp(t,a,r);return roundToMaxDecimalPlaces(i,t,r,n)};var valueToRatio=function(e,t,r){return clamp(0,(e-t)/(r-t),1)};var rangeIds=0;Range.style={ios:rangeIosCss,md:rangeMdCss};export{Range as ion_range};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import{__awaiter,__generator}from"tslib";
|
|
2
2
|
/*!
|
|
3
3
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
4
|
-
*/import{w as writeTask,r as registerInstance,d as createEvent,e as readTask,h,f as getElement,H as Host}from"./index-7c9b1bca.js";import{g as getTimeGivenProgression}from"./cubic-bezier-66542bc5.js";import{I as ION_CONTENT_CLASS_SELECTOR,b as ION_CONTENT_ELEMENT_SELECTOR,p as printIonContentErrorMsg,g as getScrollElement}from"./index-4392efa5.js";import{t as transitionEndAsync,c as componentOnReady,l as clamp,g as getElementRoot,r as raf}from"./helpers-3379ba19.js";import{d as hapticImpact,I as ImpactStyle}from"./haptic-1243b917.js";import{a as isPlatform,b as getIonMode,c as config}from"./ionic-global-40e42e7f.js";import{c as createAnimation}from"./animation-8aa13916.js";import{E as ENABLE_HTML_CONTENT_DEFAULT,a as sanitizeDOMString}from"./config-96c9ace3.js";import{h as caretBackSharp,i as arrowDown}from"./index-c132c5f1.js";import{S as SPINNERS}from"./spinner-configs-d09fbbbb.js";import"./index-595d62c9.js";import"./capacitor-b4979570.js";import"./index-7a14ecec.js";var getRefresherAnimationType=function(e){var r=e.previousElementSibling;var n=r!==null&&r.tagName==="ION-HEADER";return n?"translate":"scale"};var createPullingAnimation=function(e,r,n){return e==="scale"?createScaleAnimation(r,n):createTranslateAnimation(r,n)};var createBaseAnimation=function(e){var r=e.querySelector("ion-spinner");var n=r.shadowRoot.querySelector("circle");var t=e.querySelector(".spinner-arrow-container");var i=e.querySelector(".arrow-container");var s=i?i.querySelector("ion-icon"):null;var o=createAnimation().duration(1e3).easing("ease-out");var a=createAnimation().addElement(t).keyframes([{offset:0,opacity:"0.3"},{offset:.45,opacity:"0.3"},{offset:.55,opacity:"1"},{offset:1,opacity:"1"}]);var f=createAnimation().addElement(n).keyframes([{offset:0,strokeDasharray:"1px, 200px"},{offset:.2,strokeDasharray:"1px, 200px"},{offset:.55,strokeDasharray:"100px, 200px"},{offset:1,strokeDasharray:"100px, 200px"}]);var h=createAnimation().addElement(r).keyframes([{offset:0,transform:"rotate(-90deg)"},{offset:1,transform:"rotate(210deg)"}]);if(i&&s){var l=createAnimation().addElement(i).keyframes([{offset:0,transform:"rotate(0deg)"},{offset:.3,transform:"rotate(0deg)"},{offset:.55,transform:"rotate(280deg)"},{offset:1,transform:"rotate(400deg)"}]);var c=createAnimation().addElement(s).keyframes([{offset:0,transform:"translateX(2px) scale(0)"},{offset:.3,transform:"translateX(2px) scale(0)"},{offset:.55,transform:"translateX(-1.5px) scale(1)"},{offset:1,transform:"translateX(-1.5px) scale(1)"}]);o.addAnimation([l,c])}return o.addAnimation([a,f,h])};var createScaleAnimation=function(e,r){var n=r.clientHeight;var t=createAnimation().addElement(e).keyframes([{offset:0,transform:"scale(0) translateY(-".concat(n,"px)")},{offset:1,transform:"scale(1) translateY(100px)"}]);return createBaseAnimation(e).addAnimation([t])};var createTranslateAnimation=function(e,r){var n=r.clientHeight;var t=createAnimation().addElement(e).keyframes([{offset:0,transform:"translateY(-".concat(n,"px)")},{offset:1,transform:"translateY(100px)"}]);return createBaseAnimation(e).addAnimation([t])};var createSnapBackAnimation=function(e){return createAnimation().duration(125).addElement(e).fromTo("transform","translateY(var(--ion-pulling-refresher-translate, 100px))","translateY(0px)")};var setSpinnerOpacity=function(e,r){e.style.setProperty("opacity",r.toString())};var handleScrollWhilePulling=function(e,r,n){var t=1;writeTask((function(){e.forEach((function(e,i){var s=i*(t/r);var o=t-s;var a=n-s;var f=clamp(0,a/o,1);e.style.setProperty("opacity",f.toString())}))}))};var handleScrollWhileRefreshing=function(e,r){writeTask((function(){e.style.setProperty("--refreshing-rotation-duration",r>=1?"0.5s":"2s");e.style.setProperty("opacity","1")}))};var translateElement=function(e,r,n){if(n===void 0){n=200}if(!e){return Promise.resolve()}var t=transitionEndAsync(e,n);writeTask((function(){e.style.setProperty("transition","".concat(n,"ms all ease-out"));if(r===undefined){e.style.removeProperty("transform")}else{e.style.setProperty("transform","translate3d(0px, ".concat(r,", 0px)"))}}));return t};var shouldUseNativeRefresher=function(e,r){return __awaiter(void 0,void 0,void 0,(function(){var n,t,i;return __generator(this,(function(s){switch(s.label){case 0:n=e.querySelector("ion-refresher-content");if(!n){return[2,Promise.resolve(false)]}return[4,new Promise((function(e){return componentOnReady(n,e)}))];case 1:s.sent();t=e.querySelector("ion-refresher-content .refresher-pulling ion-spinner");i=e.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");return[2,t!==null&&i!==null&&(r==="ios"&&isPlatform("mobile")&&e.style.webkitOverflowScrolling!==undefined||r==="md")]}}))}))};var refresherIosCss="ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}@supports (inset-inline-start: 0){ion-refresher{inset-inline-start:0}}@supports not (inset-inline-start: 0){ion-refresher{left:0}:host-context([dir=rtl]) ion-refresher{left:unset;right:unset;right:0}[dir=rtl] ion-refresher{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){ion-refresher:dir(rtl){left:unset;right:unset;right:0}}}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-ios .refresher-pulling-icon,.refresher-ios .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-ios .refresher-pulling-text,.refresher-ios .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-lines-ios line,.refresher-ios .refresher-refreshing .spinner-lines-small-ios line,.refresher-ios .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-bubbles circle,.refresher-ios .refresher-refreshing .spinner-circles circle,.refresher-ios .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}.refresher-native .refresher-refreshing ion-spinner{--refreshing-rotation-duration:2s;display:none;-webkit-animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards;animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards}.refresher-native .refresher-refreshing{display:none;-webkit-animation:250ms linear refresher-pop forwards;animation:250ms linear refresher-pop forwards}.refresher-native ion-spinner{width:32px;height:32px;color:var(--ion-color-step-450, #747577)}.refresher-native.refresher-refreshing .refresher-pulling ion-spinner,.refresher-native.refresher-completing .refresher-pulling ion-spinner{display:none}.refresher-native.refresher-refreshing .refresher-refreshing ion-spinner,.refresher-native.refresher-completing .refresher-refreshing ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-pulling ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-refreshing ion-spinner{display:none}.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0) rotate(180deg);transform:scale(0) rotate(180deg);-webkit-transition:300ms;transition:300ms}@-webkit-keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}@keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}";var refresherMdCss="ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}@supports (inset-inline-start: 0){ion-refresher{inset-inline-start:0}}@supports not (inset-inline-start: 0){ion-refresher{left:0}:host-context([dir=rtl]) ion-refresher{left:unset;right:unset;right:0}[dir=rtl] ion-refresher{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){ion-refresher:dir(rtl){left:unset;right:unset;right:0}}}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-md .refresher-pulling-icon,.refresher-md .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-md .refresher-pulling-text,.refresher-md .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-lines-md line,.refresher-md .refresher-refreshing .spinner-lines-small-md line,.refresher-md .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-bubbles circle,.refresher-md .refresher-refreshing .spinner-circles circle,.refresher-md .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;width:24px;height:24px;color:var(--ion-color-primary, #3880ff)}ion-refresher.refresher-native .spinner-arrow-container{display:inherit}ion-refresher.refresher-native .arrow-container{display:block;position:absolute;width:24px;height:24px}ion-refresher.refresher-native .arrow-container ion-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;left:0;right:0;bottom:-4px;position:absolute;color:var(--ion-color-primary, #3880ff);font-size:12px}ion-refresher.refresher-native.refresher-pulling ion-refresher-content .refresher-pulling,ion-refresher.refresher-native.refresher-ready ion-refresher-content .refresher-pulling{display:-ms-flexbox;display:flex}ion-refresher.refresher-native.refresher-refreshing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-cancelling ion-refresher-content .refresher-refreshing{display:-ms-flexbox;display:flex}ion-refresher.refresher-native .refresher-pulling-icon{-webkit-transform:translateY(calc(-100% - 10px));transform:translateY(calc(-100% - 10px))}ion-refresher.refresher-native .refresher-pulling-icon,ion-refresher.refresher-native .refresher-refreshing-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;border-radius:100%;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;display:-ms-flexbox;display:flex;border:1px solid var(--ion-color-step-200, #ececec);background:var(--ion-color-step-250, #ffffff);-webkit-box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1);box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1)}";var Refresher=function(){function e(e){registerInstance(this,e);this.ionRefresh=createEvent(this,"ionRefresh",7);this.ionPull=createEvent(this,"ionPull",7);this.ionStart=createEvent(this,"ionStart",7);this.appliedStyles=false;this.didStart=false;this.progress=0;this.pointerDown=false;this.needsCompletion=false;this.didRefresh=false;this.lastVelocityY=0;this.animations=[];this.nativeRefresher=false;this.state=1;this.pullMin=60;this.pullMax=this.pullMin+60;this.closeDuration="280ms";this.snapbackDuration="280ms";this.pullFactor=1;this.disabled=false}e.prototype.disabledChanged=function(){if(this.gesture){this.gesture.enable(!this.disabled)}};e.prototype.checkNativeRefresher=function(){return __awaiter(this,void 0,void 0,(function(){var e,r;return __generator(this,(function(n){switch(n.label){case 0:return[4,shouldUseNativeRefresher(this.el,getIonMode(this))];case 1:e=n.sent();if(e&&!this.nativeRefresher){r=this.el.closest("ion-content");this.setupNativeRefresher(r)}else if(!e){this.destroyNativeRefresher()}return[2]}}))}))};e.prototype.destroyNativeRefresher=function(){if(this.scrollEl&&this.scrollListenerCallback){this.scrollEl.removeEventListener("scroll",this.scrollListenerCallback);this.scrollListenerCallback=undefined}this.nativeRefresher=false};e.prototype.resetNativeRefresher=function(e,r){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(n){switch(n.label){case 0:this.state=r;if(!(getIonMode(this)==="ios"))return[3,2];return[4,translateElement(e,undefined,300)];case 1:n.sent();return[3,4];case 2:return[4,transitionEndAsync(this.el.querySelector(".refresher-refreshing-icon"),200)];case 3:n.sent();n.label=4;case 4:this.didRefresh=false;this.needsCompletion=false;this.pointerDown=false;this.animations.forEach((function(e){return e.destroy()}));this.animations=[];this.progress=0;this.state=1;return[2]}}))}))};e.prototype.setupiOSNativeRefresher=function(e,r){return __awaiter(this,void 0,void 0,(function(){var n,t,i,s;var o=this;return __generator(this,(function(a){switch(a.label){case 0:this.elementToTransform=this.scrollEl;n=e.shadowRoot.querySelectorAll("svg");t=this.scrollEl.clientHeight*.16;i=n.length;writeTask((function(){return n.forEach((function(e){return e.style.setProperty("animation","none")}))}));this.scrollListenerCallback=function(){if(!o.pointerDown&&o.state===1){return}readTask((function(){var e=o.scrollEl.scrollTop;var s=o.el.clientHeight;if(e>0){if(o.state===8){var a=clamp(0,e/(s*.5),1);writeTask((function(){return setSpinnerOpacity(r,1-a)}));return}return}if(o.pointerDown){if(!o.didStart){o.didStart=true;o.ionStart.emit()}if(o.pointerDown){o.ionPull.emit()}}var f=o.didStart?30:0;var h=o.progress=clamp(0,(Math.abs(e)-f)/t,1);var l=o.state===8||h===1;if(l){if(o.pointerDown){handleScrollWhileRefreshing(r,o.lastVelocityY)}if(!o.didRefresh){o.beginRefresh();o.didRefresh=true;hapticImpact({style:ImpactStyle.Light});if(!o.pointerDown){translateElement(o.elementToTransform,"".concat(s,"px"))}}}else{o.state=2;handleScrollWhilePulling(n,i,h)}}))};this.scrollEl.addEventListener("scroll",this.scrollListenerCallback);s=this;return[4,import("./index-ff313b19.js")];case 1:s.gesture=a.sent().createGesture({el:this.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,onStart:function(){o.pointerDown=true;if(!o.didRefresh){translateElement(o.elementToTransform,"0px")}if(t===0){t=o.scrollEl.clientHeight*.16}},onMove:function(e){o.lastVelocityY=e.velocityY},onEnd:function(){o.pointerDown=false;o.didStart=false;if(o.needsCompletion){o.resetNativeRefresher(o.elementToTransform,32);o.needsCompletion=false}else if(o.didRefresh){readTask((function(){return translateElement(o.elementToTransform,"".concat(o.el.clientHeight,"px"))}))}}});this.disabledChanged();return[2]}}))}))};e.prototype.setupMDNativeRefresher=function(e,r,n){return __awaiter(this,void 0,void 0,(function(){var t,i,s,o;var a=this;return __generator(this,(function(f){switch(f.label){case 0:t=getElementRoot(r).querySelector("circle");i=this.el.querySelector("ion-refresher-content .refresher-pulling-icon");s=getElementRoot(n).querySelector("circle");if(t!==null&&s!==null){writeTask((function(){t.style.setProperty("animation","none");n.style.setProperty("animation-delay","-655ms");s.style.setProperty("animation-delay","-655ms")}))}o=this;return[4,import("./index-ff313b19.js")];case 1:o.gesture=f.sent().createGesture({el:this.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,canStart:function(){return a.state!==8&&a.state!==32&&a.scrollEl.scrollTop===0},onStart:function(e){a.progress=0;e.data={animation:undefined,didStart:false,cancelled:false}},onMove:function(r){if(r.velocityY<0&&a.progress===0&&!r.data.didStart||r.data.cancelled){r.data.cancelled=true;return}if(!r.data.didStart){r.data.didStart=true;a.state=2;var n=a.scrollEl;var t=n.matches(ION_CONTENT_CLASS_SELECTOR)?"overflow":"--overflow";writeTask((function(){return n.style.setProperty(t,"hidden")}));var s=getRefresherAnimationType(e);var o=createPullingAnimation(s,i,a.el);r.data.animation=o;o.progressStart(false,0);a.ionStart.emit();a.animations.push(o);return}a.progress=clamp(0,r.deltaY/180*.5,1);r.data.animation.progressStep(a.progress);a.ionPull.emit()},onEnd:function(e){if(!e.data.didStart){return}a.gesture.enable(false);var r=a.scrollEl;var n=r.matches(ION_CONTENT_CLASS_SELECTOR)?"overflow":"--overflow";writeTask((function(){return r.style.removeProperty(n)}));if(a.progress<=.4){e.data.animation.progressEnd(0,a.progress,500).onFinish((function(){a.animations.forEach((function(e){return e.destroy()}));a.animations=[];a.gesture.enable(true);a.state=1}));return}var t=getTimeGivenProgression([0,0],[0,0],[1,1],[1,1],a.progress)[0];var s=createSnapBackAnimation(i);a.animations.push(s);writeTask((function(){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){switch(r.label){case 0:i.style.setProperty("--ion-pulling-refresher-translate","".concat(t*100,"px"));e.data.animation.progressEnd();return[4,s.play()];case 1:r.sent();this.beginRefresh();e.data.animation.destroy();this.gesture.enable(true);return[2]}}))}))}))}});this.disabledChanged();return[2]}}))}))};e.prototype.setupNativeRefresher=function(e){return __awaiter(this,void 0,void 0,(function(){var r,n;return __generator(this,(function(t){if(this.scrollListenerCallback||!e||this.nativeRefresher||!this.scrollEl){return[2]}this.setCss(0,"",false,"");this.nativeRefresher=true;r=this.el.querySelector("ion-refresher-content .refresher-pulling ion-spinner");n=this.el.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");if(getIonMode(this)==="ios"){this.setupiOSNativeRefresher(r,n)}else{this.setupMDNativeRefresher(e,r,n)}return[2]}))}))};e.prototype.componentDidUpdate=function(){this.checkNativeRefresher()};e.prototype.connectedCallback=function(){return __awaiter(this,void 0,void 0,(function(){var e;var r=this;return __generator(this,(function(n){if(this.el.getAttribute("slot")!=="fixed"){console.error('Make sure you use: <ion-refresher slot="fixed">');return[2]}e=this.el.closest(ION_CONTENT_ELEMENT_SELECTOR);if(!e){printIonContentErrorMsg(this.el);return[2]}componentOnReady(e,(function(){return __awaiter(r,void 0,void 0,(function(){var r,n,t,i;var s=this;return __generator(this,(function(o){switch(o.label){case 0:r=e.querySelector(ION_CONTENT_CLASS_SELECTOR);n=this;return[4,getScrollElement(r!==null&&r!==void 0?r:e)];case 1:n.scrollEl=o.sent();t=this;return[4,e.getBackgroundElement()];case 2:t.backgroundContentEl=o.sent();return[4,shouldUseNativeRefresher(this.el,getIonMode(this))];case 3:if(!o.sent())return[3,4];this.setupNativeRefresher(e);return[3,6];case 4:i=this;return[4,import("./index-ff313b19.js")];case 5:i.gesture=o.sent().createGesture({el:e,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:20,passive:false,canStart:function(){return s.canStart()},onStart:function(){return s.onStart()},onMove:function(e){return s.onMove(e)},onEnd:function(){return s.onEnd()}});this.disabledChanged();o.label=6;case 6:return[2]}}))}))}));return[2]}))}))};e.prototype.disconnectedCallback=function(){this.destroyNativeRefresher();this.scrollEl=undefined;if(this.gesture){this.gesture.destroy();this.gesture=undefined}};e.prototype.complete=function(){return __awaiter(this,void 0,void 0,(function(){var e=this;return __generator(this,(function(r){if(this.nativeRefresher){this.needsCompletion=true;if(!this.pointerDown){raf((function(){return raf((function(){return e.resetNativeRefresher(e.elementToTransform,32)}))}))}}else{this.close(32,"120ms")}return[2]}))}))};e.prototype.cancel=function(){return __awaiter(this,void 0,void 0,(function(){var e=this;return __generator(this,(function(r){if(this.nativeRefresher){if(!this.pointerDown){raf((function(){return raf((function(){return e.resetNativeRefresher(e.elementToTransform,16)}))}))}}else{this.close(16,"")}return[2]}))}))};e.prototype.getProgress=function(){return Promise.resolve(this.progress)};e.prototype.canStart=function(){if(!this.scrollEl){return false}if(this.state!==1){return false}if(this.scrollEl.scrollTop>0){return false}return true};e.prototype.onStart=function(){this.progress=0;this.state=1;this.memoizeOverflowStyle()};e.prototype.onMove=function(e){if(!this.scrollEl){return}var r=e.event;if(r.touches!==undefined&&r.touches.length>1){return}if((this.state&56)!==0){return}var n=Number.isNaN(this.pullFactor)||this.pullFactor<0?1:this.pullFactor;var t=e.deltaY*n;if(t<=0){this.progress=0;this.state=1;if(this.appliedStyles){this.setCss(0,"",false,"");return}return}if(this.state===1){var i=this.scrollEl.scrollTop;if(i>0){this.progress=0;return}this.state=2}if(r.cancelable){r.preventDefault()}this.setCss(t,"0ms",true,"");if(t===0){this.progress=0;return}var s=this.pullMin;this.progress=t/s;if(!this.didStart){this.didStart=true;this.ionStart.emit()}this.ionPull.emit();if(t<s){this.state=2;return}if(t>this.pullMax){this.beginRefresh();return}this.state=4;return};e.prototype.onEnd=function(){if(this.state===4){this.beginRefresh()}else if(this.state===2){this.cancel()}else if(this.state===1){this.restoreOverflowStyle()}};e.prototype.beginRefresh=function(){this.state=8;this.setCss(this.pullMin,this.snapbackDuration,true,"");this.ionRefresh.emit({complete:this.complete.bind(this)})};e.prototype.close=function(e,r){var n=this;setTimeout((function(){n.state=1;n.progress=0;n.didStart=false;n.setCss(0,"0ms",false,"",true)}),600);this.state=e;this.setCss(0,this.closeDuration,true,r)};e.prototype.setCss=function(e,r,n,t,i){var s=this;if(i===void 0){i=false}if(this.nativeRefresher){return}this.appliedStyles=e>0;writeTask((function(){if(s.scrollEl&&s.backgroundContentEl){var o=s.scrollEl.style;var a=s.backgroundContentEl.style;o.transform=a.transform=e>0?"translateY(".concat(e,"px) translateZ(0px)"):"";o.transitionDuration=a.transitionDuration=r;o.transitionDelay=a.transitionDelay=t;o.overflow=n?"hidden":""}if(i){s.restoreOverflowStyle()}}))};e.prototype.memoizeOverflowStyle=function(){if(this.scrollEl){var e=this.scrollEl.style,r=e.overflow,n=e.overflowX,t=e.overflowY;this.overflowStyles={overflow:r!==null&&r!==void 0?r:"",overflowX:n!==null&&n!==void 0?n:"",overflowY:t!==null&&t!==void 0?t:""}}};e.prototype.restoreOverflowStyle=function(){if(this.overflowStyles!==undefined&&this.scrollEl!==undefined){var e=this.overflowStyles,r=e.overflow,n=e.overflowX,t=e.overflowY;this.scrollEl.style.overflow=r;this.scrollEl.style.overflowX=n;this.scrollEl.style.overflowY=t;this.overflowStyles=undefined}};e.prototype.render=function(){var e;var r=getIonMode(this);return h(Host,{slot:"fixed",class:(e={},e[r]=true,e["refresher-".concat(r)]=true,e["refresher-native"]=this.nativeRefresher,e["refresher-active"]=this.state!==1,e["refresher-pulling"]=this.state===2,e["refresher-ready"]=this.state===4,e["refresher-refreshing"]=this.state===8,e["refresher-cancelling"]=this.state===16,e["refresher-completing"]=this.state===32,e)})};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{disabled:["disabledChanged"]}},enumerable:false,configurable:true});return e}();Refresher.style={ios:refresherIosCss,md:refresherMdCss};var RefresherContent=function(){function e(e){registerInstance(this,e);this.customHTMLEnabled=config.get("innerHTMLTemplatesEnabled",ENABLE_HTML_CONTENT_DEFAULT);this.pullingIcon=undefined;this.pullingText=undefined;this.refreshingSpinner=undefined;this.refreshingText=undefined}e.prototype.componentWillLoad=function(){if(this.pullingIcon===undefined){var e=getIonMode(this);var r=this.el.style.webkitOverflowScrolling!==undefined?"lines":arrowDown;this.pullingIcon=config.get("refreshingIcon",e==="ios"&&isPlatform("mobile")?config.get("spinner",r):"circular")}if(this.refreshingSpinner===undefined){var e=getIonMode(this);this.refreshingSpinner=config.get("refreshingSpinner",config.get("spinner",e==="ios"?"lines":"circular"))}};e.prototype.renderPullingText=function(){var e=this,r=e.customHTMLEnabled,n=e.pullingText;if(r){return h("div",{class:"refresher-pulling-text",innerHTML:sanitizeDOMString(n)})}return h("div",{class:"refresher-pulling-text"},n)};e.prototype.renderRefreshingText=function(){var e=this,r=e.customHTMLEnabled,n=e.refreshingText;if(r){return h("div",{class:"refresher-refreshing-text",innerHTML:sanitizeDOMString(n)})}return h("div",{class:"refresher-refreshing-text"},n)};e.prototype.render=function(){var e=this.pullingIcon;var r=e!=null&&SPINNERS[e]!==undefined;var n=getIonMode(this);return h(Host,{class:n},h("div",{class:"refresher-pulling"},this.pullingIcon&&r&&h("div",{class:"refresher-pulling-icon"},h("div",{class:"spinner-arrow-container"},h("ion-spinner",{name:this.pullingIcon,paused:true}),n==="md"&&this.pullingIcon==="circular"&&h("div",{class:"arrow-container"},h("ion-icon",{icon:caretBackSharp,"aria-hidden":"true"})))),this.pullingIcon&&!r&&h("div",{class:"refresher-pulling-icon"},h("ion-icon",{icon:this.pullingIcon,lazy:false,"aria-hidden":"true"})),this.pullingText!==undefined&&this.renderPullingText()),h("div",{class:"refresher-refreshing"},this.refreshingSpinner&&h("div",{class:"refresher-refreshing-icon"},h("ion-spinner",{name:this.refreshingSpinner})),this.refreshingText!==undefined&&this.renderRefreshingText()))};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});return e}();export{Refresher as ion_refresher,RefresherContent as ion_refresher_content};
|
|
4
|
+
*/import{w as writeTask,r as registerInstance,d as createEvent,e as readTask,h,f as getElement,H as Host}from"./index-7c9b1bca.js";import{g as getTimeGivenProgression}from"./cubic-bezier-66542bc5.js";import{I as ION_CONTENT_CLASS_SELECTOR,b as ION_CONTENT_ELEMENT_SELECTOR,p as printIonContentErrorMsg,g as getScrollElement}from"./index-4392efa5.js";import{t as transitionEndAsync,c as componentOnReady,l as clamp,g as getElementRoot,r as raf}from"./helpers-3379ba19.js";import{d as hapticImpact,I as ImpactStyle}from"./haptic-1243b917.js";import{a as isPlatform,b as getIonMode,c as config}from"./ionic-global-40e42e7f.js";import{c as createAnimation}from"./animation-8aa13916.js";import{E as ENABLE_HTML_CONTENT_DEFAULT,a as sanitizeDOMString}from"./config-96c9ace3.js";import{h as caretBackSharp,i as arrowDown}from"./index-c132c5f1.js";import{S as SPINNERS}from"./spinner-configs-d09fbbbb.js";import"./index-595d62c9.js";import"./capacitor-b4979570.js";import"./index-7a14ecec.js";var getRefresherAnimationType=function(e){var r=e.previousElementSibling;var n=r!==null&&r.tagName==="ION-HEADER";return n?"translate":"scale"};var createPullingAnimation=function(e,r,n){return e==="scale"?createScaleAnimation(r,n):createTranslateAnimation(r,n)};var createBaseAnimation=function(e){var r=e.querySelector("ion-spinner");var n=r.shadowRoot.querySelector("circle");var t=e.querySelector(".spinner-arrow-container");var i=e.querySelector(".arrow-container");var s=i?i.querySelector("ion-icon"):null;var o=createAnimation().duration(1e3).easing("ease-out");var a=createAnimation().addElement(t).keyframes([{offset:0,opacity:"0.3"},{offset:.45,opacity:"0.3"},{offset:.55,opacity:"1"},{offset:1,opacity:"1"}]);var f=createAnimation().addElement(n).keyframes([{offset:0,strokeDasharray:"1px, 200px"},{offset:.2,strokeDasharray:"1px, 200px"},{offset:.55,strokeDasharray:"100px, 200px"},{offset:1,strokeDasharray:"100px, 200px"}]);var h=createAnimation().addElement(r).keyframes([{offset:0,transform:"rotate(-90deg)"},{offset:1,transform:"rotate(210deg)"}]);if(i&&s){var l=createAnimation().addElement(i).keyframes([{offset:0,transform:"rotate(0deg)"},{offset:.3,transform:"rotate(0deg)"},{offset:.55,transform:"rotate(280deg)"},{offset:1,transform:"rotate(400deg)"}]);var c=createAnimation().addElement(s).keyframes([{offset:0,transform:"translateX(2px) scale(0)"},{offset:.3,transform:"translateX(2px) scale(0)"},{offset:.55,transform:"translateX(-1.5px) scale(1)"},{offset:1,transform:"translateX(-1.5px) scale(1)"}]);o.addAnimation([l,c])}return o.addAnimation([a,f,h])};var createScaleAnimation=function(e,r){var n=r.clientHeight;var t=createAnimation().addElement(e).keyframes([{offset:0,transform:"scale(0) translateY(-".concat(n,"px)")},{offset:1,transform:"scale(1) translateY(100px)"}]);return createBaseAnimation(e).addAnimation([t])};var createTranslateAnimation=function(e,r){var n=r.clientHeight;var t=createAnimation().addElement(e).keyframes([{offset:0,transform:"translateY(-".concat(n,"px)")},{offset:1,transform:"translateY(100px)"}]);return createBaseAnimation(e).addAnimation([t])};var createSnapBackAnimation=function(e){return createAnimation().duration(125).addElement(e).fromTo("transform","translateY(var(--ion-pulling-refresher-translate, 100px))","translateY(0px)")};var setSpinnerOpacity=function(e,r){e.style.setProperty("opacity",r.toString())};var handleScrollWhilePulling=function(e,r,n){var t=1;writeTask((function(){e.forEach((function(e,i){var s=i*(t/r);var o=t-s;var a=n-s;var f=clamp(0,a/o,1);e.style.setProperty("opacity",f.toString())}))}))};var handleScrollWhileRefreshing=function(e,r){writeTask((function(){e.style.setProperty("--refreshing-rotation-duration",r>=1?"0.5s":"2s");e.style.setProperty("opacity","1")}))};var translateElement=function(e,r,n){if(n===void 0){n=200}if(!e){return Promise.resolve()}var t=transitionEndAsync(e,n);writeTask((function(){e.style.setProperty("transition","".concat(n,"ms all ease-out"));if(r===undefined){e.style.removeProperty("transform")}else{e.style.setProperty("transform","translate3d(0px, ".concat(r,", 0px)"))}}));return t};var shouldUseNativeRefresher=function(e,r){return __awaiter(void 0,void 0,void 0,(function(){var n,t,i;return __generator(this,(function(s){switch(s.label){case 0:n=e.querySelector("ion-refresher-content");if(!n){return[2,Promise.resolve(false)]}return[4,new Promise((function(e){return componentOnReady(n,e)}))];case 1:s.sent();t=e.querySelector("ion-refresher-content .refresher-pulling ion-spinner");i=e.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");return[2,t!==null&&i!==null&&(r==="ios"&&isPlatform("mobile")&&e.style.webkitOverflowScrolling!==undefined||r==="md")]}}))}))};var refresherIosCss="ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}@supports (inset-inline-start: 0){ion-refresher{inset-inline-start:0}}@supports not (inset-inline-start: 0){ion-refresher{left:0}:host-context([dir=rtl]) ion-refresher{left:unset;right:unset;right:0}[dir=rtl] ion-refresher{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){ion-refresher:dir(rtl){left:unset;right:unset;right:0}}}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-ios .refresher-pulling-icon,.refresher-ios .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-ios .refresher-pulling-text,.refresher-ios .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-lines-ios line,.refresher-ios .refresher-refreshing .spinner-lines-small-ios line,.refresher-ios .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-ios .refresher-refreshing .spinner-bubbles circle,.refresher-ios .refresher-refreshing .spinner-circles circle,.refresher-ios .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0}.refresher-native .refresher-refreshing ion-spinner{--refreshing-rotation-duration:2s;display:none;-webkit-animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards;animation:var(--refreshing-rotation-duration) ease-out refresher-rotate forwards}.refresher-native .refresher-refreshing{display:none;-webkit-animation:250ms linear refresher-pop forwards;animation:250ms linear refresher-pop forwards}.refresher-native ion-spinner{width:32px;height:32px;color:var(--ion-color-step-450, #747577)}.refresher-native.refresher-refreshing .refresher-pulling ion-spinner,.refresher-native.refresher-completing .refresher-pulling ion-spinner{display:none}.refresher-native.refresher-refreshing .refresher-refreshing ion-spinner,.refresher-native.refresher-completing .refresher-refreshing ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-pulling ion-spinner{display:block}.refresher-native.refresher-pulling .refresher-refreshing ion-spinner{display:none}.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0) rotate(180deg);transform:scale(0) rotate(180deg);-webkit-transition:300ms;transition:300ms}@-webkit-keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@keyframes refresher-pop{0%{-webkit-transform:scale(1);transform:scale(1);-webkit-animation-timing-function:ease-in;animation-timing-function:ease-in}50%{-webkit-transform:scale(1.2);transform:scale(1.2);-webkit-animation-timing-function:ease-out;animation-timing-function:ease-out}100%{-webkit-transform:scale(1);transform:scale(1)}}@-webkit-keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}@keyframes refresher-rotate{from{-webkit-transform:rotate(0deg);transform:rotate(0deg)}to{-webkit-transform:rotate(180deg);transform:rotate(180deg)}}";var refresherMdCss="ion-refresher{top:0;display:none;position:absolute;width:100%;height:60px;pointer-events:none;z-index:-1}@supports (inset-inline-start: 0){ion-refresher{inset-inline-start:0}}@supports not (inset-inline-start: 0){ion-refresher{left:0}:host-context([dir=rtl]) ion-refresher{left:unset;right:unset;right:0}[dir=rtl] ion-refresher{left:unset;right:unset;right:0}@supports selector(:dir(rtl)){ion-refresher:dir(rtl){left:unset;right:unset;right:0}}}ion-refresher.refresher-active{display:block}ion-refresher-content{display:-ms-flexbox;display:flex;-ms-flex-direction:column;flex-direction:column;-ms-flex-pack:center;justify-content:center;height:100%}.refresher-pulling,.refresher-refreshing{display:none;width:100%}.refresher-pulling-icon,.refresher-refreshing-icon{-webkit-transform-origin:center;transform-origin:center;-webkit-transition:200ms;transition:200ms;font-size:30px;text-align:center}:host-context([dir=rtl]) .refresher-pulling-icon,:host-context([dir=rtl]) .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}[dir=rtl] .refresher-pulling-icon,[dir=rtl] .refresher-refreshing-icon{-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}@supports selector(:dir(rtl)){.refresher-pulling-icon:dir(rtl),.refresher-refreshing-icon:dir(rtl){-webkit-transform-origin:calc(100% - center);transform-origin:calc(100% - center)}}.refresher-pulling-text,.refresher-refreshing-text{font-size:16px;text-align:center}ion-refresher-content .arrow-container{display:none}.refresher-pulling ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling{display:block}.refresher-ready ion-refresher-content .refresher-pulling-icon{-webkit-transform:rotate(180deg);transform:rotate(180deg)}.refresher-refreshing ion-refresher-content .refresher-refreshing{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling{display:block}.refresher-cancelling ion-refresher-content .refresher-pulling-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-completing ion-refresher-content .refresher-refreshing{display:block}.refresher-completing ion-refresher-content .refresher-refreshing-icon{-webkit-transform:scale(0);transform:scale(0)}.refresher-native .refresher-pulling-text,.refresher-native .refresher-refreshing-text{display:none}.refresher-md .refresher-pulling-icon,.refresher-md .refresher-refreshing-icon{color:var(--ion-text-color, #000)}.refresher-md .refresher-pulling-text,.refresher-md .refresher-refreshing-text{color:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-lines-md line,.refresher-md .refresher-refreshing .spinner-lines-small-md line,.refresher-md .refresher-refreshing .spinner-crescent circle{stroke:var(--ion-text-color, #000)}.refresher-md .refresher-refreshing .spinner-bubbles circle,.refresher-md .refresher-refreshing .spinner-circles circle,.refresher-md .refresher-refreshing .spinner-dots circle{fill:var(--ion-text-color, #000)}ion-refresher.refresher-native{display:block;z-index:1}ion-refresher.refresher-native ion-spinner{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;width:24px;height:24px;color:var(--ion-color-primary, #3880ff)}ion-refresher.refresher-native .spinner-arrow-container{display:inherit}ion-refresher.refresher-native .arrow-container{display:block;position:absolute;width:24px;height:24px}ion-refresher.refresher-native .arrow-container ion-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;left:0;right:0;bottom:-4px;position:absolute;color:var(--ion-color-primary, #3880ff);font-size:12px}ion-refresher.refresher-native.refresher-pulling ion-refresher-content .refresher-pulling,ion-refresher.refresher-native.refresher-ready ion-refresher-content .refresher-pulling{display:-ms-flexbox;display:flex}ion-refresher.refresher-native.refresher-refreshing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-completing ion-refresher-content .refresher-refreshing,ion-refresher.refresher-native.refresher-cancelling ion-refresher-content .refresher-refreshing{display:-ms-flexbox;display:flex}ion-refresher.refresher-native .refresher-pulling-icon{-webkit-transform:translateY(calc(-100% - 10px));transform:translateY(calc(-100% - 10px))}ion-refresher.refresher-native .refresher-pulling-icon,ion-refresher.refresher-native .refresher-refreshing-icon{-webkit-margin-start:auto;margin-inline-start:auto;-webkit-margin-end:auto;margin-inline-end:auto;margin-top:0;margin-bottom:0;border-radius:100%;-webkit-padding-start:8px;padding-inline-start:8px;-webkit-padding-end:8px;padding-inline-end:8px;padding-top:8px;padding-bottom:8px;display:-ms-flexbox;display:flex;border:1px solid var(--ion-color-step-200, #ececec);background:var(--ion-color-step-250, #ffffff);-webkit-box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1);box-shadow:0px 1px 6px rgba(0, 0, 0, 0.1)}";var Refresher=function(){function e(e){registerInstance(this,e);this.ionRefresh=createEvent(this,"ionRefresh",7);this.ionPull=createEvent(this,"ionPull",7);this.ionStart=createEvent(this,"ionStart",7);this.appliedStyles=false;this.didStart=false;this.progress=0;this.pointerDown=false;this.needsCompletion=false;this.didRefresh=false;this.lastVelocityY=0;this.animations=[];this.nativeRefresher=false;this.state=1;this.pullMin=60;this.pullMax=this.pullMin+60;this.closeDuration="280ms";this.snapbackDuration="280ms";this.pullFactor=1;this.disabled=false}e.prototype.disabledChanged=function(){if(this.gesture){this.gesture.enable(!this.disabled)}};e.prototype.checkNativeRefresher=function(){return __awaiter(this,void 0,void 0,(function(){var e,r;return __generator(this,(function(n){switch(n.label){case 0:return[4,shouldUseNativeRefresher(this.el,getIonMode(this))];case 1:e=n.sent();if(e&&!this.nativeRefresher){r=this.el.closest("ion-content");this.setupNativeRefresher(r)}else if(!e){this.destroyNativeRefresher()}return[2]}}))}))};e.prototype.destroyNativeRefresher=function(){if(this.scrollEl&&this.scrollListenerCallback){this.scrollEl.removeEventListener("scroll",this.scrollListenerCallback);this.scrollListenerCallback=undefined}this.nativeRefresher=false};e.prototype.resetNativeRefresher=function(e,r){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(n){switch(n.label){case 0:this.state=r;if(!(getIonMode(this)==="ios"))return[3,2];return[4,translateElement(e,undefined,300)];case 1:n.sent();return[3,4];case 2:return[4,transitionEndAsync(this.el.querySelector(".refresher-refreshing-icon"),200)];case 3:n.sent();n.label=4;case 4:this.didRefresh=false;this.needsCompletion=false;this.pointerDown=false;this.animations.forEach((function(e){return e.destroy()}));this.animations=[];this.progress=0;this.state=1;return[2]}}))}))};e.prototype.setupiOSNativeRefresher=function(e,r){return __awaiter(this,void 0,void 0,(function(){var n,t,i,s;var o=this;return __generator(this,(function(a){switch(a.label){case 0:this.elementToTransform=this.scrollEl;n=e.shadowRoot.querySelectorAll("svg");t=this.scrollEl.clientHeight*.16;i=n.length;writeTask((function(){return n.forEach((function(e){return e.style.setProperty("animation","none")}))}));this.scrollListenerCallback=function(){if(!o.pointerDown&&o.state===1){return}readTask((function(){var e=o.scrollEl.scrollTop;var s=o.el.clientHeight;if(e>0){if(o.state===8){var a=clamp(0,e/(s*.5),1);writeTask((function(){return setSpinnerOpacity(r,1-a)}));return}return}if(o.pointerDown){if(!o.didStart){o.didStart=true;o.ionStart.emit()}if(o.pointerDown){o.ionPull.emit()}}var f=o.didStart?30:0;var h=o.progress=clamp(0,(Math.abs(e)-f)/t,1);var l=o.state===8||h===1;if(l){if(o.pointerDown){handleScrollWhileRefreshing(r,o.lastVelocityY)}if(!o.didRefresh){o.beginRefresh();o.didRefresh=true;hapticImpact({style:ImpactStyle.Light});if(!o.pointerDown){translateElement(o.elementToTransform,"".concat(s,"px"))}}}else{o.state=2;handleScrollWhilePulling(n,i,h)}}))};this.scrollEl.addEventListener("scroll",this.scrollListenerCallback);s=this;return[4,import("./index-32cbee52.js")];case 1:s.gesture=a.sent().createGesture({el:this.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,onStart:function(){o.pointerDown=true;if(!o.didRefresh){translateElement(o.elementToTransform,"0px")}if(t===0){t=o.scrollEl.clientHeight*.16}},onMove:function(e){o.lastVelocityY=e.velocityY},onEnd:function(){o.pointerDown=false;o.didStart=false;if(o.needsCompletion){o.resetNativeRefresher(o.elementToTransform,32);o.needsCompletion=false}else if(o.didRefresh){readTask((function(){return translateElement(o.elementToTransform,"".concat(o.el.clientHeight,"px"))}))}}});this.disabledChanged();return[2]}}))}))};e.prototype.setupMDNativeRefresher=function(e,r,n){return __awaiter(this,void 0,void 0,(function(){var t,i,s,o;var a=this;return __generator(this,(function(f){switch(f.label){case 0:t=getElementRoot(r).querySelector("circle");i=this.el.querySelector("ion-refresher-content .refresher-pulling-icon");s=getElementRoot(n).querySelector("circle");if(t!==null&&s!==null){writeTask((function(){t.style.setProperty("animation","none");n.style.setProperty("animation-delay","-655ms");s.style.setProperty("animation-delay","-655ms")}))}o=this;return[4,import("./index-32cbee52.js")];case 1:o.gesture=f.sent().createGesture({el:this.scrollEl,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:5,canStart:function(){return a.state!==8&&a.state!==32&&a.scrollEl.scrollTop===0},onStart:function(e){a.progress=0;e.data={animation:undefined,didStart:false,cancelled:false}},onMove:function(r){if(r.velocityY<0&&a.progress===0&&!r.data.didStart||r.data.cancelled){r.data.cancelled=true;return}if(!r.data.didStart){r.data.didStart=true;a.state=2;var n=a.scrollEl;var t=n.matches(ION_CONTENT_CLASS_SELECTOR)?"overflow":"--overflow";writeTask((function(){return n.style.setProperty(t,"hidden")}));var s=getRefresherAnimationType(e);var o=createPullingAnimation(s,i,a.el);r.data.animation=o;o.progressStart(false,0);a.ionStart.emit();a.animations.push(o);return}a.progress=clamp(0,r.deltaY/180*.5,1);r.data.animation.progressStep(a.progress);a.ionPull.emit()},onEnd:function(e){if(!e.data.didStart){return}a.gesture.enable(false);var r=a.scrollEl;var n=r.matches(ION_CONTENT_CLASS_SELECTOR)?"overflow":"--overflow";writeTask((function(){return r.style.removeProperty(n)}));if(a.progress<=.4){e.data.animation.progressEnd(0,a.progress,500).onFinish((function(){a.animations.forEach((function(e){return e.destroy()}));a.animations=[];a.gesture.enable(true);a.state=1}));return}var t=getTimeGivenProgression([0,0],[0,0],[1,1],[1,1],a.progress)[0];var s=createSnapBackAnimation(i);a.animations.push(s);writeTask((function(){return __awaiter(a,void 0,void 0,(function(){return __generator(this,(function(r){switch(r.label){case 0:i.style.setProperty("--ion-pulling-refresher-translate","".concat(t*100,"px"));e.data.animation.progressEnd();return[4,s.play()];case 1:r.sent();this.beginRefresh();e.data.animation.destroy();this.gesture.enable(true);return[2]}}))}))}))}});this.disabledChanged();return[2]}}))}))};e.prototype.setupNativeRefresher=function(e){return __awaiter(this,void 0,void 0,(function(){var r,n;return __generator(this,(function(t){if(this.scrollListenerCallback||!e||this.nativeRefresher||!this.scrollEl){return[2]}this.setCss(0,"",false,"");this.nativeRefresher=true;r=this.el.querySelector("ion-refresher-content .refresher-pulling ion-spinner");n=this.el.querySelector("ion-refresher-content .refresher-refreshing ion-spinner");if(getIonMode(this)==="ios"){this.setupiOSNativeRefresher(r,n)}else{this.setupMDNativeRefresher(e,r,n)}return[2]}))}))};e.prototype.componentDidUpdate=function(){this.checkNativeRefresher()};e.prototype.connectedCallback=function(){return __awaiter(this,void 0,void 0,(function(){var e;var r=this;return __generator(this,(function(n){if(this.el.getAttribute("slot")!=="fixed"){console.error('Make sure you use: <ion-refresher slot="fixed">');return[2]}e=this.el.closest(ION_CONTENT_ELEMENT_SELECTOR);if(!e){printIonContentErrorMsg(this.el);return[2]}componentOnReady(e,(function(){return __awaiter(r,void 0,void 0,(function(){var r,n,t,i;var s=this;return __generator(this,(function(o){switch(o.label){case 0:r=e.querySelector(ION_CONTENT_CLASS_SELECTOR);n=this;return[4,getScrollElement(r!==null&&r!==void 0?r:e)];case 1:n.scrollEl=o.sent();t=this;return[4,e.getBackgroundElement()];case 2:t.backgroundContentEl=o.sent();return[4,shouldUseNativeRefresher(this.el,getIonMode(this))];case 3:if(!o.sent())return[3,4];this.setupNativeRefresher(e);return[3,6];case 4:i=this;return[4,import("./index-32cbee52.js")];case 5:i.gesture=o.sent().createGesture({el:e,gestureName:"refresher",gesturePriority:31,direction:"y",threshold:20,passive:false,canStart:function(){return s.canStart()},onStart:function(){return s.onStart()},onMove:function(e){return s.onMove(e)},onEnd:function(){return s.onEnd()}});this.disabledChanged();o.label=6;case 6:return[2]}}))}))}));return[2]}))}))};e.prototype.disconnectedCallback=function(){this.destroyNativeRefresher();this.scrollEl=undefined;if(this.gesture){this.gesture.destroy();this.gesture=undefined}};e.prototype.complete=function(){return __awaiter(this,void 0,void 0,(function(){var e=this;return __generator(this,(function(r){if(this.nativeRefresher){this.needsCompletion=true;if(!this.pointerDown){raf((function(){return raf((function(){return e.resetNativeRefresher(e.elementToTransform,32)}))}))}}else{this.close(32,"120ms")}return[2]}))}))};e.prototype.cancel=function(){return __awaiter(this,void 0,void 0,(function(){var e=this;return __generator(this,(function(r){if(this.nativeRefresher){if(!this.pointerDown){raf((function(){return raf((function(){return e.resetNativeRefresher(e.elementToTransform,16)}))}))}}else{this.close(16,"")}return[2]}))}))};e.prototype.getProgress=function(){return Promise.resolve(this.progress)};e.prototype.canStart=function(){if(!this.scrollEl){return false}if(this.state!==1){return false}if(this.scrollEl.scrollTop>0){return false}return true};e.prototype.onStart=function(){this.progress=0;this.state=1;this.memoizeOverflowStyle()};e.prototype.onMove=function(e){if(!this.scrollEl){return}var r=e.event;if(r.touches!==undefined&&r.touches.length>1){return}if((this.state&56)!==0){return}var n=Number.isNaN(this.pullFactor)||this.pullFactor<0?1:this.pullFactor;var t=e.deltaY*n;if(t<=0){this.progress=0;this.state=1;if(this.appliedStyles){this.setCss(0,"",false,"");return}return}if(this.state===1){var i=this.scrollEl.scrollTop;if(i>0){this.progress=0;return}this.state=2}if(r.cancelable){r.preventDefault()}this.setCss(t,"0ms",true,"");if(t===0){this.progress=0;return}var s=this.pullMin;this.progress=t/s;if(!this.didStart){this.didStart=true;this.ionStart.emit()}this.ionPull.emit();if(t<s){this.state=2;return}if(t>this.pullMax){this.beginRefresh();return}this.state=4;return};e.prototype.onEnd=function(){if(this.state===4){this.beginRefresh()}else if(this.state===2){this.cancel()}else if(this.state===1){this.restoreOverflowStyle()}};e.prototype.beginRefresh=function(){this.state=8;this.setCss(this.pullMin,this.snapbackDuration,true,"");this.ionRefresh.emit({complete:this.complete.bind(this)})};e.prototype.close=function(e,r){var n=this;setTimeout((function(){n.state=1;n.progress=0;n.didStart=false;n.setCss(0,"0ms",false,"",true)}),600);this.state=e;this.setCss(0,this.closeDuration,true,r)};e.prototype.setCss=function(e,r,n,t,i){var s=this;if(i===void 0){i=false}if(this.nativeRefresher){return}this.appliedStyles=e>0;writeTask((function(){if(s.scrollEl&&s.backgroundContentEl){var o=s.scrollEl.style;var a=s.backgroundContentEl.style;o.transform=a.transform=e>0?"translateY(".concat(e,"px) translateZ(0px)"):"";o.transitionDuration=a.transitionDuration=r;o.transitionDelay=a.transitionDelay=t;o.overflow=n?"hidden":""}if(i){s.restoreOverflowStyle()}}))};e.prototype.memoizeOverflowStyle=function(){if(this.scrollEl){var e=this.scrollEl.style,r=e.overflow,n=e.overflowX,t=e.overflowY;this.overflowStyles={overflow:r!==null&&r!==void 0?r:"",overflowX:n!==null&&n!==void 0?n:"",overflowY:t!==null&&t!==void 0?t:""}}};e.prototype.restoreOverflowStyle=function(){if(this.overflowStyles!==undefined&&this.scrollEl!==undefined){var e=this.overflowStyles,r=e.overflow,n=e.overflowX,t=e.overflowY;this.scrollEl.style.overflow=r;this.scrollEl.style.overflowX=n;this.scrollEl.style.overflowY=t;this.overflowStyles=undefined}};e.prototype.render=function(){var e;var r=getIonMode(this);return h(Host,{slot:"fixed",class:(e={},e[r]=true,e["refresher-".concat(r)]=true,e["refresher-native"]=this.nativeRefresher,e["refresher-active"]=this.state!==1,e["refresher-pulling"]=this.state===2,e["refresher-ready"]=this.state===4,e["refresher-refreshing"]=this.state===8,e["refresher-cancelling"]=this.state===16,e["refresher-completing"]=this.state===32,e)})};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(e,"watchers",{get:function(){return{disabled:["disabledChanged"]}},enumerable:false,configurable:true});return e}();Refresher.style={ios:refresherIosCss,md:refresherMdCss};var RefresherContent=function(){function e(e){registerInstance(this,e);this.customHTMLEnabled=config.get("innerHTMLTemplatesEnabled",ENABLE_HTML_CONTENT_DEFAULT);this.pullingIcon=undefined;this.pullingText=undefined;this.refreshingSpinner=undefined;this.refreshingText=undefined}e.prototype.componentWillLoad=function(){if(this.pullingIcon===undefined){var e=getIonMode(this);var r=this.el.style.webkitOverflowScrolling!==undefined?"lines":arrowDown;this.pullingIcon=config.get("refreshingIcon",e==="ios"&&isPlatform("mobile")?config.get("spinner",r):"circular")}if(this.refreshingSpinner===undefined){var e=getIonMode(this);this.refreshingSpinner=config.get("refreshingSpinner",config.get("spinner",e==="ios"?"lines":"circular"))}};e.prototype.renderPullingText=function(){var e=this,r=e.customHTMLEnabled,n=e.pullingText;if(r){return h("div",{class:"refresher-pulling-text",innerHTML:sanitizeDOMString(n)})}return h("div",{class:"refresher-pulling-text"},n)};e.prototype.renderRefreshingText=function(){var e=this,r=e.customHTMLEnabled,n=e.refreshingText;if(r){return h("div",{class:"refresher-refreshing-text",innerHTML:sanitizeDOMString(n)})}return h("div",{class:"refresher-refreshing-text"},n)};e.prototype.render=function(){var e=this.pullingIcon;var r=e!=null&&SPINNERS[e]!==undefined;var n=getIonMode(this);return h(Host,{class:n},h("div",{class:"refresher-pulling"},this.pullingIcon&&r&&h("div",{class:"refresher-pulling-icon"},h("div",{class:"spinner-arrow-container"},h("ion-spinner",{name:this.pullingIcon,paused:true}),n==="md"&&this.pullingIcon==="circular"&&h("div",{class:"arrow-container"},h("ion-icon",{icon:caretBackSharp,"aria-hidden":"true"})))),this.pullingIcon&&!r&&h("div",{class:"refresher-pulling-icon"},h("ion-icon",{icon:this.pullingIcon,lazy:false,"aria-hidden":"true"})),this.pullingText!==undefined&&this.renderPullingText()),h("div",{class:"refresher-refreshing"},this.refreshingSpinner&&h("div",{class:"refresher-refreshing-icon"},h("ion-spinner",{name:this.refreshingSpinner})),this.refreshingText!==undefined&&this.renderRefreshingText()))};Object.defineProperty(e.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});return e}();export{Refresher as ion_refresher,RefresherContent as ion_refresher_content};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
import{__awaiter,__generator}from"tslib";
|
|
2
2
|
/*!
|
|
3
3
|
* (C) Ionic http://ionicframework.com - MIT License
|
|
4
|
-
*/import{r as registerInstance,h,H as Host,f as getElement,d as createEvent}from"./index-7c9b1bca.js";import{j as reorderThreeOutline,k as reorderTwoSharp}from"./index-c132c5f1.js";import{b as getIonMode}from"./ionic-global-40e42e7f.js";import{f as findClosestIonContent,g as getScrollElement}from"./index-4392efa5.js";import{r as raf}from"./helpers-3379ba19.js";import{a as hapticSelectionStart,b as hapticSelectionChanged,h as hapticSelectionEnd}from"./haptic-1243b917.js";import"./index-595d62c9.js";import"./capacitor-b4979570.js";import"./index-7a14ecec.js";var reorderIosCss=":host([slot]){display:none;line-height:0;z-index:100}.reorder-icon{display:block}::slotted(ion-icon){font-size:dynamic-font(16px)}.reorder-icon{font-size:2.125rem;opacity:0.4}";var reorderMdCss=":host([slot]){display:none;line-height:0;z-index:100}.reorder-icon{display:block}::slotted(ion-icon){font-size:dynamic-font(16px)}.reorder-icon{font-size:1.9375rem;opacity:0.3}";var Reorder=function(){function r(r){registerInstance(this,r)}r.prototype.onClick=function(r){var e=this.el.closest("ion-reorder-group");r.preventDefault();if(!e||!e.disabled){r.stopImmediatePropagation()}};r.prototype.render=function(){var r=getIonMode(this);var e=r==="ios"?reorderThreeOutline:reorderTwoSharp;return h(Host,{class:r},h("slot",null,h("ion-icon",{icon:e,lazy:false,class:"reorder-icon",part:"icon","aria-hidden":"true"})))};Object.defineProperty(r.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});return r}();Reorder.style={ios:reorderIosCss,md:reorderMdCss};var reorderGroupCss=".reorder-list-active>*{display:block;-webkit-transition:-webkit-transform 300ms;transition:-webkit-transform 300ms;transition:transform 300ms;transition:transform 300ms, -webkit-transform 300ms;will-change:transform}.reorder-enabled{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.reorder-enabled ion-reorder{display:block;cursor:-webkit-grab;cursor:grab;pointer-events:all;-ms-touch-action:none;touch-action:none}.reorder-selected,.reorder-selected ion-reorder{cursor:-webkit-grabbing;cursor:grabbing}.reorder-selected{position:relative;-webkit-transition:none !important;transition:none !important;-webkit-box-shadow:0 0 10px rgba(0, 0, 0, 0.4);box-shadow:0 0 10px rgba(0, 0, 0, 0.4);opacity:0.8;z-index:100}.reorder-visible ion-reorder .reorder-icon{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}";var ReorderGroup=function(){function r(r){registerInstance(this,r);this.ionItemReorder=createEvent(this,"ionItemReorder",7);this.lastToIndex=-1;this.cachedHeights=[];this.scrollElTop=0;this.scrollElBottom=0;this.scrollElInitial=0;this.containerTop=0;this.containerBottom=0;this.state=0;this.disabled=true}r.prototype.disabledChanged=function(){if(this.gesture){this.gesture.enable(!this.disabled)}};r.prototype.connectedCallback=function(){return __awaiter(this,void 0,void 0,(function(){var r,e,t;var i=this;return __generator(this,(function(n){switch(n.label){case 0:r=findClosestIonContent(this.el);if(!r)return[3,2];e=this;return[4,getScrollElement(r)];case 1:e.scrollEl=n.sent();n.label=2;case 2:t=this;return[4,import("./index-
|
|
4
|
+
*/import{r as registerInstance,h,H as Host,f as getElement,d as createEvent}from"./index-7c9b1bca.js";import{j as reorderThreeOutline,k as reorderTwoSharp}from"./index-c132c5f1.js";import{b as getIonMode}from"./ionic-global-40e42e7f.js";import{f as findClosestIonContent,g as getScrollElement}from"./index-4392efa5.js";import{r as raf}from"./helpers-3379ba19.js";import{a as hapticSelectionStart,b as hapticSelectionChanged,h as hapticSelectionEnd}from"./haptic-1243b917.js";import"./index-595d62c9.js";import"./capacitor-b4979570.js";import"./index-7a14ecec.js";var reorderIosCss=":host([slot]){display:none;line-height:0;z-index:100}.reorder-icon{display:block}::slotted(ion-icon){font-size:dynamic-font(16px)}.reorder-icon{font-size:2.125rem;opacity:0.4}";var reorderMdCss=":host([slot]){display:none;line-height:0;z-index:100}.reorder-icon{display:block}::slotted(ion-icon){font-size:dynamic-font(16px)}.reorder-icon{font-size:1.9375rem;opacity:0.3}";var Reorder=function(){function r(r){registerInstance(this,r)}r.prototype.onClick=function(r){var e=this.el.closest("ion-reorder-group");r.preventDefault();if(!e||!e.disabled){r.stopImmediatePropagation()}};r.prototype.render=function(){var r=getIonMode(this);var e=r==="ios"?reorderThreeOutline:reorderTwoSharp;return h(Host,{class:r},h("slot",null,h("ion-icon",{icon:e,lazy:false,class:"reorder-icon",part:"icon","aria-hidden":"true"})))};Object.defineProperty(r.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});return r}();Reorder.style={ios:reorderIosCss,md:reorderMdCss};var reorderGroupCss=".reorder-list-active>*{display:block;-webkit-transition:-webkit-transform 300ms;transition:-webkit-transform 300ms;transition:transform 300ms;transition:transform 300ms, -webkit-transform 300ms;will-change:transform}.reorder-enabled{-webkit-user-select:none;-moz-user-select:none;-ms-user-select:none;user-select:none}.reorder-enabled ion-reorder{display:block;cursor:-webkit-grab;cursor:grab;pointer-events:all;-ms-touch-action:none;touch-action:none}.reorder-selected,.reorder-selected ion-reorder{cursor:-webkit-grabbing;cursor:grabbing}.reorder-selected{position:relative;-webkit-transition:none !important;transition:none !important;-webkit-box-shadow:0 0 10px rgba(0, 0, 0, 0.4);box-shadow:0 0 10px rgba(0, 0, 0, 0.4);opacity:0.8;z-index:100}.reorder-visible ion-reorder .reorder-icon{-webkit-transform:translate3d(0, 0, 0);transform:translate3d(0, 0, 0)}";var ReorderGroup=function(){function r(r){registerInstance(this,r);this.ionItemReorder=createEvent(this,"ionItemReorder",7);this.lastToIndex=-1;this.cachedHeights=[];this.scrollElTop=0;this.scrollElBottom=0;this.scrollElInitial=0;this.containerTop=0;this.containerBottom=0;this.state=0;this.disabled=true}r.prototype.disabledChanged=function(){if(this.gesture){this.gesture.enable(!this.disabled)}};r.prototype.connectedCallback=function(){return __awaiter(this,void 0,void 0,(function(){var r,e,t;var i=this;return __generator(this,(function(n){switch(n.label){case 0:r=findClosestIonContent(this.el);if(!r)return[3,2];e=this;return[4,getScrollElement(r)];case 1:e.scrollEl=n.sent();n.label=2;case 2:t=this;return[4,import("./index-32cbee52.js")];case 3:t.gesture=n.sent().createGesture({el:this.el,gestureName:"reorder",gesturePriority:110,threshold:0,direction:"y",passive:false,canStart:function(r){return i.canStart(r)},onStart:function(r){return i.onStart(r)},onMove:function(r){return i.onMove(r)},onEnd:function(){return i.onEnd()}});this.disabledChanged();return[2]}}))}))};r.prototype.disconnectedCallback=function(){this.onEnd();if(this.gesture){this.gesture.destroy();this.gesture=undefined}};r.prototype.complete=function(r){return Promise.resolve(this.completeReorder(r))};r.prototype.canStart=function(r){if(this.selectedItemEl||this.state!==0){return false}var e=r.event.target;var t=e.closest("ion-reorder");if(!t){return false}var i=findReorderItem(t,this.el);if(!i){return false}r.data=i;return true};r.prototype.onStart=function(r){r.event.preventDefault();var e=this.selectedItemEl=r.data;var t=this.cachedHeights;t.length=0;var i=this.el;var n=i.children;if(!n||n.length===0){return}var o=0;for(var s=0;s<n.length;s++){var a=n[s];o+=a.offsetHeight;t.push(o);a.$ionIndex=s}var h=i.getBoundingClientRect();this.containerTop=h.top;this.containerBottom=h.bottom;if(this.scrollEl){var c=this.scrollEl.getBoundingClientRect();this.scrollElInitial=this.scrollEl.scrollTop;this.scrollElTop=c.top+AUTO_SCROLL_MARGIN;this.scrollElBottom=c.bottom-AUTO_SCROLL_MARGIN}else{this.scrollElInitial=0;this.scrollElTop=0;this.scrollElBottom=0}this.lastToIndex=indexForItem(e);this.selectedItemHeight=e.offsetHeight;this.state=1;e.classList.add(ITEM_REORDER_SELECTED);hapticSelectionStart()};r.prototype.onMove=function(r){var e=this.selectedItemEl;if(!e){return}var t=this.autoscroll(r.currentY);var i=this.containerTop-t;var n=this.containerBottom-t;var o=Math.max(i,Math.min(r.currentY,n));var s=t+o-r.startY;var a=o-i;var h=this.itemIndexForTop(a);if(h!==this.lastToIndex){var c=indexForItem(e);this.lastToIndex=h;hapticSelectionChanged();this.reorderMove(c,h)}e.style.transform="translateY(".concat(s,"px)")};r.prototype.onEnd=function(){var r=this.selectedItemEl;this.state=2;if(!r){this.state=0;return}var e=this.lastToIndex;var t=indexForItem(r);if(e===t){this.completeReorder()}else{this.ionItemReorder.emit({from:t,to:e,complete:this.completeReorder.bind(this)})}hapticSelectionEnd()};r.prototype.completeReorder=function(r){var e=this;var t=this.selectedItemEl;if(t&&this.state===2){var i=this.el.children;var n=i.length;var o=this.lastToIndex;var s=indexForItem(t);raf((function(){if(o!==s&&(r===undefined||r===true)){var a=s<o?i[o+1]:i[o];e.el.insertBefore(t,a)}for(var h=0;h<n;h++){i[h].style["transform"]=""}}));if(Array.isArray(r)){r=reorderArray(r,s,o)}t.style.transition="";t.classList.remove(ITEM_REORDER_SELECTED);this.selectedItemEl=undefined;this.state=0}return r};r.prototype.itemIndexForTop=function(r){var e=this.cachedHeights;for(var t=0;t<e.length;t++){if(e[t]>r){return t}}return e.length-1};r.prototype.reorderMove=function(r,e){var t=this.selectedItemHeight;var i=this.el.children;for(var n=0;n<i.length;n++){var o=i[n].style;var s="";if(n>r&&n<=e){s="translateY(".concat(-t,"px)")}else if(n<r&&n>=e){s="translateY(".concat(t,"px)")}o["transform"]=s}};r.prototype.autoscroll=function(r){if(!this.scrollEl){return 0}var e=0;if(r<this.scrollElTop){e=-SCROLL_JUMP}else if(r>this.scrollElBottom){e=SCROLL_JUMP}if(e!==0){this.scrollEl.scrollBy(0,e)}return this.scrollEl.scrollTop-this.scrollElInitial};r.prototype.render=function(){var r;var e=getIonMode(this);return h(Host,{class:(r={},r[e]=true,r["reorder-enabled"]=!this.disabled,r["reorder-list-active"]=this.state!==0,r)})};Object.defineProperty(r.prototype,"el",{get:function(){return getElement(this)},enumerable:false,configurable:true});Object.defineProperty(r,"watchers",{get:function(){return{disabled:["disabledChanged"]}},enumerable:false,configurable:true});return r}();var indexForItem=function(r){return r["$ionIndex"]};var findReorderItem=function(r,e){var t;while(r){t=r.parentElement;if(t===e){return r}r=t}return undefined};var AUTO_SCROLL_MARGIN=60;var SCROLL_JUMP=10;var ITEM_REORDER_SELECTED="reorder-selected";var reorderArray=function(r,e,t){var i=r[e];r.splice(e,1);r.splice(t,0,i);return r.slice()};ReorderGroup.style=reorderGroupCss;export{Reorder as ion_reorder,ReorderGroup as ion_reorder_group};
|