open-index/open-npm huggingface dataset:
npm package: @nabla/janus-client
Description: Javascript client for Janus-Gateway server
Author: pierre@nabla.com
Latest version: 1.0.0

# janus-client

Javascript web client for a WebRTC [Janus](https://github.com/meetecho/janus-gateway) server.  
The js file comes from the official Janus repository while the typing one, `index.d.ts` is tailored for the videoroom plugin.

## Install

`yarn add @nabla/janus-client`

## Usage

```javascript
import Janus, { JSEP, PluginHanlde } from "@nabla/janus-client";

let session: Janus;
let localHandle: PluginHandle;
const opaqueId = "<OPAQUE_ID>";

Janus.init({
  debug: true,
  callback: () => {
    session = new Janus({
      server: serverUrl, // TODO get media server url dynamically from back-end
      withCredentials: true,
      success: () => {
        session.attach({
          plugin: "janus.plugin.videoroom",
          opaqueId,
          success: (pluginHandle) => {
            localHandle = pluginHandle;

            pluginHandle.send({
              message: {
                request: "join",
                room: 1234, // Your room id
                ptype: "publisher",
                display: "<USER_NAME>",
              },
            });
          },
          error: (err) => {
            // ...
          },
          iceState: (state) => {
            // ...
          },
          mediaState: (medium, on) => {
            // ...
          },
          webrtcState: (on) => {
            // ...
          },
          slowLink: () => {
            // ...
          },
          onmessage: (msg, jsep) => {
            const event = msg.videoroom;
            if (event === "joined") {
              // We can publish our own feed;
              // ...

              if (msg.publishers) {
                for (const p of msg.publishers) {
                  // Add remote feed
                  // ...
                }
              }
            } else if (event === "event") {
              if (msg.publishers) {
                // There are new participants joining the room
                for (const p of msg.publishers) {
                  // Add remote feed
                  // ...
                }
              } else if (msg.leaving) {
                // A participant is leaving the room...
                // ...
              } else if (msg.unpublished) {
                // A participant unpublished
                // ...
              }
            } else if (event === "destroyed") {
              // The room is closed...
            }

            if (jsep) {
              localHandle.handleRemoteJsep({ jsep });
            }
          },
          onlocalstream: (stream) => {
            // local video can be attached
          },
          // ...
        });
      },
      error: (err) => {
        // An error occured
      },
    });
  },
});
```
npm package: @nabla/js
Description: The Nabla JS SDK makes it quick and easy to build an excellent healthcare communication experience in your web app.
Author: Nabla
Latest version: 1.0.0-alpha03

# Nabla JS SDK

The [Nabla](https://www.nabla.com/) JS SDK makes it quick and easy to build an excellent healthcare communication experience in your web app.

Right now the library is in alpha, meaning all core features are here and ready to be used but API might change during the journey to a stable 1.0 version.

## Documentation

Check our [documentation portal](https://docs.nabla.com/docs/concepts-js) for in depth documentation about integrating the SDK.

Install the SDK by running:

```sh
yarn add @nabla/js
```

or

```sh
npm install --save @nabla/js
```

You can find the latest version available in the [release page](https://github.com/nabla/nabla-js/releases).

## Need more help?

If you need any help with the set-up of the SDK or the Nabla platform, please contact us on [our website](https://nabla.com). We are available to answer any question.
npm package: @nabla/react-native-core
Description: Nabla Core SDK
Author: Nabla
Latest version: 1.1.3

# Nabla Core SDK

## Documentation

Check our [documentation portal](https://docs.nabla.com/) for in depth documentation about integrating and using the SDK.

## Installation

```sh
npm install --save '@nabla/react-native-core'
```

Or

```sh
yarn add '@nabla/react-native-core'
```

## Setup

You can find detailed documentation and code samples of the Core SDK setup in the [setup documentation](https://docs.nabla.com/docs/init-rn)

## License

MIT
npm package: @nabla/react-native-messaging-core
Description: Nabla Messaging Core SDK
Author: Nabla
Latest version: 1.1.3

# Nabla Messaging Core SDK

## Documentation

Check our [documentation portal](https://docs.nabla.com/) for in depth documentation about integrating and using the SDK.

## Installation

```sh
npm install --save '@nabla/react-native-messaging-core'
```

```sh
yarn add '@nabla/react-native-messaging-core'
```

## Usage

You can find detailed documentation and code samples of the MessagingCore SDK usage in the [documentation](https://docs.nabla.com/docs/messaging-core-rn)

## License

MIT
npm package: @nabla/react-native-messaging-ui
Description: Nabla Messaging UI SDK
Author: Nabla
Latest version: 1.1.3

# Nabla Messaging UI SDK

## Documentation

Check our [documentation portal](https://docs.nabla.com/) for in depth documentation about integrating and using the SDK.

## Installation

```sh
npm install --save '@nabla/react-native-messaging-ui'
```

Or

```sh
yarn add '@nabla/react-native-messaging-ui'
```

## Usage

You can find detailed documentation and code samples of the MessagingUI SDK usage in the [documentation](https://docs.nabla.com/docs/messaging-ui-components-rn)

## License

MIT
npm package: @nabla/react-native-scheduling
Description: Nabla Scheduling SDK
Author: Nabla
Latest version: 1.1.3

# Nabla Scheduling SDK

## Documentation

Check our [documentation portal](https://docs.nabla.com/) for in depth documentation about integrating and using the SDK.

## Installation

```sh
npm install --save '@nabla/react-native-scheduling'
```

Or

```sh
yarn add '@nabla/react-native-scheduling'
```

## Usage

You can find detailed documentation and code samples of the Scheduling SDK setup and usage in the [documentation](https://docs.nabla.com/docs/scheduling-setup-rn)

## License

MIT
npm package: @nabla/react-native-video-call
Description: Nabla Video Call SDK
Author: Nabla
Latest version: 1.1.3

# Nabla Video Call SDK

## Documentation

Check our [documentation portal](https://docs.nabla.com/) for in depth documentation about integrating and using the SDK.

## Installation

```sh
npm install --save '@nabla/react-native-video-call'
```

Or

```sh
yarn add '@nabla/react-native-video-call'
```

## Usage

You can find detailed documentation and code samples of how to configure video calls for messaging and scheduling in these pages:  
- [Messaging video calls](https://docs.nabla.com/docs/messaging-video-calls-rn)
- [Scheduling setup](https://docs.nabla.com/docs/scheduling-setup-rn#setup-scheduling-module)

## License

MIT
npm package: @nabla/tnode
Description: Simple node wrapper that runs esbuild on TS files
Author: Arnaud Barré
Latest version: 0.9.0

# tnode [![npm](https://img.shields.io/npm/v/@nabla/tnode)](https://www.npmjs.com/package/@nabla/tnode)

Simple node wrapper that runs esbuild on TS files.

## Install

```shell
npm i -D @nabla/tnode
```

- For `esbuild@0.17` use `@nabla/tnode@0.9` (latest)
- For `esbuild@0.16` use `@nabla/tnode@0.8`
- For `esbuild@0.15` use `@nabla/tnode@0.7`

## Usage in package.json scripts

```json
{
  "scripts": {
    "codegen": "tnode scripts/codegen.ts"
  }
}
```

## Usage with Jest

Add in `package.json`

```json
{
  "jest": {
    "rootDir": "src",
    "transform": {
      "\\.ts": "@nabla/tnode/jest"
    }
  }
}
```

## Usage in independent scripts

```shell
npm i -g @nabla/tnode
```

```ts
#!/usr/bin/env tnode

console.log("It just works!");
```
npm package: @nabla/vite-plugin-eslint
Description: Plugs ESLint into Vite dev server
Author: Arnaud Barré
Latest version: 3.0.1

# @nabla/vite-plugin-eslint [![npm](https://img.shields.io/npm/v/@nabla/vite-plugin-eslint)](https://www.npmjs.com/package/@nabla/vite-plugin-eslint)

Plugs ESLint into Vite dev server.

## Differences with [vite-plugin-eslint](https://github.com/gxmari007/vite-plugin-eslint)

- Keeps HMR fast: linting is done asynchronously and doesn't block the transform process
- Reduces noise: Display results via console logs

![logs.png](logs.png)

Because of this, the plugin can't fail the build and is only applied in dev. Like typechecking, linting should be done before or in parallel of the build command.

## Install

`yarn add --dev @nabla/vite-plugin-eslint`

## Usage

```ts
import { defineConfig } from "vite";
import eslintPlugin from "@nabla/vite-plugin-eslint";

export default defineConfig({
  plugins: [eslintPlugin()],
});
```

## Options

### eslintOptions

- Type: [ESLint.Options](https://eslint.org/docs/developer-guide/nodejs-api#-new-eslintoptions)
- Default: `{ cache: true }`

Note: the `fix` option is only supported from `1.3.4`

### shouldLint

- Type: `(path: string) => boolean`
- Default: `(path) => path.match(/\/src\/[^?]*\.(vue|svelte|m?[jt]sx?)$/)`

You can use `DEBUG=eslint node_modules/.bin/vite` to debug this option (available in `1.4.0`)

### formatter

- Type: `string | ((result: ESLint.LintResult) => void)`
- Default: Custom format with one line per warning/error.

If provided, the value is passed to `eslint.loadFormatter`. Use `stylish` to get a CRA like output. Async formatters are supported in `1.5.0`. Function support was added in `2.0.2`.