UNPKG

4.7 kBSource Map (JSON)View Raw
1{"version":3,"sources":["DashboardModal.js"],"names":["React","require","PropTypes","DashboardPlugin","basePropTypes","dashboard","h","createElement","DashboardModal","componentDidMount","installPlugin","componentDidUpdate","prevProps","uppy","props","uninstallPlugin","open","plugin","closeModal","openModal","componentWillUnmount","options","id","onRequestCloseModal","onRequestClose","target","container","use","getPlugin","removePlugin","render","ref","Component","propTypes","window","instanceOf","HTMLElement","any","bool","func","closeModalOnClickOutside","disablePageScrollWhenModalOpen","defaultProps","module","exports"],"mappings":"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","sourcesContent":["const React = require('react')\nconst PropTypes = require('prop-types')\nconst DashboardPlugin = require('@uppy/dashboard')\nconst basePropTypes = require('./propTypes').dashboard\n\nconst h = React.createElement\n\n/**\n * React Component that renders a Dashboard for an Uppy instance in a Modal\n * dialog. Visibility of the Modal is toggled using the `open` prop.\n */\n\nclass DashboardModal extends React.Component {\n componentDidMount () {\n this.installPlugin()\n }\n\n componentDidUpdate (prevProps) {\n if (prevProps.uppy !== this.props.uppy) {\n this.uninstallPlugin(prevProps)\n this.installPlugin()\n }\n if (prevProps.open && !this.props.open) {\n this.plugin.closeModal()\n } else if (!prevProps.open && this.props.open) {\n this.plugin.openModal()\n }\n }\n\n componentWillUnmount () {\n this.uninstallPlugin()\n }\n\n installPlugin () {\n const uppy = this.props.uppy\n const options = {\n id: 'react:DashboardModal',\n ...this.props,\n onRequestCloseModal: this.props.onRequestClose,\n }\n\n if (!options.target) {\n options.target = this.container\n }\n\n delete options.uppy\n uppy.use(DashboardPlugin, options)\n\n this.plugin = uppy.getPlugin(options.id)\n if (this.props.open) {\n this.plugin.openModal()\n }\n }\n\n uninstallPlugin (props = this.props) {\n const uppy = props.uppy\n\n uppy.removePlugin(this.plugin)\n }\n\n render () {\n return h('div', {\n ref: (container) => {\n this.container = container\n },\n })\n }\n}\n\nDashboardModal.propTypes = { // Only check this prop type in the browser.\n target: typeof window !== 'undefined' ? PropTypes.instanceOf(window.HTMLElement) : PropTypes.any,\n open: PropTypes.bool,\n onRequestClose: PropTypes.func,\n closeModalOnClickOutside: PropTypes.bool,\n disablePageScrollWhenModalOpen: PropTypes.bool,\n ...basePropTypes,\n}\n\nDashboardModal.defaultProps = {\n}\n\nmodule.exports = DashboardModal\n"]}
\No newline at end of file