@basis-theory/basis-theory-js
Advanced tools
Comparing version 1.0.0-alpha.27 to 1.0.0-alpha.28
import { BasisTheoryService } from '../service'; | ||
import { AtomicBank, AtomicCard } from './types'; | ||
import type { AtomicBank, CreateAtomicBankModel } from './banks/types'; | ||
import type { AtomicCard, CreateAtomicCardModel } from './cards/types'; | ||
/** | ||
* @deprecated use {@link BasisTheoryAtomicBanks} and {@link BasisTheoryAtomicCards} instead | ||
*/ | ||
export declare class BasisTheoryAtomic extends BasisTheoryService { | ||
storeCreditCard(source: Omit<AtomicCard, 'id'>): Promise<AtomicCard>; | ||
storeBank(source: Omit<AtomicBank, 'id'>): Promise<AtomicBank>; | ||
/** | ||
* @deprecated use {@link BasisTheoryAtomicCards.create} instead | ||
*/ | ||
storeCreditCard(model: CreateAtomicCardModel): Promise<AtomicCard>; | ||
/** | ||
* @deprecated use {@link BasisTheoryAtomicBanks.create} instead | ||
*/ | ||
storeBank(model: CreateAtomicBankModel): Promise<AtomicBank>; | ||
} |
@@ -8,6 +8,2 @@ "use strict"; | ||
var _camelcaseKeys = _interopRequireDefault(require("camelcase-keys")); | ||
var _snakecaseKeys = _interopRequireDefault(require("snakecase-keys")); | ||
var _service = require("../service"); | ||
@@ -17,20 +13,19 @@ | ||
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; } | ||
/** | ||
* @deprecated use {@link BasisTheoryAtomicBanks} and {@link BasisTheoryAtomicCards} instead | ||
*/ | ||
class BasisTheoryAtomic extends _service.BasisTheoryService { | ||
async storeCreditCard(source) { | ||
return this.client.post('/cards', source).then(_common.dataExtractor); | ||
/** | ||
* @deprecated use {@link BasisTheoryAtomicCards.create} instead | ||
*/ | ||
async storeCreditCard(model) { | ||
return this.client.post('/cards', model).then(_common.dataExtractor); | ||
} | ||
/** | ||
* @deprecated use {@link BasisTheoryAtomicBanks.create} instead | ||
*/ | ||
async storeBank(source) { | ||
const payload = (0, _snakecaseKeys.default)(source, { | ||
deep: true | ||
}); | ||
const { | ||
data | ||
} = await this.client.post('/banks', payload); | ||
const newBank = (0, _camelcaseKeys.default)(data, { | ||
deep: true | ||
}); | ||
return newBank; | ||
async storeBank(model) { | ||
return this.client.post('/banks', model).then(_common.dataExtractor); | ||
} | ||
@@ -37,0 +32,0 @@ |
@@ -1,72 +0,14 @@ | ||
export interface AtomicCard { | ||
import type { TokenType } from '../tokens'; | ||
export interface Atomic { | ||
id: string; | ||
card: { | ||
number: string; | ||
expirationMonth: number; | ||
expirationYear: number; | ||
cvc?: string; | ||
}; | ||
billingDetails?: { | ||
name?: string; | ||
email?: string; | ||
phone?: string; | ||
address?: { | ||
city: string; | ||
country: string; | ||
line1: string; | ||
line2?: string; | ||
postalCode: string; | ||
state: string; | ||
}; | ||
}; | ||
tenantId: string; | ||
type: TokenType; | ||
metadata?: Record<string, string>; | ||
createdBy: string; | ||
createdAt: string; | ||
} | ||
export interface AtomicBank { | ||
id: string; | ||
bank: { | ||
accountNumber: string; | ||
routingNumber: string; | ||
}; | ||
export interface ReactRequest { | ||
reactorId: string; | ||
requestParameters?: Record<string, unknown>; | ||
metadata?: Record<string, string>; | ||
} | ||
export declare namespace PaymentsApi { | ||
interface SourceCardModel { | ||
card: CardModel; | ||
billing_details?: BillingDetailsModel; | ||
} | ||
interface CardModel { | ||
number: string; | ||
expiration_month: number; | ||
expiration_year: number; | ||
cvc?: string; | ||
} | ||
interface BillingDetailsModel { | ||
name?: string; | ||
email?: string; | ||
phone?: string; | ||
address?: { | ||
city: string; | ||
country: string; | ||
line1: string; | ||
line2?: string; | ||
postal_code: string; | ||
state: string; | ||
}; | ||
} | ||
interface SourceCardResponse { | ||
id: string; | ||
type: 'card'; | ||
card: CardModel; | ||
billing_details?: BillingDetailsModel; | ||
} | ||
interface SourceBankModel { | ||
bank: BankModel; | ||
} | ||
interface BankModel { | ||
account_number: string; | ||
routing_number: string; | ||
} | ||
interface SourceBankResponse { | ||
id: string; | ||
type: 'bank'; | ||
bank: BankModel; | ||
} | ||
} |
@@ -10,2 +10,4 @@ import { BasisTheoryAtomic } from './atomic'; | ||
import { BasisTheoryReactors } from './reactors'; | ||
import { BasisTheoryAtomicBanks } from './atomic/banks'; | ||
import { BasisTheoryAtomicCards } from './atomic/cards'; | ||
import { BasisTheoryPermissions } from './permissions'; | ||
@@ -24,2 +26,4 @@ export declare const defaultInitOptions: Required<BasisTheoryInitOptions>; | ||
private _reactors?; | ||
private _atomicBanks?; | ||
private _atomicCards?; | ||
private _permissions?; | ||
@@ -38,3 +42,5 @@ init(apiKey: string, options?: BasisTheoryInitOptions): Promise<BasisTheory>; | ||
get reactors(): BasisTheoryReactors; | ||
get atomicBanks(): BasisTheoryAtomicBanks; | ||
get atomicCards(): BasisTheoryAtomicCards; | ||
get permissions(): BasisTheoryPermissions; | ||
} |
@@ -24,2 +24,6 @@ "use strict"; | ||
var _banks = require("./atomic/banks"); | ||
var _cards = require("./atomic/cards"); | ||
var _permissions = require("./permissions"); | ||
@@ -57,2 +61,6 @@ | ||
_defineProperty(this, "_atomicBanks", void 0); | ||
_defineProperty(this, "_atomicCards", void 0); | ||
_defineProperty(this, "_permissions", void 0); | ||
@@ -96,2 +104,10 @@ } | ||
}); | ||
this._atomicBanks = new _banks.BasisTheoryAtomicBanks({ | ||
apiKey, | ||
baseURL: _common.SERVICES.atomicBanks[this._initOptions.environment] | ||
}); | ||
this._atomicCards = new _cards.BasisTheoryAtomicCards({ | ||
apiKey, | ||
baseURL: _common.SERVICES.atomicCards[this._initOptions.environment] | ||
}); | ||
this._permissions = new _permissions.BasisTheoryPermissions({ | ||
@@ -162,2 +178,10 @@ apiKey, | ||
get atomicBanks() { | ||
return (0, _common.assertInit)(this._atomicBanks); | ||
} | ||
get atomicCards() { | ||
return (0, _common.assertInit)(this._atomicCards); | ||
} | ||
get permissions() { | ||
@@ -164,0 +188,0 @@ return (0, _common.assertInit)(this._permissions); |
@@ -38,2 +38,12 @@ "use strict"; | ||
}, | ||
atomicBanks: { | ||
production: `https://${"api.basistheory.com"}/atomic/banks`, | ||
sandbox: `https://${"api-dev.basistheory.com"}/atomic/banks`, | ||
local: `http://${"localhost:3333"}/atomic/banks` | ||
}, | ||
atomicCards: { | ||
production: `https://${"api.basistheory.com"}/atomic/cards`, | ||
sandbox: `https://${"api-dev.basistheory.com"}/atomic/cards`, | ||
local: `http://${"localhost:3333"}/atomic/cards` | ||
}, | ||
permissions: { | ||
@@ -40,0 +50,0 @@ production: `https://${"api.basistheory.com"}/permissions`, |
@@ -5,5 +5,8 @@ import type { AxiosRequestConfig, AxiosResponse, AxiosTransformer } from 'axios'; | ||
export declare const transformRequestSnakeCase: AxiosTransformer; | ||
export declare const transformAtomicRequestSnakeCase: AxiosTransformer; | ||
export declare const transformTokenRequestSnakeCase: AxiosTransformer; | ||
export declare const transformTokensResponseCamelCase: AxiosTransformer; | ||
export declare const transformAtomicReactionRequestSnakeCase: AxiosTransformer; | ||
export declare const transformTokenResponseCamelCase: AxiosTransformer; | ||
export declare const transformResponseCamelCase: AxiosTransformer; | ||
export declare const transformAtomicResponseCamelCase: AxiosTransformer; | ||
export declare const dataExtractor: <T>(res: AxiosResponse<T>) => T; | ||
@@ -10,0 +13,0 @@ export declare const createRequestConfig: (options?: RequestOptions | undefined) => AxiosRequestConfig | undefined; |
@@ -7,3 +7,3 @@ "use strict"; | ||
exports.getQueryParams = getQueryParams; | ||
exports.errorInterceptor = exports.createRequestConfig = exports.dataExtractor = exports.transformResponseCamelCase = exports.transformTokensResponseCamelCase = exports.transformTokenRequestSnakeCase = exports.transformRequestSnakeCase = exports.assertInit = void 0; | ||
exports.errorInterceptor = exports.createRequestConfig = exports.dataExtractor = exports.transformAtomicResponseCamelCase = exports.transformResponseCamelCase = exports.transformTokenResponseCamelCase = exports.transformAtomicReactionRequestSnakeCase = exports.transformTokenRequestSnakeCase = exports.transformAtomicRequestSnakeCase = exports.transformRequestSnakeCase = exports.assertInit = void 0; | ||
@@ -44,2 +44,18 @@ var _camelcaseKeys = _interopRequireDefault(require("camelcase-keys")); | ||
const transformAtomicRequestSnakeCase = data => { | ||
if (data === undefined) { | ||
return undefined; | ||
} | ||
return { ...(0, _snakecaseKeys.default)(data, { | ||
deep: true | ||
}), | ||
...(data.metadata !== undefined ? { | ||
metadata: data.metadata | ||
} : {}) | ||
}; | ||
}; | ||
exports.transformAtomicRequestSnakeCase = transformAtomicRequestSnakeCase; | ||
const transformTokenRequestSnakeCase = token => { | ||
@@ -64,3 +80,22 @@ if (token === undefined) { | ||
const transformTokensResponseCamelCase = token => { | ||
const transformAtomicReactionRequestSnakeCase = request => { | ||
if (request === undefined) { | ||
return undefined; | ||
} | ||
return { ...(0, _snakecaseKeys.default)(request, { | ||
deep: true | ||
}), | ||
...(request.requestParameters !== undefined ? { | ||
request_parameters: request.requestParameters | ||
} : {}), | ||
...(request.metadata !== undefined ? { | ||
metadata: request.metadata | ||
} : {}) | ||
}; | ||
}; | ||
exports.transformAtomicReactionRequestSnakeCase = transformAtomicReactionRequestSnakeCase; | ||
const transformTokenResponseCamelCase = token => { | ||
if (token === undefined) { | ||
@@ -82,3 +117,3 @@ return undefined; | ||
exports.transformTokensResponseCamelCase = transformTokensResponseCamelCase; | ||
exports.transformTokenResponseCamelCase = transformTokenResponseCamelCase; | ||
@@ -97,2 +132,18 @@ const transformResponseCamelCase = data => { | ||
const transformAtomicResponseCamelCase = data => { | ||
if (data === undefined) { | ||
return undefined; | ||
} | ||
return { ...(0, _camelcaseKeys.default)(data, { | ||
deep: true | ||
}), | ||
...(data.metadata !== undefined ? { | ||
metadata: data.metadata | ||
} : {}) | ||
}; | ||
}; | ||
exports.transformAtomicResponseCamelCase = transformAtomicResponseCamelCase; | ||
const dataExtractor = res => res === null || res === void 0 ? void 0 : res.data; | ||
@@ -99,0 +150,0 @@ |
{ | ||
"name": "@basis-theory/basis-theory-js", | ||
"version": "1.0.0-alpha.27", | ||
"version": "1.0.0-alpha.28", | ||
"repository": "https://github.com/Basis-Theory/basis-theory-js", | ||
@@ -5,0 +5,0 @@ "license": "Apache-2.0", |
@@ -18,5 +18,6 @@ "use strict"; | ||
constructor(options) { | ||
super({ ...options, | ||
transformResponse: _utils.transformTokensResponseCamelCase, | ||
transformRequest: _utils.transformTokenRequestSnakeCase | ||
super({ | ||
transformResponse: _utils.transformTokenResponseCamelCase, | ||
transformRequest: _utils.transformTokenRequestSnakeCase, | ||
...options | ||
}); | ||
@@ -23,0 +24,0 @@ } |
@@ -7,3 +7,3 @@ import type { BasisTheoryElements } from './elements'; | ||
}; | ||
export declare type Services = 'tokens' | 'atomic' | 'applications' | 'reactorFormulas' | 'reactors' | 'permissions' | 'logs'; | ||
export declare type Services = 'tokens' | 'atomic' | 'applications' | 'reactorFormulas' | 'reactors' | 'atomicBanks' | 'atomicCards' | 'permissions' | 'logs'; | ||
export declare type ServicesMap = { | ||
@@ -10,0 +10,0 @@ [key in Services]: ServiceUrlMap; |
Sorry, the diff of this file is too big to display
168005
100
1918