1.0.3 • Published 11 months ago

react-toastic v1.0.3

Weekly downloads
-
License
ISC
Repository
github
Last release
11 months ago

React-toastic

The library is designed for personal use. But if you install it I would be very pleased.

Preview

react-toastic

Installation

npm i react-toastic
yarn add react-toastic

Use

import {ToastContainer, toast} from 'react-toastic';

function App() {

    const example = () => toast("Your text");

    return (
        <div>
            <button onClick={example}>click me</button>
            <ToastContainer/>
        </div>
    );
}
//Toast calling options

toast("Your text")
toast.error("Your text")
toast.info("Your text")
toast.success("Your text")
toast.warning("Your text")

You can change the toast as you like, below is the full api table:

toast('Your text', {
    type: 'success',
    position: 'bottom-right',
    timeout: '8000',
    animateIcon: true,
    icon: <YourIcon/>,
    style: {
        toast: {
            background: '#98789',
            color: '#551515',
            boxShadow: '0px 2px 4px rgba(0, 0, 0, 0.15)'
            //....
        },
        progress: {
            background: '#98789',
        },
        close: {
            background: '#98789'
        }
    }
    //...
});

Configure the default settings for all toast messages by passing the ToastContainer config

// index.tsx
import {ToastContainer, ConfigToastType} from 'react-toastic';

const config: ConfigToastType = {
    position: 'bottom-center',
    timeout: '8000',
    pauseOnHover: true,
    style: {
        //theme
        light: {
            //type
            error: {
                toast: {
                    background: '#98789',
                    color: '#551515',
                    borderRadius: '12px'
                    //....
                }
            }
        }
    }
    //...
}

<ToastContainer config={config}/>

API

ParameterTypeDescriptionDefault
positionstringThe toast position is set. Available options are 'top-right', 'top-left', 'top-center','bottom-right', 'bottom-left', 'bottom-center''top-right'
themestringThe color theme of the toast is defined. Available options are 'light', 'dark', 'colored''light'
typestringAvailable options are 'info', 'success', 'warning', 'error''default'
transitionbooleanDetermines which animation will be used.Available options are 'skew' , 'zoom' , 'slide' , 'drop''slide'
titlestringThe header for toast is set.false
timeoutnumber undefinedDefine toast time. If you specify 0 or undefined, toast will close only on click and also no progress bar will appear5000
iconJSX.ElementAbility to insert your own iconundefined
hiddenIconbooleanhides the iconfalse
animateIconbooleanAdds animation to icons. Works only with native iconsfalse
closeOnClickbooleanCloses toast on clickfalse
pauseOnHoverbooleanStops progress animation when hoveringfalse
style------Consider belowundefined

Let's look at style separately

//Structure

type StyleT = {
    toast?: CSSProperties;
    close?: {
        background: CSSProperties.background;
    };
    progress?: CSSProperties;
}

If you want to change the styles for each theme and each type in config, you need:

//Structure

type ConfigStyleT = {
    light?: {
        info?: StyleT; 
        success?: StyleT; 
        warning?: StyleT; 
        error?: StyleT; 
        default?: StyleT
    },
    dark?: {},
    colored?: {}
}

Thank you so much for using the library ❤️. If you have any suggestions or comments ✉️, I'm always willing to work on them

This project has an MIT License.

1.0.3

11 months ago

1.0.2

12 months ago

1.0.1

1 year ago

0.0.2

1 year ago

0.0.1

1 year ago

0.0.0

1 year ago