React Native Modalfy
v2.x
v2.x
  • Getting started
  • Installation
  • Guides
    • Creating a stack
    • Opening & closing
    • Passing params
    • Type checking with TypeScript
    • Subscribing to events
    • Using outside React
    • Upgrading from v1.x
  • API Reference
    • Types
      • ModalStackConfig
      • ModalOptions
      • ModalProp
      • ModalComponentProp
      • ModalComponentWithOptions
    • ModalProvider
    • createModalStack
    • useModal
    • withModal
    • modalfy
  • Blog
    • Announcing Modalfy v2
    • Stacks on stacks in React Native
    • Introducing a Modal Citizen
  • Others
    • Help
    • Contributing
    • Changelog
    • Github
Powered by GitBook
On this page

Was this helpful?

  1. API Reference

createModalStack

PreviousModalProviderNextuseModal

Last updated 4 years ago

Was this helpful?

createModalStack() is the function that's going to turn your configuration into a usable modal stack.

const createModalStack = (
  config: ModalStackConfig,
  customDefaultOptions?: ModalOptions
) => ModalStack

Example:

./App.js
import { Dimensions } from 'react-native'
import { PokedexEntryModal } from './modals/PokedexEntryModal'

const { height } = Dimensions.get('screen')

createModalStack({ PokedexEntryModal }, {
  animateInConfig: {
    easing: Easing.inOut(Easing.exp),
    duration: 900,
  },
  animateOutConfig: {
    easing: Easing.inOut(Easing.exp),
    duration: 900,
  },
  backdropOpacity: 0.9,
  backropColor: 'deeppink',
  backBehavior: 'clear',
  position: 'bottom',
  containerStyle: {
    backgroundColor: 'rebeccapurple',
  },
  transitionOptions: animatedValue => ({
    transform: [
      {
        translateY: animatedValue.interpolate({
          inputRange: [0, 1, 2],
          outputRange: [height, 0, height],
        }),
      },
      {
        scale: animatedValue.interpolate({
          inputRange: [0, 1, 2],
          outputRange: [0, 1, 0.9],
        }),
      },
    ],
  }),
},
)

Argument: config - Modal stack configuration.

Argument: customDefaultOptions - Configuration options to apply to all modals by default (optional).

Returns: Modal stack configuration object to provide to 's stack prop.

ModalStackConfig
ModalOptions
<ModalProvider>
https://github.com/colorfy-software/react-native-modalfy/blob/master/lib/createModalStack.ts