@redhat-cloud-services/rbac-client
v3.0.4
Published
If you want to use [RedHatInsights/rbac](https://github.com/RedHatInsights/rbac) you shouldn't use get requests directly, but rather use this client to integrate with this service.
Downloads
14,578
Keywords
Readme
Javascript client for the rbac API
If you want to use RedHatInsights/rbac you shouldn't use get requests directly, but rather use this client to integrate with this service.
Install
NPM
npm install --save @redhat-cloud-services/rbac-client
Or Yarn
yarn add @redhat-cloud-services/rbac-client
Usage
This client is using typescript and axios. Types are distributed with this package, so no need to define or install them separately.
This package comes with a client in its api.ts
already defined with every call available.
`import rbacClient from '@redhat-cloud-services/javascript-clients-shared/utils';
rbacClient.someEndpoint();
To bootstrap this API manually, you should create your own client via the APIFactory
defined in the @redhat-cloud-services/javascript-clients-shared
package. See below for an example:
import APIFactory from '@redhat-cloud-services/javascript-clients-shared/utils';
import exampleEndpoint from '@redhat-cloud-services/rbac-client/ExampleEndpoint';
// BASE_PATH should be set in your constants file
const rbacApi = APIFactory(BASE_PATH, undefined, { exampleEndpoint });
export rbacApi;
If you want to add some interceptors you can use axios build in interceptors
import axios from 'axios';
import APIFactory from '@redhat-cloud-services/javascript-clients-shared/utils';
import exampleEndpoint from '@redhat-cloud-services/rbac-client/ExampleEndpoint';
const instance = axios.create();
// Request interceptor
instance.interceptors.request.use((request) => {
// some logic to do with request
});
// Response interceptor
instance.interceptors.response.use((response) => {
// some logic to do with request
});
// Error interceptor
instance.interceptors.response.use(null, (error) => {
// some logic to do with error
});
// BASE_PATH should be set in your constants file
const rbacApi = APIFactory(BASE_PATH, instance, { exampleEndpoint });
export rbacApi;
Generating
Ensure you have the javascript-clients generator built first with npm run build:generator
. Then, run nx run @redhat-cloud-services/rbac-client:generate
to generate the package.
Building
Run nx run @redhat-cloud-services/rbac-client:build
to build the package. This creates the dist
for publishing.
Running unit tests
Run nx run @redhat-cloud-services/rbac-client:test
to execute the unit tests via Jest.