fintoc 1.19.2 → 1.21.0

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.
Files changed (31) hide show
  1. package/build/main/lib/core.d.ts +2 -1
  2. package/build/main/lib/core.js +2 -1
  3. package/build/main/lib/managers/eventsManager.d.ts +11 -0
  4. package/build/main/lib/managers/eventsManager.js +14 -0
  5. package/build/main/lib/managers/index.d.ts +1 -0
  6. package/build/main/lib/managers/index.js +2 -1
  7. package/build/main/lib/managers/webhookEndpointsManager.d.ts +3 -0
  8. package/build/main/lib/managers/webhookEndpointsManager.js +6 -2
  9. package/build/main/lib/resources/event.d.ts +3 -0
  10. package/build/main/lib/resources/event.js +8 -0
  11. package/build/main/spec/integration.spec.js +21 -1
  12. package/build/main/spec/managers/eventsManager.spec.d.ts +1 -0
  13. package/build/main/spec/managers/eventsManager.spec.js +69 -0
  14. package/build/main/spec/managers/webhookEndpointsManager.spec.d.ts +1 -0
  15. package/build/main/spec/managers/webhookEndpointsManager.spec.js +38 -0
  16. package/build/module/lib/core.d.ts +2 -1
  17. package/build/module/lib/core.js +4 -2
  18. package/build/module/lib/managers/eventsManager.d.ts +11 -0
  19. package/build/module/lib/managers/eventsManager.js +10 -0
  20. package/build/module/lib/managers/index.d.ts +1 -0
  21. package/build/module/lib/managers/index.js +2 -1
  22. package/build/module/lib/managers/webhookEndpointsManager.d.ts +3 -0
  23. package/build/module/lib/managers/webhookEndpointsManager.js +6 -2
  24. package/build/module/lib/resources/event.d.ts +3 -0
  25. package/build/module/lib/resources/event.js +4 -0
  26. package/build/module/spec/integration.spec.js +21 -1
  27. package/build/module/spec/managers/eventsManager.spec.d.ts +1 -0
  28. package/build/module/spec/managers/eventsManager.spec.js +64 -0
  29. package/build/module/spec/managers/webhookEndpointsManager.spec.d.ts +1 -0
  30. package/build/module/spec/managers/webhookEndpointsManager.spec.js +33 -0
  31. package/package.json +1 -1
@@ -0,0 +1,64 @@
1
+ import test from 'ava';
2
+ import { Client } from '../../lib/client';
3
+ import { EventsManager } from '../../lib/managers';
4
+ import { Event } from '../../lib/resources/event';
5
+ import { mockAxios, restore } from '../mocks/initializers';
6
+ test.before((t) => {
7
+ const ctx = t.context;
8
+ ctx.axiosMock = mockAxios();
9
+ });
10
+ test.after((t) => {
11
+ const ctx = t.context;
12
+ restore(ctx.axiosMock);
13
+ });
14
+ test.beforeEach((t) => {
15
+ const ctx = t.context;
16
+ ctx.client = new Client({
17
+ baseUrl: 'https://test.com',
18
+ apiKey: 'super_secret_api_key',
19
+ userAgent: 'fintoc-node/test',
20
+ });
21
+ ctx.path = '/v1/events';
22
+ });
23
+ test('"EventsManager.trigger" posts to the trigger endpoint with type and overrides', async (t) => {
24
+ const ctx = t.context;
25
+ const manager = new EventsManager(ctx.path, ctx.client);
26
+ const event = await manager.trigger({
27
+ type: 'payment_intent.succeeded',
28
+ overrides: { amount: 5000, currency: 'CLP' },
29
+ });
30
+ t.true(event instanceof Event);
31
+ t.is(event.method, 'post');
32
+ t.is(event.url, 'v1/events/trigger');
33
+ t.is(event.json.type, 'payment_intent.succeeded');
34
+ t.is(event.json.overrides.amount, 5000);
35
+ t.is(event.json.overrides.currency, 'CLP');
36
+ });
37
+ test('"EventsManager.trigger" works without overrides', async (t) => {
38
+ const ctx = t.context;
39
+ const manager = new EventsManager(ctx.path, ctx.client);
40
+ const event = await manager.trigger({ type: 'payment_intent.failed' });
41
+ t.true(event instanceof Event);
42
+ t.is(event.method, 'post');
43
+ t.is(event.url, 'v1/events/trigger');
44
+ t.is(event.json.type, 'payment_intent.failed');
45
+ });
46
+ test('"EventsManager.trigger" supports nested overrides', async (t) => {
47
+ const ctx = t.context;
48
+ const manager = new EventsManager(ctx.path, ctx.client);
49
+ const event = await manager.trigger({
50
+ type: 'payment_intent.succeeded',
51
+ overrides: {
52
+ payment_intent: {
53
+ amount: 5000,
54
+ currency: 'CLP',
55
+ metadata: { customer_id: 'cus_123' },
56
+ },
57
+ },
58
+ });
59
+ t.true(event instanceof Event);
60
+ t.is(event.json.overrides.payment_intent.amount, 5000);
61
+ t.is(event.json.overrides.payment_intent.currency, 'CLP');
62
+ t.is(event.json.overrides.payment_intent.metadata.customer_id, 'cus_123');
63
+ });
64
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZXZlbnRzTWFuYWdlci5zcGVjLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vc3JjL3NwZWMvbWFuYWdlcnMvZXZlbnRzTWFuYWdlci5zcGVjLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sSUFBSSxNQUFNLEtBQUssQ0FBQztBQUV2QixPQUFPLEVBQUUsTUFBTSxFQUFFLE1BQU0sa0JBQWtCLENBQUM7QUFDMUMsT0FBTyxFQUFFLGFBQWEsRUFBRSxNQUFNLG9CQUFvQixDQUFDO0FBQ25ELE9BQU8sRUFBRSxLQUFLLEVBQUUsTUFBTSwyQkFBMkIsQ0FBQztBQUNsRCxPQUFPLEVBQUUsU0FBUyxFQUFFLE9BQU8sRUFBRSxNQUFNLHVCQUF1QixDQUFDO0FBRTNELElBQUksQ0FBQyxNQUFNLENBQUMsQ0FBQyxDQUFDLEVBQUUsRUFBRTtJQUNoQixNQUFNLEdBQUcsR0FBUSxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQzNCLEdBQUcsQ0FBQyxTQUFTLEdBQUcsU0FBUyxFQUFFLENBQUM7QUFDOUIsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDZixNQUFNLEdBQUcsR0FBUSxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQzNCLE9BQU8sQ0FBQyxHQUFHLENBQUMsU0FBUyxDQUFDLENBQUM7QUFDekIsQ0FBQyxDQUFDLENBQUM7QUFFSCxJQUFJLENBQUMsVUFBVSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDcEIsTUFBTSxHQUFHLEdBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUUzQixHQUFHLENBQUMsTUFBTSxHQUFHLElBQUksTUFBTSxDQUFDO1FBQ3RCLE9BQU8sRUFBRSxrQkFBa0I7UUFDM0IsTUFBTSxFQUFFLHNCQUFzQjtRQUM5QixTQUFTLEVBQUUsa0JBQWtCO0tBQzlCLENBQUMsQ0FBQztJQUNILEdBQUcsQ0FBQyxJQUFJLEdBQUcsWUFBWSxD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
@@ -0,0 +1,33 @@
1
+ import test from 'ava';
2
+ import { Client } from '../../lib/client';
3
+ import { WebhookEndpointsManager } from '../../lib/managers';
4
+ import { WebhookEndpoint } from '../../lib/resources/webhookEndpoint';
5
+ import { mockAxios, restore } from '../mocks/initializers';
6
+ test.before((t) => {
7
+ const ctx = t.context;
8
+ ctx.axiosMock = mockAxios();
9
+ });
10
+ test.after((t) => {
11
+ const ctx = t.context;
12
+ restore(ctx.axiosMock);
13
+ });
14
+ test.beforeEach((t) => {
15
+ const ctx = t.context;
16
+ ctx.client = new Client({
17
+ baseUrl: 'https://test.com',
18
+ apiKey: 'super_secret_api_key',
19
+ userAgent: 'fintoc-node/test',
20
+ });
21
+ ctx.path = '/v1/webhook_endpoints';
22
+ });
23
+ test('"WebhookEndpointsManager.test" posts to the test endpoint', async (t) => {
24
+ const ctx = t.context;
25
+ const manager = new WebhookEndpointsManager(ctx.path, ctx.client);
26
+ const event = await manager.test('we_123', { type: 'payment_intent.succeeded' });
27
+ t.true(event instanceof WebhookEndpoint);
28
+ t.is(event.id, 'we_123');
29
+ t.is(event.method, 'post');
30
+ t.is(event.url, 'v1/webhook_endpoints/we_123/test');
31
+ t.is(event.json.type, 'payment_intent.succeeded');
32
+ });
33
+ //# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoid2ViaG9va0VuZHBvaW50c01hbmFnZXIuc3BlYy5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3NyYy9zcGVjL21hbmFnZXJzL3dlYmhvb2tFbmRwb2ludHNNYW5hZ2VyLnNwZWMudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IkFBQUEsT0FBTyxJQUFJLE1BQU0sS0FBSyxDQUFDO0FBRXZCLE9BQU8sRUFBRSxNQUFNLEVBQUUsTUFBTSxrQkFBa0IsQ0FBQztBQUMxQyxPQUFPLEVBQUUsdUJBQXVCLEVBQUUsTUFBTSxvQkFBb0IsQ0FBQztBQUM3RCxPQUFPLEVBQUUsZUFBZSxFQUFFLE1BQU0scUNBQXFDLENBQUM7QUFDdEUsT0FBTyxFQUFFLFNBQVMsRUFBRSxPQUFPLEVBQUUsTUFBTSx1QkFBdUIsQ0FBQztBQUUzRCxJQUFJLENBQUMsTUFBTSxDQUFDLENBQUMsQ0FBQyxFQUFFLEVBQUU7SUFDaEIsTUFBTSxHQUFHLEdBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUMzQixHQUFHLENBQUMsU0FBUyxHQUFHLFNBQVMsRUFBRSxDQUFDO0FBQzlCLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLEtBQUssQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ2YsTUFBTSxHQUFHLEdBQVEsQ0FBQyxDQUFDLE9BQU8sQ0FBQztJQUMzQixPQUFPLENBQUMsR0FBRyxDQUFDLFNBQVMsQ0FBQyxDQUFDO0FBQ3pCLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLFVBQVUsQ0FBQyxDQUFDLENBQUMsRUFBRSxFQUFFO0lBQ3BCLE1BQU0sR0FBRyxHQUFRLENBQUMsQ0FBQyxPQUFPLENBQUM7SUFFM0IsR0FBRyxDQUFDLE1BQU0sR0FBRyxJQUFJLE1BQU0sQ0FBQztRQUN0QixPQUFPLEVBQUUsa0JBQWtCO1FBQzNCLE1BQU0sRUFBRSxzQkFBc0I7UUFDOUIsU0FBUyxFQUFFLGtCQUFrQjtLQUM5QixDQUFDLENBQUM7SUFDSCxHQUFHLENBQUMsSUFBSSxHQUFHLHVCQUF1QixDQUFDO0FBQ3JDLENBQUMsQ0FBQyxDQUFDO0FBRUgsSUFBSSxDQUFDLDJEQUEyRCxFQUFFLEtBQUssRUFBRSxDQUFDLEVBQUUsRUFBRTtJQUM1RSxNQUFNLEdBQUcsR0FBUSxDQUFDLENBQUMsT0FBTyxDQUFDO0lBQzNCLE1BQU0sT0FBTyxHQUFHLElBQUksdUJBQXVCLENBQUMsR0FBRyxDQUFDLElBQUksRUFBRSxHQUFHLENBQUMsTUFBTSxDQUFDLENBQUM7SUFFbEUsTUFBTSxLQUFLLEdBQUcsTUFBTSxPQUFPLENBQUMsSUFBSSxDQUFDLFFBQVEsRUFBRSxFQUFFLElBQUksRUFBRSwwQkFBMEIsRUFBRSxDQUFDLENBQUM7SUFFakYsQ0FBQyxDQUFDLElBQUksQ0FBQyxLQUFLLFlBQVksZUFBZSxDQUFDLENBQUM7SUFDekMsQ0FBQyxDQUFDLEVBQUUsQ0FBQyxLQUFLLENBQUMsRUFBRSxFQUFFLFFBQVEsQ0FBQyxDQUFDO0lBQ3pCLENBQUMsQ0FBQyxFQUFFLENBQUMsS0FBSyxDQUFDLE1BQU0sRUFBRSxNQUFNLENBQUMsQ0FBQztJQUMzQixDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxHQUFHLEVBQUUsa0NBQWtDLENBQUMsQ0FBQztJQUNwRCxDQUFDLENBQUMsRUFBRSxDQUFDLEtBQUssQ0FBQyxJQUFJLENBQUMsSUFBSSxFQUFFLDBCQUEwQixDQUFDLENBQUM7QUFDcEQsQ0FBQyxDQUFDLENBQUMifQ==
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "fintoc",
3
- "version": "1.19.2",
3
+ "version": "1.21.0",
4
4
  "description": "The official Node client for the Fintoc API.",
5
5
  "main": "build/main/index.js",
6
6
  "typings": "build/main/index.d.ts",