# Install

```
npm install webrtc-frontend-library --save
```

---

## Imports

Import the components and constants from the package into the file:

```
import { VideoChat, LS_WEBRTK_TOKEN_KEY } from 'webrtc-frontend-library'
```

#### Important

After logging the user into your application, you should set the access token in the local storage of the browser for the chat components:

```
localStorage.setItem(LS_WEBRTK_TOKEN_KEY, access_token)
```

After calling the function to refresh a token from your app, the new received token must be installed in local storage of the browser under the key `LS_WEBRTK_TOKEN_KEY` and returned from the function.

---

### VideoChat Component

```
import { VideoChat } from "chat-frontend-library";

  <VideoChat
    roomId="roomId"
    handleError={cbHandleError}
    handleClose={cbHandleClose}
    user_locale='user_locale'
    />
```

##### VideoChat props

| prop          | default | type     | description                                                                                                              |
| :------------ | :------ | :------- | :----------------------------------------------------------------------------------------------------------------------- |
| roomId        | none    | string   | Room id to connect                                                                                                       |
| user_locale   | ru/en   | string   | Chat interface language. The browser language is set by default                                                          |
| cbHandleClose | none    | function | A callback function that is called when the user clicks the leave call button                                            |
| cbHandleError | none    | function | An asynchronous callback function that is called if the chat API call returns an error. Should return the new user token |
| isDisabledButtonJoin | none    | boolean | Disable or allow click on join call button |

---
