Membership JS API
Square Enix Membership is a service that provides authentication for users of Square Enix products. This library makes it easy to interact with.
#### Example usage
# First install in the project
yarn add @square-enix-west/membership-js-api
// Import from the project javascript
import Membership, { User } from '@square-enix-west/membership-js-api'
// Initialise the API
Membership.init({
clientId: 'your-apps-id',
service: 'membership' // (or "test-membership" if during development)
}).then(() => {
if (User.isLoggedIn) {
alert(`Hi, ${User.name}`)
}
})
Full documentation can be found here
Examples can be found in the examples directory
Contributing
### Setting Up The Project
# Clone the repo
git clone git@bitbucket.org:squareenixoid/onlinedev-membership-js-api.git
cd onlinedev-membership-js-api
# Switch to the right Node version (v7)
# If using NVM
nvm install && nvm use
# Install dependencies
npm install
Working On The Code
Testing
Any changes/feature additions should use TDD. The project uses jest. Running npm run test
will start watching the project and re-run tests on changes
Including In Local Projects During Development
To include a local membership-js-api in a project while working on it, you can use npm link
cd ~/Projects/onlinedev-membership-js-api
# Make the npm package available to link from other projects
npm link
# Watch and rebuild on any changes
npm run develop
# In another terminal
cd ~/Project/an-app-using-the-api
npm link @square-enix-west/membership-js-api
After invoking those commands, any javascript files requiring/importing @square-enix-west/membership-js-api
should get the most up to date version, as it is in your local repo
Working On The Documentation
Running npm run docs:watch
will start a watch task and a local server to view the docs. Go to http://localhost:4000 to view them. Any changes to the documentation should reflect instantly-ish
Releasing
The release process is fairly manual
Publishing To NPM
- Bump the version in package.json. Semver it properly though yea
- Run
npm run build
- Run
npm publish
You can use the irish-pub npm package to perform a "dry run"
Deploying Updated Documentation
Pushing to master should result in the documentation being rebuilt and deployed to https://onlinedev-membership-js-api-prod.stage.sqexeu.com/quick-start-guide.html
Any problems speak to Malet. He'll probably sort you out.
Project goals
Provide a simple library for
The API should
The library should