Git Product home page Git Product logo

react-chronos's Introduction

React Chronos

⛓ React chronology component providing dual chronological timelines.

Preview of dual chronological timelines

Installation

npm install react-chronos --save

Usage

import Chronology from 'react-chronos';

<Chronology type="vertical">
    {events.map(event => (
        <div class="marker"></div>
        <div class="event">{ event.details }</div>
    ))}
</Chronology>

Documentation

Chronology

The Chronology component is the main and only component provided by react-chronos. It accepts the following properties:

type

The type of chronology and timeline to render. It can one of the following values: horizontal or vertical. If not specified, the default will be vertical.

eventSelector

The query selector to use to find events inside the chronology.

markerSelector

The query selector to use to find markers inside the chronology.

markerClassNames

The object that defines the class names to be applied to markers. The shape of the object and its default values is as follow:

{
    left: 'marker-left',
    right: 'marker-right',
    top: 'marker-top',
    bottom: 'marker-bottom',
}

For a vertical chronology the values for left and right will be applied to markers where its related event was positioned to any of those sides. The same behavior goes for horizontal chronology using top and bottom.

markerStyles

The object that defines the inline styles to be applied to markers. The shape of the object and its default values is as follow:

{
    left: {},
    right: {},
    top: {},
    bottom: {},
}

For a vertical chronology the values for left and right will be applied to markers where its related event was positioned to any of those sides. The same behavior goes for horizontal chronology using top and bottom.

Development

TBD

# For quick development and hot reload...
npm run storybook

# For building the distribution package...
npm start

Tests

TBD

npm test

react-chronos's People

Contributors

rmariuzzo avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar

react-chronos's Issues

Unable to display animation

I am only seeing plain text being outputted in the browser. Would really appreciate it if you could please point out what I am missing, here's a snapshot :

image

Unknown Props being sent to native element

While drawing a chronology, its passing down to div a few props that this element can't handle, leading to this warning:

Warning: Unknown props `eventSelector`, `markerSelector`, `eventClassNames`, `markerClassNames` on <div> tag. Remove these props from the element

This is happening here https://github.com/rmariuzzo/react-chronos/blob/master/src/Chronology.js#L182l

Have not checked other places, since this warning was first mentioned into an Unleash PR, here.

Basically we could have a simple whitelist mechanism in place to only allow a few known props to be sent to div.

Cannot read property 'oneOf' of undefined

Hello there,

I'm trying to use this component with a react 16.2 project. When I import it I get the error:
Cannot read property 'oneOf' of undefined

It appears it is because proptypes is not defined.

Any help would be appriciated

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.