react-native-modalfy
Version:
Modal citizen of React Native
37 lines (32 loc) • 899 B
JavaScript
import { isValidElementType } from 'react-is';
export default function (modalName, modalComponent) {
if ('modal' in modalComponent && !isValidElementType(modalComponent.modal) || 'modal' in modalComponent === false && !isValidElementType(modalComponent)) {
throw new Error(`The component for modal '${modalName}' must be a valid React component. For instance:
import MyModal from './MyModal';
...
${modalName}: MyModal,
}
You can also use an object:
...
${modalName}: {
modal: MyModal
},
}`);
}
let options;
let modalObj;
if ('modal' in modalComponent) {
const {
modal,
...rest
} = modalComponent;
modalObj = modal;
options = rest;
}
return {
component: modalObj || modalComponent,
name: modalName,
options
};
}
//# sourceMappingURL=getStackItemData.js.map