Skip to main content

@auvious/common / ApiResource

Class: ApiResource

Api resource implementation for auvious' services. This instance should be used for saving & reading on a specific resource over HTTP.

Hierarchy​

Table of contents​

Constructors​

Properties​

Accessors​

Methods​

Constructors​

constructor​

• new ApiResource(client, route, version?): ApiResource

Parameters​

NameTypeDefault value
clientAuviousCommonundefined
routestringundefined
versionstring"1.0"

Returns​

ApiResource

Properties​

_client​

• Protected _client: AuviousCommon


_postman​

• Protected _postman: Postman


_route​

• Protected _route: string


_version​

• Protected _version: string


log​

• Protected log: Logger

Accessors​

parentClient​

• get parentClient(): AuviousCommon

Gets the parent client of the api resource.

Returns​

AuviousCommon


route​

• get route(): string

Gets the resource default route. This is what is this._appended on the server url, before any route parameters.

.eg an api resource of route '/api/user' will get from http://server.url/api/user

Returns​

string


version​

• get version(): string

Gets the resource default version. This should be set in every request's X-REQUESTED-VERSION header.

Returns​

string

Methods​

_apiCall​

▸ _apiCall<ResourceT>(ResourceTctor, method, config, retries?, initialDelay?, maxDelay?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameTypeDefault value
ResourceTctor(args: any) => ResourceTundefined
methodstringundefined
configanyundefined
retriesnumber3
initialDelaynumber1000
maxDelaynumber8000

Returns​

Promise<ResourceT>


_appendReadHeaders​

▸ _appendReadHeaders(config): void

Parameters​

NameType
configany

Returns​

void


_appendWriteHeaders​

▸ _appendWriteHeaders(config): void

Parameters​

NameType
configany

Returns​

void


create​

▸ create(data, config?): Promise<any>

Parameters​

NameType
dataany
configany

Returns​

Promise<any>


createGeneric​

▸ createGeneric<ResourceT>(ResourceTctor, data, config?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
dataany
configany

Returns​

Promise<ResourceT>


delete​

▸ delete(config?): Promise<any>

Parameters​

NameType
configany

Returns​

Promise<any>


deleteById​

▸ deleteById(id, config?): Promise<any>

Parameters​

NameType
idstring
configany

Returns​

Promise<any>


deleteByIdGeneric​

▸ deleteByIdGeneric<ResourceT>(ResourceTctor, id, config?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
idstring
configany

Returns​

Promise<ResourceT>


deleteGeneric​

▸ deleteGeneric<ResourceT>(ResourceTctor, config?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
configany

Returns​

Promise<ResourceT>


get​

▸ get(config?): Promise<any>

Just GET the god-damn thing.

Parameters​

NameTypeDescription
configanyaxios compatible config

Returns​

Promise<any>

http response body


getById​

▸ getById(id, config?): Promise<any>

Parameters​

NameType
idstring
configany

Returns​

Promise<any>


getByIdGeneric​

▸ getByIdGeneric<ResourceT>(ResourceTctor, id, config?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
idstring
configany

Returns​

Promise<ResourceT>


getGeneric​

▸ getGeneric<ResourceT>(ResourceTctor, config?): Promise<any>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
configany

Returns​

Promise<any>


getPaged​

▸ getPaged(page, size, config?): Promise<any>

Parameters​

NameType
pagenumber
sizenumber
configany

Returns​

Promise<any>


getPagedGeneric​

▸ getPagedGeneric<ResourceT>(ResourceTctor, page, size, config?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
pagenumber
sizenumber
configany

Returns​

Promise<ResourceT>


update​

▸ update(data, config?): Promise<any>

Parameters​

NameType
dataany
configany

Returns​

Promise<any>


updateById​

▸ updateById(id, data, config?): Promise<any>

Parameters​

NameType
idstring
dataany
configany

Returns​

Promise<any>


updateByIdGeneric​

▸ updateByIdGeneric<ResourceT>(ResourceTctor, id, data, config?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
idstring
dataany
configany

Returns​

Promise<ResourceT>


updateGeneric​

▸ updateGeneric<ResourceT>(ResourceTctor, data, config?): Promise<ResourceT>

Type parameters​

NameType
ResourceTextends ApiResourceModel

Parameters​

NameType
ResourceTctor(args: any) => ResourceT
dataany
configany

Returns​

Promise<ResourceT>