@goparrot/square-connect-plus v1.8.0
Square Connect Plus
Square Connect Plus is a Typescript library which extends the official Square Node.js SDK library with additional functionality. The library does not modify request and response payload.
Installation
$ npm i @goparrot/square-connect-plus square@17.0.0
Usage
Simple example
import { SquareClient } from '@goparrot/square-connect-plus';
import { ListLocationsResponse } from 'square';
const accessToken: string = `${process.env.SQUARE_ACCESS_TOKEN}`;
const squareClient: SquareClient = new SquareClient(accessToken);
(async () => {
try {
const listLocationsResponse: ListLocationsResponse = await squareClient.getLocationsApi().listLocations();
if (listLocationsResponse.errors.length) {
throw new Error(`cant fetch locations`);
}
console.info('locations', listLocationsResponse.locations);
} catch (error) {
console.error(error);
// or error as string with stack + request and response payload
// console.error(`${error.stack}\npayload: ${error.toString()}`);
}
})();
Advanced example
import { SquareClient, exponentialDelay, retryCondition } from '@goparrot/square-connect-plus';
const accessToken: string = `${process.env.SQUARE_ACCESS_TOKEN}`;
const squareClient: SquareClient = new SquareClient(accessToken, {
retry: {
maxRetries: 10,
},
configuration: {
timeout: 60_000,
},
logger: console,
});
Available Options
retry
Options
Name | Type | Default | Description |
---|---|---|---|
maxRetries | Number | 6 | The number of times to retry before failing. |
retryCondition | Function | retryCondition | A callback to further control if a request should be retried. By default, the built-in retryCondition function is used. |
retryDelay | Function | exponentialDelay | A callback to further control the delay between retried requests. By default, the built-in exponentialDelay function is used (Exponential Backoff). |
originClient
Options
A set of possible settings for the original library.
Name | Type | Default | Description |
---|---|---|---|
customUrl | String | https://connect.squareup.com | The custom URL against which to resolve every API call's (relative) path. |
additionalHeaders | Object | {} | Record<string, string> |
timeout | Number | 60_000 | The default HTTP timeout for all API calls. |
squareVersion | String | 2021-12-15 | The default square api version for all API calls. |
environment | Enum | Environment.Production | The default square enviroment for all API calls. |
accessToken | String | '' | Scoped access token. |
logger
Option
By default, the built-in NullLogger
class is used.
You can use any logger that fits the built-in ILogger
interface
Versioning
Square Connect Plus follows Semantic Versioning.
Contributing
See CONTRIBUTING
file.
Unit Tests
In order to run the test suite, install the development dependencies:
$ npm i
Then, run the following command:
$ npm run coverage
License
Square Connect Plus is MIT licensed.
11 months ago
12 months 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
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
4 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
4 years ago
4 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