1.3.0 • Published 4 years ago

react-dismissible v1.3.0

Weekly downloads
3,025
License
Apache-2.0
Repository
github
Last release
4 years ago

Make your components dismissible!

Usage

Example 1: The useDismissible hook

import { useDismissible } from 'react-dismissible'

import { SomeModal } from './some-modal' // not real

function ComfirmButton(props) {
  let [isVisible, setModalVisibiility] = React.useState(false)

  const dismissible = useDismissible({
    onDismiss: () => setModalVisibility(false)
    click: true,  // call onDismiss if clicking outside of this modal
    escape: true, // call onDismiss if the user presses escape
  })

  return (
    <>
      <button {...props} onClick={() => setModalVisiblity(true)} />
      {isVisible && (
        <SomeModal ref={dismissible}>
          <button onClick={() => setModalVisiblity(false)}>Cancel</button>
          <button onClick={props.onClick}>Do it!</button>
        </SomeModal>
      )}
    </>
  )
}

Example 2: The Dismissible component

import { Dismissible } from 'react-dismissible'

import { SomeModal } from './some-modal' // not real

function ComfirmButton(props) {
  let [isVisible, setModalVisibiility] = React.useState(false)

  return (
    <>
      <button {...props} onClick={() => setModalVisiblity(true)} />
      {isVisible && (
        <SomeModal>
          <Dismissible
            click // call onDismiss if clicking outside of this modal
            escape // call onDismiss if the user presses escape
            onDismiss={() => {
              setModalVisibility(false)
            }}
          >
            <button onClick={() => setModalVisiblity(false)}>Cancel</button>
            <button onClick={props.onClick}>Do it!</button>
          </Dismissible>
        </SomeModal>
      )}
    </>
  )
}

Dismissible Props

interface DismissibleProps {
  onDismiss: Function
  click?: boolean
  escape?: boolean
  disabled?: boolean
  document?: Document
  allowClickPropagation?: boolean
}
1.3.0

4 years ago

1.3.0-alpha.0

4 years ago

1.2.0

4 years ago

1.1.5

4 years ago

1.1.5-alpha.0

4 years ago

1.1.4

4 years ago

1.1.4-alpha.1

4 years ago

1.1.4-alpha.0

4 years ago

1.1.3

4 years ago

1.1.3-alpha.0

4 years ago

1.1.3-canary.22

4 years ago

1.1.2

4 years ago

1.1.2-alpha.1

4 years ago

1.1.2-alpha.0

4 years ago

1.1.1

4 years ago

1.1.1-canary.1

4 years ago

1.1.0

4 years ago

1.1.0-alpha.1

4 years ago

1.1.0-canary.15

4 years ago

1.1.0-alpha.0

4 years ago

1.0.19-canary.23

4 years ago

1.0.19-canary.19

4 years ago

1.0.18

4 years ago

1.0.18-alpha.1

4 years ago

1.0.18-canary.13

4 years ago

1.0.18-alpha.0

4 years ago

1.0.18-canary.6

4 years ago

1.0.17

4 years ago

1.0.17-alpha.0

4 years ago

1.0.16

4 years ago

1.0.16-alpha.1

4 years ago

1.0.15

5 years ago

1.0.14-alpha.0

5 years ago

1.0.13

5 years ago

1.0.12

5 years ago

1.0.12-alpha.0

5 years ago

1.0.6-canary.163

5 years ago

1.0.11

5 years ago

1.0.11-alpha.1

5 years ago

1.0.11-alpha.0

5 years ago

1.0.10

5 years ago

1.0.9

5 years ago

1.0.8

5 years ago

1.0.8-alpha.2

5 years ago

1.0.8-alpha.1

5 years ago

1.0.8-alpha.0

5 years ago

1.0.7

5 years ago

1.0.7-alpha.0

5 years ago

1.0.6

5 years ago

1.0.6-alpha.0

5 years ago

1.0.5

5 years ago

1.0.4

5 years ago

1.0.3

5 years ago

1.0.2

5 years ago

1.0.1

5 years ago