only carry forward fragment visibiltiy if style remains unchanged
							parent
							
								
									4d1cb43faf
								
							
						
					
					
						commit
						34ab7ded55
					
				
										
											
												File diff suppressed because one or more lines are too long
											
										
									
								
							|  | @ -1,4 +1,5 @@ | ||||||
| import { queryAll, extend, createStyleSheet } from '../utils/util.js' | import { queryAll, extend, createStyleSheet } from '../utils/util.js' | ||||||
|  | import { FRAGMENT_STYLE_REGEX } from '../utils/constants.js' | ||||||
| 
 | 
 | ||||||
| /** | /** | ||||||
|  * Automatically animates matching elements across |  * Automatically animates matching elements across | ||||||
|  | @ -168,8 +169,17 @@ export default class AutoAnimate { | ||||||
| 			// conflicts with fragment animations
 | 			// conflicts with fragment animations
 | ||||||
| 			delete toProps.styles['opacity']; | 			delete toProps.styles['opacity']; | ||||||
| 
 | 
 | ||||||
| 			if( from.classList.contains( 'fragment' ) && animationOptions.slideDirection === 'forward' ) { | 			if( from.classList.contains( 'fragment' ) ) { | ||||||
| 				to.classList.add( 'visible', 'disabled' ); | 
 | ||||||
|  | 				let fromFragmentStyle = ( from.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0]; | ||||||
|  | 				let toFragmentStyle = ( to.className.match( FRAGMENT_STYLE_REGEX ) || [''] )[0]; | ||||||
|  | 
 | ||||||
|  | 				// Only skip the fragment if the fragment animation style
 | ||||||
|  | 				// remains unchanged
 | ||||||
|  | 				if( fromFragmentStyle === toFragmentStyle && animationOptions.slideDirection === 'forward' ) { | ||||||
|  | 					to.classList.add( 'visible', 'disabled' ); | ||||||
|  | 				} | ||||||
|  | 
 | ||||||
| 			} | 			} | ||||||
| 
 | 
 | ||||||
| 		} | 		} | ||||||
|  |  | ||||||
|  | @ -5,3 +5,6 @@ export const VERTICAL_SLIDES_SELECTOR = '.slides>section.present>section'; | ||||||
| 
 | 
 | ||||||
| // Methods that may not be invoked via the postMessage API
 | // Methods that may not be invoked via the postMessage API
 | ||||||
| export const POST_MESSAGE_METHOD_BLACKLIST = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/; | export const POST_MESSAGE_METHOD_BLACKLIST = /registerPlugin|registerKeyboardShortcut|addKeyBinding|addEventListener/; | ||||||
|  | 
 | ||||||
|  | // Regex for retrieving the fragment style from a class attribute
 | ||||||
|  | export const FRAGMENT_STYLE_REGEX = /fade-(down|up|right|left|out|in-then-out|in-then-semi-out)|semi-fade-out|current-visible|shrink|grow/; | ||||||
		Loading…
	
		Reference in New Issue
	
	 Hakim El Hattab
						Hakim El Hattab