1 line
68 KiB
JSON
1 line
68 KiB
JSON
{"ast":null,"code":"/*!\n * (C) Ionic http://ionicframework.com - MIT License\n */\nimport { c as createAnimation } from './animation-36c1d77d.js';\nimport { g as getIonPageElement } from './index-8191d09f.js';\nimport './helpers-4d272360.js';\nimport './index-1a99aeb7.js';\nconst DURATION = 540;\n\nconst getClonedElement = tagName => {\n return document.querySelector(`${tagName}.ion-cloned-element`);\n};\n\nconst shadow = el => {\n return el.shadowRoot || el;\n};\n\nconst getLargeTitle = refEl => {\n const tabs = refEl.tagName === 'ION-TABS' ? refEl : refEl.querySelector('ion-tabs');\n const query = 'ion-content ion-header:not(.header-collapse-condense-inactive) ion-title.title-large';\n\n if (tabs != null) {\n const activeTab = tabs.querySelector('ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)');\n return activeTab != null ? activeTab.querySelector(query) : null;\n }\n\n return refEl.querySelector(query);\n};\n\nconst getBackButton = (refEl, backDirection) => {\n const tabs = refEl.tagName === 'ION-TABS' ? refEl : refEl.querySelector('ion-tabs');\n let buttonsList = [];\n\n if (tabs != null) {\n const activeTab = tabs.querySelector('ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)');\n\n if (activeTab != null) {\n buttonsList = activeTab.querySelectorAll('ion-buttons');\n }\n } else {\n buttonsList = refEl.querySelectorAll('ion-buttons');\n }\n\n for (const buttons of buttonsList) {\n const parentHeader = buttons.closest('ion-header');\n const activeHeader = parentHeader && !parentHeader.classList.contains('header-collapse-condense-inactive');\n const backButton = buttons.querySelector('ion-back-button');\n const buttonsCollapse = buttons.classList.contains('buttons-collapse');\n const startSlot = buttons.slot === 'start' || buttons.slot === '';\n\n if (backButton !== null && startSlot && (buttonsCollapse && activeHeader && backDirection || !buttonsCollapse)) {\n return backButton;\n }\n }\n\n return null;\n};\n\nconst createLargeTitleTransition = (rootAnimation, rtl, backDirection, enteringEl, leavingEl) => {\n const enteringBackButton = getBackButton(enteringEl, backDirection);\n const leavingLargeTitle = getLargeTitle(leavingEl);\n const enteringLargeTitle = getLargeTitle(enteringEl);\n const leavingBackButton = getBackButton(leavingEl, backDirection);\n const shouldAnimationForward = enteringBackButton !== null && leavingLargeTitle !== null && !backDirection;\n const shouldAnimationBackward = enteringLargeTitle !== null && leavingBackButton !== null && backDirection;\n\n if (shouldAnimationForward) {\n const leavingLargeTitleBox = leavingLargeTitle.getBoundingClientRect();\n const enteringBackButtonBox = enteringBackButton.getBoundingClientRect();\n animateLargeTitle(rootAnimation, rtl, backDirection, leavingLargeTitle, leavingLargeTitleBox, enteringBackButtonBox);\n animateBackButton(rootAnimation, rtl, backDirection, enteringBackButton, leavingLargeTitleBox, enteringBackButtonBox);\n } else if (shouldAnimationBackward) {\n const enteringLargeTitleBox = enteringLargeTitle.getBoundingClientRect();\n const leavingBackButtonBox = leavingBackButton.getBoundingClientRect();\n animateLargeTitle(rootAnimation, rtl, backDirection, enteringLargeTitle, enteringLargeTitleBox, leavingBackButtonBox);\n animateBackButton(rootAnimation, rtl, backDirection, leavingBackButton, enteringLargeTitleBox, leavingBackButtonBox);\n }\n\n return {\n forward: shouldAnimationForward,\n backward: shouldAnimationBackward\n };\n};\n\nconst animateBackButton = (rootAnimation, rtl, backDirection, backButtonEl, largeTitleBox, backButtonBox) => {\n const BACK_BUTTON_START_OFFSET = rtl ? `calc(100% - ${backButtonBox.right + 4}px)` : `${backButtonBox.left - 4}px`;\n const START_TEXT_TRANSLATE = rtl ? '7px' : '-7px';\n const END_TEXT_TRANSLATE = rtl ? '-4px' : '4px';\n const ICON_TRANSLATE = rtl ? '-4px' : '4px';\n const TEXT_ORIGIN_X = rtl ? 'right' : 'left';\n const ICON_ORIGIN_X = rtl ? 'left' : 'right';\n const FORWARD_TEXT_KEYFRAMES = [{\n offset: 0,\n opacity: 0,\n transform: `translate3d(${START_TEXT_TRANSLATE}, ${largeTitleBox.top - 40}px, 0) scale(2.1)`\n }, {\n offset: 1,\n opacity: 1,\n transform: `translate3d(${END_TEXT_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)`\n }];\n const BACKWARD_TEXT_KEYFRAMES = [{\n offset: 0,\n opacity: 1,\n transform: `translate3d(${END_TEXT_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)`\n }, {\n offset: 0.6,\n opacity: 0\n }, {\n offset: 1,\n opacity: 0,\n transform: `translate3d(${START_TEXT_TRANSLATE}, ${largeTitleBox.top - 40}px, 0) scale(2.1)`\n }];\n const TEXT_KEYFRAMES = backDirection ? BACKWARD_TEXT_KEYFRAMES : FORWARD_TEXT_KEYFRAMES;\n const FORWARD_ICON_KEYFRAMES = [{\n offset: 0,\n opacity: 0,\n transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)`\n }, {\n offset: 1,\n opacity: 1,\n transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)`\n }];\n const BACKWARD_ICON_KEYFRAMES = [{\n offset: 0,\n opacity: 1,\n transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)`\n }, {\n offset: 0.2,\n opacity: 0,\n transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)`\n }, {\n offset: 1,\n opacity: 0,\n transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)`\n }];\n const ICON_KEYFRAMES = backDirection ? BACKWARD_ICON_KEYFRAMES : FORWARD_ICON_KEYFRAMES;\n const enteringBackButtonTextAnimation = createAnimation();\n const enteringBackButtonIconAnimation = createAnimation();\n const clonedBackButtonEl = getClonedElement('ion-back-button');\n const backButtonTextEl = shadow(clonedBackButtonEl).querySelector('.button-text');\n const backButtonIconEl = shadow(clonedBackButtonEl).querySelector('ion-icon');\n clonedBackButtonEl.text = backButtonEl.text;\n clonedBackButtonEl.mode = backButtonEl.mode;\n clonedBackButtonEl.icon = backButtonEl.icon;\n clonedBackButtonEl.color = backButtonEl.color;\n clonedBackButtonEl.disabled = backButtonEl.disabled;\n clonedBackButtonEl.style.setProperty('display', 'block');\n clonedBackButtonEl.style.setProperty('position', 'fixed');\n enteringBackButtonIconAnimation.addElement(backButtonIconEl);\n enteringBackButtonTextAnimation.addElement(backButtonTextEl);\n enteringBackButtonTextAnimation.beforeStyles({\n 'transform-origin': `${TEXT_ORIGIN_X} center`\n }).beforeAddWrite(() => {\n backButtonEl.style.setProperty('display', 'none');\n clonedBackButtonEl.style.setProperty(TEXT_ORIGIN_X, BACK_BUTTON_START_OFFSET);\n }).afterAddWrite(() => {\n backButtonEl.style.setProperty('display', '');\n clonedBackButtonEl.style.setProperty('display', 'none');\n clonedBackButtonEl.style.removeProperty(TEXT_ORIGIN_X);\n }).keyframes(TEXT_KEYFRAMES);\n enteringBackButtonIconAnimation.beforeStyles({\n 'transform-origin': `${ICON_ORIGIN_X} center`\n }).keyframes(ICON_KEYFRAMES);\n rootAnimation.addAnimation([enteringBackButtonTextAnimation, enteringBackButtonIconAnimation]);\n};\n\nconst animateLargeTitle = (rootAnimation, rtl, backDirection, largeTitleEl, largeTitleBox, backButtonBox) => {\n const TITLE_START_OFFSET = rtl ? `calc(100% - ${largeTitleBox.right}px)` : `${largeTitleBox.left}px`;\n const START_TRANSLATE = rtl ? '-18px' : '18px';\n const ORIGIN_X = rtl ? 'right' : 'left';\n const BACKWARDS_KEYFRAMES = [{\n offset: 0,\n opacity: 0,\n transform: `translate3d(${START_TRANSLATE}, ${backButtonBox.top - 4}px, 0) scale(0.49)`\n }, {\n offset: 0.1,\n opacity: 0\n }, {\n offset: 1,\n opacity: 1,\n transform: `translate3d(0, ${largeTitleBox.top - 2}px, 0) scale(1)`\n }];\n const FORWARDS_KEYFRAMES = [{\n offset: 0,\n opacity: 0.99,\n transform: `translate3d(0, ${largeTitleBox.top - 2}px, 0) scale(1)`\n }, {\n offset: 0.6,\n opacity: 0\n }, {\n offset: 1,\n opacity: 0,\n transform: `translate3d(${START_TRANSLATE}, ${backButtonBox.top - 4}px, 0) scale(0.5)`\n }];\n const KEYFRAMES = backDirection ? BACKWARDS_KEYFRAMES : FORWARDS_KEYFRAMES;\n const clonedTitleEl = getClonedElement('ion-title');\n const clonedLargeTitleAnimation = createAnimation();\n clonedTitleEl.innerText = largeTitleEl.innerText;\n clonedTitleEl.size = largeTitleEl.size;\n clonedTitleEl.color = largeTitleEl.color;\n clonedLargeTitleAnimation.addElement(clonedTitleEl);\n clonedLargeTitleAnimation.beforeStyles({\n 'transform-origin': `${ORIGIN_X} center`,\n height: '46px',\n display: '',\n position: 'relative',\n [ORIGIN_X]: TITLE_START_OFFSET\n }).beforeAddWrite(() => {\n largeTitleEl.style.setProperty('display', 'none');\n }).afterAddWrite(() => {\n largeTitleEl.style.setProperty('display', '');\n clonedTitleEl.style.setProperty('display', 'none');\n }).keyframes(KEYFRAMES);\n rootAnimation.addAnimation(clonedLargeTitleAnimation);\n};\n\nconst iosTransitionAnimation = (navEl, opts) => {\n try {\n const EASING = 'cubic-bezier(0.32,0.72,0,1)';\n const OPACITY = 'opacity';\n const TRANSFORM = 'transform';\n const CENTER = '0%';\n const OFF_OPACITY = 0.8;\n const isRTL = navEl.ownerDocument.dir === 'rtl';\n const OFF_RIGHT = isRTL ? '-99.5%' : '99.5%';\n const OFF_LEFT = isRTL ? '33%' : '-33%';\n const enteringEl = opts.enteringEl;\n const leavingEl = opts.leavingEl;\n const backDirection = opts.direction === 'back';\n const contentEl = enteringEl.querySelector(':scope > ion-content');\n const headerEls = enteringEl.querySelectorAll(':scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *');\n const enteringToolBarEls = enteringEl.querySelectorAll(':scope > ion-header > ion-toolbar');\n const rootAnimation = createAnimation();\n const enteringContentAnimation = createAnimation();\n rootAnimation.addElement(enteringEl).duration(opts.duration || DURATION).easing(opts.easing || EASING).fill('both').beforeRemoveClass('ion-page-invisible');\n\n if (leavingEl && navEl) {\n const navDecorAnimation = createAnimation();\n navDecorAnimation.addElement(navEl);\n rootAnimation.addAnimation(navDecorAnimation);\n }\n\n if (!contentEl && enteringToolBarEls.length === 0 && headerEls.length === 0) {\n enteringContentAnimation.addElement(enteringEl.querySelector(':scope > .ion-page, :scope > ion-nav, :scope > ion-tabs')); // REVIEW\n } else {\n enteringContentAnimation.addElement(contentEl); // REVIEW\n\n enteringContentAnimation.addElement(headerEls);\n }\n\n rootAnimation.addAnimation(enteringContentAnimation);\n\n if (backDirection) {\n enteringContentAnimation.beforeClearStyles([OPACITY]).fromTo('transform', `translateX(${OFF_LEFT})`, `translateX(${CENTER})`).fromTo(OPACITY, OFF_OPACITY, 1);\n } else {\n // entering content, forward direction\n enteringContentAnimation.beforeClearStyles([OPACITY]).fromTo('transform', `translateX(${OFF_RIGHT})`, `translateX(${CENTER})`);\n }\n\n if (contentEl) {\n const enteringTransitionEffectEl = shadow(contentEl).querySelector('.transition-effect');\n\n if (enteringTransitionEffectEl) {\n const enteringTransitionCoverEl = enteringTransitionEffectEl.querySelector('.transition-cover');\n const enteringTransitionShadowEl = enteringTransitionEffectEl.querySelector('.transition-shadow');\n const enteringTransitionEffect = createAnimation();\n const enteringTransitionCover = createAnimation();\n const enteringTransitionShadow = createAnimation();\n enteringTransitionEffect.addElement(enteringTransitionEffectEl).beforeStyles({\n opacity: '1',\n display: 'block'\n }).afterStyles({\n opacity: '',\n display: ''\n });\n enteringTransitionCover.addElement(enteringTransitionCoverEl) // REVIEW\n .beforeClearStyles([OPACITY]).fromTo(OPACITY, 0, 0.1);\n enteringTransitionShadow.addElement(enteringTransitionShadowEl) // REVIEW\n .beforeClearStyles([OPACITY]).fromTo(OPACITY, 0.03, 0.7);\n enteringTransitionEffect.addAnimation([enteringTransitionCover, enteringTransitionShadow]);\n enteringContentAnimation.addAnimation([enteringTransitionEffect]);\n }\n }\n\n const enteringContentHasLargeTitle = enteringEl.querySelector('ion-header.header-collapse-condense');\n const {\n forward,\n backward\n } = createLargeTitleTransition(rootAnimation, isRTL, backDirection, enteringEl, leavingEl);\n enteringToolBarEls.forEach(enteringToolBarEl => {\n const enteringToolBar = createAnimation();\n enteringToolBar.addElement(enteringToolBarEl);\n rootAnimation.addAnimation(enteringToolBar);\n const enteringTitle = createAnimation();\n enteringTitle.addElement(enteringToolBarEl.querySelector('ion-title')); // REVIEW\n\n const enteringToolBarButtons = createAnimation();\n const buttons = Array.from(enteringToolBarEl.querySelectorAll('ion-buttons,[menuToggle]'));\n const parentHeader = enteringToolBarEl.closest('ion-header');\n const inactiveHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.classList.contains('header-collapse-condense-inactive');\n let buttonsToAnimate;\n\n if (backDirection) {\n buttonsToAnimate = buttons.filter(button => {\n const isCollapseButton = button.classList.contains('buttons-collapse');\n return isCollapseButton && !inactiveHeader || !isCollapseButton;\n });\n } else {\n buttonsToAnimate = buttons.filter(button => !button.classList.contains('buttons-collapse'));\n }\n\n enteringToolBarButtons.addElement(buttonsToAnimate);\n const enteringToolBarItems = createAnimation();\n enteringToolBarItems.addElement(enteringToolBarEl.querySelectorAll(':scope > *:not(ion-title):not(ion-buttons):not([menuToggle])'));\n const enteringToolBarBg = createAnimation();\n enteringToolBarBg.addElement(shadow(enteringToolBarEl).querySelector('.toolbar-background')); // REVIEW\n\n const enteringBackButton = createAnimation();\n const backButtonEl = enteringToolBarEl.querySelector('ion-back-button');\n\n if (backButtonEl) {\n enteringBackButton.addElement(backButtonEl);\n }\n\n enteringToolBar.addAnimation([enteringTitle, enteringToolBarButtons, enteringToolBarItems, enteringToolBarBg, enteringBackButton]);\n enteringToolBarButtons.fromTo(OPACITY, 0.01, 1);\n enteringToolBarItems.fromTo(OPACITY, 0.01, 1);\n\n if (backDirection) {\n if (!inactiveHeader) {\n enteringTitle.fromTo('transform', `translateX(${OFF_LEFT})`, `translateX(${CENTER})`).fromTo(OPACITY, 0.01, 1);\n }\n\n enteringToolBarItems.fromTo('transform', `translateX(${OFF_LEFT})`, `translateX(${CENTER})`); // back direction, entering page has a back button\n\n enteringBackButton.fromTo(OPACITY, 0.01, 1);\n } else {\n // entering toolbar, forward direction\n if (!enteringContentHasLargeTitle) {\n enteringTitle.fromTo('transform', `translateX(${OFF_RIGHT})`, `translateX(${CENTER})`).fromTo(OPACITY, 0.01, 1);\n }\n\n enteringToolBarItems.fromTo('transform', `translateX(${OFF_RIGHT})`, `translateX(${CENTER})`);\n enteringToolBarBg.beforeClearStyles([OPACITY, 'transform']);\n const translucentHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.translucent;\n\n if (!translucentHeader) {\n enteringToolBarBg.fromTo(OPACITY, 0.01, 'var(--opacity)');\n } else {\n enteringToolBarBg.fromTo('transform', isRTL ? 'translateX(-100%)' : 'translateX(100%)', 'translateX(0px)');\n } // forward direction, entering page has a back button\n\n\n if (!forward) {\n enteringBackButton.fromTo(OPACITY, 0.01, 1);\n }\n\n if (backButtonEl && !forward) {\n const enteringBackBtnText = createAnimation();\n enteringBackBtnText.addElement(shadow(backButtonEl).querySelector('.button-text')) // REVIEW\n .fromTo(`transform`, isRTL ? 'translateX(-100px)' : 'translateX(100px)', 'translateX(0px)');\n enteringToolBar.addAnimation(enteringBackBtnText);\n }\n }\n }); // setup leaving view\n\n if (leavingEl) {\n const leavingContent = createAnimation();\n const leavingContentEl = leavingEl.querySelector(':scope > ion-content');\n const leavingToolBarEls = leavingEl.querySelectorAll(':scope > ion-header > ion-toolbar');\n const leavingHeaderEls = leavingEl.querySelectorAll(':scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *');\n\n if (!leavingContentEl && leavingToolBarEls.length === 0 && leavingHeaderEls.length === 0) {\n leavingContent.addElement(leavingEl.querySelector(':scope > .ion-page, :scope > ion-nav, :scope > ion-tabs')); // REVIEW\n } else {\n leavingContent.addElement(leavingContentEl); // REVIEW\n\n leavingContent.addElement(leavingHeaderEls);\n }\n\n rootAnimation.addAnimation(leavingContent);\n\n if (backDirection) {\n // leaving content, back direction\n leavingContent.beforeClearStyles([OPACITY]).fromTo('transform', `translateX(${CENTER})`, isRTL ? 'translateX(-100%)' : 'translateX(100%)');\n const leavingPage = getIonPageElement(leavingEl);\n rootAnimation.afterAddWrite(() => {\n if (rootAnimation.getDirection() === 'normal') {\n leavingPage.style.setProperty('display', 'none');\n }\n });\n } else {\n // leaving content, forward direction\n leavingContent.fromTo('transform', `translateX(${CENTER})`, `translateX(${OFF_LEFT})`).fromTo(OPACITY, 1, OFF_OPACITY);\n }\n\n if (leavingContentEl) {\n const leavingTransitionEffectEl = shadow(leavingContentEl).querySelector('.transition-effect');\n\n if (leavingTransitionEffectEl) {\n const leavingTransitionCoverEl = leavingTransitionEffectEl.querySelector('.transition-cover');\n const leavingTransitionShadowEl = leavingTransitionEffectEl.querySelector('.transition-shadow');\n const leavingTransitionEffect = createAnimation();\n const leavingTransitionCover = createAnimation();\n const leavingTransitionShadow = createAnimation();\n leavingTransitionEffect.addElement(leavingTransitionEffectEl).beforeStyles({\n opacity: '1',\n display: 'block'\n }).afterStyles({\n opacity: '',\n display: ''\n });\n leavingTransitionCover.addElement(leavingTransitionCoverEl) // REVIEW\n .beforeClearStyles([OPACITY]).fromTo(OPACITY, 0.1, 0);\n leavingTransitionShadow.addElement(leavingTransitionShadowEl) // REVIEW\n .beforeClearStyles([OPACITY]).fromTo(OPACITY, 0.7, 0.03);\n leavingTransitionEffect.addAnimation([leavingTransitionCover, leavingTransitionShadow]);\n leavingContent.addAnimation([leavingTransitionEffect]);\n }\n }\n\n leavingToolBarEls.forEach(leavingToolBarEl => {\n const leavingToolBar = createAnimation();\n leavingToolBar.addElement(leavingToolBarEl);\n const leavingTitle = createAnimation();\n leavingTitle.addElement(leavingToolBarEl.querySelector('ion-title')); // REVIEW\n\n const leavingToolBarButtons = createAnimation();\n const buttons = leavingToolBarEl.querySelectorAll('ion-buttons,[menuToggle]');\n const parentHeader = leavingToolBarEl.closest('ion-header');\n const inactiveHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.classList.contains('header-collapse-condense-inactive');\n const buttonsToAnimate = Array.from(buttons).filter(button => {\n const isCollapseButton = button.classList.contains('buttons-collapse');\n return isCollapseButton && !inactiveHeader || !isCollapseButton;\n });\n leavingToolBarButtons.addElement(buttonsToAnimate);\n const leavingToolBarItems = createAnimation();\n const leavingToolBarItemEls = leavingToolBarEl.querySelectorAll(':scope > *:not(ion-title):not(ion-buttons):not([menuToggle])');\n\n if (leavingToolBarItemEls.length > 0) {\n leavingToolBarItems.addElement(leavingToolBarItemEls);\n }\n\n const leavingToolBarBg = createAnimation();\n leavingToolBarBg.addElement(shadow(leavingToolBarEl).querySelector('.toolbar-background')); // REVIEW\n\n const leavingBackButton = createAnimation();\n const backButtonEl = leavingToolBarEl.querySelector('ion-back-button');\n\n if (backButtonEl) {\n leavingBackButton.addElement(backButtonEl);\n }\n\n leavingToolBar.addAnimation([leavingTitle, leavingToolBarButtons, leavingToolBarItems, leavingBackButton, leavingToolBarBg]);\n rootAnimation.addAnimation(leavingToolBar); // fade out leaving toolbar items\n\n leavingBackButton.fromTo(OPACITY, 0.99, 0);\n leavingToolBarButtons.fromTo(OPACITY, 0.99, 0);\n leavingToolBarItems.fromTo(OPACITY, 0.99, 0);\n\n if (backDirection) {\n if (!inactiveHeader) {\n // leaving toolbar, back direction\n leavingTitle.fromTo('transform', `translateX(${CENTER})`, isRTL ? 'translateX(-100%)' : 'translateX(100%)').fromTo(OPACITY, 0.99, 0);\n }\n\n leavingToolBarItems.fromTo('transform', `translateX(${CENTER})`, isRTL ? 'translateX(-100%)' : 'translateX(100%)');\n leavingToolBarBg.beforeClearStyles([OPACITY, 'transform']); // leaving toolbar, back direction, and there's no entering toolbar\n // should just slide out, no fading out\n\n const translucentHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.translucent;\n\n if (!translucentHeader) {\n leavingToolBarBg.fromTo(OPACITY, 'var(--opacity)', 0);\n } else {\n leavingToolBarBg.fromTo('transform', 'translateX(0px)', isRTL ? 'translateX(-100%)' : 'translateX(100%)');\n }\n\n if (backButtonEl && !backward) {\n const leavingBackBtnText = createAnimation();\n leavingBackBtnText.addElement(shadow(backButtonEl).querySelector('.button-text')) // REVIEW\n .fromTo('transform', `translateX(${CENTER})`, `translateX(${(isRTL ? -124 : 124) + 'px'})`);\n leavingToolBar.addAnimation(leavingBackBtnText);\n }\n } else {\n // leaving toolbar, forward direction\n if (!inactiveHeader) {\n leavingTitle.fromTo('transform', `translateX(${CENTER})`, `translateX(${OFF_LEFT})`).fromTo(OPACITY, 0.99, 0).afterClearStyles([TRANSFORM, OPACITY]);\n }\n\n leavingToolBarItems.fromTo('transform', `translateX(${CENTER})`, `translateX(${OFF_LEFT})`).afterClearStyles([TRANSFORM, OPACITY]);\n leavingBackButton.afterClearStyles([OPACITY]);\n leavingTitle.afterClearStyles([OPACITY]);\n leavingToolBarButtons.afterClearStyles([OPACITY]);\n }\n });\n }\n\n return rootAnimation;\n } catch (err) {\n throw err;\n }\n};\n\nexport { iosTransitionAnimation, shadow };","map":{"version":3,"names":["c","createAnimation","g","getIonPageElement","DURATION","getClonedElement","tagName","document","querySelector","shadow","el","shadowRoot","getLargeTitle","refEl","tabs","query","activeTab","getBackButton","backDirection","buttonsList","querySelectorAll","buttons","parentHeader","closest","activeHeader","classList","contains","backButton","buttonsCollapse","startSlot","slot","createLargeTitleTransition","rootAnimation","rtl","enteringEl","leavingEl","enteringBackButton","leavingLargeTitle","enteringLargeTitle","leavingBackButton","shouldAnimationForward","shouldAnimationBackward","leavingLargeTitleBox","getBoundingClientRect","enteringBackButtonBox","animateLargeTitle","animateBackButton","enteringLargeTitleBox","leavingBackButtonBox","forward","backward","backButtonEl","largeTitleBox","backButtonBox","BACK_BUTTON_START_OFFSET","right","left","START_TEXT_TRANSLATE","END_TEXT_TRANSLATE","ICON_TRANSLATE","TEXT_ORIGIN_X","ICON_ORIGIN_X","FORWARD_TEXT_KEYFRAMES","offset","opacity","transform","top","BACKWARD_TEXT_KEYFRAMES","TEXT_KEYFRAMES","FORWARD_ICON_KEYFRAMES","BACKWARD_ICON_KEYFRAMES","ICON_KEYFRAMES","enteringBackButtonTextAnimation","enteringBackButtonIconAnimation","clonedBackButtonEl","backButtonTextEl","backButtonIconEl","text","mode","icon","color","disabled","style","setProperty","addElement","beforeStyles","beforeAddWrite","afterAddWrite","removeProperty","keyframes","addAnimation","largeTitleEl","TITLE_START_OFFSET","START_TRANSLATE","ORIGIN_X","BACKWARDS_KEYFRAMES","FORWARDS_KEYFRAMES","KEYFRAMES","clonedTitleEl","clonedLargeTitleAnimation","innerText","size","height","display","position","iosTransitionAnimation","navEl","opts","EASING","OPACITY","TRANSFORM","CENTER","OFF_OPACITY","isRTL","ownerDocument","dir","OFF_RIGHT","OFF_LEFT","direction","contentEl","headerEls","enteringToolBarEls","enteringContentAnimation","duration","easing","fill","beforeRemoveClass","navDecorAnimation","length","beforeClearStyles","fromTo","enteringTransitionEffectEl","enteringTransitionCoverEl","enteringTransitionShadowEl","enteringTransitionEffect","enteringTransitionCover","enteringTransitionShadow","afterStyles","enteringContentHasLargeTitle","forEach","enteringToolBarEl","enteringToolBar","enteringTitle","enteringToolBarButtons","Array","from","inactiveHeader","buttonsToAnimate","filter","button","isCollapseButton","enteringToolBarItems","enteringToolBarBg","translucentHeader","translucent","enteringBackBtnText","leavingContent","leavingContentEl","leavingToolBarEls","leavingHeaderEls","leavingPage","getDirection","leavingTransitionEffectEl","leavingTransitionCoverEl","leavingTransitionShadowEl","leavingTransitionEffect","leavingTransitionCover","leavingTransitionShadow","leavingToolBarEl","leavingToolBar","leavingTitle","leavingToolBarButtons","leavingToolBarItems","leavingToolBarItemEls","leavingToolBarBg","leavingBackBtnText","afterClearStyles","err"],"sources":["D:/MobileDev/WRB/WrenchBoard2023a/node_modules/@ionic/core/dist/esm/ios.transition-8b9192bb.js"],"sourcesContent":["/*!\n * (C) Ionic http://ionicframework.com - MIT License\n */\nimport { c as createAnimation } from './animation-36c1d77d.js';\nimport { g as getIonPageElement } from './index-8191d09f.js';\nimport './helpers-4d272360.js';\nimport './index-1a99aeb7.js';\n\nconst DURATION = 540;\nconst getClonedElement = (tagName) => {\n return document.querySelector(`${tagName}.ion-cloned-element`);\n};\nconst shadow = (el) => {\n return el.shadowRoot || el;\n};\nconst getLargeTitle = (refEl) => {\n const tabs = refEl.tagName === 'ION-TABS' ? refEl : refEl.querySelector('ion-tabs');\n const query = 'ion-content ion-header:not(.header-collapse-condense-inactive) ion-title.title-large';\n if (tabs != null) {\n const activeTab = tabs.querySelector('ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)');\n return activeTab != null ? activeTab.querySelector(query) : null;\n }\n return refEl.querySelector(query);\n};\nconst getBackButton = (refEl, backDirection) => {\n const tabs = refEl.tagName === 'ION-TABS' ? refEl : refEl.querySelector('ion-tabs');\n let buttonsList = [];\n if (tabs != null) {\n const activeTab = tabs.querySelector('ion-tab:not(.tab-hidden), .ion-page:not(.ion-page-hidden)');\n if (activeTab != null) {\n buttonsList = activeTab.querySelectorAll('ion-buttons');\n }\n }\n else {\n buttonsList = refEl.querySelectorAll('ion-buttons');\n }\n for (const buttons of buttonsList) {\n const parentHeader = buttons.closest('ion-header');\n const activeHeader = parentHeader && !parentHeader.classList.contains('header-collapse-condense-inactive');\n const backButton = buttons.querySelector('ion-back-button');\n const buttonsCollapse = buttons.classList.contains('buttons-collapse');\n const startSlot = buttons.slot === 'start' || buttons.slot === '';\n if (backButton !== null && startSlot && ((buttonsCollapse && activeHeader && backDirection) || !buttonsCollapse)) {\n return backButton;\n }\n }\n return null;\n};\nconst createLargeTitleTransition = (rootAnimation, rtl, backDirection, enteringEl, leavingEl) => {\n const enteringBackButton = getBackButton(enteringEl, backDirection);\n const leavingLargeTitle = getLargeTitle(leavingEl);\n const enteringLargeTitle = getLargeTitle(enteringEl);\n const leavingBackButton = getBackButton(leavingEl, backDirection);\n const shouldAnimationForward = enteringBackButton !== null && leavingLargeTitle !== null && !backDirection;\n const shouldAnimationBackward = enteringLargeTitle !== null && leavingBackButton !== null && backDirection;\n if (shouldAnimationForward) {\n const leavingLargeTitleBox = leavingLargeTitle.getBoundingClientRect();\n const enteringBackButtonBox = enteringBackButton.getBoundingClientRect();\n animateLargeTitle(rootAnimation, rtl, backDirection, leavingLargeTitle, leavingLargeTitleBox, enteringBackButtonBox);\n animateBackButton(rootAnimation, rtl, backDirection, enteringBackButton, leavingLargeTitleBox, enteringBackButtonBox);\n }\n else if (shouldAnimationBackward) {\n const enteringLargeTitleBox = enteringLargeTitle.getBoundingClientRect();\n const leavingBackButtonBox = leavingBackButton.getBoundingClientRect();\n animateLargeTitle(rootAnimation, rtl, backDirection, enteringLargeTitle, enteringLargeTitleBox, leavingBackButtonBox);\n animateBackButton(rootAnimation, rtl, backDirection, leavingBackButton, enteringLargeTitleBox, leavingBackButtonBox);\n }\n return {\n forward: shouldAnimationForward,\n backward: shouldAnimationBackward,\n };\n};\nconst animateBackButton = (rootAnimation, rtl, backDirection, backButtonEl, largeTitleBox, backButtonBox) => {\n const BACK_BUTTON_START_OFFSET = rtl ? `calc(100% - ${backButtonBox.right + 4}px)` : `${backButtonBox.left - 4}px`;\n const START_TEXT_TRANSLATE = rtl ? '7px' : '-7px';\n const END_TEXT_TRANSLATE = rtl ? '-4px' : '4px';\n const ICON_TRANSLATE = rtl ? '-4px' : '4px';\n const TEXT_ORIGIN_X = rtl ? 'right' : 'left';\n const ICON_ORIGIN_X = rtl ? 'left' : 'right';\n const FORWARD_TEXT_KEYFRAMES = [\n {\n offset: 0,\n opacity: 0,\n transform: `translate3d(${START_TEXT_TRANSLATE}, ${largeTitleBox.top - 40}px, 0) scale(2.1)`,\n },\n { offset: 1, opacity: 1, transform: `translate3d(${END_TEXT_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },\n ];\n const BACKWARD_TEXT_KEYFRAMES = [\n { offset: 0, opacity: 1, transform: `translate3d(${END_TEXT_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },\n { offset: 0.6, opacity: 0 },\n {\n offset: 1,\n opacity: 0,\n transform: `translate3d(${START_TEXT_TRANSLATE}, ${largeTitleBox.top - 40}px, 0) scale(2.1)`,\n },\n ];\n const TEXT_KEYFRAMES = backDirection ? BACKWARD_TEXT_KEYFRAMES : FORWARD_TEXT_KEYFRAMES;\n const FORWARD_ICON_KEYFRAMES = [\n { offset: 0, opacity: 0, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)` },\n { offset: 1, opacity: 1, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },\n ];\n const BACKWARD_ICON_KEYFRAMES = [\n { offset: 0, opacity: 1, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 46}px, 0) scale(1)` },\n { offset: 0.2, opacity: 0, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)` },\n { offset: 1, opacity: 0, transform: `translate3d(${ICON_TRANSLATE}, ${backButtonBox.top - 41}px, 0) scale(0.6)` },\n ];\n const ICON_KEYFRAMES = backDirection ? BACKWARD_ICON_KEYFRAMES : FORWARD_ICON_KEYFRAMES;\n const enteringBackButtonTextAnimation = createAnimation();\n const enteringBackButtonIconAnimation = createAnimation();\n const clonedBackButtonEl = getClonedElement('ion-back-button');\n const backButtonTextEl = shadow(clonedBackButtonEl).querySelector('.button-text');\n const backButtonIconEl = shadow(clonedBackButtonEl).querySelector('ion-icon');\n clonedBackButtonEl.text = backButtonEl.text;\n clonedBackButtonEl.mode = backButtonEl.mode;\n clonedBackButtonEl.icon = backButtonEl.icon;\n clonedBackButtonEl.color = backButtonEl.color;\n clonedBackButtonEl.disabled = backButtonEl.disabled;\n clonedBackButtonEl.style.setProperty('display', 'block');\n clonedBackButtonEl.style.setProperty('position', 'fixed');\n enteringBackButtonIconAnimation.addElement(backButtonIconEl);\n enteringBackButtonTextAnimation.addElement(backButtonTextEl);\n enteringBackButtonTextAnimation\n .beforeStyles({\n 'transform-origin': `${TEXT_ORIGIN_X} center`,\n })\n .beforeAddWrite(() => {\n backButtonEl.style.setProperty('display', 'none');\n clonedBackButtonEl.style.setProperty(TEXT_ORIGIN_X, BACK_BUTTON_START_OFFSET);\n })\n .afterAddWrite(() => {\n backButtonEl.style.setProperty('display', '');\n clonedBackButtonEl.style.setProperty('display', 'none');\n clonedBackButtonEl.style.removeProperty(TEXT_ORIGIN_X);\n })\n .keyframes(TEXT_KEYFRAMES);\n enteringBackButtonIconAnimation\n .beforeStyles({\n 'transform-origin': `${ICON_ORIGIN_X} center`,\n })\n .keyframes(ICON_KEYFRAMES);\n rootAnimation.addAnimation([enteringBackButtonTextAnimation, enteringBackButtonIconAnimation]);\n};\nconst animateLargeTitle = (rootAnimation, rtl, backDirection, largeTitleEl, largeTitleBox, backButtonBox) => {\n const TITLE_START_OFFSET = rtl ? `calc(100% - ${largeTitleBox.right}px)` : `${largeTitleBox.left}px`;\n const START_TRANSLATE = rtl ? '-18px' : '18px';\n const ORIGIN_X = rtl ? 'right' : 'left';\n const BACKWARDS_KEYFRAMES = [\n { offset: 0, opacity: 0, transform: `translate3d(${START_TRANSLATE}, ${backButtonBox.top - 4}px, 0) scale(0.49)` },\n { offset: 0.1, opacity: 0 },\n { offset: 1, opacity: 1, transform: `translate3d(0, ${largeTitleBox.top - 2}px, 0) scale(1)` },\n ];\n const FORWARDS_KEYFRAMES = [\n { offset: 0, opacity: 0.99, transform: `translate3d(0, ${largeTitleBox.top - 2}px, 0) scale(1)` },\n { offset: 0.6, opacity: 0 },\n { offset: 1, opacity: 0, transform: `translate3d(${START_TRANSLATE}, ${backButtonBox.top - 4}px, 0) scale(0.5)` },\n ];\n const KEYFRAMES = backDirection ? BACKWARDS_KEYFRAMES : FORWARDS_KEYFRAMES;\n const clonedTitleEl = getClonedElement('ion-title');\n const clonedLargeTitleAnimation = createAnimation();\n clonedTitleEl.innerText = largeTitleEl.innerText;\n clonedTitleEl.size = largeTitleEl.size;\n clonedTitleEl.color = largeTitleEl.color;\n clonedLargeTitleAnimation.addElement(clonedTitleEl);\n clonedLargeTitleAnimation\n .beforeStyles({\n 'transform-origin': `${ORIGIN_X} center`,\n height: '46px',\n display: '',\n position: 'relative',\n [ORIGIN_X]: TITLE_START_OFFSET,\n })\n .beforeAddWrite(() => {\n largeTitleEl.style.setProperty('display', 'none');\n })\n .afterAddWrite(() => {\n largeTitleEl.style.setProperty('display', '');\n clonedTitleEl.style.setProperty('display', 'none');\n })\n .keyframes(KEYFRAMES);\n rootAnimation.addAnimation(clonedLargeTitleAnimation);\n};\nconst iosTransitionAnimation = (navEl, opts) => {\n try {\n const EASING = 'cubic-bezier(0.32,0.72,0,1)';\n const OPACITY = 'opacity';\n const TRANSFORM = 'transform';\n const CENTER = '0%';\n const OFF_OPACITY = 0.8;\n const isRTL = navEl.ownerDocument.dir === 'rtl';\n const OFF_RIGHT = isRTL ? '-99.5%' : '99.5%';\n const OFF_LEFT = isRTL ? '33%' : '-33%';\n const enteringEl = opts.enteringEl;\n const leavingEl = opts.leavingEl;\n const backDirection = opts.direction === 'back';\n const contentEl = enteringEl.querySelector(':scope > ion-content');\n const headerEls = enteringEl.querySelectorAll(':scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *');\n const enteringToolBarEls = enteringEl.querySelectorAll(':scope > ion-header > ion-toolbar');\n const rootAnimation = createAnimation();\n const enteringContentAnimation = createAnimation();\n rootAnimation\n .addElement(enteringEl)\n .duration(opts.duration || DURATION)\n .easing(opts.easing || EASING)\n .fill('both')\n .beforeRemoveClass('ion-page-invisible');\n if (leavingEl && navEl) {\n const navDecorAnimation = createAnimation();\n navDecorAnimation.addElement(navEl);\n rootAnimation.addAnimation(navDecorAnimation);\n }\n if (!contentEl && enteringToolBarEls.length === 0 && headerEls.length === 0) {\n enteringContentAnimation.addElement(enteringEl.querySelector(':scope > .ion-page, :scope > ion-nav, :scope > ion-tabs')); // REVIEW\n }\n else {\n enteringContentAnimation.addElement(contentEl); // REVIEW\n enteringContentAnimation.addElement(headerEls);\n }\n rootAnimation.addAnimation(enteringContentAnimation);\n if (backDirection) {\n enteringContentAnimation\n .beforeClearStyles([OPACITY])\n .fromTo('transform', `translateX(${OFF_LEFT})`, `translateX(${CENTER})`)\n .fromTo(OPACITY, OFF_OPACITY, 1);\n }\n else {\n // entering content, forward direction\n enteringContentAnimation\n .beforeClearStyles([OPACITY])\n .fromTo('transform', `translateX(${OFF_RIGHT})`, `translateX(${CENTER})`);\n }\n if (contentEl) {\n const enteringTransitionEffectEl = shadow(contentEl).querySelector('.transition-effect');\n if (enteringTransitionEffectEl) {\n const enteringTransitionCoverEl = enteringTransitionEffectEl.querySelector('.transition-cover');\n const enteringTransitionShadowEl = enteringTransitionEffectEl.querySelector('.transition-shadow');\n const enteringTransitionEffect = createAnimation();\n const enteringTransitionCover = createAnimation();\n const enteringTransitionShadow = createAnimation();\n enteringTransitionEffect\n .addElement(enteringTransitionEffectEl)\n .beforeStyles({ opacity: '1', display: 'block' })\n .afterStyles({ opacity: '', display: '' });\n enteringTransitionCover\n .addElement(enteringTransitionCoverEl) // REVIEW\n .beforeClearStyles([OPACITY])\n .fromTo(OPACITY, 0, 0.1);\n enteringTransitionShadow\n .addElement(enteringTransitionShadowEl) // REVIEW\n .beforeClearStyles([OPACITY])\n .fromTo(OPACITY, 0.03, 0.7);\n enteringTransitionEffect.addAnimation([enteringTransitionCover, enteringTransitionShadow]);\n enteringContentAnimation.addAnimation([enteringTransitionEffect]);\n }\n }\n const enteringContentHasLargeTitle = enteringEl.querySelector('ion-header.header-collapse-condense');\n const { forward, backward } = createLargeTitleTransition(rootAnimation, isRTL, backDirection, enteringEl, leavingEl);\n enteringToolBarEls.forEach((enteringToolBarEl) => {\n const enteringToolBar = createAnimation();\n enteringToolBar.addElement(enteringToolBarEl);\n rootAnimation.addAnimation(enteringToolBar);\n const enteringTitle = createAnimation();\n enteringTitle.addElement(enteringToolBarEl.querySelector('ion-title')); // REVIEW\n const enteringToolBarButtons = createAnimation();\n const buttons = Array.from(enteringToolBarEl.querySelectorAll('ion-buttons,[menuToggle]'));\n const parentHeader = enteringToolBarEl.closest('ion-header');\n const inactiveHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.classList.contains('header-collapse-condense-inactive');\n let buttonsToAnimate;\n if (backDirection) {\n buttonsToAnimate = buttons.filter((button) => {\n const isCollapseButton = button.classList.contains('buttons-collapse');\n return (isCollapseButton && !inactiveHeader) || !isCollapseButton;\n });\n }\n else {\n buttonsToAnimate = buttons.filter((button) => !button.classList.contains('buttons-collapse'));\n }\n enteringToolBarButtons.addElement(buttonsToAnimate);\n const enteringToolBarItems = createAnimation();\n enteringToolBarItems.addElement(enteringToolBarEl.querySelectorAll(':scope > *:not(ion-title):not(ion-buttons):not([menuToggle])'));\n const enteringToolBarBg = createAnimation();\n enteringToolBarBg.addElement(shadow(enteringToolBarEl).querySelector('.toolbar-background')); // REVIEW\n const enteringBackButton = createAnimation();\n const backButtonEl = enteringToolBarEl.querySelector('ion-back-button');\n if (backButtonEl) {\n enteringBackButton.addElement(backButtonEl);\n }\n enteringToolBar.addAnimation([\n enteringTitle,\n enteringToolBarButtons,\n enteringToolBarItems,\n enteringToolBarBg,\n enteringBackButton,\n ]);\n enteringToolBarButtons.fromTo(OPACITY, 0.01, 1);\n enteringToolBarItems.fromTo(OPACITY, 0.01, 1);\n if (backDirection) {\n if (!inactiveHeader) {\n enteringTitle\n .fromTo('transform', `translateX(${OFF_LEFT})`, `translateX(${CENTER})`)\n .fromTo(OPACITY, 0.01, 1);\n }\n enteringToolBarItems.fromTo('transform', `translateX(${OFF_LEFT})`, `translateX(${CENTER})`);\n // back direction, entering page has a back button\n enteringBackButton.fromTo(OPACITY, 0.01, 1);\n }\n else {\n // entering toolbar, forward direction\n if (!enteringContentHasLargeTitle) {\n enteringTitle\n .fromTo('transform', `translateX(${OFF_RIGHT})`, `translateX(${CENTER})`)\n .fromTo(OPACITY, 0.01, 1);\n }\n enteringToolBarItems.fromTo('transform', `translateX(${OFF_RIGHT})`, `translateX(${CENTER})`);\n enteringToolBarBg.beforeClearStyles([OPACITY, 'transform']);\n const translucentHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.translucent;\n if (!translucentHeader) {\n enteringToolBarBg.fromTo(OPACITY, 0.01, 'var(--opacity)');\n }\n else {\n enteringToolBarBg.fromTo('transform', isRTL ? 'translateX(-100%)' : 'translateX(100%)', 'translateX(0px)');\n }\n // forward direction, entering page has a back button\n if (!forward) {\n enteringBackButton.fromTo(OPACITY, 0.01, 1);\n }\n if (backButtonEl && !forward) {\n const enteringBackBtnText = createAnimation();\n enteringBackBtnText\n .addElement(shadow(backButtonEl).querySelector('.button-text')) // REVIEW\n .fromTo(`transform`, isRTL ? 'translateX(-100px)' : 'translateX(100px)', 'translateX(0px)');\n enteringToolBar.addAnimation(enteringBackBtnText);\n }\n }\n });\n // setup leaving view\n if (leavingEl) {\n const leavingContent = createAnimation();\n const leavingContentEl = leavingEl.querySelector(':scope > ion-content');\n const leavingToolBarEls = leavingEl.querySelectorAll(':scope > ion-header > ion-toolbar');\n const leavingHeaderEls = leavingEl.querySelectorAll(':scope > ion-header > *:not(ion-toolbar), :scope > ion-footer > *');\n if (!leavingContentEl && leavingToolBarEls.length === 0 && leavingHeaderEls.length === 0) {\n leavingContent.addElement(leavingEl.querySelector(':scope > .ion-page, :scope > ion-nav, :scope > ion-tabs')); // REVIEW\n }\n else {\n leavingContent.addElement(leavingContentEl); // REVIEW\n leavingContent.addElement(leavingHeaderEls);\n }\n rootAnimation.addAnimation(leavingContent);\n if (backDirection) {\n // leaving content, back direction\n leavingContent\n .beforeClearStyles([OPACITY])\n .fromTo('transform', `translateX(${CENTER})`, isRTL ? 'translateX(-100%)' : 'translateX(100%)');\n const leavingPage = getIonPageElement(leavingEl);\n rootAnimation.afterAddWrite(() => {\n if (rootAnimation.getDirection() === 'normal') {\n leavingPage.style.setProperty('display', 'none');\n }\n });\n }\n else {\n // leaving content, forward direction\n leavingContent\n .fromTo('transform', `translateX(${CENTER})`, `translateX(${OFF_LEFT})`)\n .fromTo(OPACITY, 1, OFF_OPACITY);\n }\n if (leavingContentEl) {\n const leavingTransitionEffectEl = shadow(leavingContentEl).querySelector('.transition-effect');\n if (leavingTransitionEffectEl) {\n const leavingTransitionCoverEl = leavingTransitionEffectEl.querySelector('.transition-cover');\n const leavingTransitionShadowEl = leavingTransitionEffectEl.querySelector('.transition-shadow');\n const leavingTransitionEffect = createAnimation();\n const leavingTransitionCover = createAnimation();\n const leavingTransitionShadow = createAnimation();\n leavingTransitionEffect\n .addElement(leavingTransitionEffectEl)\n .beforeStyles({ opacity: '1', display: 'block' })\n .afterStyles({ opacity: '', display: '' });\n leavingTransitionCover\n .addElement(leavingTransitionCoverEl) // REVIEW\n .beforeClearStyles([OPACITY])\n .fromTo(OPACITY, 0.1, 0);\n leavingTransitionShadow\n .addElement(leavingTransitionShadowEl) // REVIEW\n .beforeClearStyles([OPACITY])\n .fromTo(OPACITY, 0.7, 0.03);\n leavingTransitionEffect.addAnimation([leavingTransitionCover, leavingTransitionShadow]);\n leavingContent.addAnimation([leavingTransitionEffect]);\n }\n }\n leavingToolBarEls.forEach((leavingToolBarEl) => {\n const leavingToolBar = createAnimation();\n leavingToolBar.addElement(leavingToolBarEl);\n const leavingTitle = createAnimation();\n leavingTitle.addElement(leavingToolBarEl.querySelector('ion-title')); // REVIEW\n const leavingToolBarButtons = createAnimation();\n const buttons = leavingToolBarEl.querySelectorAll('ion-buttons,[menuToggle]');\n const parentHeader = leavingToolBarEl.closest('ion-header');\n const inactiveHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.classList.contains('header-collapse-condense-inactive');\n const buttonsToAnimate = Array.from(buttons).filter((button) => {\n const isCollapseButton = button.classList.contains('buttons-collapse');\n return (isCollapseButton && !inactiveHeader) || !isCollapseButton;\n });\n leavingToolBarButtons.addElement(buttonsToAnimate);\n const leavingToolBarItems = createAnimation();\n const leavingToolBarItemEls = leavingToolBarEl.querySelectorAll(':scope > *:not(ion-title):not(ion-buttons):not([menuToggle])');\n if (leavingToolBarItemEls.length > 0) {\n leavingToolBarItems.addElement(leavingToolBarItemEls);\n }\n const leavingToolBarBg = createAnimation();\n leavingToolBarBg.addElement(shadow(leavingToolBarEl).querySelector('.toolbar-background')); // REVIEW\n const leavingBackButton = createAnimation();\n const backButtonEl = leavingToolBarEl.querySelector('ion-back-button');\n if (backButtonEl) {\n leavingBackButton.addElement(backButtonEl);\n }\n leavingToolBar.addAnimation([\n leavingTitle,\n leavingToolBarButtons,\n leavingToolBarItems,\n leavingBackButton,\n leavingToolBarBg,\n ]);\n rootAnimation.addAnimation(leavingToolBar);\n // fade out leaving toolbar items\n leavingBackButton.fromTo(OPACITY, 0.99, 0);\n leavingToolBarButtons.fromTo(OPACITY, 0.99, 0);\n leavingToolBarItems.fromTo(OPACITY, 0.99, 0);\n if (backDirection) {\n if (!inactiveHeader) {\n // leaving toolbar, back direction\n leavingTitle\n .fromTo('transform', `translateX(${CENTER})`, isRTL ? 'translateX(-100%)' : 'translateX(100%)')\n .fromTo(OPACITY, 0.99, 0);\n }\n leavingToolBarItems.fromTo('transform', `translateX(${CENTER})`, isRTL ? 'translateX(-100%)' : 'translateX(100%)');\n leavingToolBarBg.beforeClearStyles([OPACITY, 'transform']);\n // leaving toolbar, back direction, and there's no entering toolbar\n // should just slide out, no fading out\n const translucentHeader = parentHeader === null || parentHeader === void 0 ? void 0 : parentHeader.translucent;\n if (!translucentHeader) {\n leavingToolBarBg.fromTo(OPACITY, 'var(--opacity)', 0);\n }\n else {\n leavingToolBarBg.fromTo('transform', 'translateX(0px)', isRTL ? 'translateX(-100%)' : 'translateX(100%)');\n }\n if (backButtonEl && !backward) {\n const leavingBackBtnText = createAnimation();\n leavingBackBtnText\n .addElement(shadow(backButtonEl).querySelector('.button-text')) // REVIEW\n .fromTo('transform', `translateX(${CENTER})`, `translateX(${(isRTL ? -124 : 124) + 'px'})`);\n leavingToolBar.addAnimation(leavingBackBtnText);\n }\n }\n else {\n // leaving toolbar, forward direction\n if (!inactiveHeader) {\n leavingTitle\n .fromTo('transform', `translateX(${CENTER})`, `translateX(${OFF_LEFT})`)\n .fromTo(OPACITY, 0.99, 0)\n .afterClearStyles([TRANSFORM, OPACITY]);\n }\n leavingToolBarItems\n .fromTo('transform', `translateX(${CENTER})`, `translateX(${OFF_LEFT})`)\n .afterClearStyles([TRANSFORM, OPACITY]);\n leavingBackButton.afterClearStyles([OPACITY]);\n leavingTitle.afterClearStyles([OPACITY]);\n leavingToolBarButtons.afterClearStyles([OPACITY]);\n }\n });\n }\n return rootAnimation;\n }\n catch (err) {\n throw err;\n }\n};\n\nexport { iosTransitionAnimation, shadow };\n"],"mappings":"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"},"metadata":{},"sourceType":"module"} |