bankson-js-mb 1.0.6 → 2.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.vscode/settings.json +3 -0
- package/eslint.config.js +12 -0
- package/lib/baseSubClient.d.ts +6 -0
- package/lib/baseSubClient.d.ts.map +1 -0
- package/lib/baseSubClient.js +7 -0
- package/lib/baseSubClient.js.map +1 -0
- package/lib/client.d.ts +58 -0
- package/lib/client.d.ts.map +1 -0
- package/lib/client.js +146 -0
- package/lib/client.js.map +1 -0
- package/lib/ext/apikeys.d.ts +7 -0
- package/lib/ext/apikeys.d.ts.map +1 -0
- package/lib/ext/apikeys.js +13 -0
- package/lib/ext/apikeys.js.map +1 -0
- package/lib/ext/applications.d.ts +6 -0
- package/lib/ext/applications.d.ts.map +1 -0
- package/lib/ext/applications.js +10 -0
- package/lib/ext/applications.js.map +1 -0
- package/lib/ext/bank-account-statements.d.ts +10 -0
- package/lib/ext/bank-account-statements.d.ts.map +1 -0
- package/lib/ext/bank-account-statements.js +34 -0
- package/lib/ext/bank-account-statements.js.map +1 -0
- package/lib/ext/bank-accounts.d.ts +16 -0
- package/lib/ext/bank-accounts.d.ts.map +1 -0
- package/lib/ext/bank-accounts.js +14 -0
- package/lib/ext/bank-accounts.js.map +1 -0
- package/lib/ext/bank-certificates.d.ts +9 -0
- package/lib/ext/bank-certificates.d.ts.map +1 -0
- package/lib/ext/bank-certificates.js +23 -0
- package/lib/ext/bank-certificates.js.map +1 -0
- package/lib/ext/calls.d.ts +6 -0
- package/lib/ext/calls.d.ts.map +1 -0
- package/lib/ext/calls.js +7 -0
- package/lib/ext/calls.js.map +1 -0
- package/lib/ext/inbound-payments.d.ts +17 -0
- package/lib/ext/inbound-payments.d.ts.map +1 -0
- package/lib/ext/inbound-payments.js +14 -0
- package/lib/ext/inbound-payments.js.map +1 -0
- package/lib/ext/outbound-payments.d.ts +24 -0
- package/lib/ext/outbound-payments.d.ts.map +1 -0
- package/lib/ext/outbound-payments.js +17 -0
- package/lib/ext/outbound-payments.js.map +1 -0
- package/lib/ext/webhooks.d.ts +7 -0
- package/lib/ext/webhooks.d.ts.map +1 -0
- package/lib/ext/webhooks.js +13 -0
- package/lib/ext/webhooks.js.map +1 -0
- package/lib/index.d.ts +3 -0
- package/lib/index.d.ts.map +1 -0
- package/lib/index.js +4 -0
- package/lib/index.js.map +1 -0
- package/lib/tsconfig.tsbuildinfo +1 -0
- package/lib/types.d.ts +111 -0
- package/lib/types.d.ts.map +1 -0
- package/lib/types.js +2 -0
- package/lib/types.js.map +1 -0
- package/package.json +13 -13
- package/src/baseSubClient.ts +8 -0
- package/src/client.ts +172 -0
- package/src/ext/apikeys.js +2 -16
- package/src/ext/applications.js +2 -12
- package/src/ext/bank-account-statements.ts +39 -0
- package/src/ext/bank-accounts.ts +27 -0
- package/src/ext/bank-certificates.js +2 -27
- package/src/ext/calls.ts +8 -0
- package/src/ext/inbound-payments.ts +27 -0
- package/src/ext/outbound-payments.ts +38 -0
- package/src/ext/webhooks.js +2 -12
- package/src/types.ts +116 -0
- package/tsconfig.json +20 -0
- package/.eslintrc.cjs +0 -27
- package/bankson-js-mb-1.0.6.tgz +0 -0
- package/src/client.js +0 -128
- package/src/ext/bank-account-statements.js +0 -77
- package/src/ext/bank-accounts.js +0 -27
- package/src/ext/calls.js +0 -13
- package/src/ext/inbound-payments.js +0 -40
- package/src/ext/outbound-payments.js +0 -31
- /package/src/{index.js → index.ts} +0 -0
package/eslint.config.js
ADDED
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { defineConfig } from 'eslint/config'
|
|
2
|
+
import eslintConfigMadboosterNodeApp from 'eslint-config-madbooster-node-app'
|
|
3
|
+
|
|
4
|
+
export default defineConfig([
|
|
5
|
+
{
|
|
6
|
+
ignores: ['lib'],
|
|
7
|
+
},
|
|
8
|
+
{
|
|
9
|
+
files: ['src/**/*.{ts,js}'],
|
|
10
|
+
extends: eslintConfigMadboosterNodeApp(import.meta.dirname),
|
|
11
|
+
},
|
|
12
|
+
])
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseSubClient.d.ts","sourceRoot":"","sources":["../src/baseSubClient.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,MAAM,aAAa,CAAA;AAErC,MAAM,CAAC,OAAO,OAAO,aAAa;IAChC,SAAS,CAAC,IAAI,EAAE,MAAM,CAAA;gBACV,IAAI,EAAE,MAAM;CAGzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"baseSubClient.js","sourceRoot":"","sources":["../src/baseSubClient.ts"],"names":[],"mappings":"AAEA,MAAM,CAAC,OAAO,OAAO,aAAa;IACtB,IAAI,CAAQ;IACtB,YAAY,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;CACF","sourcesContent":["import type Client from './client.js'\n\nexport default class BaseSubClient {\n protected base: Client\n constructor(base: Client) {\n this.base = base\n }\n}\n"]}
|
package/lib/client.d.ts
ADDED
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
import ApiKeys from './ext/apikeys.js';
|
|
2
|
+
import Applications from './ext/applications.js';
|
|
3
|
+
import BankAccountStatements from './ext/bank-account-statements.js';
|
|
4
|
+
import BankAccounts from './ext/bank-accounts.js';
|
|
5
|
+
import Certificates from './ext/bank-certificates.js';
|
|
6
|
+
import Calls from './ext/calls.js';
|
|
7
|
+
import InboundPayments from './ext/inbound-payments.js';
|
|
8
|
+
import Payments from './ext/outbound-payments.js';
|
|
9
|
+
import Webhooks from './ext/webhooks.js';
|
|
10
|
+
interface Opts {
|
|
11
|
+
beforeRequest?: () => Promise<{
|
|
12
|
+
bearerToken?: string;
|
|
13
|
+
test?: boolean;
|
|
14
|
+
}>;
|
|
15
|
+
bearerToken?: string;
|
|
16
|
+
baseUrl?: string;
|
|
17
|
+
test?: boolean;
|
|
18
|
+
privateKey?: string;
|
|
19
|
+
apiKey?: string;
|
|
20
|
+
}
|
|
21
|
+
interface GetOptions {
|
|
22
|
+
headers?: {
|
|
23
|
+
Accept?: string;
|
|
24
|
+
};
|
|
25
|
+
responseType?: string;
|
|
26
|
+
}
|
|
27
|
+
export default class Client {
|
|
28
|
+
private beforeRequest;
|
|
29
|
+
private bearerToken;
|
|
30
|
+
private baseUrl;
|
|
31
|
+
private testMode;
|
|
32
|
+
private privateKey;
|
|
33
|
+
private apiKey;
|
|
34
|
+
applications: Applications;
|
|
35
|
+
webhooks: Webhooks;
|
|
36
|
+
certificates: Certificates;
|
|
37
|
+
calls: Calls;
|
|
38
|
+
bankAccounts: BankAccounts;
|
|
39
|
+
bankAccountStatements: BankAccountStatements;
|
|
40
|
+
outboundPayments: Payments;
|
|
41
|
+
apikeys: ApiKeys;
|
|
42
|
+
inboundPayments: InboundPayments;
|
|
43
|
+
constructor(opts?: Opts);
|
|
44
|
+
me(): Promise<unknown>;
|
|
45
|
+
meV2(): Promise<unknown>;
|
|
46
|
+
authorizationHeader(bearerToken: string | boolean): string;
|
|
47
|
+
headers(additionalHeaders?: {
|
|
48
|
+
Accept?: string;
|
|
49
|
+
}): Promise<import("undici-types").Headers>;
|
|
50
|
+
get<TResponse>(path: string, options?: GetOptions): Promise<TResponse>;
|
|
51
|
+
post<TData, TResponse>(path: string, data: TData): Promise<TResponse>;
|
|
52
|
+
put<TData, TResponse>(path: string, data: TData): Promise<TResponse>;
|
|
53
|
+
request<TData, TResponse>(method: 'GET' | 'POST' | 'PUT' | 'DELETE', path: string, data: TData): Promise<TResponse>;
|
|
54
|
+
delete(path: string): Promise<void>;
|
|
55
|
+
handleResponse<TResponse>(resp: Response, options?: GetOptions): Promise<TResponse>;
|
|
56
|
+
}
|
|
57
|
+
export {};
|
|
58
|
+
//# sourceMappingURL=client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.d.ts","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"AAEA,OAAO,OAAO,MAAM,kBAAkB,CAAA;AACtC,OAAO,YAAY,MAAM,uBAAuB,CAAA;AAChD,OAAO,qBAAqB,MAAM,kCAAkC,CAAA;AACpE,OAAO,YAAY,MAAM,wBAAwB,CAAA;AACjD,OAAO,YAAY,MAAM,4BAA4B,CAAA;AACrD,OAAO,KAAK,MAAM,gBAAgB,CAAA;AAClC,OAAO,eAAe,MAAM,2BAA2B,CAAA;AACvD,OAAO,QAAQ,MAAM,4BAA4B,CAAA;AACjD,OAAO,QAAQ,MAAM,mBAAmB,CAAA;AAExC,UAAU,IAAI;IACZ,aAAa,CAAC,EAAE,MAAM,OAAO,CAAC;QAAE,WAAW,CAAC,EAAE,MAAM,CAAC;QAAC,IAAI,CAAC,EAAE,OAAO,CAAA;KAAE,CAAC,CAAA;IACvE,WAAW,CAAC,EAAE,MAAM,CAAA;IACpB,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,OAAO,CAAA;IACd,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,MAAM,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,UAAU,UAAU;IAClB,OAAO,CAAC,EAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAE,CAAA;IAC7B,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB;AAYD,MAAM,CAAC,OAAO,OAAO,MAAM;IACzB,OAAO,CAAC,aAAa,CAAuB;IAC5C,OAAO,CAAC,WAAW,CAAkB;IACrC,OAAO,CAAC,OAAO,CAAQ;IACvB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAAS;IAC3B,OAAO,CAAC,MAAM,CAAQ;IAEf,YAAY,EAAE,YAAY,CAAA;IAC1B,QAAQ,EAAE,QAAQ,CAAA;IAClB,YAAY,EAAE,YAAY,CAAA;IAC1B,KAAK,EAAE,KAAK,CAAA;IACZ,YAAY,EAAE,YAAY,CAAA;IAC1B,qBAAqB,EAAE,qBAAqB,CAAA;IAC5C,gBAAgB,EAAE,QAAQ,CAAA;IAC1B,OAAO,EAAE,OAAO,CAAA;IAChB,eAAe,EAAE,eAAe,CAAA;gBAE3B,IAAI,GAAE,IAAS;IAwB3B,EAAE;IAIF,IAAI;IAIJ,mBAAmB,CAAC,WAAW,EAAE,MAAM,GAAG,OAAO;IAY3C,OAAO,CAAC,iBAAiB,GAAE;QAAE,MAAM,CAAC,EAAE,MAAM,CAAA;KAAO;IAWnD,GAAG,CAAC,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,GAAE,UAAe;IAM3D,IAAI,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK;IAIhD,GAAG,CAAC,KAAK,EAAE,SAAS,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK;IAIzC,OAAO,CAAC,KAAK,EAAE,SAAS,EAAE,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,KAAK;IAc9F,MAAM,CAAC,IAAI,EAAE,MAAM;IASzB,cAAc,CAAC,SAAS,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,GAAE,UAAe,GAAG,OAAO,CAAC,SAAS,CAAC;CAyBxF"}
|
package/lib/client.js
ADDED
|
@@ -0,0 +1,146 @@
|
|
|
1
|
+
import NodeRSA from 'node-rsa';
|
|
2
|
+
import ApiKeys from './ext/apikeys.js';
|
|
3
|
+
import Applications from './ext/applications.js';
|
|
4
|
+
import BankAccountStatements from './ext/bank-account-statements.js';
|
|
5
|
+
import BankAccounts from './ext/bank-accounts.js';
|
|
6
|
+
import Certificates from './ext/bank-certificates.js';
|
|
7
|
+
import Calls from './ext/calls.js';
|
|
8
|
+
import InboundPayments from './ext/inbound-payments.js';
|
|
9
|
+
import Payments from './ext/outbound-payments.js';
|
|
10
|
+
import Webhooks from './ext/webhooks.js';
|
|
11
|
+
class InternalError extends Error {
|
|
12
|
+
status;
|
|
13
|
+
statusText;
|
|
14
|
+
}
|
|
15
|
+
class ValidationError extends Error {
|
|
16
|
+
status;
|
|
17
|
+
body;
|
|
18
|
+
}
|
|
19
|
+
export default class Client {
|
|
20
|
+
beforeRequest;
|
|
21
|
+
bearerToken;
|
|
22
|
+
baseUrl;
|
|
23
|
+
testMode;
|
|
24
|
+
privateKey;
|
|
25
|
+
apiKey;
|
|
26
|
+
applications;
|
|
27
|
+
webhooks;
|
|
28
|
+
certificates;
|
|
29
|
+
calls;
|
|
30
|
+
bankAccounts;
|
|
31
|
+
bankAccountStatements;
|
|
32
|
+
outboundPayments;
|
|
33
|
+
apikeys;
|
|
34
|
+
inboundPayments;
|
|
35
|
+
constructor(opts = {}) {
|
|
36
|
+
this.applications = new Applications(this);
|
|
37
|
+
this.webhooks = new Webhooks(this);
|
|
38
|
+
this.certificates = new Certificates(this);
|
|
39
|
+
this.calls = new Calls(this);
|
|
40
|
+
this.bankAccounts = new BankAccounts(this);
|
|
41
|
+
this.bankAccountStatements = new BankAccountStatements(this);
|
|
42
|
+
this.outboundPayments = new Payments(this);
|
|
43
|
+
this.apikeys = new ApiKeys(this);
|
|
44
|
+
this.inboundPayments = new InboundPayments(this);
|
|
45
|
+
this.beforeRequest = opts.beforeRequest ?? (() => Promise.resolve({}));
|
|
46
|
+
this.bearerToken = opts.bearerToken || '-';
|
|
47
|
+
this.baseUrl = opts.baseUrl || 'https://api.bankson.fi';
|
|
48
|
+
this.testMode = opts.test ?? false;
|
|
49
|
+
if (opts.privateKey && opts.apiKey) {
|
|
50
|
+
// ApiKey authentication
|
|
51
|
+
this.bearerToken = false;
|
|
52
|
+
this.privateKey = new NodeRSA();
|
|
53
|
+
this.privateKey.importKey(opts.privateKey, 'private');
|
|
54
|
+
if (!this.privateKey.isPrivate())
|
|
55
|
+
throw new Error('Invalid private key');
|
|
56
|
+
this.apiKey = opts.apiKey;
|
|
57
|
+
}
|
|
58
|
+
}
|
|
59
|
+
me() {
|
|
60
|
+
return this.get('/me');
|
|
61
|
+
}
|
|
62
|
+
meV2() {
|
|
63
|
+
return this.get('/v2/me');
|
|
64
|
+
}
|
|
65
|
+
authorizationHeader(bearerToken) {
|
|
66
|
+
if (this.bearerToken)
|
|
67
|
+
return 'Bearer ' + bearerToken;
|
|
68
|
+
const timestamp = Date.now();
|
|
69
|
+
const str = this.apiKey + timestamp;
|
|
70
|
+
const signature = this.privateKey.sign(str, 'base64');
|
|
71
|
+
return 'BanksonRSA ' + [
|
|
72
|
+
'ApiKey=' + this.apiKey,
|
|
73
|
+
'Timestamp=' + timestamp,
|
|
74
|
+
'Signature=' + signature,
|
|
75
|
+
].join(', ');
|
|
76
|
+
}
|
|
77
|
+
async headers(additionalHeaders = {}) {
|
|
78
|
+
const result = await this.beforeRequest?.();
|
|
79
|
+
const bearerToken = result?.bearerToken || this.bearerToken;
|
|
80
|
+
const banksonTest = result?.test ?? this.testMode;
|
|
81
|
+
const headers = new Headers();
|
|
82
|
+
headers.append('Accept', additionalHeaders.Accept || 'application/json');
|
|
83
|
+
headers.append('Authorization', this.authorizationHeader(bearerToken));
|
|
84
|
+
if (banksonTest)
|
|
85
|
+
headers.append('X-Bankson-Environment', 'Test');
|
|
86
|
+
return headers;
|
|
87
|
+
}
|
|
88
|
+
async get(path, options = {}) {
|
|
89
|
+
const headers = await this.headers(options.headers);
|
|
90
|
+
const resp = await fetch(`${this.baseUrl}${path}`, { headers });
|
|
91
|
+
return this.handleResponse(resp, options);
|
|
92
|
+
}
|
|
93
|
+
post(path, data) {
|
|
94
|
+
return this.request('POST', path, data);
|
|
95
|
+
}
|
|
96
|
+
put(path, data) {
|
|
97
|
+
return this.request('PUT', path, data);
|
|
98
|
+
}
|
|
99
|
+
async request(method, path, data) {
|
|
100
|
+
const headers = await this.headers();
|
|
101
|
+
const isFormData = data instanceof FormData;
|
|
102
|
+
if (!isFormData) {
|
|
103
|
+
headers.append('Content-Type', 'application/json');
|
|
104
|
+
}
|
|
105
|
+
const resp = await fetch(`${this.baseUrl}${path}`, {
|
|
106
|
+
method,
|
|
107
|
+
body: isFormData ? data : JSON.stringify(data),
|
|
108
|
+
headers,
|
|
109
|
+
});
|
|
110
|
+
return this.handleResponse(resp);
|
|
111
|
+
}
|
|
112
|
+
async delete(path) {
|
|
113
|
+
const headers = await this.headers();
|
|
114
|
+
const resp = await fetch(`${this.baseUrl}${path}`, {
|
|
115
|
+
method: 'DELETE',
|
|
116
|
+
headers,
|
|
117
|
+
});
|
|
118
|
+
return this.handleResponse(resp);
|
|
119
|
+
}
|
|
120
|
+
handleResponse(resp, options = {}) {
|
|
121
|
+
if (!resp.ok) {
|
|
122
|
+
if (resp.status >= 500 || resp.status < 400) {
|
|
123
|
+
const err = new InternalError(`Internal error (${resp.status}): ${resp.statusText}`);
|
|
124
|
+
err.status = resp.status;
|
|
125
|
+
err.statusText = resp.statusText;
|
|
126
|
+
throw err;
|
|
127
|
+
}
|
|
128
|
+
return getBody(resp).then(json => {
|
|
129
|
+
const err = new ValidationError('Request unsuccessfull');
|
|
130
|
+
err.status = resp.status;
|
|
131
|
+
err.body = json;
|
|
132
|
+
throw err;
|
|
133
|
+
});
|
|
134
|
+
}
|
|
135
|
+
return getBody(resp);
|
|
136
|
+
async function getBody(resp) {
|
|
137
|
+
if (!(resp.headers.get('Content-Type') ?? '').includes('application/json')) {
|
|
138
|
+
if (options.responseType === 'arraybuffer')
|
|
139
|
+
return resp.arrayBuffer();
|
|
140
|
+
return resp.text();
|
|
141
|
+
}
|
|
142
|
+
return resp.json();
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
}
|
|
146
|
+
//# sourceMappingURL=client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"client.js","sourceRoot":"","sources":["../src/client.ts"],"names":[],"mappings":"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","sourcesContent":["import NodeRSA from 'node-rsa'\n\nimport ApiKeys from './ext/apikeys.js'\nimport Applications from './ext/applications.js'\nimport BankAccountStatements from './ext/bank-account-statements.js'\nimport BankAccounts from './ext/bank-accounts.js'\nimport Certificates from './ext/bank-certificates.js'\nimport Calls from './ext/calls.js'\nimport InboundPayments from './ext/inbound-payments.js'\nimport Payments from './ext/outbound-payments.js'\nimport Webhooks from './ext/webhooks.js'\n\ninterface Opts {\n beforeRequest?: () => Promise<{ bearerToken?: string, test?: boolean }>\n bearerToken?: string\n baseUrl?: string\n test?: boolean\n privateKey?: string\n apiKey?: string\n}\n\ninterface GetOptions {\n headers?: { Accept?: string }\n responseType?: string\n}\n\nclass InternalError extends Error {\n public status: number\n public statusText: string\n}\n\nclass ValidationError extends Error {\n public status: number\n public body: object\n}\n\nexport default class Client {\n private beforeRequest: Opts['beforeRequest']\n private bearerToken: string | boolean\n private baseUrl: string\n private testMode: boolean\n private privateKey: NodeRSA\n private apiKey: string\n\n public applications: Applications\n public webhooks: Webhooks\n public certificates: Certificates\n public calls: Calls\n public bankAccounts: BankAccounts\n public bankAccountStatements: BankAccountStatements\n public outboundPayments: Payments\n public apikeys: ApiKeys\n public inboundPayments: InboundPayments\n\n constructor(opts: Opts = {}) {\n this.applications = new Applications(this)\n this.webhooks = new Webhooks(this)\n this.certificates = new Certificates(this)\n this.calls = new Calls(this)\n this.bankAccounts = new BankAccounts(this)\n this.bankAccountStatements = new BankAccountStatements(this)\n this.outboundPayments = new Payments(this)\n this.apikeys = new ApiKeys(this)\n this.inboundPayments = new InboundPayments(this)\n this.beforeRequest = opts.beforeRequest ?? (() => Promise.resolve({}))\n this.bearerToken = opts.bearerToken || '-'\n this.baseUrl = opts.baseUrl || 'https://api.bankson.fi'\n this.testMode = opts.test ?? false\n if(opts.privateKey && opts.apiKey) {\n // ApiKey authentication\n this.bearerToken = false\n this.privateKey = new NodeRSA()\n this.privateKey.importKey(opts.privateKey, 'private')\n if(!this.privateKey.isPrivate()) throw new Error('Invalid private key')\n this.apiKey = opts.apiKey\n }\n }\n\n me() {\n return this.get('/me')\n }\n\n meV2() {\n return this.get('/v2/me')\n }\n\n authorizationHeader(bearerToken: string | boolean) {\n if(this.bearerToken) return 'Bearer ' + bearerToken\n const timestamp = Date.now()\n const str = this.apiKey + timestamp\n const signature = this.privateKey.sign(str, 'base64')\n return 'BanksonRSA ' + [\n 'ApiKey=' + this.apiKey,\n 'Timestamp=' + timestamp,\n 'Signature=' + signature,\n ].join(', ')\n }\n\n async headers(additionalHeaders: { Accept?: string } = {}) {\n const result = await this.beforeRequest?.()\n const bearerToken = result?.bearerToken || this.bearerToken\n const banksonTest = result?.test ?? this.testMode\n const headers = new Headers()\n headers.append('Accept', additionalHeaders.Accept || 'application/json')\n headers.append('Authorization', this.authorizationHeader(bearerToken))\n if(banksonTest) headers.append('X-Bankson-Environment', 'Test')\n return headers\n }\n\n async get<TResponse>(path: string, options: GetOptions = {}) {\n const headers = await this.headers(options.headers)\n const resp = await fetch(`${this.baseUrl}${path}`, { headers })\n return this.handleResponse<TResponse>(resp, options)\n }\n\n post<TData, TResponse>(path: string, data: TData) {\n return this.request<TData, TResponse>('POST', path, data)\n }\n\n put<TData, TResponse>(path: string, data: TData) {\n return this.request<TData, TResponse>('PUT', path, data)\n }\n\n async request<TData, TResponse>(method: 'GET' | 'POST' | 'PUT' | 'DELETE', path: string, data: TData) {\n const headers = await this.headers()\n const isFormData = data instanceof FormData\n if(!isFormData) {\n headers.append('Content-Type', 'application/json')\n }\n const resp = await fetch(`${this.baseUrl}${path}`, {\n method,\n body: isFormData ? data : JSON.stringify(data),\n headers,\n })\n return this.handleResponse<TResponse>(resp)\n }\n\n async delete(path: string) {\n const headers = await this.headers()\n const resp = await fetch(`${this.baseUrl}${path}`, {\n method: 'DELETE',\n headers,\n })\n return this.handleResponse<void>(resp)\n }\n\n handleResponse<TResponse>(resp: Response, options: GetOptions = {}): Promise<TResponse> {\n if(!resp.ok) {\n if(resp.status >= 500 || resp.status < 400) {\n const err = new InternalError(`Internal error (${resp.status}): ${resp.statusText}`)\n err.status = resp.status\n err.statusText = resp.statusText\n throw err\n }\n return getBody(resp).then(json => {\n const err = new ValidationError('Request unsuccessfull')\n err.status = resp.status\n err.body = json as object\n throw err\n })\n }\n return getBody(resp)\n\n async function getBody(resp: Response): Promise<TResponse> {\n if(!(resp.headers.get('Content-Type') ?? '').includes('application/json')) {\n if(options.responseType === 'arraybuffer') return resp.arrayBuffer() as Promise<TResponse>\n return resp.text() as Promise<TResponse>\n }\n return resp.json() as Promise<TResponse>\n }\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apikeys.d.ts","sourceRoot":"","sources":["../../src/ext/apikeys.js"],"names":[],"mappings":"AAEA;IACE,wBAEC;IAED,kCAEC;IAED,iCAEC;CACF;0BAdyB,qBAAqB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
2
|
+
export default class ApiKeys extends BaseSubClient {
|
|
3
|
+
fetchV2() {
|
|
4
|
+
return this.base.get('/v2/apikeys');
|
|
5
|
+
}
|
|
6
|
+
createV2(data) {
|
|
7
|
+
return this.base.post('/v2/apikeys', data);
|
|
8
|
+
}
|
|
9
|
+
removeV2(id) {
|
|
10
|
+
return this.base.delete(`/v2/apikeys/${id}`);
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=apikeys.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apikeys.js","sourceRoot":"","sources":["../../src/ext/apikeys.js"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAE/C,MAAM,CAAC,OAAO,OAAO,OAAQ,SAAQ,aAAa;IAChD,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;IACrC,CAAC;IAED,QAAQ,CAAC,IAAI;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;IAC5C,CAAC;IAED,QAAQ,CAAC,EAAE;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,eAAe,EAAE,EAAE,CAAC,CAAA;IAC9C,CAAC;CACF","sourcesContent":["import BaseSubClient from '../baseSubClient.js'\n\nexport default class ApiKeys extends BaseSubClient {\n fetchV2() {\n return this.base.get('/v2/apikeys')\n }\n\n createV2(data) {\n return this.base.post('/v2/apikeys', data)\n }\n\n removeV2(id) {\n return this.base.delete(`/v2/apikeys/${id}`)\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applications.d.ts","sourceRoot":"","sources":["../../src/ext/applications.js"],"names":[],"mappings":"AAEA;IACE,wBAEC;IAED,kCAEC;CACF;0BAVyB,qBAAqB"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
2
|
+
export default class Applications extends BaseSubClient {
|
|
3
|
+
fetchV2() {
|
|
4
|
+
return this.base.get('/v2/applications');
|
|
5
|
+
}
|
|
6
|
+
createV2(data) {
|
|
7
|
+
return this.base.post('/v2/applications', data);
|
|
8
|
+
}
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=applications.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"applications.js","sourceRoot":"","sources":["../../src/ext/applications.js"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAE/C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAa;IACrD,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,kBAAkB,CAAC,CAAA;IAC1C,CAAC;IAED,QAAQ,CAAC,IAAI;QACX,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,kBAAkB,EAAE,IAAI,CAAC,CAAA;IACjD,CAAC;CACF","sourcesContent":["import BaseSubClient from '../baseSubClient.js'\n\nexport default class Applications extends BaseSubClient {\n fetchV2() {\n return this.base.get('/v2/applications')\n }\n\n createV2(data) {\n return this.base.post('/v2/applications', data)\n }\n}\n"]}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
2
|
+
import type { BankAccountStatementResponse, BaseResponse } from '../types.js';
|
|
3
|
+
export default class BankAccountStatements extends BaseSubClient {
|
|
4
|
+
fetchV2(): Promise<BaseResponse<BankAccountStatementResponse>>;
|
|
5
|
+
statementHtmlV2(id: string): Promise<ArrayBuffer>;
|
|
6
|
+
statementXmlV2(id: string): Promise<ArrayBuffer>;
|
|
7
|
+
statementTextV2(id: string): Promise<ArrayBuffer>;
|
|
8
|
+
refreshV2(id: string): void;
|
|
9
|
+
}
|
|
10
|
+
//# sourceMappingURL=bank-account-statements.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank-account-statements.d.ts","sourceRoot":"","sources":["../../src/ext/bank-account-statements.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,4BAA4B,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE7E,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,aAAa;IAC9D,OAAO;IAIP,eAAe,CAAC,EAAE,EAAE,MAAM;IAS1B,cAAc,CAAC,EAAE,EAAE,MAAM;IASzB,eAAe,CAAC,EAAE,EAAE,MAAM;IAS1B,SAAS,CAAC,EAAE,EAAE,MAAM;CAGrB"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
2
|
+
export default class BankAccountStatements extends BaseSubClient {
|
|
3
|
+
fetchV2() {
|
|
4
|
+
return this.base.get('/v2/bankaccountstatements');
|
|
5
|
+
}
|
|
6
|
+
statementHtmlV2(id) {
|
|
7
|
+
return this.base.get(`/v2/bankaccountstatements/${id}`, {
|
|
8
|
+
headers: {
|
|
9
|
+
Accept: 'text/html',
|
|
10
|
+
},
|
|
11
|
+
responseType: 'arraybuffer',
|
|
12
|
+
});
|
|
13
|
+
}
|
|
14
|
+
statementXmlV2(id) {
|
|
15
|
+
return this.base.get(`/v2/bankaccountstatements/${id}`, {
|
|
16
|
+
headers: {
|
|
17
|
+
Accept: 'application/xml',
|
|
18
|
+
},
|
|
19
|
+
responseType: 'arraybuffer',
|
|
20
|
+
});
|
|
21
|
+
}
|
|
22
|
+
statementTextV2(id) {
|
|
23
|
+
return this.base.get(`/v2/bankaccountstatements/${id}`, {
|
|
24
|
+
headers: {
|
|
25
|
+
Accept: 'text/plain',
|
|
26
|
+
},
|
|
27
|
+
responseType: 'arraybuffer',
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
refreshV2(id) {
|
|
31
|
+
throw new Error('Not implemented');
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
//# sourceMappingURL=bank-account-statements.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank-account-statements.js","sourceRoot":"","sources":["../../src/ext/bank-account-statements.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAG/C,MAAM,CAAC,OAAO,OAAO,qBAAsB,SAAQ,aAAa;IAC9D,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA6C,2BAA2B,CAAC,CAAA;IAC/F,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,6BAA6B,EAAE,EAAE,EAAE;YACnE,OAAO,EAAE;gBACP,MAAM,EAAE,WAAW;aACpB;YACD,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAA;IACJ,CAAC;IAED,cAAc,CAAC,EAAU;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,6BAA6B,EAAE,EAAE,EAAE;YACnE,OAAO,EAAE;gBACP,MAAM,EAAE,iBAAiB;aAC1B;YACD,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAA;IACJ,CAAC;IAED,eAAe,CAAC,EAAU;QACxB,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,6BAA6B,EAAE,EAAE,EAAE;YACnE,OAAO,EAAE;gBACP,MAAM,EAAE,YAAY;aACrB;YACD,YAAY,EAAE,aAAa;SAC5B,CAAC,CAAA;IACJ,CAAC;IAED,SAAS,CAAC,EAAU;QAClB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;CACF","sourcesContent":["import BaseSubClient from '../baseSubClient.js'\nimport type { BankAccountStatementResponse, BaseResponse } from '../types.js'\n\nexport default class BankAccountStatements extends BaseSubClient {\n fetchV2() {\n return this.base.get<BaseResponse<BankAccountStatementResponse>>('/v2/bankaccountstatements')\n }\n\n statementHtmlV2(id: string) {\n return this.base.get<ArrayBuffer>(`/v2/bankaccountstatements/${id}`, {\n headers: {\n Accept: 'text/html',\n },\n responseType: 'arraybuffer',\n })\n }\n\n statementXmlV2(id: string) {\n return this.base.get<ArrayBuffer>(`/v2/bankaccountstatements/${id}`, {\n headers: {\n Accept: 'application/xml',\n },\n responseType: 'arraybuffer',\n })\n }\n\n statementTextV2(id: string) {\n return this.base.get<ArrayBuffer>(`/v2/bankaccountstatements/${id}`, {\n headers: {\n Accept: 'text/plain',\n },\n responseType: 'arraybuffer',\n })\n }\n\n refreshV2(id: string) {\n throw new Error('Not implemented')\n }\n}\n"]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
2
|
+
import type { BankAccountResponse, BaseResponse } from '../types.js';
|
|
3
|
+
type BankAccountData = Omit<BankAccountResponse, 'id' | 'customer_information'> & {
|
|
4
|
+
customer_information: Pick<NonNullable<BankAccountResponse['customer_information']>, 'name' | 'business_id'>;
|
|
5
|
+
};
|
|
6
|
+
interface BankAccountFilters {
|
|
7
|
+
offset?: number;
|
|
8
|
+
limit?: number;
|
|
9
|
+
}
|
|
10
|
+
export default class BankAccounts extends BaseSubClient {
|
|
11
|
+
fetchV2(opts: BankAccountFilters): Promise<BaseResponse<BankAccountResponse>>;
|
|
12
|
+
createV2(data: BankAccountData): Promise<BankAccountResponse>;
|
|
13
|
+
updateV2(id: string, data: BankAccountData): Promise<BankAccountResponse>;
|
|
14
|
+
}
|
|
15
|
+
export {};
|
|
16
|
+
//# sourceMappingURL=bank-accounts.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank-accounts.d.ts","sourceRoot":"","sources":["../../src/ext/bank-accounts.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,mBAAmB,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAEpE,KAAK,eAAe,GAAG,IAAI,CAAC,mBAAmB,EAAE,IAAI,GAAG,sBAAsB,CAAC,GAAG;IAChF,oBAAoB,EAAE,IAAI,CAAC,WAAW,CAAC,mBAAmB,CAAC,sBAAsB,CAAC,CAAC,EAAE,MAAM,GAAG,aAAa,CAAC,CAAA;CAC7G,CAAA;AAED,UAAU,kBAAkB;IAC1B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;CACf;AAED,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAa;IACrD,OAAO,CAAC,IAAI,EAAE,kBAAkB;IAIhC,QAAQ,CAAC,IAAI,EAAE,eAAe;IAI9B,QAAQ,CAAC,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,eAAe;CAG3C"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Qs from 'qs';
|
|
2
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
3
|
+
export default class BankAccounts extends BaseSubClient {
|
|
4
|
+
fetchV2(opts) {
|
|
5
|
+
return this.base.get('/v2/bank-accounts?' + Qs.stringify(opts));
|
|
6
|
+
}
|
|
7
|
+
createV2(data) {
|
|
8
|
+
return this.base.post('/v2/bank-accounts', data);
|
|
9
|
+
}
|
|
10
|
+
updateV2(id, data) {
|
|
11
|
+
return this.base.put(`/v2/bank-accounts/${id}`, data);
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=bank-accounts.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank-accounts.js","sourceRoot":"","sources":["../../src/ext/bank-accounts.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAY/C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAa;IACrD,OAAO,CAAC,IAAwB;QAC9B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAoC,oBAAoB,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IACpG,CAAC;IAED,QAAQ,CAAC,IAAqB;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAuC,mBAAmB,EAAE,IAAI,CAAC,CAAA;IACxF,CAAC;IAED,QAAQ,CAAC,EAAU,EAAE,IAAqB;QACxC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAqF,qBAAqB,EAAE,EAAE,EAAE,IAAI,CAAC,CAAA;IAC3I,CAAC;CACF","sourcesContent":["import Qs from 'qs'\n\nimport BaseSubClient from '../baseSubClient.js'\nimport type { BankAccountResponse, BaseResponse } from '../types.js'\n\ntype BankAccountData = Omit<BankAccountResponse, 'id' | 'customer_information'> & {\n customer_information: Pick<NonNullable<BankAccountResponse['customer_information']>, 'name' | 'business_id'>\n}\n\ninterface BankAccountFilters {\n offset?: number\n limit?: number\n}\n\nexport default class BankAccounts extends BaseSubClient {\n fetchV2(opts: BankAccountFilters) {\n return this.base.get<BaseResponse<BankAccountResponse>>('/v2/bank-accounts?' + Qs.stringify(opts))\n }\n\n createV2(data: BankAccountData) {\n return this.base.post<BankAccountData, BankAccountResponse>('/v2/bank-accounts', data)\n }\n\n updateV2(id: string, data: BankAccountData) {\n return this.base.put<Pick<BankAccountData, 'contract_id' | 'customer_information'>, BankAccountResponse>(`/v2/bank-accounts/${id}`, data)\n }\n}\n"]}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export default class Certificates extends BaseSubClient {
|
|
2
|
+
fetchV2(): Promise<any>;
|
|
3
|
+
uploadV2(file: any, params: any): Promise<any>;
|
|
4
|
+
requestV2(data: any): Promise<any>;
|
|
5
|
+
removeV2(id: any): Promise<void>;
|
|
6
|
+
renewV2(id: any, data?: {}): Promise<any>;
|
|
7
|
+
}
|
|
8
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
9
|
+
//# sourceMappingURL=bank-certificates.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank-certificates.d.ts","sourceRoot":"","sources":["../../src/ext/bank-certificates.js"],"names":[],"mappings":"AAIA;IACE,wBAEC;IAED,+CAKC;IAED,mCAEC;IAED,iCAEC;IAED,0CAEC;CACF;0BAzByB,qBAAqB"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import FormData from 'form-data';
|
|
2
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
3
|
+
export default class Certificates extends BaseSubClient {
|
|
4
|
+
fetchV2() {
|
|
5
|
+
return this.base.get('/v2/bank-certificates');
|
|
6
|
+
}
|
|
7
|
+
uploadV2(file, params) {
|
|
8
|
+
const data = new FormData();
|
|
9
|
+
Object.keys(params).forEach(k => data.append(k, params[k]));
|
|
10
|
+
data.append('certificate', file);
|
|
11
|
+
return this.base.post('/v2/bank-certificates/upload', data);
|
|
12
|
+
}
|
|
13
|
+
requestV2(data) {
|
|
14
|
+
return this.base.post('/v2/bank-certificates/request', data);
|
|
15
|
+
}
|
|
16
|
+
removeV2(id) {
|
|
17
|
+
return this.base.delete(`/v2/bank-certificates/${id}`);
|
|
18
|
+
}
|
|
19
|
+
renewV2(id, data = {}) {
|
|
20
|
+
return this.base.post(`/v2/bank-certificates/${id}/renew`, data);
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=bank-certificates.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"bank-certificates.js","sourceRoot":"","sources":["../../src/ext/bank-certificates.js"],"names":[],"mappings":"AAAA,OAAO,QAAQ,MAAM,WAAW,CAAA;AAEhC,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAE/C,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,aAAa;IACrD,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,uBAAuB,CAAC,CAAA;IAC/C,CAAC;IAED,QAAQ,CAAC,IAAI,EAAE,MAAM;QACnB,MAAM,IAAI,GAAG,IAAI,QAAQ,EAAE,CAAA;QAC3B,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QAC3D,IAAI,CAAC,MAAM,CAAC,aAAa,EAAE,IAAI,CAAC,CAAA;QAChC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,8BAA8B,EAAE,IAAI,CAAC,CAAA;IAC7D,CAAC;IAED,SAAS,CAAC,IAAI;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,+BAA+B,EAAE,IAAI,CAAC,CAAA;IAC9D,CAAC;IAED,QAAQ,CAAC,EAAE;QACT,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;IACxD,CAAC;IAED,OAAO,CAAC,EAAE,EAAE,IAAI,GAAG,EAAE;QACnB,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,yBAAyB,EAAE,QAAQ,EAAE,IAAI,CAAC,CAAA;IAClE,CAAC;CACF","sourcesContent":["import FormData from 'form-data'\n\nimport BaseSubClient from '../baseSubClient.js'\n\nexport default class Certificates extends BaseSubClient {\n fetchV2() {\n return this.base.get('/v2/bank-certificates')\n }\n\n uploadV2(file, params) {\n const data = new FormData()\n Object.keys(params).forEach(k => data.append(k, params[k]))\n data.append('certificate', file)\n return this.base.post('/v2/bank-certificates/upload', data)\n }\n\n requestV2(data) {\n return this.base.post('/v2/bank-certificates/request', data)\n }\n\n removeV2(id) {\n return this.base.delete(`/v2/bank-certificates/${id}`)\n }\n\n renewV2(id, data = {}) {\n return this.base.post(`/v2/bank-certificates/${id}/renew`, data)\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calls.d.ts","sourceRoot":"","sources":["../../src/ext/calls.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,aAAa,CAAA;AAE7D,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,aAAa;IAC9C,OAAO;CAGR"}
|
package/lib/ext/calls.js
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"calls.js","sourceRoot":"","sources":["../../src/ext/calls.ts"],"names":[],"mappings":"AAAA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAG/C,MAAM,CAAC,OAAO,OAAO,KAAM,SAAQ,aAAa;IAC9C,OAAO;QACL,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAA+B,WAAW,CAAC,CAAA;IACjE,CAAC;CACF","sourcesContent":["import BaseSubClient from '../baseSubClient.js'\nimport type { BaseResponse, CallResponse } from '../types.js'\n\nexport default class Calls extends BaseSubClient {\n fetchV2() {\n return this.base.get < BaseResponse<CallResponse>>('/v2/calls')\n }\n}\n"]}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
2
|
+
import type { BaseResponse, InboundPaymentResponse } from '../types.js';
|
|
3
|
+
interface InboundPaymentFilters {
|
|
4
|
+
offset?: number;
|
|
5
|
+
limit?: number;
|
|
6
|
+
updated_after?: string | null;
|
|
7
|
+
bank_account?: string | null;
|
|
8
|
+
payment_date_min?: string | null;
|
|
9
|
+
payment_date_max?: string | null;
|
|
10
|
+
}
|
|
11
|
+
export default class InboundPayments extends BaseSubClient {
|
|
12
|
+
fetchV2(opts: InboundPaymentFilters): Promise<BaseResponse<InboundPaymentResponse>>;
|
|
13
|
+
refreshV2(certificateId: any): void;
|
|
14
|
+
batchV2(batchId: any, type?: string): void;
|
|
15
|
+
}
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=inbound-payments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inbound-payments.d.ts","sourceRoot":"","sources":["../../src/ext/inbound-payments.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,sBAAsB,EAAE,MAAM,aAAa,CAAA;AAEvE,UAAU,qBAAqB;IAC7B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IACxD,OAAO,CAAC,IAAI,EAAE,qBAAqB;IAInC,SAAS,CAAC,aAAa,KAAA;IAIvB,OAAO,CAAC,OAAO,KAAA,EAAE,IAAI,SAAS;CAG/B"}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
import Qs from 'qs';
|
|
2
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
3
|
+
export default class InboundPayments extends BaseSubClient {
|
|
4
|
+
fetchV2(opts) {
|
|
5
|
+
return this.base.get('/v2/inbound-payments?' + Qs.stringify(opts));
|
|
6
|
+
}
|
|
7
|
+
refreshV2(certificateId) {
|
|
8
|
+
throw new Error('Not implemented');
|
|
9
|
+
}
|
|
10
|
+
batchV2(batchId, type = 'json') {
|
|
11
|
+
throw new Error('Not implemented');
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=inbound-payments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"inbound-payments.js","sourceRoot":"","sources":["../../src/ext/inbound-payments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAY/C,MAAM,CAAC,OAAO,OAAO,eAAgB,SAAQ,aAAa;IACxD,OAAO,CAAC,IAA2B;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAuC,uBAAuB,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IAC1G,CAAC;IAED,SAAS,CAAC,aAAa;QACrB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;IAED,OAAO,CAAC,OAAO,EAAE,IAAI,GAAG,MAAM;QAC5B,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;CACF","sourcesContent":["import Qs from 'qs'\n\nimport BaseSubClient from '../baseSubClient.js'\nimport type { BaseResponse, InboundPaymentResponse } from '../types.js'\n\ninterface InboundPaymentFilters {\n offset?: number\n limit?: number\n updated_after?: string | null\n bank_account?: string | null\n payment_date_min?: string | null\n payment_date_max?: string | null\n}\n\nexport default class InboundPayments extends BaseSubClient {\n fetchV2(opts: InboundPaymentFilters) {\n return this.base.get<BaseResponse<InboundPaymentResponse>>('/v2/inbound-payments?' + Qs.stringify(opts))\n }\n\n refreshV2(certificateId) {\n throw new Error('Not implemented')\n }\n\n batchV2(batchId, type = 'json') {\n throw new Error('Not implemented')\n }\n}\n"]}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
2
|
+
import type { BaseResponse, OutboundPaymentResponse } from '../types.js';
|
|
3
|
+
interface OutboundPaymentFilters {
|
|
4
|
+
offset?: number;
|
|
5
|
+
limit?: number;
|
|
6
|
+
updated_after?: string | null;
|
|
7
|
+
bank_account?: string | null;
|
|
8
|
+
payment_date_min?: string | null;
|
|
9
|
+
payment_date_max?: string | null;
|
|
10
|
+
}
|
|
11
|
+
type OutboundPaymentData = Pick<OutboundPaymentResponse, 'source' | 'recipient_name' | 'recipient_iban' | 'recipient_bic' | 'amount' | 'reference_number' | 'message' | 'payment_date' | 'vendor_reference'>;
|
|
12
|
+
export default class Payments extends BaseSubClient {
|
|
13
|
+
fetchV2(opts: OutboundPaymentFilters): Promise<BaseResponse<OutboundPaymentResponse>>;
|
|
14
|
+
addV2(data: OutboundPaymentData): Promise<{
|
|
15
|
+
failed: OutboundPaymentData[];
|
|
16
|
+
succeeded: OutboundPaymentResponse[];
|
|
17
|
+
failed_count: number;
|
|
18
|
+
succeeded_count: number;
|
|
19
|
+
}>;
|
|
20
|
+
removeV2(id: string): Promise<void>;
|
|
21
|
+
fetchFeedbackV2(): void;
|
|
22
|
+
}
|
|
23
|
+
export {};
|
|
24
|
+
//# sourceMappingURL=outbound-payments.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outbound-payments.d.ts","sourceRoot":"","sources":["../../src/ext/outbound-payments.ts"],"names":[],"mappings":"AAEA,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAC/C,OAAO,KAAK,EAAE,YAAY,EAAE,uBAAuB,EAAE,MAAM,aAAa,CAAA;AAExE,UAAU,sBAAsB;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,YAAY,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAC5B,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;IAChC,gBAAgB,CAAC,EAAE,MAAM,GAAG,IAAI,CAAA;CACjC;AAED,KAAK,mBAAmB,GAAG,IAAI,CAAC,uBAAuB,EAAE,QAAQ,GAAG,gBAAgB,GAAG,gBAAgB,GAAG,eAAe,GAAG,QAAQ,GAAG,kBAAkB,GAAG,SAAS,GAAG,cAAc,GAAG,kBAAkB,CAAC,CAAA;AAE5M,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,aAAa;IACjD,OAAO,CAAC,IAAI,EAAE,sBAAsB;IAIpC,KAAK,CAAC,IAAI,EAAE,mBAAmB;gBAEnB,mBAAmB,EAAE;mBAClB,uBAAuB,EAAE;sBACtB,MAAM;yBACH,MAAM;;IAI3B,QAAQ,CAAC,EAAE,EAAE,MAAM;IAInB,eAAe;CAGhB"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import Qs from 'qs';
|
|
2
|
+
import BaseSubClient from '../baseSubClient.js';
|
|
3
|
+
export default class Payments extends BaseSubClient {
|
|
4
|
+
fetchV2(opts) {
|
|
5
|
+
return this.base.get('/v2/outbound-payments?' + Qs.stringify(opts));
|
|
6
|
+
}
|
|
7
|
+
addV2(data) {
|
|
8
|
+
return this.base.post('/v2/outbound-payments', data);
|
|
9
|
+
}
|
|
10
|
+
removeV2(id) {
|
|
11
|
+
return this.base.delete(`/v2/outbound-payments/${id}`);
|
|
12
|
+
}
|
|
13
|
+
fetchFeedbackV2() {
|
|
14
|
+
throw new Error('Not implemented');
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=outbound-payments.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"outbound-payments.js","sourceRoot":"","sources":["../../src/ext/outbound-payments.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,MAAM,IAAI,CAAA;AAEnB,OAAO,aAAa,MAAM,qBAAqB,CAAA;AAc/C,MAAM,CAAC,OAAO,OAAO,QAAS,SAAQ,aAAa;IACjD,OAAO,CAAC,IAA4B;QAClC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAwC,wBAAwB,GAAG,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,CAAC,CAAA;IAC5G,CAAC;IAED,KAAK,CAAC,IAAyB;QAC7B,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAKlB,uBAAuB,EAAE,IAAI,CAAC,CAAA;IACnC,CAAC;IAED,QAAQ,CAAC,EAAU;QACjB,OAAO,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,yBAAyB,EAAE,EAAE,CAAC,CAAA;IACxD,CAAC;IAED,eAAe;QACb,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAA;IACpC,CAAC;CACF","sourcesContent":["import Qs from 'qs'\n\nimport BaseSubClient from '../baseSubClient.js'\nimport type { BaseResponse, OutboundPaymentResponse } from '../types.js'\n\ninterface OutboundPaymentFilters {\n offset?: number\n limit?: number\n updated_after?: string | null\n bank_account?: string | null\n payment_date_min?: string | null\n payment_date_max?: string | null\n}\n\ntype OutboundPaymentData = Pick<OutboundPaymentResponse, 'source' | 'recipient_name' | 'recipient_iban' | 'recipient_bic' | 'amount' | 'reference_number' | 'message' | 'payment_date' | 'vendor_reference'>\n\nexport default class Payments extends BaseSubClient {\n fetchV2(opts: OutboundPaymentFilters) {\n return this.base.get<BaseResponse<OutboundPaymentResponse>>('/v2/outbound-payments?' + Qs.stringify(opts))\n }\n\n addV2(data: OutboundPaymentData) {\n return this.base.post<OutboundPaymentData, {\n failed: OutboundPaymentData[]\n succeeded: OutboundPaymentResponse[]\n failed_count: number\n succeeded_count: number\n }>('/v2/outbound-payments', data)\n }\n\n removeV2(id: string) {\n return this.base.delete(`/v2/outbound-payments/${id}`)\n }\n\n fetchFeedbackV2() {\n throw new Error('Not implemented')\n }\n}\n"]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"webhooks.d.ts","sourceRoot":"","sources":["../../src/ext/webhooks.js"],"names":[],"mappings":"AAEA;IACE,wBAEC;IAED,kCAEC;IAED,2CAEC;CACF;0BAdyB,qBAAqB"}
|