@janiscommerce/api-browse

2.0.0 • Public • Published

API Browse

Build Status Coverage Status

A package to handle JANIS Views Browse APIs

Installation

npm install @janiscommerce/api-browse

Usage

  • API Browse Data
'use strict';

const { ApiBrowseData } = require('@janiscommerce/api-browse');

class MyApiBrowseData extends ApiBrowseData {

	get sortableFields() {
		return [
			'id',
			'status'
		];
	}

	get availableFilters() {
		return [
			'id',
			{
				name: 'status',
				valueMapper: Number
			}
		];
	}

	async formatRows(rows) {
		return rows.map(row => ({ ...row, oneMoreField: true }));
	}

}

module.exports = MyApiBrowseData;
  • API Browse Filters
'use strict';

const { ApiBrowseFilters } = require('@janiscommerce/api-browse');

class MyApiBrowseFilters extends ApiBrowseFilters {

	get getFiltersValues() {
		return {
			someField: {
				options: [
					{ label: 'some.label1', value: 1 },
					{ label: 'some.label2', value: 2 }
				]
			}
		};
	}

}

module.exports = MyApiBrowseFilters;

Function minimal configuration

functions:
  handler: path/to/your.handler
  events:
    - http:
        integration: lambda
        path: view/{entity}/browse/data
        method: GET
        request:
          parameters:
            paths:
              entity: true

Readme

Keywords

none

Package Sidebar

Install

npm i @janiscommerce/api-browse

Weekly Downloads

0

Version

2.0.0

License

ISC

Unpacked Size

11.1 kB

Total Files

12

Last publish

Collaborators

  • janiscommerce