New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

@ultraq/react-dynamic-router

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@ultraq/react-dynamic-router

A combination router and animation component for dynamic class names based on which way the user is navigating through your application routes

latest
Source
npmnpm
Version
1.1.0
Version published
Maintainers
1
Created
Source

react-dynamic-router

Build Status npm Bundlephobia minified size

Control the animation to apply to a React route transition. This component is a combination router and animation component for dynamic class names based on which way the user is navigating through your application routes.

Installation

npm install @ultraq/react-dynamic-router

Usage

<DynamicRouter> combines react-router with react-transition-group to allow you to add your own clases to page routes for the purpose of performing animations between one route and another.

Normally with those components you can only specify a single animation class, applied no matter which 'direction' your users are going through your app. This component takes a route class name generator function that, given information about the to/from routes, can return a different class name, allowing you to perform reverse animations so that the motions between routes are coherent.

import DynamicRouter from '@ultraq/react-dynamic-router';

function generateRouteClassName(nextRoute, lastRoute) {
  if (lastRoute === '/step1' && nextRoute === '/step2') {
  	return 'animate-forward';
  }
  else if (lastRoute === '/step2' && nextRoute === '/step1') {
  	return 'animate-backward';
  }
  return 'animate-forward'; // Some kind of default
}

<DynamicRouter generateRouteClassName={generateRouteClassName}>
  {transitionClassName => (
    <Switch location={location}>
      <Route path="/step1">
        <div className={transitionClassName}>This is step 1</div>
      </Route>
      <Route path="/step2">
        <div className={transitionClassName}>This is step 2</div>
      </Route>
    </Switch>
  )}
</DynamicRouter>

Props

FAQs

Package last updated on 06 Oct 2021

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts