open-index/open-npm huggingface dataset:
npm package: @sakuraapp/ext-message-broker
Description: Easier communication for browser extensions
Author: Ahmed El-Marakby
Latest version: 0.2.8

# ext-message-broker

Easier communication for chrome extensions, while also allowing finer controls like frame-based communciation and namespacing.

## Setup

### Installation
Install the dependency
```
npm install ext-message-broker
```

You **must** create a message broker in your background script.
```ts
import { MessageBroker } from 'ext-message-broker'

const broker = new MessageBroker()
```

### Content Script
```ts
import { WebBroker } from  'ext-message-broker'

const broker = new WebBroker({
    allowExternal: false // set to true if you want to allow access from an external site
})
```

### External Site
```ts
import { WebBroker } from  'ext-message-broker'

const broker = new WebBroker({
    extensionId: 'your browser extension id', // this is required
})
```
If your site is externally accessible, you can connect directly from the site:
```ts
import { WebBroker } from  'ext-message-broker'

const broker = new WebBroker({
    extensionId: 'your browser extension id', // this is required
    mode: 'direct',
})
```

## Usage

### Background
```ts
import { MessageBroker } from 'ext-message-broker'

const broker = new MessageBroker()

broker.on('hello-world', (e) => {
    console.log(e.data)

    e.reply('hello-there', { name: 'general-kenobi' })
})

broker.send('test', { data: 123 })
```
### Content Script / External Site
```ts
import { WebBroker } from 'ext-message-broker'

const broker = new WebBroker()

broker.on('hello-there', (e) => {
    console.log(e.data)
})

broker.broadcast('hello-world', { name: 'general-grievous' }) // broadcasts to all connected brokers (except ones in current frame, aka the broker it came from to prevent echo - note: this WILL echo when usePort is disabled)

broker.sendToParent('hello', 123) // sends to the frame's parent

broker.sendToHost('hello', 123)
// sendToHost is an equivalent of this:
broker.sendToTarget('hello', 123, {
    tabId: 1234, // put a tab id here
    frameId: 0, // top most frame
})

broker.sendToBackground('hello', 123) // sends to the background message broker
broker.send('hello', 123) // sends to background by default
```
npm package: @sakurafeiyu/koishi-plugin-kankan
Description: 一款基于koishi框架的自定义萌弱型机器人
Author: sakurafeiyu
Latest version: 0.1.0

# @sakurafeiyu/koishi-plugin-kankan

[![npm](https://img.shields.io/npm/v/@sakurafeiyu/koishi-plugin-kankan?style=flat-square)](https://www.npmjs.com/package/@sakurafeiyu/koishi-plugin-kankan)

一款基于koishi框架的自定义萌弱型机器人
npm package: @sakuratears/element-theme-chalk-fix
Description: Element component chalk theme.
Latest version: 2.15.11

# element-theme-chalk
> element component chalk theme.


## Installation
```shell
npm i element-theme-chalk -S
```

## Usage

Use Sass import
```css
@import 'element-theme-chalk';
```

Or Use webpack
```javascript
import 'element-theme-chalk';
```

Or
```html
<link rel="stylesheet" href="path/to/node_modules/element-theme-chalk/lib/index.css">
```

##  Import on demand
```javascript
import 'element-theme-chalk/lib/input.css';
import 'element-theme-chalk/lib/select.css';

// ...
```
npm package: @sakurawood/event-emitter
Description: > A event bus for Javascript , support sticky event
Author: sakurawood
Latest version: 0.1.1

# event emitter

> A event bus for Javascript , support sticky event

## Install

```
  npm install @sakurawood/event-emitter

  // or

  yarn add @sakurawood/event-emitter
```

## Usage

```javascript
import emitter from '@sakurawood/event-emitter';
```

```javascript
const fn = msg => {
  console.log('Hi', msg);
};

// register event & handler
emitter.on('hello', fn);

// emit a event
emitter.emit('hello', 'John');

// emit a sticky event
emitter.emitSticky('hello', 'Max');

// unregister a event & handler
emitter.off('hello', fn);

// unregister a event & all of its handlers
emitter.offEvent('hello');

// unregister all events
emitter.offAll();
```
npm package: @sakurawood/react-snack-bar
Description: ## installation
Author: sakurawood
Latest version: 0.3.7

# react-snack-bar

## installation

```javascript

npm install @sakurawood/react-snack-bar

or

yarn add @sakurawood/react-snack-bar

```

## base usage

```javascript
// example

import { useSnackBar } from '@sakurawood/react-snack-bar';

const App = () => {
  const snackBar = useSnackBar();
  snackBar.show('hello world', 'SUCCESS');
  return (
    <div>
      <div />
    </div>
  );
};
```

## api

### props

```
const props = {
  fontSize: 14 ,   // font size of text , default is 14
  align: 'bottom', // position of snack bar in the screen , optional value: ['top','bottom','center'], default is 'bottom'
  rtl: true        // right to left layout, default is false
}

useSnackBar(props)

```

### methods

```
show : (text:string, type:'SUCCESS'|'WARN'|'INFO'|'ERROR'='ERROR')=> ...

```
npm package: @salable/errors
Description: HTTPException classes for specific error messages in response to HTTP requests to improve error handling in an application.
Author: Salable
Latest version: 1.0.3

[![CI Checks](https://github.com/Salable/errors/actions/workflows/ci.yml/badge.svg)](https://github.com/Salable/errors/actions/workflows/ci.yml)&nbsp;
[![License Checker](https://github.com/Salable/errors/actions/workflows/license-checker.yml/badge.svg)](https://github.com/Salable/errors/actions/workflows/license-checker.yml)&nbsp;
[![Release](https://github.com/Salable/errors/actions/workflows/release.yml/badge.svg)](https://github.com/Salable/errors/actions/workflows/release.yml)&nbsp;
<img src="https://img.shields.io/npm/v/@salable/errors">

# Salable Errors

The Salable Errors allows you to properly return HTTPException classes for specific error messages in response to HTTP requests to improve error handling in an application.

## Getting Started

<hr>

### Installation

> with npm

```bash
npm install @salable/errors
```

> with yarn

```bash
yarn add @salable/errors
```

### Using HTTPClientException - client errors

> With description

```ts
import {HTTPClientException} from '@salable/errors';
const errorPayload = {
  description:
    'Your changes were saved, but we could not connect your account due to a technical issue on our end. Please try connecting again.',
};
throw new HTTPClientException('NOT_FOUND', 'Unable to connect to account', errorPayload);
// Expected return
{
  statusCode: 404;
  message: 'Unable to connect to account';
  description: 'Your changes were saved, but we could not connect your account due to a technical issue on our end. Please try connecting again.';
}
```

> With NO description

```ts
import {HTTPClientException} from '@salable/errors';
throw new HTTPClientException('NOT_FOUND', 'Unable to connect to account');
// Expected return
{
  statusCode: 404;
  message: 'Unable to connect to account';
  description: undefined;
}
```

### Using HTTPServerException - Server Errors

> With description

```ts
import {HTTPServerException} from '@salable/errors';
const errorPayload = {
  description:
    'No changes were made, but we could not connect your account due to a technical issue on our end. Please try connecting again.',
};
throw new HTTPServerException('INTERNAL_SERVER_ERROR', 'Unable to connect to network', errorPayload);
// Expected return
{
  statusCode: 500;
  message: 'Unable to connect to account';
  description: 'No changes were made, but we could not connect your account due to a technical issue on our end. Please try connecting again.';
}
```

> With NO description

```ts
import {HTTPServerException} from '@salable/errors';
throw new HTTPServerException('INTERNAL_SERVER_ERROR', 'Unable to connect to network');
// Expected return
{
  statusCode: 500;
  message: 'Unable to connect to account';
  description: undefined;
}
```
npm package: @salable/js-sdk
Description: ## Packages Included
Author: Salable
Latest version: 2.0.0

# @salable/js-sdk

## Packages Included

- [@salable/pricing-table](https://github.com/Salable/js-sdk/tree/main/packages/pricing-table)

## Development

### Initial Setup

To set up the JS SDK on your local machine for development, perform the following steps.

1. Clone the repo to your local machine
2. Run `npm i` at the root of the project

_Note: You don't need to run `npm i` per package. Because this project uses NPM workspaces, you only ever need to run it at root._

### Adding Packages

If you want to add a new package, perform the following steps.

1. Create a new folder inside the `packages` directory named as the name of the package. (e.g. pricing-table)
2. Inside the new package folder, create `package.json` and `README.md` files.
   - Use the template for `package.json` below, replacing information where required.
3. Create a `src` folder in the root of your new package folder and inside it put a `index.ts` or `index.js` file depending on if you're using TS or not.
   - From the `index.{js|ts}` file, export your package's files. This file is the entry point for Rollup to build from.
4. Update `./packages/index.ts` to include your new package index file to ensure it is included in the output build.
   - Export your new package from `./packages/index.ts` with a name based on your package name.
5. Update this `README.md` file to include your new package in the list of packages at the top fo this file.
6. To install/uninstall NPM packages to your new package, use the following commands and replace information where required. _NOTE: For your package name, use the directory name inside `./packages`_
   - **Install:** `npm install <NPM_PACKAGE_NAME> -w <YOUR_PACKAGE_NAME>`
   - **Uninstall:** `npm uninstall <NPM_PACKAGE_NAME> -w <YOUR_PACKAGE_NAME>`

#### `package.json` example

```json
{
  "name": "@salable/<YOUR_PACKAGE_NAME>",
  "version": "1.0.0",
  "description": "",
  "type": "module",
  "main": "src/index.{js|ts}",
  "scripts": {
    // Your scripts here
  },
  "author": "Salable",
  "license": "MIT"
}
```

#### Example

For an example package, see the `pricing-table` package/directory inside `./packages`.
npm package: @salable/node-sdk
Description: Node.js SDK to interact with Salable APIs
Author: Salable
Latest version: 5.0.0

# Salable SDK for JavaScript

The Salable SDK enables you to easily interact with the Salable ecosystem, accessing the Salable API, and other toolkit methods.

## Getting Started

Let’s walk through setting up a project that uses the Salable API Class from the SDK and makes a simple call to retrieve all licenses. The following steps use npm as an example. These steps assume you have Node.js and npm already installed.

1. Create a new Node.js project.
2. Inside of the project, run: `npm install @salable/node-sdk`. Adding packages results in update in lock file, [yarn.lock](https://yarnpkg.com/getting-started/qa/#should-lockfiles-be-committed-to-the-repository) or [package-lock.json](https://docs.npmjs.com/configuring-npm/package-lock-json). You **should** commit your lock file along with your code to avoid potential breaking changes.

## v5.0.0 Update

The SDK now supports Salable API version selection and developers can choose which version of the Salable API they want to interact with via the SDK
As such, the Salable API version is now a required argument when instantiating the SDK

```typescript
import { initSalable } from '@salable/node-sdk';

const salable = initSalable('your_api_key', 'v3');
```

### General Changes

#### Salable API versioning and Types
- Types and method documentation are dynamic and automatically adjust to the version selected

```typescript
import { initSalable } from '@salable/node-sdk';

const salableV2 = initSalable('your_api_key', 'v2');
const salableV3 = initSalable('your_api_key', 'v3');

// "licenses.check" method is supported in this version and will work
await salableV2.licenses.check(); 

// This will error as all "licenses" methods has been deprecated in 'v3'
await salableV3.licenses.check(); // Will error with: "Property 'licenses' does not exist ..."
```
#### Pagination
- All methods are now scope authorized and your API Key must contain the appropriate scopes to user certain methods
- `getAll` endpoints are now paginated and offer cursor based pagination

```typescript
{
	first: "item-id-1",
	last: "item-id-3",
	data: [
		{id: "item-id-1"}, 
		{id: "item-id-2"}, 
		{id: "item-id-3"}
	]
}
```
npm package: @salable/paddle-checkout-react
Description: Paddle checkout library
Author: Salable
Latest version: 0.1.5

# @salable/paddle-checkout-react

## Table of Contents

-   [Installation](#Installation)
-   [Getting Started](#Getting-Started)
-   [License](#License)

## Installation

Using [npm](https://www.npmjs.com/)

```bash
 npm install @salable/paddle-checkout-react
```

## Getting Started

Configure your SDK by wrapping your application in `CheckoutProvider`:

```js
// src/index.js
Import React from 'react';
import ReactDOM from 'react-dom';
import { CheckoutProvider } from '@salable/paddle-checkout-react';
import App from './App';

const paddleComponentId = 'paddle-wrapper'

ReactDOM.render(
     <CheckoutProvider
      passthroughData={{ purchaserId: '', granteeId: '' }}
      setPassthroughData={() => {}}
      environmentConfig={{
        vendor: 752,
        environment: 'sandbox',
        eventCallback: (data) => {
          switch (data.event) {
            case 'Checkout.Complete':
              console.log(data.eventData);
              break;
            case 'Checkout.Close':
              console.log(data.eventData);
              break;
          }
        },
      }}
      checkoutConfig={{
        frameInitialHeight: 416,
        frameStyle: 'width:100%; min-width:312px; background-color: transparent; border: none;',
      }}
      targetComponent={paddleComponentId}
    >
      <App />
    </CheckoutProvider>,
    document.getElementById('app')
)
```

```js
// src/components/[x].js
const ProductsDemo = () => {
  const { paddle, selectedProductId, setSelectedProductId } = useCheckout();

  useEffect(() => {}, [paddle, selectedProductId]);

  const handleBuy = (id: string) => () => {
    setSelectedProductId!(id);
  };

  const handleCancel = () => {
    setSelectedProductId!(null);
  };

  return (
    <>
      <h2>Products</h2>
      <p>
        Pro <button onClick={handleBuy(paddlePlanId)}>Buy</button>
      </p>
      <p>
        Lite <button onClick={handleBuy(paddlePlanId)}>Buy</button>
      </p>
      {selectedProductId ? <StoreDemo handleCancel={handleCancel} /> : null}
    </>
  );
};

const StoreDemo: FC<{ handleCancel: () => void }> = ({ handleCancel }) => {
  return (
    <div>
      <div className={paddleComponentId} />
      <button onClick={handleCancel}>Cancel</button>
    </div>
  );
};
```

## License

This project is licensed under the MIT license. See the [LICENSE](https://github.com/joshokoro/paddle-checkout-react//blob/main/LICENSE) file for more info.
npm package: @salable/pricing-table-react
Description: A react component to render your Salable pricing table in your app.
Author: Salable
Latest version: 1.3.5

# Salable React pricing table component documentation
A component to render your Salable pricing table into a React project

## Getting started
```
npm install @salable/pricing-table-react
```

## Code example
```
<SalablePricingTableReact 
    envConfig={{
        productUuid: '{{YOUR_PRODUCT_UUID}}',
        apiKey: '{{YOUR_API_KEY}}',
        globalPlanOptions: {
            granteeId: 'example-grantee-id-123',
            successUrl: 'https://example.com/success',
            cancelUrl: 'https://example.com/cancel'
        },
        theme: 'light'
    }}
    checkoutConfig={{
        member: 'example-member-123',
        customer: {
            email: "customer@company.com",
        }
    }}
/>
```

## License
MIT License
npm package: @salable/react-library
Description: > TODO: description
Author: Sean Cooper
Latest version: 0.3.2
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @salable/react-library

## Introduction

The `@salable/react-library` is an essential part of the Salable Component Library, tailored for React applications to incorporate payment and licensing functionalities with ease. Built on top of Stencil JS, this library provides React components designed for seamless integration in SaaS products and various web applications, ensuring compatibility, performance, and scalability.

## Key Features

- **React Components**: Our library offers React components that wrap Stencil JS web components, combining the robustness of web standards with the ease of use in the React ecosystem.
- **Seamless Integration**: With minimal setup, you can integrate our components into your project, enhancing your application with payment and licensing capabilities.
- **Customizable and Scalable**: Designed to meet the demands of any scale, from small projects to complex applications, ensuring that your needs for customization and scalability are met.
- **Cross-Browser Compatibility**: Thanks to Stencil JS, enjoy consistent performance and appearance across all modern browsers.

## Installation

To add the Salable React Library to your project, execute the following command:

```
npm i @salable/react-library
```

## Getting Started

Once installed, you need to import and define custom elements in your React project. Here's how to get started:

```jsx
import { defineCustomElements } from '@salable/react-library';
import { SalablePricingTable } from "@salable/react-library";

defineCustomElements();

export default function SalablePricingTableDemo() {
    return (
        <SalablePricingTable
            apiKey="your_api_key"
            uuid="your_uuid"
            globalSuccessUrl="https://example.com/success"
            globalCancelUrl="https://example.com/cancel"
            globalGranteeId="your_grantee_id"
            member="your_member_id"
        />
    );
}
```

Replace `"your_api_key"`, `"your_uuid"`, `"your_grantee_id"`, and `"your_member_id"` with your actual configuration values. 

This example demonstrates how to use the `SalablePricingTable` component, but our library includes more components that you can utilize in your projects.

## Documentation

For a full list of components and detailed guides on using them, please refer to our [core documentation](https://docs.salable.app). You'll find examples, configuration options, and best practices to help you integrate our library into your applications effectively.

## Support and Contributions

Encountering issues or have suggestions? Please submit them on our [GitHub issues page](https://github.com/Salable/salable-web-components-stenciljs/issues)
npm package: @salable/react-sdk
Description: ## Packages Included
Author: Salable
Latest version: 2.0.0

# @salable/react-sdk

## Packages Included

- [@salable/pricing-table-react](https://github.com/Salable/react-sdk/tree/main/packages/pricing-table)

## Development

### Initial Setup

To set up the React SDK on your local machine for development, perform the following steps.

1. Clone the repo to your local machine
2. Run `npm i` at the root of the project

_Note: You don't need to run `npm i` per package. Because this project uses NPM workspaces, you only ever need to run it at root._

### Adding Packages

If you want to add a new package, perform the following steps.

1. Create a new folder inside the `packages` directory named as the name of the package. (e.g. pricing-table)
2. Inside the new package folder, create `package.json` and `README.md` files.
   - Use the template for `package.json` below, replacing information where required.
3. Create a `src` folder in the root of your new package folder and inside it put a `index.ts` or `index.js` file depending on if you're using TS or not.
   - From the `index.{js|ts}` file, export your package's files. This file is the entry point for Rollup to build from.
4. Update `./packages/index.ts` to include your new package index file to ensure it is included in the output build.
   - Export your new package from `./packages/index.ts` with a name based on your package name.
5. Update this `README.md` file to include your new package in the list of packages at the top fo this file.
6. To install/uninstall NPM packages to your new package, use the following commands and replace information where required. _NOTE: For your package name, use the directory name inside `./packages`_
   - **Install:** `npm install <NPM_PACKAGE_NAME> -w <YOUR_PACKAGE_NAME>`
   - **Uninstall:** `npm uninstall <NPM_PACKAGE_NAME> -w <YOUR_PACKAGE_NAME>`

#### `package.json` example

```json
{
  "name": "@salable/<YOUR_PACKAGE_NAME>",
  "version": "1.0.0",
  "description": "",
  "type": "module",
  "main": "src/index.{js|ts}",
  "scripts": {
    // Your scripts here
  },
  "author": "Salable",
  "license": "MIT"
}
```

#### Example

For an example package, see the `pricing-table` package/directory inside `./packages`.
npm package: @salable/react-web-components
Description: Salable React wrappers for our web component library
Author: Sean Cooper
Latest version: 0.13.0

# @salable/react-web-components

## Introduction

The Salable React Web Component library is designed to streamline the development process for SaaS products. It is a collection of Web Components that facilitate easy integration with payment platforms and simplify the creation of flexible pricing models. Our components are seamlessly compatible with various web frameworks, making it a breeze for developers to integrate payment and licensing functionality in web applications.

## Installation

To add the Salable React Web Component library to your project, execute the following command:

```
npm i @salable/react-web-components
```

## Getting Started

Once installed, you need to import and define custom elements in your React project. Here's how to get started:

```jsx
import { defineCustomElements } from '@salable/react-web-components';
import { SalablePricingTable } from "@salable/react-web-components";

defineCustomElements();

export default function SalablePricingTableDemo() {
    return (
        <SalablePricingTable
            sessionToken="your_session_token"
            uuid="your_uuid"
            globalSuccessUrl="https://example.com/success"
            globalCancelUrl="https://example.com/cancel"
            globalGranteeId="your_grantee_id"
            member="your_member_id"
        />
    );
}
```

Replace `"your_api_key"`, `"your_uuid"`, `"your_grantee_id"`, and `"your_member_id"` with your actual configuration values. 

This example demonstrates how to use the `SalablePricingTable` component, but our library includes more components that you can utilize in your projects.

## Documentation

For a full list of components and detailed guides on using them, please refer to our [core documentation](https://docs.salable.app/web-components/web-components-latest/). You'll find examples, configuration options, and best practices to help you integrate our library into your applications effectively.

## Support and Contributions

Encountering issues or have suggestions? Please submit them on our [GitHub issues page](https://github.com/Salable/Salable-Web-Components/issues)
npm package: @salable/stencil-library
Description: Stencil Component Starter
Author: Sean Cooper
Latest version: 0.3.2
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @salable/stencil-library

## Introduction

Welcome to the `@salable/stencil-library`, a comprehensive suite of web components designed for the seamless integration of payment and licensing services into web applications. Our library leverages the power of Stencil JS to provide high-performance, standards-compliant components suitable for any project, especially those within the SaaS domain.

## Key Features

- **Web Standards Compliance**: Built with Stencil JS, our components are fully compliant with web standards, ensuring compatibility across all modern web browsers.
- **Seamless Integration**: Our components are crafted to be easily integrated into any web application, facilitating the addition of payment and licensing functionalities with minimal setup.
- **Customizable and Scalable**: With a wide range of customization options, our components can be tailored to meet the specific needs of your project, ensuring scalability from small applications to large-scale enterprise solutions.
- **SaaS-Focused**: Specifically designed for SaaS products, our components provide out-of-the-box solutions for integrating payment services like Stripe and creating versatile pricing models.

## Installation

To incorporate the Salable Stencil Web Component Library into your project, install the package via npm:

```
npm i @salable/stencil-library
```

## Getting Started

After installation, you can use our web components directly in your HTML. To ensure the components are loaded and properly initialized, you may need to include the library's loader script in your project.

Here's an example of how to use the `salable-pricing-table` component in your HTML:

```html
<salable-pricing-table
  api-key="your_api_key"
  uuid="your_uuid"
  global-success-url="https://example.com/success"
  global-cancel-url="https://example.com/cancel"
  global-grantee-id="your_grantee_id"
  member="your_member_id"
></salable-pricing-table>
```

Be sure to replace `"your_api_key"`, `"your_uuid"`, `"your_grantee_id"`, and `"your_member_id"` with your actual configuration values.

This example demonstrates how to use the `salable-pricing-table` component, but our library includes more components that you can utilize in your projects.

## Documentation

For a full list of components and detailed guides on using them, please refer to our [core documentation](https://docs.salable.app). You'll find examples, configuration options, and best practices to help you integrate our library into your applications effectively.

## Support and Contributions

Encountering issues or have suggestions? Please submit them on our [GitHub issues page](https://github.com/Salable/salable-web-components-stenciljs/issues)
npm package: @salable/web-components
Description: Salable web components library
Author: Sean Cooper
Latest version: 0.13.0

# @salable/web-components

## Introduction

The Salable Web Components library is designed to streamline the development process for SaaS products. It is a collection of Web Components that facilitate easy integration with payment platforms and simplify the creation of flexible pricing models. Our components are seamlessly compatible with various web frameworks, making it a breeze for developers to integrate payment and licensing functionality in web applications.

## Installation

To incorporate the Salable Web Components library into your project, install the package via npm:

```
npm i @salable/web-components
```

## Getting Started

After installation, you can use our Web Components directly in your HTML. To ensure the components are loaded and properly initialized, you may need to include the library's loader script in your project.

Here's an example of how to use the `salable-pricing-table` component in your HTML:

```html
<salable-pricing-table
  session-token="your_session_token"
  uuid="your_uuid"
  global-success-url="https://example.com/success"
  global-cancel-url="https://example.com/cancel"
  global-grantee-id="your_grantee_id"
  member="your_member_id"
></salable-pricing-table>
```

Be sure to replace "your_session_token", "your_uuid", "your_grantee_id", and "your_member_id" with your actual configuration values.

This example demonstrates how to use the salable-pricing-table component, but our library includes more components that you can utilise in your projects.

## Documentation

For a full list of components and detailed guides on using them, please refer to our [core documentation](https://docs.salable.app/web-components/web-components-latest/). You'll find examples, configuration options, and best practices to help you integrate our library into your applications effectively.

## Support and Contributions

Encountering issues or have suggestions? Please submit them on our [GitHub issues page](https://github.com/Salable/Salable-Web-Components/issues)
npm package: @saladswap/eslint-config-salad
Description: Eslint config for SaladSwap
Author: RabbitDoge
Latest version: 1.0.0

# eslint-config-salad

Salad Eslint config with:

- Airbnb config
- Typescript
- Prettier

## Usage

```
npx install-peerdeps --dev @saladswap/eslint-config-salad
```

Add `"extends": "@saladswap/eslint-config-salad"` to your eslint config file.