veams-services

1.0.1 • Public • Published

Head to the site for detailed instructions.

Gitter Chat

Veams Services

Simple services provided for and by Veams.

Usage

Install the package:

npm install veams-services --save 

Just import the service you need:

import VeamsHttp from 'veams-services/lib/http';

Http Service

You can simple use the http service and modify it for your needs, for example:

import VeamsHttp from 'veams-services/lib/http';

let httpService = new VeamsHttp({
	type: 'json'
});

/** 
 * Override the default parser,
 * which only returns `responseText`
 */
httpService.parser = ({ request }) => {
	return {
		status: request.status,
		statusText: request.statusText,
		body: JSON.parse(request.responseText)
	};
};

class MyPagesService {
	url = 'http://localhost:3000/api/pages';
	http = httpService;

	/**
	 * Static id checker.
	 *
	 * @param {String} id - Id of the endpoint.
	 */
	static checkId(id) {
		if (!id || typeof id !== 'string') {
			throw new Error(`PagesService :: You have to provide an "id" and this "id" needs to be a string!`);
		}
	}

	/**
	 * Fetch data items from the endpoint.
	 */
	read() {
		return this.http.get(`${this.url}`);
	}

	/**
	 * Fetch data item by provided id from the endpoint.
	 *
	 * @param {String} id - Id of the endpoint.
	 */
	readById(id) {
		this.constructor.checkId(id);

		return this.http.get(`${this.url}/${id}`);
	}
}

const myPagesService = new MyPagesService();

export default myPagesService;

That's it!

Package Sidebar

Install

npm i veams-services

Homepage

veams.org/

Weekly Downloads

0

Version

1.0.1

License

MIT

Last publish

Collaborators

  • andy-gutsche
  • sebastian-fitzner