0.2.16 • Published 24 days ago

larapi v0.2.16

Weekly downloads
-
License
MIT
Repository
github
Last release
24 days ago

Laravel API Client

The simple package for authorization with token and data cache

Install

npm i larapi

First step

you can create instance or use static methods for first configuration and for further use

const api = new API({
	host: 'https://my-host'
});
...
API.setHost('https://my-host');

To use typing - use new instanse

The first argument of the class takes the type of requests, and the second the type of the user

type TTodo = {
	id: number;
	userId: number;
	title: string;
	completed: boolean;
};

type TApiTodos = {
	success: {
		'todos': () => TTodo[],
		[path: `todos/${number}`]: (request: Omit<TTodo, 'id'>) => TTodo;
	},
	error: {
		message: string;
	}
};

const api = new API<TApiTodos>({
	host: 'https://jsonplaceholder.typicode.com/',
});
...

api.get({
	path: 'todos/1',
	success: (e) => {
		console.log(e.id);
	},
	error: (e) => {
		console.log(e);
	}
});

Authorization

token useds in the header Authorization: Bearer

api.setToken('token');
api.setUser({...object-user});

you can use method getUser or property user for get user object

api.getUser();
...
api.user;

Requests

Get

api.get({
  path: '/test',
  success: (e) => {
    console.log(e)
  }
});

Post

api.post({
  path: '/test',
  data: {
    message: 'hello world'
  }
  success: (e) => {
    console.log(e)
  }
});

Cache

for create simple cache use boolean true in the "cache" property

const request = api.get({
  path: '/test',
  cache: true,
  ...
});

if you need clear current cache - use method "clearCache"

request.clearCache();

or you can use method "updateCache" for update current cache data in the current request

first argument in the method is object updated data, and last argument is key field for search in the current cache, if you need update all data use null

request.updateCache({
  message: 'update this string'
}, null);
0.2.16

24 days ago

0.2.15

2 months ago

0.2.14

2 months ago

0.2.13

3 months ago

0.2.12

3 months ago

0.2.11

3 months ago

0.2.10

3 months ago

0.2.9

4 months ago

0.2.8

4 months ago

0.2.7

4 months ago

0.2.6

4 months ago

0.2.5

4 months ago

0.2.1

6 months ago

0.2.0

6 months ago

0.2.3

6 months ago

0.2.2

6 months ago

0.2.4

6 months ago

0.1.8

7 months ago

0.1.9

6 months ago

0.1.2

7 months ago

0.1.7

7 months ago

0.1.4

7 months ago

0.1.6

7 months ago

0.1.5

7 months ago

0.1.1

9 months ago

0.1.0

9 months ago

0.0.9

9 months ago

0.0.8

9 months ago

0.0.7

9 months ago

0.0.6

9 months ago

0.0.5

9 months ago

0.0.4

9 months ago

0.0.3

9 months ago

0.0.2

9 months ago

0.0.1

9 months ago

1.0.0

5 years ago