1 |
- {"ast":null,"code":"import _asyncToGenerator from \"F:/workspace/202226701027/huinongbao-app/node_modules/@babel/runtime/helpers/esm/asyncToGenerator.js\";\n/*!\n * (C) Ionic http://ionicframework.com - MIT License\n */\nimport { writeTask } from '@stencil/core/internal/client';\nimport { c as createAnimation } from './animation.js';\nimport { t as transitionEndAsync, c as componentOnReady, k as clamp } from './helpers.js';\nconst getRefresherAnimationType = contentEl => {\n const previousSibling = contentEl.previousElementSibling;\n const hasHeader = previousSibling !== null && previousSibling.tagName === 'ION-HEADER';\n return hasHeader ? 'translate' : 'scale';\n};\nconst createPullingAnimation = (type, pullingSpinner, refresherEl) => {\n return type === 'scale' ? createScaleAnimation(pullingSpinner, refresherEl) : createTranslateAnimation(pullingSpinner, refresherEl);\n};\nconst createBaseAnimation = pullingRefresherIcon => {\n const spinner = pullingRefresherIcon.querySelector('ion-spinner');\n const circle = spinner.shadowRoot.querySelector('circle');\n const spinnerArrowContainer = pullingRefresherIcon.querySelector('.spinner-arrow-container');\n const arrowContainer = pullingRefresherIcon.querySelector('.arrow-container');\n const arrow = arrowContainer ? arrowContainer.querySelector('ion-icon') : null;\n const baseAnimation = createAnimation().duration(1000).easing('ease-out');\n const spinnerArrowContainerAnimation = createAnimation().addElement(spinnerArrowContainer).keyframes([{\n offset: 0,\n opacity: '0.3'\n }, {\n offset: 0.45,\n opacity: '0.3'\n }, {\n offset: 0.55,\n opacity: '1'\n }, {\n offset: 1,\n opacity: '1'\n }]);\n const circleInnerAnimation = createAnimation().addElement(circle).keyframes([{\n offset: 0,\n strokeDasharray: '1px, 200px'\n }, {\n offset: 0.2,\n strokeDasharray: '1px, 200px'\n }, {\n offset: 0.55,\n strokeDasharray: '100px, 200px'\n }, {\n offset: 1,\n strokeDasharray: '100px, 200px'\n }]);\n const circleOuterAnimation = createAnimation().addElement(spinner).keyframes([{\n offset: 0,\n transform: 'rotate(-90deg)'\n }, {\n offset: 1,\n transform: 'rotate(210deg)'\n }]);\n /**\n * Only add arrow animation if present\n * this allows users to customize the spinners\n * without errors being thrown\n */\n if (arrowContainer && arrow) {\n const arrowContainerAnimation = createAnimation().addElement(arrowContainer).keyframes([{\n offset: 0,\n transform: 'rotate(0deg)'\n }, {\n offset: 0.3,\n transform: 'rotate(0deg)'\n }, {\n offset: 0.55,\n transform: 'rotate(280deg)'\n }, {\n offset: 1,\n transform: 'rotate(400deg)'\n }]);\n const arrowAnimation = createAnimation().addElement(arrow).keyframes([{\n offset: 0,\n transform: 'translateX(2px) scale(0)'\n }, {\n offset: 0.3,\n transform: 'translateX(2px) scale(0)'\n }, {\n offset: 0.55,\n transform: 'translateX(-1.5px) scale(1)'\n }, {\n offset: 1,\n transform: 'translateX(-1.5px) scale(1)'\n }]);\n baseAnimation.addAnimation([arrowContainerAnimation, arrowAnimation]);\n }\n return baseAnimation.addAnimation([spinnerArrowContainerAnimation, circleInnerAnimation, circleOuterAnimation]);\n};\nconst createScaleAnimation = (pullingRefresherIcon, refresherEl) => {\n /**\n * Do not take the height of the refresher icon\n * because at this point the DOM has not updated,\n * so the refresher icon is still hidden with\n * display: none.\n * The `ion-refresher` container height\n * is roughly the amount we need to offset\n * the icon by when pulling down.\n */\n const height = refresherEl.clientHeight;\n const spinnerAnimation = createAnimation().addElement(pullingRefresherIcon).keyframes([{\n offset: 0,\n transform: `scale(0) translateY(-${height}px)`\n }, {\n offset: 1,\n transform: 'scale(1) translateY(100px)'\n }]);\n return createBaseAnimation(pullingRefresherIcon).addAnimation([spinnerAnimation]);\n};\nconst createTranslateAnimation = (pullingRefresherIcon, refresherEl) => {\n /**\n * Do not take the height of the refresher icon\n * because at this point the DOM has not updated,\n * so the refresher icon is still hidden with\n * display: none.\n * The `ion-refresher` container height\n * is roughly the amount we need to offset\n * the icon by when pulling down.\n */\n const height = refresherEl.clientHeight;\n const spinnerAnimation = createAnimation().addElement(pullingRefresherIcon).keyframes([{\n offset: 0,\n transform: `translateY(-${height}px)`\n }, {\n offset: 1,\n transform: 'translateY(100px)'\n }]);\n return createBaseAnimation(pullingRefresherIcon).addAnimation([spinnerAnimation]);\n};\nconst createSnapBackAnimation = pullingRefresherIcon => {\n return createAnimation().duration(125).addElement(pullingRefresherIcon).fromTo('transform', 'translateY(var(--ion-pulling-refresher-translate, 100px))', 'translateY(0px)');\n};\n// iOS Native Refresher\n// -----------------------------\nconst setSpinnerOpacity = (spinner, opacity) => {\n spinner.style.setProperty('opacity', opacity.toString());\n};\nconst handleScrollWhilePulling = (ticks, numTicks, pullAmount) => {\n const max = 1;\n writeTask(() => {\n ticks.forEach((el, i) => {\n /**\n * Compute the opacity of each tick\n * mark as a percentage of the pullAmount\n * offset by max / numTicks so\n * the tick marks are shown staggered.\n */\n const min = i * (max / numTicks);\n const range = max - min;\n const start = pullAmount - min;\n const progression = clamp(0, start / range, 1);\n el.style.setProperty('opacity', progression.toString());\n });\n });\n};\nconst handleScrollWhileRefreshing = (spinner, lastVelocityY) => {\n writeTask(() => {\n // If user pulls down quickly, the spinner should spin faster\n spinner.style.setProperty('--refreshing-rotation-duration', lastVelocityY >= 1.0 ? '0.5s' : '2s');\n spinner.style.setProperty('opacity', '1');\n });\n};\nconst translateElement = (el, value, duration = 200) => {\n if (!el) {\n return Promise.resolve();\n }\n const trans = transitionEndAsync(el, duration);\n writeTask(() => {\n el.style.setProperty('transition', `${duration}ms all ease-out`);\n if (value === undefined) {\n el.style.removeProperty('transform');\n } else {\n el.style.setProperty('transform', `translate3d(0px, ${value}, 0px)`);\n }\n });\n return trans;\n};\n// Utils\n// -----------------------------\n/**\n * In order to use the native iOS refresher the device must support rubber band scrolling.\n * As part of this, we need to exclude Desktop Safari because it has a slightly different rubber band effect that is not compatible with the native refresher in Ionic.\n *\n * We also need to be careful not to include devices that spoof their user agent.\n * For example, when using iOS emulation in Chrome the user agent will be spoofed such that\n * navigator.maxTouchPointer > 0. To work around this,\n * we check to see if the apple-pay-logo is supported as a named image which is only\n * true on Apple devices.\n *\n * We previously checked referencEl.style.webkitOverflowScrolling to explicitly check\n * for rubber band support. However, this property was removed on iPadOS and it's possible\n * that this will be removed on iOS in the future too.\n *\n */\nconst supportsRubberBandScrolling = () => {\n return navigator.maxTouchPoints > 0 && CSS.supports('background: -webkit-named-image(apple-pay-logo-black)');\n};\nconst shouldUseNativeRefresher = /*#__PURE__*/function () {\n var _ref = _asyncToGenerator(function* (referenceEl, mode) {\n const refresherContent = referenceEl.querySelector('ion-refresher-content');\n if (!refresherContent) {\n return Promise.resolve(false);\n }\n yield new Promise(resolve => componentOnReady(refresherContent, resolve));\n const pullingSpinner = referenceEl.querySelector('ion-refresher-content .refresher-pulling ion-spinner');\n const refreshingSpinner = referenceEl.querySelector('ion-refresher-content .refresher-refreshing ion-spinner');\n return pullingSpinner !== null && refreshingSpinner !== null && (mode === 'ios' && supportsRubberBandScrolling() || mode === 'md');\n });\n return function shouldUseNativeRefresher(_x, _x2) {\n return _ref.apply(this, arguments);\n };\n}();\nexport { setSpinnerOpacity as a, handleScrollWhilePulling as b, createPullingAnimation as c, createSnapBackAnimation as d, supportsRubberBandScrolling as e, getRefresherAnimationType as g, handleScrollWhileRefreshing as h, shouldUseNativeRefresher as s, translateElement as t };","map":{"version":3,"names":["writeTask","c","createAnimation","t","transitionEndAsync","componentOnReady","k","clamp","getRefresherAnimationType","contentEl","previousSibling","previousElementSibling","hasHeader","tagName","createPullingAnimation","type","pullingSpinner","refresherEl","createScaleAnimation","createTranslateAnimation","createBaseAnimation","pullingRefresherIcon","spinner","querySelector","circle","shadowRoot","spinnerArrowContainer","arrowContainer","arrow","baseAnimation","duration","easing","spinnerArrowContainerAnimation","addElement","keyframes","offset","opacity","circleInnerAnimation","strokeDasharray","circleOuterAnimation","transform","arrowContainerAnimation","arrowAnimation","addAnimation","height","clientHeight","spinnerAnimation","createSnapBackAnimation","fromTo","setSpinnerOpacity","style","setProperty","toString","handleScrollWhilePulling","ticks","numTicks","pullAmount","max","forEach","el","i","min","range","start","progression","handleScrollWhileRefreshing","lastVelocityY","translateElement","value","Promise","resolve","trans","undefined","removeProperty","supportsRubberBandScrolling","navigator","maxTouchPoints","CSS","supports","shouldUseNativeRefresher","_ref","_asyncToGenerator","referenceEl","mode","refresherContent","refreshingSpinner","_x","_x2","apply","arguments","a","b","d","e","g","h","s"],"sources":["F:/workspace/202226701027/huinongbao-app/node_modules/@ionic/core/components/refresher.utils.js"],"sourcesContent":["/*!\n * (C) Ionic http://ionicframework.com - MIT License\n */\nimport { writeTask } from '@stencil/core/internal/client';\nimport { c as createAnimation } from './animation.js';\nimport { t as transitionEndAsync, c as componentOnReady, k as clamp } from './helpers.js';\n\nconst getRefresherAnimationType = (contentEl) => {\n const previousSibling = contentEl.previousElementSibling;\n const hasHeader = previousSibling !== null && previousSibling.tagName === 'ION-HEADER';\n return hasHeader ? 'translate' : 'scale';\n};\nconst createPullingAnimation = (type, pullingSpinner, refresherEl) => {\n return type === 'scale'\n ? createScaleAnimation(pullingSpinner, refresherEl)\n : createTranslateAnimation(pullingSpinner, refresherEl);\n};\nconst createBaseAnimation = (pullingRefresherIcon) => {\n const spinner = pullingRefresherIcon.querySelector('ion-spinner');\n const circle = spinner.shadowRoot.querySelector('circle');\n const spinnerArrowContainer = pullingRefresherIcon.querySelector('.spinner-arrow-container');\n const arrowContainer = pullingRefresherIcon.querySelector('.arrow-container');\n const arrow = arrowContainer ? arrowContainer.querySelector('ion-icon') : null;\n const baseAnimation = createAnimation().duration(1000).easing('ease-out');\n const spinnerArrowContainerAnimation = createAnimation()\n .addElement(spinnerArrowContainer)\n .keyframes([\n { offset: 0, opacity: '0.3' },\n { offset: 0.45, opacity: '0.3' },\n { offset: 0.55, opacity: '1' },\n { offset: 1, opacity: '1' },\n ]);\n const circleInnerAnimation = createAnimation()\n .addElement(circle)\n .keyframes([\n { offset: 0, strokeDasharray: '1px, 200px' },\n { offset: 0.2, strokeDasharray: '1px, 200px' },\n { offset: 0.55, strokeDasharray: '100px, 200px' },\n { offset: 1, strokeDasharray: '100px, 200px' },\n ]);\n const circleOuterAnimation = createAnimation()\n .addElement(spinner)\n .keyframes([\n { offset: 0, transform: 'rotate(-90deg)' },\n { offset: 1, transform: 'rotate(210deg)' },\n ]);\n /**\n * Only add arrow animation if present\n * this allows users to customize the spinners\n * without errors being thrown\n */\n if (arrowContainer && arrow) {\n const arrowContainerAnimation = createAnimation()\n .addElement(arrowContainer)\n .keyframes([\n { offset: 0, transform: 'rotate(0deg)' },\n { offset: 0.3, transform: 'rotate(0deg)' },\n { offset: 0.55, transform: 'rotate(280deg)' },\n { offset: 1, transform: 'rotate(400deg)' },\n ]);\n const arrowAnimation = createAnimation()\n .addElement(arrow)\n .keyframes([\n { offset: 0, transform: 'translateX(2px) scale(0)' },\n { offset: 0.3, transform: 'translateX(2px) scale(0)' },\n { offset: 0.55, transform: 'translateX(-1.5px) scale(1)' },\n { offset: 1, transform: 'translateX(-1.5px) scale(1)' },\n ]);\n baseAnimation.addAnimation([arrowContainerAnimation, arrowAnimation]);\n }\n return baseAnimation.addAnimation([spinnerArrowContainerAnimation, circleInnerAnimation, circleOuterAnimation]);\n};\nconst createScaleAnimation = (pullingRefresherIcon, refresherEl) => {\n /**\n * Do not take the height of the refresher icon\n * because at this point the DOM has not updated,\n * so the refresher icon is still hidden with\n * display: none.\n * The `ion-refresher` container height\n * is roughly the amount we need to offset\n * the icon by when pulling down.\n */\n const height = refresherEl.clientHeight;\n const spinnerAnimation = createAnimation()\n .addElement(pullingRefresherIcon)\n .keyframes([\n { offset: 0, transform: `scale(0) translateY(-${height}px)` },\n { offset: 1, transform: 'scale(1) translateY(100px)' },\n ]);\n return createBaseAnimation(pullingRefresherIcon).addAnimation([spinnerAnimation]);\n};\nconst createTranslateAnimation = (pullingRefresherIcon, refresherEl) => {\n /**\n * Do not take the height of the refresher icon\n * because at this point the DOM has not updated,\n * so the refresher icon is still hidden with\n * display: none.\n * The `ion-refresher` container height\n * is roughly the amount we need to offset\n * the icon by when pulling down.\n */\n const height = refresherEl.clientHeight;\n const spinnerAnimation = createAnimation()\n .addElement(pullingRefresherIcon)\n .keyframes([\n { offset: 0, transform: `translateY(-${height}px)` },\n { offset: 1, transform: 'translateY(100px)' },\n ]);\n return createBaseAnimation(pullingRefresherIcon).addAnimation([spinnerAnimation]);\n};\nconst createSnapBackAnimation = (pullingRefresherIcon) => {\n return createAnimation()\n .duration(125)\n .addElement(pullingRefresherIcon)\n .fromTo('transform', 'translateY(var(--ion-pulling-refresher-translate, 100px))', 'translateY(0px)');\n};\n// iOS Native Refresher\n// -----------------------------\nconst setSpinnerOpacity = (spinner, opacity) => {\n spinner.style.setProperty('opacity', opacity.toString());\n};\nconst handleScrollWhilePulling = (ticks, numTicks, pullAmount) => {\n const max = 1;\n writeTask(() => {\n ticks.forEach((el, i) => {\n /**\n * Compute the opacity of each tick\n * mark as a percentage of the pullAmount\n * offset by max / numTicks so\n * the tick marks are shown staggered.\n */\n const min = i * (max / numTicks);\n const range = max - min;\n const start = pullAmount - min;\n const progression = clamp(0, start / range, 1);\n el.style.setProperty('opacity', progression.toString());\n });\n });\n};\nconst handleScrollWhileRefreshing = (spinner, lastVelocityY) => {\n writeTask(() => {\n // If user pulls down quickly, the spinner should spin faster\n spinner.style.setProperty('--refreshing-rotation-duration', lastVelocityY >= 1.0 ? '0.5s' : '2s');\n spinner.style.setProperty('opacity', '1');\n });\n};\nconst translateElement = (el, value, duration = 200) => {\n if (!el) {\n return Promise.resolve();\n }\n const trans = transitionEndAsync(el, duration);\n writeTask(() => {\n el.style.setProperty('transition', `${duration}ms all ease-out`);\n if (value === undefined) {\n el.style.removeProperty('transform');\n }\n else {\n el.style.setProperty('transform', `translate3d(0px, ${value}, 0px)`);\n }\n });\n return trans;\n};\n// Utils\n// -----------------------------\n/**\n * In order to use the native iOS refresher the device must support rubber band scrolling.\n * As part of this, we need to exclude Desktop Safari because it has a slightly different rubber band effect that is not compatible with the native refresher in Ionic.\n *\n * We also need to be careful not to include devices that spoof their user agent.\n * For example, when using iOS emulation in Chrome the user agent will be spoofed such that\n * navigator.maxTouchPointer > 0. To work around this,\n * we check to see if the apple-pay-logo is supported as a named image which is only\n * true on Apple devices.\n *\n * We previously checked referencEl.style.webkitOverflowScrolling to explicitly check\n * for rubber band support. However, this property was removed on iPadOS and it's possible\n * that this will be removed on iOS in the future too.\n *\n */\nconst supportsRubberBandScrolling = () => {\n return navigator.maxTouchPoints > 0 && CSS.supports('background: -webkit-named-image(apple-pay-logo-black)');\n};\nconst shouldUseNativeRefresher = async (referenceEl, mode) => {\n const refresherContent = referenceEl.querySelector('ion-refresher-content');\n if (!refresherContent) {\n return Promise.resolve(false);\n }\n await new Promise((resolve) => componentOnReady(refresherContent, resolve));\n const pullingSpinner = referenceEl.querySelector('ion-refresher-content .refresher-pulling ion-spinner');\n const refreshingSpinner = referenceEl.querySelector('ion-refresher-content .refresher-refreshing ion-spinner');\n return (pullingSpinner !== null &&\n refreshingSpinner !== null &&\n ((mode === 'ios' && supportsRubberBandScrolling()) || mode === 'md'));\n};\n\nexport { setSpinnerOpacity as a, handleScrollWhilePulling as b, createPullingAnimation as c, createSnapBackAnimation as d, supportsRubberBandScrolling as e, getRefresherAnimationType as g, handleScrollWhileRefreshing as h, shouldUseNativeRefresher as s, translateElement as t };\n"],"mappings":"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","ignoreList":[]},"metadata":{},"sourceType":"module","externalDependencies":[]}
|