open-index/open-npm huggingface dataset:
npm package: @leonardosalles/samsung-tv-control
Description: Remote your tv via JS!
Author: Anton Palgunov
Latest version: 1.8.2

## 📺 Library for remote control Samsung TV in your NodeJS application.

_Tested with Samsung UE43NU7400 and UN55NU7100_

[![Build Status](https://travis-ci.org/Toxblh/samsung-tv-control.svg?branch=master)](https://travis-ci.org/Toxblh/samsung-tv-control)
[![codecov](https://codecov.io/gh/Toxblh/samsung-tv-control/branch/master/graph/badge.svg)](https://codecov.io/gh/Toxblh/samsung-tv-control)
[![Latest Stable Version](https://img.shields.io/npm/v/samsung-tv-control.svg)](https://www.npmjs.com/package/samsung-tv-control)
[![Dependency Status](https://david-dm.org/Toxblh/samsung-tv-control.svg)](https://david-dm.org/Toxblh/samsung-tv-control)
[![devDependency Status](https://david-dm.org/Toxblh/samsung-tv-control/dev-status.svg)](https://david-dm.org/Toxblh/samsung-tv-control#info=devDependencies)
[![Downloads total](https://img.shields.io/npm/dt/samsung-tv-control.svg)](https://www.npmjs.com/package/samsung-tv-control)
[![Downloads month](https://img.shields.io/npm/dm/samsung-tv-control.svg)](https://www.npmjs.com/package/samsung-tv-control)
[![License](https://img.shields.io/npm/l/samsung-tv-control.svg)](https://www.npmjs.com/package/samsung-tv-control) [![Paypal Donate](https://img.shields.io/badge/paypal-donate-blue.svg)](https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=WUAAG2HH58WE4) [![Patreon](https://img.shields.io/badge/patreon-support-blue.svg)](https://www.patreon.com/toxblh)

## [📖 Documentation](https://toxblh.github.io/samsung-tv-control/)


## Installation

Requires Node v9 or above.

`npm install samsung-tv-control --save`

## <img src="http://nodered.org/node-red-icon.png" height="32px" /> NODE-RED

Also you can use the lib in your Node-RED https://github.com/Toxblh/node-red-contrib-samsung-tv-control

## Usage

You can try [example code](example/index.js)

```js
const { Samsung, KEYS, APPS } = require('samsung-tv-control')

const config = {
  debug: true, // Default: false
  ip: '192.168.1.2',
  mac: '123456789ABC',
  name: 'NodeJS-Test', // Default: NodeJS
  port: 8001, // Default: 8002
  token: '12345678',
}

const control = new Samsung(config)

control.turnOn()
control
  .isAvaliable()
  .then(() => {
    // Get token for API
    control.getToken(token => {
      console.info('# Response getToken:', token)
    })

    // Send key to TV
    control.sendKey(KEYS.KEY_HOME, function(err, res) {
      if (err) {
        throw new Error(err)
      } else {
        console.log(res)
      }
    })

    // Get all installed apps from TV
    control.getAppsFromTV((err, res) => {
      if (!err) {
        console.log('# Response getAppsFromTV', res)
      }
    })

    // Open app by appId which you can get from getAppsFromTV
    control.openApp(APPS.YouTube, (err, res) => {
      if (!err) {
        console.log('# Response openApp', res)
      }
    })
  })
  .catch(e => console.error(e))
```

## Commands List

All commands you can find [here](src/keys.ts)

All popular apps you can find [here](src/apps.ts)
npm package: @leonardovaq/chatbot-widget
Description: Native and Customizable Web Component Chat Widget for n8n or any API REST
Author: Leonardo Vaquel
Latest version: 1.0.6

# @leonardovaq/chatbot-widget 🚀

Un Web Component ligero, sin dependencias y ultra optimizado para conectar cualquier sitio web con tu instancia de **n8n AI** o cualquier **API REST**.

## Características

- ⚡ **Zero Dependencies:** Hecho con Vanilla JS y Shadow DOM.
- 📦 **Nativo:** Funciona en React, Vue, Angular o HTML puro.
- 🎨 **Personalizable:** Cambia colores y nombres mediante atributos.
- 🧠 **Persistencia:** Gestiona sesiones automáticamente para mantener la memoria del chat (Postgres Ready).

## Instalación

```bash
npm install @leonardovaq/chatbot-widget
```

O vía CDN:

```html
<script type="module" src="https://unpkg.com/@leonardovaq/chatbot-widget/dist/chatbot-widget.js"></script>
```

## Uso Básico  

```html
<chat-bot 
    url="https://tu-n8n.com/webhook/chat"
    bot-name="Chatbot Widget"
    input-key="chatInput"
    output-key="output">
</chat-bot>
```

## Personalización Completa  

Puedes configurar el comportamiento mediante los **Atributos** y el diseño visual mediante las **Variables CSS**  

1. **Atributos (Configuración)**  

| **Atributo** | **Descripción** | **Default** |
|--|--|--|
| `url` | URL del Webhook de n8n (o API externa). | `""` |
| `bot-name` | Nombre que aparecerá en el header y avisos. | `"Chat"` |
| `input-key` | La key del JSON body que espera tu server con el mensaje del usuario. | `"chatInput"` |
| `output-key` | La key del JSON donde el server devuelve la respuesta al cliente. | `"output"` |
| `input-placeholder` | El placeholder del text input | `"Escribe aquí..."` |
| `service-off-msg` | Mensaje de error si la API falla con (500/429). | `"Lo siento, en este momento no estoy disponible"` |
| `open` | (Booleano) Si está habilitado, el chat inicia abierto. | `false` |
  
  
 2. **Variables CSS (Diseño)**  
 
 ```css
chat-bot {
  /* Fuentes y General */
  --chat-font-family: 'Inter', sans-serif;
  --primary-color: #f7d621;
  --text-color: #2b2a2a;
  --bg-window: #f4f4f4;
  --text-window: #2b2a2a;

  /* Mensajes dentro de la ventana del chat */
  --bg-bot-msg-color: #f7d621;
  --text-bot-color: #2b2a2a;
  --bg-user-color: #f8eca8;
  --text-user-color: #2b2a2a;
  --bg-input-color: #f8f8f8;
  --text-input-color: #2b2a2a;

  /* Botón Flotante */
  --float-btn-content: "💬";
  --float-btn-close-content: "✕";
  --float-btn-content-size: 18px;
  --unread-indicator-color: #ff4444;
}
```  

## Integración con n8n  

Este widget envía un objeto JSON con la siguiente estructura:  

```json
{
  "chatInput": "Hola!",
  "sessionId": "a1b2c3d4..."
}
```  

**Tip de n8n:** Asegurate de que tu nodo Webhook tenga como configuración: `Respond: When Last Node Finishes` y `Response Data: Last Node Output`  

## Contribuir  

Si tienes ideas para nuevas animaciones o funcionalidades, ¡sentite libre de abrir un PR!  

**hecho con 💙 por [Leonardo](https://github.com/LeonardoVaquel)**
npm package: @leonardpauli/cocoascript-class
Description: Lets you create real ObjC classes in cocoascript so you can implement delegates, subclass builtin types, etc
Author: Andrew Pouliot
Latest version: 0.1.2-support-older-jsc

# cocoascript-class
Lets you create real ObjC classes in cocoascript so you can implement delegates, subclass builtin types, etc

## Installation

In your plugin, assuming you're already using an ES6 build toolchain and either `npm` or `yarn`

`npm install --save cocoascript-class` or `yarn add cocoascript-class`


## Usage

Here is an example class created with this:

````js
const MyClass = new ObjCClass({
  // String values create ivar
  _private: 'initial',
  
  // This is a method on the class.
  test() {
    log("test: " + this._private);
  },
});

// MyClass is now a real ObjC class as far as cocoascript is concerned:
const obj = MyClass.new();

// You can use setters for the ivars
obj._private = "efgh";

// And call methods
[obj test];
obj.test();

````

## Advanced


### Calling super


The `SuperCall` function will let you send a message to your superclass, equivalent to `[super myMethod]`. However, you need to tell it the types of the arguments to your function.

````js
SuperCall(sel, argumentTypes, returnType);
````

each argument or return type is just an object with `{type: encodedString}`, where encodedString is the [Objective-C type encoding](https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/ObjCRuntimeGuide/Articles/ocrtTypeEncodings.html) of that type, for example:

````
@encode(char*) = "*"
@encode(id) = "@" // any object can use this encoding
@encode(Class) = "#"
@encode(void*) = "^v"
@encode(CGRect) = "{CGRect={CGPoint=dd}{CGSize=dd}}"
@encode(SEL) = ":"
````

Here, we call `[super description]` in our class' description method:

````js

import ObjCClass, {SuperCall} from 'cocoascript-class';

const HasDescriptionClass = new ObjCClass({  
  description() {
    // You should cache the result of SuperCall function, don't look it up each time
    if (typeof MyClass._superDesc == 'undefined') {
      const sel = NSStringFromSelector('description');
      MyClass._superDesc = SuperCall(sel, [], {type:"@"});
    }
    const superDesc = MyClass._superDesc.call(this);
    return NSString.stringWithString(`${superDesc} { _private=${this._private} }`);
  }
});

// MyClass is now a real ObjC class as far as cocoascript is concerned:
const obj = HasDescriptionClass.new();
log(obj); // calls description to become a string
````
npm package: @leonardpauli/sketch-module-web-view
Description: A sketch module for creating an complex UI with a webview
Author: Mathieu Dutour
Latest version: 1.1.7-lp.2

> FORK: of [skpm/sketch-module-web-view](https://github.com/skpm/sketch-module-web-view)  
> DIFF: personal changes, eg.:
> - using `@leonardpauli/cocoascript-class with support-older-jsc` (until PR is merged)
> - added `didClose` handler (__temporary__ dev flow fix, prevents crash on reload)
> USAGE: npm i @leonardpauli/sketch-module-web-view@1.1.7-lp, then see example usage in LayerRenamer

---

# sketch-module-web-view

A Sketch module for creating a complex UI with a webview. The API is mimicking the [BrowserWindow](https://electronjs.org/docs/api/browser-window) API of Electron.

## Installation

To use this module in your Sketch plugin you need a bundler utility like [skpm](https://github.com/skpm/skpm) and add it as a dependency:

```bash
npm install -S sketch-module-web-view
```

## Usage

```js
import BrowserWindow from 'sketch-module-web-view'

export default function() {
  const options = {
    identifier: 'unique.id',
  }

  const browserWindow = new BrowserWindow(options)

  browserWindow.loadURL('./my-screen.html')
}
```

## Documentation

* [Communicating between the Plugin and the WebView](/docs/communication-plugin-webview.md)
* [Inspecting the WebView](/docs/inspecting-the-webview.md)
* [Frameless-window](/docs/frameless-window.md)

## API References

* [Browser window](/docs/browser-window.md)
* [Web Contents](/docs/web-contents.md)

## License

MIT
npm package: @leonardssh/ng-option-highlight
Description: ### Step 1: Install `ng-option-highlight`:
Author: @leonardssh/ng-select
Latest version: 5.0.1

## Getting started
### Step 1: Install `ng-option-highlight`:

#### NPM
```shell
npm install --save @ng-select/ng-option-highlight
```
#### YARN
```shell
yarn add @ng-select/ng-option-highlight
```
### Step 2: Import the NgOptionHighlightModule:
```js
import { NgSelectModule } from '@ng-select/ng-select';
import { NgOptionHighlightModule } from '@ng-select/ng-option-highlight';

@NgModule({
  declarations: [AppComponent],
  imports: [
      NgSelectModule, 
      NgOptionHighlightModule
  ],
  bootstrap: [AppComponent]
})
export class AppModule {}
```

### Step 3: Add directive in your template: 

```html
<ng-select>
    ...
    <ng-template ng-option-tmp let-item="item" let-search="searchTerm">
        <span [ngOptionHighlight]="search">{{item.title}}</span>
    </ng-template>
</ng-select>
```


## Development

### Build

Run `ng build ng-option-highlight` to build the project. The build artifacts will be stored in the `dist/` directory.

### Publishing

After building your library with `ng build ng-option-highlight`, go to the dist folder `cd dist/ng-option-highlight` and run `npm publish`.

### Running unit tests

Run `ng test ng-option-highlight` to execute the unit tests via [Karma](https://karma-runner.github.io).
npm package: @leonardssh/rollup-plugin-swc
Description: Rollup plugin to compile bundles with the SWC.
Author: Petr Tsymbarovich
Latest version: 0.1.7

<p align="center">
  <img src="https://i.imgur.com/xmZnWwF.png" alt="Logo" />
</p>

<p align="center">
  <a href="https://www.npmjs.com/package/@leonardssh/rollup-plugin-swc">
    <img src="https://img.shields.io/npm/v/@leonardssh/rollup-plugin-swc.svg?maxAge=3600&color=crimson&logo=npm" alt="NPM version" />
  </a>
  <a href="https://www.npmjs.com/package/@leonardssh/rollup-plugin-swc">
    <img src="https://img.shields.io/npm/dt/@leonardssh/rollup-plugin-swc.svg?maxAge=3600&logo=npm" alt="NPM downloads" />
  </a>
</p>

<p align="center">
  Rollup plugin to compile bundles with the SWC.
  <br /> <br />
  <a href="https://github.com/LeonardSSH/rollup-plugin-swc/issues">Report Bug</a>
  ·
  <a href="https://github.com/LeonardSSH/rollup-plugin-swc/issues">Request Feature</a>
  ·
  <a href="https://github.com/swc-project/swc">What Is SWC?</a>
</p>

<br>

Remember to 🌟 this Github if you 💖 it.

## 📦 Installation

- Using yarn: `yarn add -D @leonardssh/rollup-plugin-swc @swc/core`
- Using npm: `npm i --save-dev @leonardssh/rollup-plugin-swc @swc/core`
- Using pnpm: `pnpm add -D @leonardssh/rollup-plugin-swc @swc/core`

## 🤓 Usage

```js
// rollup.config.js

import { swcPlugin } from '@leonardssh/rollup-plugin-swc';

export default {
	input: 'index.ts',
	output: {
		dir: 'dist',
		format: 'es'
	},
	plugins: [
		swcPlugin({
			jsc: {
				parser: {
					syntax: 'typescript'
				},
				target: 'es2018'
			}
		})
	]
};
```

## 🛠️ Options

The plugin takes all the [SWC options](https://swc-project.github.io/docs/configuring-swc) except the `filename`.

## 👨‍💻 Contributing

To contribute to this repository, feel free to create a new fork of the repository and submit a pull request.

1. Fork / Clone and select the `main` branch.
2. Create a new branch in your fork.
3. Make your changes.
4. Commit your changes, and push them.
5. Submit a Pull Request [here](https://github.com/LeonardSSH/rollup-plugin-swc/pulls)!

## 📋 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
npm package: @leonardssh/use-lanyard
Description: 🚀 Lanyard with Composition API for Vue
Author: LeonardSSH
Latest version: 1.0.4

<p align="center">
  <img src="https://i.imgur.com/ngMRSPs.png" alt="Logo" />
</p>

<p align="center">
  <a href="https://www.npmjs.com/package/@leonardssh/use-lanyard">
    <img src="https://img.shields.io/npm/v/@leonardssh/use-lanyard.svg?maxAge=3600&color=crimson&logo=npm" alt="NPM version" />
  </a>
  <a href="https://www.npmjs.com/package/@leonardssh/use-lanyard">
    <img src="https://img.shields.io/npm/dt/@leonardssh/use-lanyard.svg?maxAge=3600&logo=npm" alt="NPM downloads" />
  </a>
</p>

<h3 align="center"><b>Vue Use Lanyard</b></h3>

<p align="center">
  Use Lanyard API easily in your Vue app!
  <br /> <br />
  <a href="https://github.com/LeonardSSH/use-lanyard/issues">Report Bug</a>
  ·
  <a href="https://github.com/LeonardSSH/use-lanyard/issues">Request Feature</a>
  ·
  <a href="https://github.com/Phineas/lanyard">What Is Lanyard</a>
</p>

<br>

Remember to 🌟 this Github if you 💖 it.

<br>

# 📦 Installation

- Using yarn: `yarn add @leonardssh/use-lanyard`
- Using npm: `npm i @leonardssh/use-lanyard`
- Using pnpm: `pnpm add @leonardssh/use-lanyard`

# 🤓 Usage

✨ **This plugin supports both REST and WebSocket methods.**

> Using without websocket:

```ts
import { useLanyard } from '@leonardssh/use-lanyard';

const { success, data, error } = await useLanyard({
	userId: 'USER_ID'
});
```

> Using with websocket:

```ts
import { useLanyard, LanyardData } from '@leonardssh/use-lanyard';

await useLanyard({
	userId: 'USER_ID',
	socket: true,
	onPresenceUpdate(presence: LanyardData) {
		...
	}
});
```

### 🎉 Thanks

- [Phineas](https://github.com/Phineas/) - Creator of Lanyard API
- [barbarbar338](https://github.com/barbarbar338/react-use-lanyard) - Creator of [react-use-lanyard](https://github.dev/barbarbar338/react-use-lanyard)
- [eggsy](https://github.com/eggsy) - Creator of [vue-lanyard](https://github.com/eggsy/vue-lanyard/)

## 👨‍💻 Contributing

To contribute to this repository, feel free to create a new fork of the repository and submit a pull request.

1. Fork / Clone and select the `main` branch.
2. Create a new branch in your fork.
3. Make your changes.
4. Commit your changes, and push them.
5. Submit a Pull Request [here](https://github.com/LeonardSSH/use-lanyard/pulls)!

## 📋 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.