From efbc2ffe6a1ee5ec38a4396305561d6515d0943e Mon Sep 17 00:00:00 2001 From: littleblack111 Date: Fri, 30 Aug 2024 17:21:18 +0800 Subject: node fixes, updates --- node_modules/swup/src/modules/animatePageIn.ts | 32 ++++++++++++++++++++++++++ 1 file changed, 32 insertions(+) create mode 100755 node_modules/swup/src/modules/animatePageIn.ts (limited to 'node_modules/swup/src/modules/animatePageIn.ts') diff --git a/node_modules/swup/src/modules/animatePageIn.ts b/node_modules/swup/src/modules/animatePageIn.ts new file mode 100755 index 00000000..fc384b73 --- /dev/null +++ b/node_modules/swup/src/modules/animatePageIn.ts @@ -0,0 +1,32 @@ +import type Swup from '../Swup.js'; +import { nextTick } from '../utils.js'; +import type { Visit } from './Visit.js'; + +/** + * Perform the in/enter animation of the next page. + * @returns Promise + */ +export const animatePageIn = async function (this: Swup, visit: Visit) { + // Check if failed/aborted in the meantime + if (visit.done) return; + + const animation = this.hooks.call( + 'animation:in:await', + visit, + { skip: false }, + (visit, { skip }) => { + if (skip) return; + return this.awaitAnimations({ selector: visit.animation.selector }); + } + ); + + await nextTick(); + + await this.hooks.call('animation:in:start', visit, undefined, () => { + this.classes.remove('is-animating'); + }); + + await animation; + + await this.hooks.call('animation:in:end', visit, undefined); +}; -- cgit v1.2.3