open-index/open-npm huggingface dataset:
npm package: @interactivetraining/acme-client
Description: Simple scalable automatic solution for obtaining SSL certificates.
Author: Interactive Training
Latest version: 0.1.6

# acme-client
Simple scalable automatic solution for obtaining SSL certificates.

## Example
```typescript
import * as https from 'https';
import {AcmeClient} from '@interactivetraining/acme-client';

new AcmeClient({
  domain: 'my-domain.com',
  email: 'support@my-domain.com',
  googleCloud: {
    projectId: process.env.GOOGLE_CLOUD_PROJECT_ID,
    bucketName: process.env.GOOGLE_CLOUD_SSL_BUCKET_NAME,
    credentials: {
      email: process.env.GOOGLE_CLOUD_CLIENT_EMAIL,
      privateKey: process.env.GOOGLE_CLOUD_CLIENT_PRIVATE_KEY
    }
  },
  cloudflare: {
    email: process.env.CLOUDFLARE_EMAIL,
    apiKey: process.env.CLOUDFLARE_API_KEY
  },
  fileNames: {
    cert: 'my-domain-prod-cert.pem',
    caCert: 'my-domain-prod-caCert.pem',
    privateKey: 'my-domain-prod-private-key.pem',
    accountKey: 'my-domain-prod-account-key.pem'
  },
  acmeServer: 'prod',
  agreeTerms: true
}).getCert().then((res) => {
  https.createServer({
    cert: res.cert,
    key: res.key
  }, () => {
    
  });
});
```
npm package: @interactivetraining/icons
Description: IT icon component
Author: Interactive Training
Latest version: 0.0.5

# it-icon

## Example
[codepen.io](https://codepen.io/adamlacombe/pen/yLBoJda)

```html 
<script src="https://unpkg.com/@interactivetraining/icons@latest/dist/it-icon.js"></script>

<it-icon name="api"></it-icon>
<it-icon name="consulting" size="small"></it-icon>
<it-icon name="offline-remote" size="medium"></it-icon>
<it-icon name="course-conversion" size="large"></it-icon>
```


<!-- Auto Generated Below -->


## Properties

| Property         | Attribute         | Description | Type                                                                                                                                                                                                                  | Default     |
| ---------------- | ----------------- | ----------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------- |
| `color`          | `color`           |             | `"danger" \| "dark" \| "light" \| "medium" \| "primary" \| "secondary" \| "success" \| "tertiary" \| "warning"`                                                                                                       | `undefined` |
| `name`           | `name`            |             | `"api" \| "consulting" \| "course-conversion" \| "course-developement" \| "custom-solutions" \| "digital-tools" \| "gamification" \| "launch-tools" \| "offline-remote" \| "polls" \| "reporting" \| "scorm-hosting"` | `undefined` |
| `secondaryColor` | `secondary-color` |             | `"danger" \| "dark" \| "light" \| "medium" \| "primary" \| "secondary" \| "success" \| "tertiary" \| "warning"`                                                                                                       | `undefined` |
| `size`           | `size`            |             | `"large" \| "medium" \| "small" \| "x-large"`                                                                                                                                                                         | `undefined` |
| `src`            | `src`             |             | `string`                                                                                                                                                                                                              | `undefined` |


----------------------------------------------

*Built with [StencilJS](https://stenciljs.com/)*
npm package: @interactivetraining/image-editor
Description: Interactive.Training Component: image-editor
Author: Interactive Training
Latest version: 0.0.3-beta-9

![Built With Stencil](https://img.shields.io/badge/-Built%20With%20Stencil-16161d.svg?logo=data%3Aimage%2Fsvg%2Bxml%3Bbase64%2CPD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDE5LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCA1MTIgNTEyIiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCA1MTIgNTEyOyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI%2BCjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI%2BCgkuc3Qwe2ZpbGw6I0ZGRkZGRjt9Cjwvc3R5bGU%2BCjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik00MjQuNywzNzMuOWMwLDM3LjYtNTUuMSw2OC42LTkyLjcsNjguNkgxODAuNGMtMzcuOSwwLTkyLjctMzAuNy05Mi43LTY4LjZ2LTMuNmgzMzYuOVYzNzMuOXoiLz4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTQyNC43LDI5Mi4xSDE4MC40Yy0zNy42LDAtOTIuNy0zMS05Mi43LTY4LjZ2LTMuNkgzMzJjMzcuNiwwLDkyLjcsMzEsOTIuNyw2OC42VjI5Mi4xeiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNDI0LjcsMTQxLjdIODcuN3YtMy42YzAtMzcuNiw1NC44LTY4LjYsOTIuNy02OC42SDMzMmMzNy45LDAsOTIuNywzMC43LDkyLjcsNjguNlYxNDEuN3oiLz4KPC9zdmc%2BCg%3D%3D&colorA=16161d&style=flat-square)

# Demo
[codepen](https://codepen.io/adamlacombe/full/qzKMXZ)

# Example
```html
<script src='https://unpkg.com/@interactivetraining/image-editor@latest/dist/it-image-editor.js'></script>
<it-image-editor></it-image-editor>
```

# Example 2
```html
<script src='https://unpkg.com/@interactivetraining/image-editor@latest/dist/it-image-editor.js'></script>
```

```javascript
function addImageEditor() {
  const editor = document.createElement('it-image-editor');
  editor.addEventListener('save', (e) => {
    console.log('save image', e.detail);
    
    const image = new Image();
    image.src = e.detail.base64;
    window.open("", '_blank').document.write(image.outerHTML);
  });
  document.body.appendChild(editor);
}

if (document.readyState === "interactive") {
  addImageEditor();
} else {
  document.addEventListener('DOMContentLoaded', () => addImageEditor());
}
```
npm package: @interactivetraining/le-challenge-cloudflare
Description: A Cloudflare challenge for greenlock
Author: Jan Buschtöns
Latest version: 1.3.1

# @ddg-gmbh/le-challenge-cloudflare

[`greenlock`](https://www.npmjs.com/package/greenlock) [ACME `dns-01`](https://tools.ietf.org/html/draft-ietf-acme-acme#section-8.5) challenge for [Cloudflare](https://www.cloudflare.com/).

## Prior Art

- [certbot-dns-cloudflare](https://github.com/certbot/certbot/tree/master/certbot-dns-cloudflare): The official certbot reference implementation by the EFF
- [llun/le-challenge-cloudflare](https://github.com/llun/le-challenge-cloudflare)

## Usage

```js
import Greenlock from 'greenlock';
import LEStoreCertbot from 'le-store-certbot';
import LEChallengeCloudflare from '@ddg-gmbh/le-challenge-cloudflare';

const store = LEStoreCertbot.create();

const DNSChallenge = new LEChallengeCloudflare({
  cloudflare: {
    email: process.env.cloudflare_email,
    key: process.env.cloudflare_api_key,
  },
  acmePrefix: '_acme-challenge', // default
  verifyPropagation: { waitFor: 5000, retries: 20 }, // default
  useDNSOverHTTPS: false // default
});

const greenlock = Greenlock.create({
  server: Greenlock.stagingServerUrl,
  store,
  challenges: { 'dns-01': DNSChallenge },
  challengeType: 'dns-01'
});

greenlock.register({
  domains: ['example.com'],
  email: 'admin@example.com',
  agreeTos: true,
  rsaKeySize: 2048
});
```
npm package: @interactivetraining/le-store-gcloud-storage
Description: Automatically store your Let's Encrypt certificates using Google Cloud Storage and Greenlock (node-greenlock)
Author: Interactive Training
Latest version: 0.0.2

# le-store-gcloud-storage
**ALPHA** - USE AT YOUR OWN RISK - PRs are welcome!


```typescript
import {GCloudStoreCreate} from '@interactivetraining/le-store-gcloud-storage'

require('greenlock-express').create({
  store: GCloudStoreCreate({
    bucketName: 'my-certs',
    projectId: 'google-cloud-project-id',
    keyFilename: '/path/to/google-cloud-key-file.json',
    dbFileName: 'my-certs-db.json'
  })
}).listen(80, 443, () => console.log(`Listening...`));
```
npm package: @interactjs/actions
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/auto-scroll
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/auto-start
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/core
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/dev-tools
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/inertia
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/interact
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/modifiers
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/pointer-events
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/reflow
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/types
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactjs/utils
Description: <h2> This package is an internal part of <a href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant to be used independently as each update may introduce breaking changes </h2>
Latest version: 1.10.27

<h2>
This package is an internal part of <a
href="https://www.npmjs.com/package/interactjs">interactjs</a> and is not meant
to be used independently as each update may introduce breaking changes
</h2>
npm package: @interactly-ai/web
Description: This package lets you make calls directly to Interactly in your webapp.
Author: Interactly
Latest version: 1.1.0

# Interactly Web SDK

This package lets you make calls directly to Interactly in your webapp.


## Installation


Install the package:
```json
$ npm i @interactly-ai/web
```

Import the Interactly class from the package:

```javascript
import Interactly from '@interaclty-ai/web';
```

Then, create a new instance of the Interactly class, passing your Public Key as a parameter to the constructor:

```javascript
const Interactly = new Interactly({
  apiToken: 'your-api-token',
  server: 'server-base-url'
});
```

You can start a call by calling the `start` method and passing an `assistant`:


```javascript
await Interactly.start('your-assistant-id');
```

You can stop the call by calling the `stop` method:

```javascript
await Interactly.stop();
```

This will stop the events listening and close the call session.


## Events

You can listen to the following events:

```javascript

Interactly.on('call-start', () => {
  console.log('Call has started');
});

Interactly.on('call-end', () => {
  console.log('Call has stopped');
});


// Assistant messages and transcripts will be sent via messages
Interactly.on('message', (message) => {
  console.log(message);
});

Interactly.on('error', (e) => {
  console.error(e);
});
```

These events allow you to react to changes in the state of the call or speech.

## License

```
MIT License

2024 (c) interactly.ai

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
```
npm package: @interactor/percy
Description: Take Percy snapshots with Interactor.js
Author: Wil Wilsman
Latest version: 0.2.2

# @interactor/percy [![CircleCI](https://circleci.com/gh/wwilsman/interactor-percy.svg?style=svg)](https://circleci.com/gh/wwilsman/interactor-percy)

Take [Percy](https://percy.io) snapshots with [Interactor.js](https://interactorjs.io).

## Usage

First, install `interactor.js` and `@interactor/percy`:

``` sh
$ yarn add --dev interactor.js @interactor/percy
```

Then import and use it in your interactors and tests:

``` javascript
import interactor from 'interactor.js';
import percySnapshot from '@interactor/percy';

// with a custom interactor
@interactor class PageInteractor {
  // ...as an action without args
  snapshot = percySnapshot('My Page');
  // ...or accept and merge other args
  snapshot(title, options) {
    return percySnapshot(`My Page - ${title}`, options);
  }
}

// ...
await new PageInteractor()
  .assert.exists('.page-selector')
  .snapshot('Initial page load')

// use the action directly without custom interactors
await percySnapshot('My Snapshot');
```

Finally, make sure to run your tests with your `PERCY_TOKEN` using the `percy
exec` command:

``` sh
$ export PERCY_TOKEN=<your token here>
$ yarn percy exec -- yarn test
```

### Arguments

**percySnapshot(snapshotName, options)**

- `snapshotName`: a required string that will be used as the snapshot
  name. It can be any string that makes sense to identify the page state. It
  should be unique and remain the same across builds.

- `options`: an optional hash that can include:
  - `widths`: an array of integers representing the browser widths at which
    you want to take snapshots.
  - `minHeight`: an integer specifying the minimum height of the resulting
    snapshot, in pixels. Defaults to 1024px.


## License

[MIT](https://github.com/wwilsman/interactor-percy/blob/master/LICENSE)
npm package: @interactors/core
Description: [![npm](https://img.shields.io/npm/v/@interactors/core.svg)](https://www.npmjs.com/package/@interactors/core) [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT) [![Created by Frontside](https://img.
Author: Frontside Engineering
Latest version: 1.0.1

# @interactors/core

[![npm](https://img.shields.io/npm/v/@interactors/core.svg)](https://www.npmjs.com/package/@interactors/core)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Created by Frontside](https://img.shields.io/badge/created%20by-frontside-26abe8.svg)](https://frontside.com)
[![Chat on Discord](https://img.shields.io/discord/700803887132704931?Label=Discord)](https://discord.gg/mv4uxxcAKd)

Page Objects for component libraries and design systems. Learn more at
[https://frontside.com/interactors](https://frontside.com/interactors)
npm package: @interactors/html
Description: Interactors for the DOM
Author: Frontside Engineering
Latest version: 1.0.1

# @interactors/html

[![npm](https://img.shields.io/npm/v/@interactors/html.svg)](https://www.npmjs.com/package/@interactors/html)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Created by Frontside](https://img.shields.io/badge/created%20by-frontside-26abe8.svg)](https://frontside.com)
[![Chat on Discord](https://img.shields.io/discord/700803887132704931?Label=Discord)](https://discord.gg/mv4uxxcAKd)

Page Objects for component libraries and design systems. Learn more at
[https://frontside.com/interactors](https://frontside.com/interactors)
npm package: @interactors/keyboard
Description: Interactors for simulating the keyboard
Author: Frontside Engineering
Latest version: 1.0.1

# @interactors/keyboard

[![npm](https://img.shields.io/npm/v/@interactors/html.svg)](https://www.npmjs.com/package/@interactors/html)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Created by Frontside](https://img.shields.io/badge/created%20by-frontside-26abe8.svg)](https://frontside.com)
[![Chat on Discord](https://img.shields.io/discord/700803887132704931?Label=Discord)](https://discord.gg/mv4uxxcAKd)

Page Objects for component libraries and design systems. Learn more at
[https://frontside.com/interactors](https://frontside.com/interactors)
npm package: @interactors/material-ui
Description: BigTest interactors for material-ui.com components.
Author: Frontside Engineering
Latest version: 5.0.0

# @interactors/material-ui

[![npm](https://img.shields.io/npm/v/@interactors/material-ui.svg)](https://www.npmjs.com/package/@interactors/material-ui)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Created by Frontside](https://img.shields.io/badge/created%20by-frontside-26abe8.svg)](https://frontside.com)
[![Chat on Discord](https://img.shields.io/discord/700803887132704931?Label=Discord)](https://discord.gg/mv4uxxcAKd)

[Interactors][] are Page Objects for component libraries and design systems.
This package contains interactors for [Material-UI][]. Learn more about using
Material UI Interactors at
[https://frontside.com/interactors/docs/library#material-ui](https://frontside.com/interactors/docs/library#material-ui)

[Interactors]: https://frontside.com/interactors
[Material-UI]: https://material-ui.com
npm package: @interactors/with-cypress
Description: Cypress Integration for Interactors
Author: Frontside Engineering
Latest version: 1.0.0

## @interactors/with-cypress

[![npm](https://img.shields.io/npm/v/@interactors/with-cypress.svg)](https://www.npmjs.com/package/@interactors/with-cypress)
[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
[![Created by Frontside](https://img.shields.io/badge/created%20by-frontside-26abe8.svg)](https://frontside.com)
[![Chat on Discord](https://img.shields.io/discord/700803887132704931?Label=Discord)](https://discord.gg/mv4uxxcAKd)

[Interactors][] are Page Objects for component libraries and design systems.
This package lets you use them seamlessly within [Cypress][]. Learn more at
[https://frontside.com/interactors/docs/cypress](https://frontside.com/interactors/docs/cypress)

[Interactors]: https://frontside.com/interactors
[Cypress]: https://cypress.io
npm package: @interactwith/node
Description: Dependency-less node SDK for interacting with the InteractWith API
Author: @bytesbay Miroslaw Shpak
Latest version: 0.0.4

# InteractWith Node SDK

InteractWith Node SDK is a library for interacting with InteractWith API.

## Installation

```bash
npm install @interactwith/node
```

## Usage

```javascript
const { InteractWith } = require('@interactwith/node');

const iw = new InteractWith({
  api_key: 'pk_YOUR_API_KEY',
})

const user = await iw.me();
```

## Documentation

For more information, please visit [InteractWith API documentation](https://docs.interactwith.com/docs/api/intro).

## License
InteractWith Node SDK is released under the MIT license. © 2021 Miroslaw Shpak