BREAKING CHANGE(new TinkUser().getTinkLink()): now expects a tinkLinkOptionsArg
This commit is contained in:
parent
596f4e5398
commit
019197e43c
3
package-lock.json
generated
3
package-lock.json
generated
@ -9,6 +9,7 @@
|
||||
"version": "2.0.0",
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@pushrocks/smartdelay": "^2.0.13",
|
||||
"@pushrocks/smartrequest": "^1.1.56"
|
||||
},
|
||||
"devDependencies": {
|
||||
@ -3802,7 +3803,6 @@
|
||||
"version": "2.0.13",
|
||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartdelay/-/smartdelay-2.0.13.tgz",
|
||||
"integrity": "sha512-s6Wh0BHWMfZ5VYONQwpxOYX1JeC9RKA0O9TxEzfZ6FCw2oNQb2QUPCixT9rsceKwva4+atKRw/RfU+Z7aJDmsA==",
|
||||
"dev": true,
|
||||
"license": "MIT",
|
||||
"dependencies": {
|
||||
"@pushrocks/smartpromise": "^3.0.6"
|
||||
@ -13785,7 +13785,6 @@
|
||||
"version": "2.0.13",
|
||||
"resolved": "https://verdaccio.lossless.one/@pushrocks%2fsmartdelay/-/smartdelay-2.0.13.tgz",
|
||||
"integrity": "sha512-s6Wh0BHWMfZ5VYONQwpxOYX1JeC9RKA0O9TxEzfZ6FCw2oNQb2QUPCixT9rsceKwva4+atKRw/RfU+Z7aJDmsA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"@pushrocks/smartpromise": "^3.0.6"
|
||||
}
|
||||
|
@ -23,6 +23,7 @@
|
||||
"tslint-config-prettier": "^1.15.0"
|
||||
},
|
||||
"dependencies": {
|
||||
"@pushrocks/smartdelay": "^2.0.13",
|
||||
"@pushrocks/smartrequest": "^1.1.56"
|
||||
},
|
||||
"browserslist": [
|
||||
|
@ -19,12 +19,15 @@ tap.test('should report tink as healthy', async () => {
|
||||
await expectAsync(tinkTestAccount.getTinkHealthyBoolean()).toBeTrue();
|
||||
});
|
||||
|
||||
tap.test('should create a tink user', async (toolsArg) => {
|
||||
await tinkTestAccount.createTinkUser('user_1234_abc');
|
||||
})
|
||||
|
||||
tap.test('should create a valid request', async (toolsArg) => {
|
||||
const tinkuser: tink.TinkUser = await tinkTestAccount.getTinkUser('user_1234_abc');
|
||||
console.log(tinkuser);
|
||||
console.log(await tinkuser.getTinkLinkForMarket()); // defaults to 'DE';
|
||||
console.log(await tinkuser.getProviderConsents());
|
||||
await toolsArg.delayFor(10000);
|
||||
});
|
||||
|
||||
tap.test('should delete existing users', async () => {
|
||||
|
8
ts/00_commitinfo_data.ts
Normal file
8
ts/00_commitinfo_data.ts
Normal file
@ -0,0 +1,8 @@
|
||||
/**
|
||||
* autocreated commitinfo by @pushrocks/commitinfo
|
||||
*/
|
||||
export const commitinfo = {
|
||||
name: '@mojoio/tink',
|
||||
version: '3.0.0',
|
||||
description: 'an unofficial api abstraction for tink.com'
|
||||
}
|
@ -109,13 +109,24 @@ export class TinkUser {
|
||||
* gets a tink link that can be used by a user to connect accounts
|
||||
* @returns
|
||||
*/
|
||||
public async getTinkLinkForMarket(countryIdArg: string = 'DE', redirectUrlArg = 'https://console.tink.com/callback'): Promise<string> {
|
||||
public async getTinkLinkForMarket(linkOptionsArg: {
|
||||
countryId: string;
|
||||
redirectUrl: string;
|
||||
testProviderBool?: boolean;
|
||||
} = {
|
||||
countryId: 'DE',
|
||||
redirectUrl: 'https://console.tink.com/callback',
|
||||
testProviderBool: true
|
||||
}): Promise<string> {
|
||||
if (typeof linkOptionsArg.testProviderBool !== 'boolean') {
|
||||
linkOptionsArg.testProviderBool = false;
|
||||
}
|
||||
const authorizationCode = await this.tinkAccountRef.getUserAuthorizationCode(
|
||||
this.externalUserIdArg,
|
||||
'df05e4b379934cd09963197cc855bfe9', // this is a hardcoded app id for tink link, as recommended by tink.com
|
||||
'authorization:read,authorization:grant,credentials:refresh,credentials:read,credentials:write,providers:read,user:read'
|
||||
);
|
||||
const tinkLinkUrl = `https://link.tink.com/1.0/business-transactions/connect-accounts?client_id=${'teststate'}&redirect_uri=${redirectUrlArg}&authorization_code=${authorizationCode}&market=${countryIdArg}`;
|
||||
const tinkLinkUrl = `https://link.tink.com/1.0/business-transactions/connect-accounts?client_id=${'teststate'}&redirect_uri=${linkOptionsArg.redirectUrl}&authorization_code=${authorizationCode}&market=${linkOptionsArg.countryId}&test=${linkOptionsArg.testProviderBool}`;
|
||||
return tinkLinkUrl;
|
||||
}
|
||||
|
||||
|
@ -1,4 +1,6 @@
|
||||
// @pushrocks scope
|
||||
import * as smartdelay from '@pushrocks/smartdelay';
|
||||
import * as smartrequest from '@pushrocks/smartrequest';
|
||||
import * as smartpromise from '@pushrocks/smartpromise';
|
||||
|
||||
export { smartrequest };
|
||||
export { smartdelay, smartrequest, smartpromise };
|
||||
|
Loading…
Reference in New Issue
Block a user