@pod-point/api3-js v6.4.2
Pod Point Network API SDK (JS)
A JavaScript wrapper for the Pod Point Network API (v3 onward) built with TypeScript.
Installation
To install this package, run the following command:
npm install --save @pod-point/api3-js
Usage
This package contains a client, repositories, services, models and factories.
Client
First, you will want to create a new client instance.
// path/to/client.js
import { Client } from '@pod-point/api3-js';
const client = new Client(accessKey, secretKey, userAgent, domain, prefix);
Repositories & Services
Next, you can start creating and using repository and service instances with the client you have just created.
// path/to/anywhere.js
import { UserRepository } from '@pod-point/api3-js';
import client from 'path/to/client';
const userRepository = new UserRepository(client);
Models & Factories
Lastly, you can use the model factories to create:
- fake model instances
- fake objects representing a models attributes
- fake objects representing a models payload
import { UserFactory } from '@pod-point/api3-js';
const userFactory = new UserFactory();
const fakeUserPayload = userFactory.payload();
const fakeUserAttributes = userFactory.attributes();
const fakeUser = userFactory.model();
Overrides can be passed into all of these methods, and there is also a method available to generate any of these objects in a pre-defined "state".
This is styled on the Laravel factories.
Example:
import { ChargeFactory } from '@pod-point/api3-js';
const chargeFactory = new ChargeFactory();
const charge = chargeFactory.states(['single']).model();
In the example above we have applied the "single" state before generating the model, this basically applies some pre-defined overrides to the fake payload/attributes.
Development
Prerequisites
- Node
12.x
- runnvm use
to use the required version - TypeScript
- Version:
v3.9.10
- Javascript Support: >=
es2020
- Compiler Target:
es2015
(Higher level features will be downleveled)
- Version:
Building with TypeScript
npm run build
Testing
This package uses jest. To run the test suites for this project, run the following command:
npm run test
Releases
This package is distributed via NPM and published automatically by Travis when creating a tagged commit.
Once your PR has been opened, run the following commands to update the package version and create a new release/tag. Now, your changes will accessible by any service before merging to master.
npm version <major|minor|patch|prerelease>
git push && git push --tags
"Whoops, I already merged..."
If you forget to do this before merging, this is not a problem, just
- Create a new branch from master
- Run these same commands above
- Open and merge a PR back to
master
so that thepackage.json
file is updated.
Travis will run on this new branch and publish the package to NPM.
Travel shouldn't damage the earth 🌍
Made with ❤️ at Pod Point
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
2 years ago
2 years ago
2 years ago
2 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
3 years ago
3 years ago
3 years ago
3 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
4 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
5 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
6 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
7 years ago
8 years ago
8 years ago
8 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
9 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago
10 years ago