Ghost/ghost/members-gateway-protocol/README.md

59 lines
1.2 KiB
Markdown
Raw Normal View History

# Members Gateway Protocol
This package provides a low-level wrapper around the gateway iframe, which is used to communicate with the members api.
## Install
`npm install @tryghost/members-gateway-protocol --save`
or
`yarn add @tryghost/members-gateway-protocol`
## Usage
```js
const gatewayProtocol = require('@tryghost/members-gateway-protocol');
const gatewayFrame = document.querySelector('iframe');
const { call, listen } = gatewayProtocol(gatewayFrame);
// Add listener for gateway events - limited to only once
// returns boolean indicating whether listener was added
listen(function ({event, payload}) {
// Called for every event emitted from the gateway
});
// Call method in gateway
call('getToken', {audience: 'whatever'}, function (err, result) {
// Called once when gateway responds
});
```
## Develop
This is a mono repository, managed with [lerna](https://lernajs.io/).
Follow the instructions for the top-level repo.
1. `git clone` this repo & `cd` into it as usual
2. Run `yarn` to install top-level dependencies.
## Run
- `yarn dev`
## Test
- `yarn lint` run just eslint
- `yarn test` run lint and tests
# Copyright & License
Copyright (c) 2019 Ghost Foundation - Released under the [MIT license](LICENSE).