From 35339ef4f466864657bdec4009864a1f4d0d0560 Mon Sep 17 00:00:00 2001 From: MatthewGould123 Date: Tue, 21 Jan 2025 11:24:47 +0700 Subject: [PATCH 1/5] update package name based on repo description --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index bc46117..ca311e1 100644 --- a/package.json +++ b/package.json @@ -1,5 +1,5 @@ { - "name": "teller", + "name": "node-teller", "version": "0.1.0", "description": "teller.io API client for nodejs", "main": "dist/index.js", From 4e67fd293b07370bbcb980e60f12d6d2fe31d9cf Mon Sep 17 00:00:00 2001 From: MatthewGould123 Date: Tue, 21 Jan 2025 12:39:27 +0700 Subject: [PATCH 2/5] use same params as the teller docs to avoid confusion --- src/common/types.ts | 20 ++++++++++++++++---- src/modules/transaction.ts | 23 ++++++++++++----------- 2 files changed, 28 insertions(+), 15 deletions(-) diff --git a/src/common/types.ts b/src/common/types.ts index e0da02d..a28f4eb 100644 --- a/src/common/types.ts +++ b/src/common/types.ts @@ -1,8 +1,20 @@ export type TellerOptionsBase = { accessToken: string; -} +}; +/** + * Using the latest Teller Version: 2020-10-12 + */ export type TellerOptionsPagination = TellerOptionsBase & { - cursor: string; - limit: number; -} \ No newline at end of file + /** + * The maximum number of transactions to return in the API response. + */ + count: number; + /** + * The transaction from where to start the page. + * The first transaction in the API response will be the one immediately before the transaction in the ledger with this id. + * + * example: txn_oiluj93igokseo0i3a005 + */ + from_id: string; +}; diff --git a/src/modules/transaction.ts b/src/modules/transaction.ts index 3d6c160..74111a1 100644 --- a/src/modules/transaction.ts +++ b/src/modules/transaction.ts @@ -5,15 +5,16 @@ import type { TellerTransaction } from "../interfaces/transaction.js"; export default class TellerTransactionModule extends ClientBase { async list( accountId: string, - options?: TellerOptionsPagination, + options?: TellerOptionsPagination ): Promise { - const searchParams = - options?.cursor && typeof options?.limit === "number" - ? new URLSearchParams({ - from_id: options?.cursor, - count: options?.limit?.toString(), - }).toString() - : null; + const searchParams = (() => { + if (options == null) return ""; + + return new URLSearchParams({ + from_id: options.from_id, + count: options.count.toString(), + }); + })(); const response = await this.axios.get( `/accounts/${accountId}/transactions?${searchParams}`, @@ -22,7 +23,7 @@ export default class TellerTransactionModule extends ClientBase { ? { username: options.accessToken, password: "" } : undefined, responseType: "json", - }, + } ); if (typeof response.data === "string") { @@ -34,7 +35,7 @@ export default class TellerTransactionModule extends ClientBase { async get( { accountId, id }: { id: string; accountId: string }, - options?: TellerOptionsPagination, + options?: TellerOptionsPagination ): Promise { const response = await this.axios.get( `/accounts/${accountId}/transactions/${id}`, @@ -43,7 +44,7 @@ export default class TellerTransactionModule extends ClientBase { ? { username: options.accessToken, password: "" } : undefined, responseType: "json", - }, + } ); if (typeof response.data === "string") { From 286d807dde395450e4125b140d54d86e719821b7 Mon Sep 17 00:00:00 2001 From: MatthewGould123 Date: Tue, 21 Jan 2025 12:39:34 +0700 Subject: [PATCH 3/5] bump version for release --- package.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/package.json b/package.json index ca311e1..6a3a2cc 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "node-teller", - "version": "0.1.0", + "version": "0.1.2", "description": "teller.io API client for nodejs", "main": "dist/index.js", "types": "dist/index.d.ts", From bcdff02ad2b91ecafeb3ea2fb901d688296a2dfd Mon Sep 17 00:00:00 2001 From: MatthewGould123 Date: Tue, 21 Jan 2025 12:40:55 +0700 Subject: [PATCH 4/5] build and publish --- dist/common/types.d.ts | 16 ++++++++++++++-- dist/common/types.d.ts.map | 2 +- dist/modules/transaction.d.ts.map | 2 +- dist/modules/transaction.js | 17 +++++++++-------- package.json | 2 +- 5 files changed, 26 insertions(+), 13 deletions(-) diff --git a/dist/common/types.d.ts b/dist/common/types.d.ts index 20ac5b4..525f709 100644 --- a/dist/common/types.d.ts +++ b/dist/common/types.d.ts @@ -1,8 +1,20 @@ export type TellerOptionsBase = { accessToken: string; }; +/** + * Using the latest Teller Version: 2020-10-12 + */ export type TellerOptionsPagination = TellerOptionsBase & { - cursor: string; - limit: number; + /** + * The maximum number of transactions to return in the API response. + */ + count: number; + /** + * The transaction from where to start the page. + * The first transaction in the API response will be the one immediately before the transaction in the ledger with this id. + * + * example: txn_oiluj93igokseo0i3a005 + */ + from_id: string; }; //# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/dist/common/types.d.ts.map b/dist/common/types.d.ts.map index a12a442..effda2d 100644 --- a/dist/common/types.d.ts.map +++ b/dist/common/types.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG;IACxD,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,EAAE,MAAM,CAAC;CACf,CAAA"} \ No newline at end of file +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG;IACxD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC"} \ No newline at end of file diff --git a/dist/modules/transaction.d.ts.map b/dist/modules/transaction.d.ts.map index 47c7b5f..6c869f2 100644 --- a/dist/modules/transaction.d.ts.map +++ b/dist/modules/transaction.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/modules/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IACvD,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA0BzB,GAAG,CACP,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EACpD,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,CAAC;CAiB9B"} \ No newline at end of file +{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/modules/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IACvD,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA2BzB,GAAG,CACP,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EACpD,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,CAAC;CAiB9B"} \ No newline at end of file diff --git a/dist/modules/transaction.js b/dist/modules/transaction.js index bb81479..fff27fd 100644 --- a/dist/modules/transaction.js +++ b/dist/modules/transaction.js @@ -11,13 +11,14 @@ import { ClientBase } from "./client.js"; export default class TellerTransactionModule extends ClientBase { list(accountId, options) { return __awaiter(this, void 0, void 0, function* () { - var _a; - const searchParams = (options === null || options === void 0 ? void 0 : options.cursor) && typeof (options === null || options === void 0 ? void 0 : options.limit) === "number" - ? new URLSearchParams({ - from_id: options === null || options === void 0 ? void 0 : options.cursor, - count: (_a = options === null || options === void 0 ? void 0 : options.limit) === null || _a === void 0 ? void 0 : _a.toString(), - }).toString() - : null; + const searchParams = (() => { + if (options == null) + return ""; + return new URLSearchParams({ + from_id: options.from_id, + count: options.count.toString(), + }); + })(); const response = yield this.axios.get(`/accounts/${accountId}/transactions?${searchParams}`, { auth: (options === null || options === void 0 ? void 0 : options.accessToken) ? { username: options.accessToken, password: "" } @@ -45,4 +46,4 @@ export default class TellerTransactionModule extends ClientBase { }); } } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kdWxlcy90cmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSXpDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sdUJBQXdCLFNBQVEsVUFBVTtJQUN2RCxJQUFJLENBQ1IsU0FBaUIsRUFDakIsT0FBaUM7OztZQUVqQyxNQUFNLFlBQVksR0FDaEIsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsTUFBTSxLQUFJLE9BQU8sQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsS0FBSyxDQUFBLEtBQUssUUFBUTtnQkFDbkQsQ0FBQyxDQUFDLElBQUksZUFBZSxDQUFDO29CQUNsQixPQUFPLEVBQUUsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLE1BQU07b0JBQ3hCLEtBQUssRUFBRSxNQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxLQUFLLDBDQUFFLFFBQVEsRUFBRTtpQkFDbEMsQ0FBQyxDQUFDLFFBQVEsRUFBRTtnQkFDZixDQUFDLENBQUMsSUFBSSxDQUFDO1lBRVgsTUFBTSxRQUFRLEdBQUcsTUFBTSxJQUFJLENBQUMsS0FBSyxDQUFDLEdBQUcsQ0FDbkMsYUFBYSxTQUFTLGlCQUFpQixZQUFZLEVBQUUsRUFDckQ7Z0JBQ0UsSUFBSSxFQUFFLENBQUEsT0FBTyxhQUFQLE9BQU8sdUJBQVAsT0FBTyxDQUFFLFdBQVc7b0JBQ3hCLENBQUMsQ0FBQyxFQUFFLFFBQVEsRUFBRSxPQUFPLENBQUMsV0FBVyxFQUFFLFFBQVEsRUFBRSxFQUFFLEVBQUU7b0JBQ2pELENBQUMsQ0FBQyxTQUFTO2dCQUNiLFlBQVksRUFBRSxNQUFNO2FBQ3JCLENBQ0YsQ0FBQztZQUVGLElBQUksT0FBTyxRQUFRLENBQUMsSUFBSSxLQUFLLFFBQVEsRUFBRSxDQUFDO2dCQUN0QyxPQUFPLElBQUksQ0FBQyxLQUFLLENBQUMsUUFBUSxDQUFDLElBQUksQ0FBQyxDQUFDO1lBQ25DLENBQUM7WUFFRCxPQUFPLFFBQVEsQ0FBQyxJQUFJLENBQUM7UUFDdkIsQ0FBQztLQUFBO0lBRUssR0FBRzs2REFDUCxFQUFFLFNBQVMsRUFBRSxFQUFFLEVBQXFDLEVBQ3BELE9BQWlDO1lBRWpDLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQ25DLGFBQWEsU0FBUyxpQkFBaUIsRUFBRSxFQUFFLEVBQzNDO2dCQUNFLElBQUksRUFBRSxDQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxXQUFXO29CQUN4QixDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO29CQUNqRCxDQUFDLENBQUMsU0FBUztnQkFDYixZQUFZLEVBQUUsTUFBTTthQUNyQixDQUNGLENBQUM7WUFFRixJQUFJLE9BQU8sUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBRUQsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7S0FBQTtDQUNGIn0= \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kdWxlcy90cmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSXpDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sdUJBQXdCLFNBQVEsVUFBVTtJQUN2RCxJQUFJLENBQ1IsU0FBaUIsRUFDakIsT0FBaUM7O1lBRWpDLE1BQU0sWUFBWSxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUN6QixJQUFJLE9BQU8sSUFBSSxJQUFJO29CQUFFLE9BQU8sRUFBRSxDQUFDO2dCQUUvQixPQUFPLElBQUksZUFBZSxDQUFDO29CQUN6QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87b0JBQ3hCLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtpQkFDaEMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUVMLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQ25DLGFBQWEsU0FBUyxpQkFBaUIsWUFBWSxFQUFFLEVBQ3JEO2dCQUNFLElBQUksRUFBRSxDQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxXQUFXO29CQUN4QixDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO29CQUNqRCxDQUFDLENBQUMsU0FBUztnQkFDYixZQUFZLEVBQUUsTUFBTTthQUNyQixDQUNGLENBQUM7WUFFRixJQUFJLE9BQU8sUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBRUQsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7S0FBQTtJQUVLLEdBQUc7NkRBQ1AsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFxQyxFQUNwRCxPQUFpQztZQUVqQyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUNuQyxhQUFhLFNBQVMsaUJBQWlCLEVBQUUsRUFBRSxFQUMzQztnQkFDRSxJQUFJLEVBQUUsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsV0FBVztvQkFDeEIsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTtvQkFDakQsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsWUFBWSxFQUFFLE1BQU07YUFDckIsQ0FDRixDQUFDO1lBRUYsSUFBSSxPQUFPLFFBQVEsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUVELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QixDQUFDO0tBQUE7Q0FDRiJ9 \ No newline at end of file diff --git a/package.json b/package.json index 6a3a2cc..b34450a 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "node-teller", - "version": "0.1.2", + "version": "0.1.3", "description": "teller.io API client for nodejs", "main": "dist/index.js", "types": "dist/index.d.ts", From f46e26c1e1141286f1ffe21b9a7192cfd1f75791 Mon Sep 17 00:00:00 2001 From: MatthewGould123 Date: Tue, 21 Jan 2025 14:06:27 +0700 Subject: [PATCH 5/5] improve params for transaction endpoint --- dist/common/types.d.ts | 4 ++-- dist/common/types.d.ts.map | 2 +- dist/modules/transaction.d.ts.map | 2 +- dist/modules/transaction.js | 16 +++++++--------- package.json | 2 +- src/common/types.ts | 4 ++-- src/modules/transaction.ts | 14 ++++++-------- 7 files changed, 20 insertions(+), 24 deletions(-) diff --git a/dist/common/types.d.ts b/dist/common/types.d.ts index 525f709..11a992f 100644 --- a/dist/common/types.d.ts +++ b/dist/common/types.d.ts @@ -8,13 +8,13 @@ export type TellerOptionsPagination = TellerOptionsBase & { /** * The maximum number of transactions to return in the API response. */ - count: number; + count?: number; /** * The transaction from where to start the page. * The first transaction in the API response will be the one immediately before the transaction in the ledger with this id. * * example: txn_oiluj93igokseo0i3a005 */ - from_id: string; + from_id?: string; }; //# sourceMappingURL=types.d.ts.map \ No newline at end of file diff --git a/dist/common/types.d.ts.map b/dist/common/types.d.ts.map index effda2d..b559748 100644 --- a/dist/common/types.d.ts.map +++ b/dist/common/types.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG;IACxD;;OAEG;IACH,KAAK,EAAE,MAAM,CAAC;IACd;;;;;OAKG;IACH,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC"} \ No newline at end of file +{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/common/types.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,iBAAiB,GAAG;IAC9B,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,MAAM,uBAAuB,GAAG,iBAAiB,GAAG;IACxD;;OAEG;IACH,KAAK,CAAC,EAAE,MAAM,CAAC;IACf;;;;;OAKG;IACH,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB,CAAC"} \ No newline at end of file diff --git a/dist/modules/transaction.d.ts.map b/dist/modules/transaction.d.ts.map index 6c869f2..0a0a70a 100644 --- a/dist/modules/transaction.d.ts.map +++ b/dist/modules/transaction.d.ts.map @@ -1 +1 @@ -{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/modules/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IACvD,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA2BzB,GAAG,CACP,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EACpD,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,CAAC;CAiB9B"} \ No newline at end of file +{"version":3,"file":"transaction.d.ts","sourceRoot":"","sources":["../../src/modules/transaction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AACzC,OAAO,KAAK,EAAE,uBAAuB,EAAE,MAAM,oBAAoB,CAAC;AAClE,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AAEtE,MAAM,CAAC,OAAO,OAAO,uBAAwB,SAAQ,UAAU;IACvD,IAAI,CACR,SAAS,EAAE,MAAM,EACjB,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,EAAE,CAAC;IAyBzB,GAAG,CACP,EAAE,SAAS,EAAE,EAAE,EAAE,EAAE;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,EACpD,OAAO,CAAC,EAAE,uBAAuB,GAChC,OAAO,CAAC,iBAAiB,CAAC;CAiB9B"} \ No newline at end of file diff --git a/dist/modules/transaction.js b/dist/modules/transaction.js index fff27fd..e9c380c 100644 --- a/dist/modules/transaction.js +++ b/dist/modules/transaction.js @@ -11,14 +11,12 @@ import { ClientBase } from "./client.js"; export default class TellerTransactionModule extends ClientBase { list(accountId, options) { return __awaiter(this, void 0, void 0, function* () { - const searchParams = (() => { - if (options == null) - return ""; - return new URLSearchParams({ - from_id: options.from_id, - count: options.count.toString(), - }); - })(); + var _a; + const params = Object.entries({ + count: (_a = options === null || options === void 0 ? void 0 : options.count) === null || _a === void 0 ? void 0 : _a.toString(), + from_id: options === null || options === void 0 ? void 0 : options.from_id, + }).filter((entry) => entry[1] != null); + const searchParams = new URLSearchParams(params); const response = yield this.axios.get(`/accounts/${accountId}/transactions?${searchParams}`, { auth: (options === null || options === void 0 ? void 0 : options.accessToken) ? { username: options.accessToken, password: "" } @@ -46,4 +44,4 @@ export default class TellerTransactionModule extends ClientBase { }); } } -//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kdWxlcy90cmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSXpDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sdUJBQXdCLFNBQVEsVUFBVTtJQUN2RCxJQUFJLENBQ1IsU0FBaUIsRUFDakIsT0FBaUM7O1lBRWpDLE1BQU0sWUFBWSxHQUFHLENBQUMsR0FBRyxFQUFFO2dCQUN6QixJQUFJLE9BQU8sSUFBSSxJQUFJO29CQUFFLE9BQU8sRUFBRSxDQUFDO2dCQUUvQixPQUFPLElBQUksZUFBZSxDQUFDO29CQUN6QixPQUFPLEVBQUUsT0FBTyxDQUFDLE9BQU87b0JBQ3hCLEtBQUssRUFBRSxPQUFPLENBQUMsS0FBSyxDQUFDLFFBQVEsRUFBRTtpQkFDaEMsQ0FBQyxDQUFDO1lBQ0wsQ0FBQyxDQUFDLEVBQUUsQ0FBQztZQUVMLE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQ25DLGFBQWEsU0FBUyxpQkFBaUIsWUFBWSxFQUFFLEVBQ3JEO2dCQUNFLElBQUksRUFBRSxDQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxXQUFXO29CQUN4QixDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO29CQUNqRCxDQUFDLENBQUMsU0FBUztnQkFDYixZQUFZLEVBQUUsTUFBTTthQUNyQixDQUNGLENBQUM7WUFFRixJQUFJLE9BQU8sUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBRUQsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7S0FBQTtJQUVLLEdBQUc7NkRBQ1AsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFxQyxFQUNwRCxPQUFpQztZQUVqQyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUNuQyxhQUFhLFNBQVMsaUJBQWlCLEVBQUUsRUFBRSxFQUMzQztnQkFDRSxJQUFJLEVBQUUsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsV0FBVztvQkFDeEIsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTtvQkFDakQsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsWUFBWSxFQUFFLE1BQU07YUFDckIsQ0FDRixDQUFDO1lBRUYsSUFBSSxPQUFPLFFBQVEsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUVELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QixDQUFDO0tBQUE7Q0FDRiJ9 \ No newline at end of file +//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoidHJhbnNhY3Rpb24uanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi9zcmMvbW9kdWxlcy90cmFuc2FjdGlvbi50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiOzs7Ozs7Ozs7QUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sYUFBYSxDQUFDO0FBSXpDLE1BQU0sQ0FBQyxPQUFPLE9BQU8sdUJBQXdCLFNBQVEsVUFBVTtJQUN2RCxJQUFJLENBQ1IsU0FBaUIsRUFDakIsT0FBaUM7OztZQUVqQyxNQUFNLE1BQU0sR0FBRyxNQUFNLENBQUMsT0FBTyxDQUFDO2dCQUM1QixLQUFLLEVBQUUsTUFBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsS0FBSywwQ0FBRSxRQUFRLEVBQUU7Z0JBQ2pDLE9BQU8sRUFBRSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsT0FBTzthQUMxQixDQUFDLENBQUMsTUFBTSxDQUFDLENBQUMsS0FBSyxFQUE2QixFQUFFLENBQUMsS0FBSyxDQUFDLENBQUMsQ0FBQyxJQUFJLElBQUksQ0FBQyxDQUFDO1lBRWxFLE1BQU0sWUFBWSxHQUFHLElBQUksZUFBZSxDQUFDLE1BQU0sQ0FBQyxDQUFDO1lBRWpELE1BQU0sUUFBUSxHQUFHLE1BQU0sSUFBSSxDQUFDLEtBQUssQ0FBQyxHQUFHLENBQ25DLGFBQWEsU0FBUyxpQkFBaUIsWUFBWSxFQUFFLEVBQ3JEO2dCQUNFLElBQUksRUFBRSxDQUFBLE9BQU8sYUFBUCxPQUFPLHVCQUFQLE9BQU8sQ0FBRSxXQUFXO29CQUN4QixDQUFDLENBQUMsRUFBRSxRQUFRLEVBQUUsT0FBTyxDQUFDLFdBQVcsRUFBRSxRQUFRLEVBQUUsRUFBRSxFQUFFO29CQUNqRCxDQUFDLENBQUMsU0FBUztnQkFDYixZQUFZLEVBQUUsTUFBTTthQUNyQixDQUNGLENBQUM7WUFFRixJQUFJLE9BQU8sUUFBUSxDQUFDLElBQUksS0FBSyxRQUFRLEVBQUUsQ0FBQztnQkFDdEMsT0FBTyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxJQUFJLENBQUMsQ0FBQztZQUNuQyxDQUFDO1lBRUQsT0FBTyxRQUFRLENBQUMsSUFBSSxDQUFDO1FBQ3ZCLENBQUM7S0FBQTtJQUVLLEdBQUc7NkRBQ1AsRUFBRSxTQUFTLEVBQUUsRUFBRSxFQUFxQyxFQUNwRCxPQUFpQztZQUVqQyxNQUFNLFFBQVEsR0FBRyxNQUFNLElBQUksQ0FBQyxLQUFLLENBQUMsR0FBRyxDQUNuQyxhQUFhLFNBQVMsaUJBQWlCLEVBQUUsRUFBRSxFQUMzQztnQkFDRSxJQUFJLEVBQUUsQ0FBQSxPQUFPLGFBQVAsT0FBTyx1QkFBUCxPQUFPLENBQUUsV0FBVztvQkFDeEIsQ0FBQyxDQUFDLEVBQUUsUUFBUSxFQUFFLE9BQU8sQ0FBQyxXQUFXLEVBQUUsUUFBUSxFQUFFLEVBQUUsRUFBRTtvQkFDakQsQ0FBQyxDQUFDLFNBQVM7Z0JBQ2IsWUFBWSxFQUFFLE1BQU07YUFDckIsQ0FDRixDQUFDO1lBRUYsSUFBSSxPQUFPLFFBQVEsQ0FBQyxJQUFJLEtBQUssUUFBUSxFQUFFLENBQUM7Z0JBQ3RDLE9BQU8sSUFBSSxDQUFDLEtBQUssQ0FBQyxRQUFRLENBQUMsSUFBSSxDQUFDLENBQUM7WUFDbkMsQ0FBQztZQUVELE9BQU8sUUFBUSxDQUFDLElBQUksQ0FBQztRQUN2QixDQUFDO0tBQUE7Q0FDRiJ9 \ No newline at end of file diff --git a/package.json b/package.json index b34450a..aad7959 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "node-teller", - "version": "0.1.3", + "version": "0.1.5", "description": "teller.io API client for nodejs", "main": "dist/index.js", "types": "dist/index.d.ts", diff --git a/src/common/types.ts b/src/common/types.ts index a28f4eb..f52d2aa 100644 --- a/src/common/types.ts +++ b/src/common/types.ts @@ -9,12 +9,12 @@ export type TellerOptionsPagination = TellerOptionsBase & { /** * The maximum number of transactions to return in the API response. */ - count: number; + count?: number; /** * The transaction from where to start the page. * The first transaction in the API response will be the one immediately before the transaction in the ledger with this id. * * example: txn_oiluj93igokseo0i3a005 */ - from_id: string; + from_id?: string; }; diff --git a/src/modules/transaction.ts b/src/modules/transaction.ts index 74111a1..9a66603 100644 --- a/src/modules/transaction.ts +++ b/src/modules/transaction.ts @@ -7,14 +7,12 @@ export default class TellerTransactionModule extends ClientBase { accountId: string, options?: TellerOptionsPagination ): Promise { - const searchParams = (() => { - if (options == null) return ""; - - return new URLSearchParams({ - from_id: options.from_id, - count: options.count.toString(), - }); - })(); + const params = Object.entries({ + count: options?.count?.toString(), + from_id: options?.from_id, + }).filter((entry): entry is [string, string] => entry[1] != null); + + const searchParams = new URLSearchParams(params); const response = await this.axios.get( `/accounts/${accountId}/transactions?${searchParams}`,