@onewelcome/ujo-ui-sdk
TypeScript icon, indicating that this package has built-in type declarations

1.0.0 • Public • Published

ujo-ui-sdk

CircleCI This SDK project, contains reusable business logic and API calls for ujo-ui.

Overview

This SDK is designed to simplify the process of integrating with UJO Core API in UI application. By using this SDK, your UI application can call the exposed SDK methods instead of directly calling the API. The SDK handles API calls internally, applies necessary business logic, and returns a transformed response to the UI.

Features

  • Simplified API integration
  • Handles internal API calls
  • Error handling
  • Applies business logic
  • Returns transformed responses

Installation

To install the SDK, you can use npm or yarn:

  npm install @onewelcome/ujo-ui-sdk

  or

  yarn add @onewelcome/ujo-ui-sdk

Usage

To use the SDK, you can import it into your UI application and call the exposed methods.

Importing the SDK

First, import the SDK into your project:

  import { UjoCoreApi, ..., ... } from '@onewelcome/ujo-ui-sdk';

Initializing the SDK and using the methods

Initialize the SDK with the necessary configuration:

  try {
    const api = new UjoCoreApi({
      basePath: window.location.origin //'http://localhost:3000'
    });

    const response = await api.initiateJourney({
      contextToken: contextToken
    });

    console.log(response);
    // Handle the transformed response

  } catch (e) {
    console.error(error);
    // Handle errors
  }

Available Methods

initiateJourney(reqParam: InitiateJourneyRequestPayload): Promise<InitiateJourneyInstanceResponse>

Initiate a journey with the provided request parameters

  • Parameters:
    • reqParam(InitiateJourneyRequestPayload): Request parameters for initiating the journey.
  • Returns:
    • A Promise that resolves to InitiateJourneyInstanceResponse .

getSteps(reqParam: GetStepRequest): Promise<JourneyInstanceResponse>

Fetches steps from the backend API.

  • Parameters:
    • reqParam(GetStepRequest): Request parameters for getStep API call.
  • Returns:
    • A Promise that resolves to JourneyInstanceResponse.

updateStep(reqParam: UpdateStepOperationRequest): Promise<JourneyInstanceResponse>

Update step on the backend API.

  • Parameters:
    • reqParam(UpdateStepOperationRequest): Request parameters for update step API call.
  • Returns:
    • A Promise that resolves to JourneyInstanceResponse.

Contributing

If you wish to contribute to the development of this SDK, please follow these steps:

Getting Started

  1. Fork the repository: Click on the 'Fork' button at the top right corner of the repository page to create a copy of the repository under your GitHub account.
  2. Clone the forked repository: Clone the forked repository to your local machine.
    git clone https://github.com/onewelcome/ujo-ui-sdk.git
    git checkout -b feature-or-bugfix-branch-name
    cd ujo-ui-sdk
    npm install
  3. To start development:
    • Make your changes
    • check if build passes by running npm run build or;
    • run test in watch mode npm run test:watch to automatic code compiling enabled
    • For more command check package.json file script section.
    • Submit a pull request

Release

To generate a release, create a tag with next version.

Readme

Keywords

none

Package Sidebar

Install

npm i @onewelcome/ujo-ui-sdk

Weekly Downloads

5

Version

1.0.0

License

Apache-2.0

Unpacked Size

54.4 kB

Total Files

76

Last publish

Collaborators

  • eldeguzman
  • lubos-tomsa
  • vladislavsolodki
  • yastha
  • imad.nasr
  • vinayak.goge
  • akos.szeredai
  • matthew.davis
  • sahsingh
  • tri-t.hoang
  • ana-mariastratulat
  • ioprea99
  • ylithales
  • osvso
  • ana-maria.stratulat
  • adam.klinkosz
  • pawel.remiszewski.thales
  • yannick.gadimi
  • piotr.czarnecki
  • andreini
  • karolrom-thales
  • hubert.krasnodebski.thales
  • anegapatan
  • niranjan.litu
  • handelbatista
  • bamanuelthales
  • muein.muzamil
  • shehryar.ahmed
  • cristian.stan
  • anamikathales
  • arushi_21
  • grchis
  • amit-a.agrawal
  • vaisgoel
  • dayasakti-2020
  • vlee-thales
  • tkokasih-thalesgroup
  • lihzheng87
  • bahari-ilmy
  • gong-thalesgroup
  • wthabet
  • ankit-thales
  • mihai.petrica
  • jagdeep.singh
  • nickleguerrier
  • binxu.thalesgroup
  • aleknow
  • bartvanderschans
  • dieter.derouck
  • dzaow
  • tpieczko-ow
  • thalesankit
  • hitesh-k-ow
  • akhanna
  • mihaizhao
  • moldovansergiu
  • thalesvvikas
  • paulvriens
  • thalesshubham
  • shrawan.bhagwat
  • jmpavlec
  • iosif.bujor
  • neleflow123
  • michal.gorski
  • kubaslowikowskiow
  • dirkstals
  • lode
  • pawel-napieracz
  • elias.serneels