Socket
Socket
Sign inDemoInstall

@makabay/customizedmodal

Package Overview
Dependencies
6
Maintainers
1
Versions
24
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    @makabay/customizedmodal

Enjoy a simple customized modal package, ease of use.


Version published
Weekly downloads
2
decreased by-92.31%
Maintainers
1
Created
Weekly downloads
 

Readme

Source

Hello, this is a simple modal component who can be customized. (A style css is already apply on the component but you can customized the text notification and the button text)

Quick start : 1 - If you want to use the library package, you need to install it with the npm command : npm i @makabay/customizedmodal

Otherwise clone the project on github

2 - Import the component :

// On a Npm library package use case
import { CustomizedModal } from '@makabay/customizedmodal'

// On github clone use case (from ./example/App.tsx)
import CustomizedModal from '../lib/components/CustomizedModal';

3 - Define a state who will be shared with the component initialize with boolean (false).

const [modal, setModal] = useState(false);

4 - Define the props component value

const closeButtonTextData = {
    closeButtonTextValue: 'Close',
    textNotificationValue: 'Notification message',
    confirmationTextValue: 'Understood'
};

5 - Define the component with his props :

Example :
<CustomizedModal
    closeButtonText={closeButtonTextData.closeButtonTextValue} 
    textNotification={closeButtonTextData.textNotificationValue} 
    confirmationText={closeButtonTextData.confirmationTextValue} 
    modalState={modal}
    changeModalState={setModal}
/>

I will show you an example of use case comented.

// We will need to share the parent state to our "CustomizedModal" component
import { useState } from "react";

// Components
// On a Npm library package use case
import { CustomizedModal } from '@makabay/customizedmodal'

// On github clone use case (from ./example/App.tsx)
// import CustomizedModal from '../lib/components/CustomizedModal';

// You can replace this App component by the component where you want placed the modal
export default function App () {
    // Here we defined a booleen state hook
    const [modal, setModal] = useState(false);

    // This is the function who will open the modal
    function change () {
        setModal(!modal);
    }

    // This is for CustomizedModal (props) component, it will be your custom text button or message
    const closeButtonTextData = {
        closeButtonTextValue: 'Close',
        textNotificationValue: 'Notification message',
        confirmationTextValue: 'Understood'
    };

    return (
        <>
            {/* A button (example) who will serve of trigger for open modal */}
            <button onClick={change}>
                Open modal {modal} {/* This is just for see the modal state */}
            </button>

            {/* 
            - This is the component -
            He's in absolute position, it's better if it placed in top of the other components on the page
            */}

            {/* 
            - Explaination of the props component -
            closeButtonText={} : will be the text on the close button - string/number
            textNotification={} : will be the modal text message - string/number
            confirmationText={} : will be the text on the confirm button - string/number
            modalState={} : will be the state shared between your component (parent) and the CustomizedModal component (children) - hook (useState) the state initialize with boolean
            changeModalState={} : will be the state method serve to change the state value - hook (useState) the setState function
            */}
            <CustomizedModal
                closeButtonText={closeButtonTextData.closeButtonTextValue} 
                textNotification={closeButtonTextData.textNotificationValue} 
                confirmationText={closeButtonTextData.confirmationTextValue} 
                modalState={modal}
                changeModalState={setModal}
            />
        </>
    );
}

Keywords

FAQs

Last updated on 19 Feb 2024

Did you know?

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc