Package Exports
- react-plaid
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (react-plaid) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
React Plaid
React plaid component that has no DOM. Pass in the open prop to open.
Unforunately there is no close method on Plaid Link.
This plaid component depends on a global Plaid existing (from plaid-link script tag on the page). This may change in the future.
Be sure to handle changing open back to false with the onExit function otherwise you will not be able to re-open.
Important
This requires you have <script src="https://cdn.plaid.com/link/v2/stable/link-initialize.js"> on the page before your React executes.
Example Renderings:
render() {
  <ReactPlaid open={this.state.open} onExit={() => this.setState({open: false})}>
    <div>
      Other things here.
    </div>
  </ReactPlaid>
}or
render() {
  <div>
    Other DOM elements here.
    <ReactPlaid open={this.state.open} onExit={() => this.setState({open: false})} />
  </div>
}Full Example
import ReactPlaid, { DEV_ENV, PROD_ENV, CONNECT_PRODUCT } from "react-plaid";
class MyPlaidStuff extends Component {
  constructor(props, context) {
    super(props, context);
    this.state = {
      open: false,
      plaidData: [],
    }
  }
  render() {
    <div>
      <button onClick={() => this.setState({ open: true})}>Open Plaid</button>
      {
        this.state.plaidData.map(({ institution }) => <div>{institution.name} - {institution.type}</div>)
      }
      <ReactPlaid 
        clientName="Client Name"
        product={CONNECT_PRODUCT}
        apiKey="123"
        env={DEV_ENV}
        open={this.state.open} 
        onSuccess={(token, metaData) => this.setState({plaidData: metaData})}
        onExit={() => this.setState({open: false})} 
      />
    </div>
  }
}