gitextract_d9vexhun/ ├── .codecov.yml ├── .editorconfig ├── .github/ │ ├── CODEOWNERS │ ├── FUNDING.yml │ ├── auto_assign.yml │ ├── issue_template.md │ ├── main.workflow │ ├── stale.yml │ └── workflows/ │ ├── build.yml │ ├── rebase.yml │ ├── swiftlint.yml │ └── test.yml ├── .gitignore ├── .jazzy.yaml ├── .makefiles/ │ ├── bundler.mk │ ├── docker-compose.mk │ ├── help.awk │ ├── ios.mk │ ├── ludicrous.mk │ └── virtualenv.mk ├── .swiftlint.yml ├── .travis.yml ├── CHANGELOG.md ├── DEVELOP.md ├── Dangerfile ├── Examples/ │ ├── AppStoreCardExample.swift │ ├── BuiltInTransitionExample.swift │ ├── ExampleBaseViewController.swift │ ├── MainViewController.swift │ ├── MatchExample.swift │ ├── MatchInCollectionExample.swift │ ├── Resources/ │ │ ├── AppDelegate.swift │ │ ├── Assets.xcassets/ │ │ │ ├── App Icon & Top Shelf Image.brandassets/ │ │ │ │ ├── App Icon - Large.imagestack/ │ │ │ │ │ ├── Back.imagestacklayer/ │ │ │ │ │ │ ├── Content.imageset/ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ └── Contents.json │ │ │ │ │ ├── Contents.json │ │ │ │ │ ├── Front.imagestacklayer/ │ │ │ │ │ │ ├── Content.imageset/ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Middle.imagestacklayer/ │ │ │ │ │ ├── Content.imageset/ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ ├── App Icon - Small.imagestack/ │ │ │ │ │ ├── Back.imagestacklayer/ │ │ │ │ │ │ ├── Content.imageset/ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ └── Contents.json │ │ │ │ │ ├── Contents.json │ │ │ │ │ ├── Front.imagestacklayer/ │ │ │ │ │ │ ├── Content.imageset/ │ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Middle.imagestacklayer/ │ │ │ │ │ ├── Content.imageset/ │ │ │ │ │ │ └── Contents.json │ │ │ │ │ └── Contents.json │ │ │ │ ├── Contents.json │ │ │ │ ├── Top Shelf Image Wide.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ └── Top Shelf Image.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ ├── AppleHomePage/ │ │ │ │ ├── Contents.json │ │ │ │ ├── iphone_alt_small_2x.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── macbookpro_portrait_small_2x.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ └── watch_alt_portrait_small_2x.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── CityGuide/ │ │ │ │ ├── Contents.json │ │ │ │ ├── cityGuide.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── montreal.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── toronto.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ └── vancouver.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── Contents.json │ │ │ ├── Foods/ │ │ │ │ ├── Contents.json │ │ │ │ ├── Unsplash0.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash0_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash0_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash1.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash10.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash10_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash10_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash1_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash1_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash2.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash2_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash2_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash3.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash3_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash3_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash4.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash4_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash4_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash5.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash5_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash5_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash6.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash6_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash6_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash7.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash7_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash7_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash8.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash8_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash8_thumb.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash9.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── Unsplash9_cell.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ └── Unsplash9_thumb.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── HeroLogo.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── Menu/ │ │ │ │ ├── Contents.json │ │ │ │ ├── ic_audiotrack_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_chat_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_format_quote_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_gif_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_insert_photo_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_link_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_menu_36pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_menu_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_text_fields_48pt.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ └── ic_videocam_48pt.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── MusicPlayer/ │ │ │ │ ├── Contents.json │ │ │ │ ├── album1.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_fast_forward.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_fast_rewind.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_pause_white.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_play_arrow_white.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ ├── ic_repeat.imageset/ │ │ │ │ │ └── Contents.json │ │ │ │ └── ic_shuffle.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── bigbuckbunny.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── ic_bug_report_48pt.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── ic_close.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── ic_code.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── ic_input_48pt.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── ic_keyboard_arrow_down.imageset/ │ │ │ │ └── Contents.json │ │ │ ├── ic_view_list.imageset/ │ │ │ │ └── Contents.json │ │ │ └── ic_view_module.imageset/ │ │ │ └── Contents.json │ │ ├── Base.lproj/ │ │ │ └── LaunchScreen.storyboard │ │ ├── Info.plist │ │ └── UIKit+HeroExamples.swift │ └── SwiftUIMatchExample.swift ├── Gemfile ├── Hero.podspec ├── Hero.xcodeproj/ │ ├── project.pbxproj │ ├── project.xcworkspace/ │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata/ │ │ └── IDEWorkspaceChecks.plist │ └── xcshareddata/ │ └── xcschemes/ │ ├── Hero (tvOS).xcscheme │ ├── Hero.xcscheme │ └── HeroExamples.xcscheme ├── Hero.xcworkspace/ │ ├── contents.xcworkspacedata │ └── xcshareddata/ │ ├── IDEWorkspaceChecks.plist │ └── WorkspaceSettings.xcsettings ├── LICENSE ├── LegacyExamples/ │ ├── Base.lproj/ │ │ └── Main.storyboard │ ├── Examples/ │ │ ├── AppleHomePage/ │ │ │ ├── AppleHomePage.storyboard │ │ │ └── AppleProductViewController.swift │ │ ├── Basic.storyboard │ │ ├── BuiltInTransition/ │ │ │ ├── AnimationSelectTableViewController.swift │ │ │ └── BuiltInTransitions.storyboard │ │ ├── CityGuide/ │ │ │ ├── City.swift │ │ │ ├── CityGuide.storyboard │ │ │ ├── CityGuideCell.swift │ │ │ ├── CityGuideViewController.swift │ │ │ └── CityViewController.swift │ │ ├── ImageGallery/ │ │ │ ├── ImageCells.swift │ │ │ ├── ImageGallery.storyboard │ │ │ ├── ImageGalleryCollectionViewController.swift │ │ │ ├── ImageLibrary.swift │ │ │ ├── ImageViewController.swift │ │ │ └── ImageViewer.storyboard │ │ ├── ListToGrid/ │ │ │ ├── GridCollectionViewController.swift │ │ │ ├── ListTableViewController.swift │ │ │ └── ListToGrid.storyboard │ │ ├── Menu/ │ │ │ ├── Menu.storyboard │ │ │ └── MenuViewController.swift │ │ ├── MusicPlayer.storyboard │ │ ├── Navigation/ │ │ │ ├── FirstViewController.swift │ │ │ └── Navigation.storyboard │ │ └── VideoPlayer/ │ │ ├── VideoPlayer.storyboard │ │ └── VideoPlayerViewController.swift │ ├── LegacyExampleViewController.swift │ ├── PluginViewController.swift │ └── en.lproj/ │ └── Main.strings ├── Makefile ├── Mintfile ├── Package.md ├── Package.swift ├── PackageModules.dot ├── Podfile ├── README.md ├── README.zh-cn.md ├── Sources/ │ ├── Animator/ │ │ ├── HeroAnimatorViewContext.swift │ │ ├── HeroCoreAnimationViewContext.swift │ │ ├── HeroDefaultAnimator.swift │ │ └── HeroViewPropertyViewContext.swift │ ├── Debug Plugin/ │ │ ├── HeroDebugPlugin.swift │ │ └── HeroDebugView.swift │ ├── Extensions/ │ │ ├── Array+HeroModifier.swift │ │ ├── CALayer+Hero.swift │ │ ├── CAMediaTimingFunction+Hero.swift │ │ ├── CG+Hero.swift │ │ ├── DispatchQueue+Hero.swift │ │ ├── Locale+Hero.swift │ │ ├── UIColor+HexString.swift │ │ ├── UIKit+Hero.swift │ │ ├── UIView+Hero.swift │ │ └── UIViewController+Hero.swift │ ├── Hero.h │ ├── HeroCompatible.swift │ ├── HeroContext.swift │ ├── HeroModifier+Advanced.swift │ ├── HeroModifier+HeroStringConvertible.swift │ ├── HeroModifier.swift │ ├── HeroPlugin.swift │ ├── HeroTargetState.swift │ ├── HeroTypes.swift │ ├── HeroViewControllerDelegate.swift │ ├── Info.plist │ ├── Parser/ │ │ ├── HeroStringConvertible.swift │ │ ├── Lexer.swift │ │ ├── Nodes.swift │ │ ├── Parser.swift │ │ └── Regex.swift │ ├── Preprocessors/ │ │ ├── BasePreprocessor.swift │ │ ├── CascadePreprocessor.swift │ │ ├── ConditionalPreprocessor.swift │ │ ├── DefaultAnimationPreprocessor.swift │ │ ├── IgnoreSubviewModifiersPreprocessor.swift │ │ ├── MatchPreprocessor.swift │ │ └── SourcePreprocessor.swift │ ├── SwiftSupport.swift │ └── Transition/ │ ├── HeroProgressRunner.swift │ ├── HeroTransition+Animate.swift │ ├── HeroTransition+Complete.swift │ ├── HeroTransition+CustomTransition.swift │ ├── HeroTransition+Interactive.swift │ ├── HeroTransition+Start.swift │ ├── HeroTransition+UINavigationControllerDelegate.swift │ ├── HeroTransition+UITabBarControllerDelegate.swift │ ├── HeroTransition+UIViewControllerTransitioningDelegate.swift │ ├── HeroTransition.swift │ └── HeroTransitionState.swift ├── Tests/ │ ├── HeroTests.swift │ └── Info.plist ├── TvOSExamples/ │ ├── AppDelegate.swift │ ├── Base.lproj/ │ │ └── Main.storyboard │ ├── Basic.storyboard │ ├── ImageGallery.storyboard │ ├── ImageViewer.storyboard │ ├── Info.plist │ └── TVImageGalleryViewController.swift ├── book.json └── docs/ ├── Classes/ │ ├── BinaryOpNode.html │ ├── CallNode.html │ ├── ExprNode.html │ ├── FunctionNode.html │ ├── Hero.html │ ├── HeroContext.html │ ├── HeroDebugPlugin.html │ ├── HeroExtension.html │ ├── HeroModifier.html │ ├── HeroPlugin.html │ ├── HeroTransition.html │ ├── Lexer.html │ ├── NumberNode.html │ ├── Parser.html │ ├── PrototypeNode.html │ └── VariableNode.html ├── Classes.html ├── Enums/ │ ├── CascadeDirection.html │ ├── HeroCoordinateSpace.html │ ├── HeroDefaultAnimationType/ │ │ ├── Direction.html │ │ └── Strategy.html │ ├── HeroDefaultAnimationType.html │ ├── HeroSnapshotType.html │ ├── HeroTransitionState.html │ ├── HeroViewOrderingStrategy.html │ ├── ParseError.html │ └── Token.html ├── Enums.html ├── Extensions/ │ ├── CAMediaTimingFunction.html │ ├── CATransform3D.html │ ├── HeroDebugView.html │ ├── String.html │ ├── UINavigationController.html │ ├── UITabBarController.html │ ├── UIView.html │ └── UIViewController.html ├── Extensions.html ├── Functions.html ├── Protocols/ │ ├── HeroAnimator.html │ ├── HeroCompatible.html │ ├── HeroCustomSnapshotView.html │ ├── HeroPreprocessor.html │ ├── HeroProgressUpdateObserver.html │ ├── HeroStringConvertible.html │ ├── HeroTransitionDelegate.html │ └── HeroViewControllerDelegate.html ├── Protocols.html ├── Structs/ │ ├── HeroConditionalContext.html │ └── HeroTargetState.html ├── Structs.html ├── css/ │ ├── highlight.css │ └── jazzy.css ├── docsets/ │ ├── Hero.docset/ │ │ └── Contents/ │ │ ├── Info.plist │ │ └── Resources/ │ │ ├── Documents/ │ │ │ ├── Classes/ │ │ │ │ ├── BinaryOpNode.html │ │ │ │ ├── CallNode.html │ │ │ │ ├── ExprNode.html │ │ │ │ ├── FunctionNode.html │ │ │ │ ├── Hero.html │ │ │ │ ├── HeroContext.html │ │ │ │ ├── HeroDebugPlugin.html │ │ │ │ ├── HeroExtension.html │ │ │ │ ├── HeroModifier.html │ │ │ │ ├── HeroPlugin.html │ │ │ │ ├── HeroTransition.html │ │ │ │ ├── Lexer.html │ │ │ │ ├── NumberNode.html │ │ │ │ ├── Parser.html │ │ │ │ ├── PrototypeNode.html │ │ │ │ └── VariableNode.html │ │ │ ├── Classes.html │ │ │ ├── Enums/ │ │ │ │ ├── CascadeDirection.html │ │ │ │ ├── HeroCoordinateSpace.html │ │ │ │ ├── HeroDefaultAnimationType/ │ │ │ │ │ ├── Direction.html │ │ │ │ │ └── Strategy.html │ │ │ │ ├── HeroDefaultAnimationType.html │ │ │ │ ├── HeroSnapshotType.html │ │ │ │ ├── HeroTransitionState.html │ │ │ │ ├── HeroViewOrderingStrategy.html │ │ │ │ ├── ParseError.html │ │ │ │ └── Token.html │ │ │ ├── Enums.html │ │ │ ├── Extensions/ │ │ │ │ ├── CAMediaTimingFunction.html │ │ │ │ ├── CATransform3D.html │ │ │ │ ├── HeroDebugView.html │ │ │ │ ├── String.html │ │ │ │ ├── UINavigationController.html │ │ │ │ ├── UITabBarController.html │ │ │ │ ├── UIView.html │ │ │ │ └── UIViewController.html │ │ │ ├── Extensions.html │ │ │ ├── Functions.html │ │ │ ├── Protocols/ │ │ │ │ ├── HeroAnimator.html │ │ │ │ ├── HeroCompatible.html │ │ │ │ ├── HeroCustomSnapshotView.html │ │ │ │ ├── HeroPreprocessor.html │ │ │ │ ├── HeroProgressUpdateObserver.html │ │ │ │ ├── HeroStringConvertible.html │ │ │ │ ├── HeroTransitionDelegate.html │ │ │ │ └── HeroViewControllerDelegate.html │ │ │ ├── Protocols.html │ │ │ ├── Structs/ │ │ │ │ ├── HeroConditionalContext.html │ │ │ │ └── HeroTargetState.html │ │ │ ├── Structs.html │ │ │ ├── css/ │ │ │ │ ├── highlight.css │ │ │ │ └── jazzy.css │ │ │ ├── index.html │ │ │ ├── js/ │ │ │ │ ├── jazzy.js │ │ │ │ ├── jazzy.search.js │ │ │ │ └── typeahead.jquery.js │ │ │ └── search.json │ │ └── docSet.dsidx │ └── Hero.tgz ├── index.html ├── js/ │ ├── jazzy.js │ ├── jazzy.search.js │ └── typeahead.jquery.js ├── search.json └── undocumented.json