open-index/open-npm huggingface dataset:
npm package: @libertymp/ng-select
Description: Angular ng-select - All in One UI Select, Multiselect and Autocomplete
Author: @liberty-mp
Latest version: 3.0.0

Fork of [@ng-select/ng-select](https://github.com/ng-select/ng-select) with custom modifications.

**PLEASE DON'T USE IT, IT'S ONLY FOR A SIDE-PROJECT!!!**
npm package: @libertymp/ngx-howler
Description: Audio library based on howler.js for Angular
Author: @liberty-mp
Latest version: 2.0.0

Fork of [@kainonly/ngx-howler](https://github.com/kainonly/ngx-howler) with custom modifications.

**PLEASE DON'T USE IT, IT'S ONLY FOR A SIDE-PROJECT!!!**
npm package: @libertymp/types-client
Description: Types definitions for RAGE:MP client-side module
Author: @libertymp
Latest version: 0.0.3

Remember to 🌟 this Github if you 💖 it.

> This package contains types definitions for RAGE:MP client-side module.

### 📥 Installation

#### `CLIENT-SIDE`

:fire: Use `github:ragempcommunity/ragemp-types#types-client` to latest build

```sh
# With npm
> npm i --save-dev @ragempcommunity/types-client

# With yarn
> yarn add -D @ragempcommunity/types-client

# With pnpm
> pnpm add -D @ragempcommunity/types-client
```

## 🤓 Usage

> To make these types detectable, you need to add the `types` property below to `tsconfig.json` on each side of your project.

```jsonc
// e.g client-side
{
	"compilerOptions": {
		"types": ["{RELATIVE_PATH_TO_NODE_MODULES}/@ragempcommunity/types-client"]
	}
}
```

### Full type-safe and auto-complete

![](https://i.imgur.com/rP6kPom.gif)

## 👨‍💻 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/ragempcommunity/ragemp-types/pulls)!

## 🎉 Thanks

-   [CocaColaBear](https://github.com/CocaColaBear/) - Creator of [types-ragemp-s](https://github.com/CocaColaBear/types-ragemp-s) & [types-ragemp-c](https://github.com/CocaColaBear/types-ragemp-c)

## 📋 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
npm package: @libertymp/types-server
Description: Types definitions for RAGE:MP server-side module
Author: @libertymp
Latest version: 0.0.3

Remember to 🌟 this Github if you 💖 it.

> This package contains types definitions for RAGE:MP server-side module.

### 📥 Installation

#### `SERVER-SIDE`

:fire: Use `github:ragempcommunity/ragemp-types#types-server` to latest build

```bash
# With npm
npm i --save-dev @ragempcommunity/types-server

# With yarn
yarn add -D @ragempcommunity/types-server

# With pnpm
pnpm add -D @ragempcommunity/types-server
```

## 🤓 Usage

> To make these types detectable, you need to add the `types` property below to `tsconfig.json` on each side of your project.

```jsonc
// e.g server-side
{
	"compilerOptions": {
		"types": ["{RELATIVE_PATH_TO_NODE_MODULES}/@ragempcommunity/types-server"]
	}
}
```

### Full type-safe and auto-complete

![](https://i.imgur.com/o2JB3Jx.gif)

---

### To extend a Mp object, there are 2 ways:

1. By extend the prototype of the object:

```ts
mp.Player.prototype.myMethod = function myMethod() {
	// my method logic
};

// Usage
mp.events.add('playerReady', (player) => {
	player.myProperty = 1;

	player.myMethod();
});
```

```ts
// @types/index.d.ts
declare global {
	interface PlayerMp {
		myProperty: number;

		myMethod(): void;
	}
}

export {};
```

2. By extend the object itself:

```ts
mp.events.add('playerReady', (player) => {
	player.myProperty = 1;

	player.myMethod = function myMethod() {
		// my method logic
	};
});
```

```ts
// @types/index.d.ts
declare global {
	interface PlayerMp {
		myProperty: number;

		myMethod(): void;
	}
}

export {};
```

See: [RAGEMP Typescript Boilerplate](https://github.com/ragempcommunity/ragemp-typescript)

## 👨‍💻 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/ragempcommunity/ragemp-types/pulls)!

## 🎉 Thanks

-   [CocaColaBear](https://github.com/CocaColaBear/) - Creator of [types-ragemp-s](https://github.com/CocaColaBear/types-ragemp-s) & [types-ragemp-c](https://github.com/CocaColaBear/types-ragemp-c)

## 📋 License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
npm package: @libertypie/erc20-balance-history
Description: get user balance average since x days, hours or hours, this enable you to get user holding balance for a particular time
Author: @big-zak
Latest version: 1.0.1

# balance-history
Get accumulated user balance history over time for any erc20 token, same way binance calculates users' balance for launchpad on their platform

## Installation

### via npm

```sh
npm i --save @libertypie/erc20-balance-history
```

### via yarn

```sh
yarn add @libertypie/erc20-balance-history
```


## Usage

#### Create new seed file 
```js

const BalanceHistory = require('@libertypie/erc20-balance-history');

//lets get balance history using a timestamp
BalanceHistory.getBalanceHistory({
    contractAddress: "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2", // usdt
    userAddress: "0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503", // my address
    etherscanApiKey: "...",
    providerUrl: "rpc", // example https://localhost:8545
    timestampInSecs: 1619816421
}).then((result)=>{
    console.log(result)
})

// get average balance for past 48 hours
BalanceHistory.getBalanceSinceXHours(48,{
    contractAddress: "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2", // usdt
    userAddress: "0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503", // my address
    etherscanApiKey: "...",
    providerUrl: "rpc", // example https://localhost:8545
}).then((result)=>{
    console.log(result)
})

// get average balance for past 30 days
BalanceHistory.getBalanceSinceXDays(30,{
    contractAddress: "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2", // usdt
    userAddress: "0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503", // my address
    etherscanApiKey: "...",
    providerUrl: "rpc", // example https://localhost:8545
}).then((result)=>{
    console.log(result)
})


// get average balance for past 10 months
BalanceHistory.getBalanceSinceXMonths(10,{
    contractAddress: "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2", // usdt
    userAddress: "0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503", // my address
    etherscanApiKey: "...",
    providerUrl: "rpc", // example https://localhost:8545
}).then((result)=>{
    console.log(result)
})

// get average balance for past 2 years
BalanceHistory.getBalanceSinceXYears(2,{
    contractAddress: "0x6b3595068778dd592e39a122f4f5a5cf09c90fe2", // usdt
    userAddress: "0x47ac0fb4f2d84898e4d9e7b4dab3c24507a6d503", // my address
    etherscanApiKey: "...",
    providerUrl: "rpc", // example https://localhost:8545
}).then((result)=>{
    console.log(result)
})

```
npm package: @libertypie/truffle-seeder
Description: Easily seed initial data to smart contracts using this npm package
Author: @zakpie
Latest version: 1.1.9

# Truffle Seeder ([From Liberty Pie](https://libertypie.com))
Easily seed initial data to smart contracts using this npm package 

## Installation

### via npm

```sh
npm i --save @libertypie/truffle-seeder
```

### via yarn

```sh
yarn add  @libertypie/truffle-seeder
```


## Usage

#### Create new seed file 
```sh
yarn seeder-init --contract HelloContract --method SetHelloMethod
```

the --contract  is the contract you are targeting (eg. HelloContract)  
and --method is the  method or function in the targeted contract 

after the seed files has been created, check the seeds folder in your project root and edit the file in the files sub folder

below is a sample of how a seed file looks like 

```js
module.exports = {
    contract: 'HelloContract',
    method:   'SetHelloMethod',
    data: [
        /* 
         * to seed args multiple times, add extra arrays
         ['arg1','arg2',...'argn'],
         ['arg1', 'arg2'...'argn']
        */
    ]
}
```
You add the args using an array inside the data array  as shown 

#### Seed File Options

##### contract:
The name of the contract you are targeting, it should exist in truffle build folder

##### method: 
The method or function in the targetted contract where the data will be fed to 

##### processor: 
The processor is the function responsible for processing the data and calling the method/function from the contract
The default processor is located at [src/processors/StandardSeedProcessor.js](src/processors/StandardSeedProcessor.js)

below is a seed file with a custom processor

```js 
module.exports = {
    contract: 'HelloContract',
    method:   'SetHelloMethod',
    processor: customDataProcessor,
    data: [
        /* 
         * to seed args multiple times, add extra arrays
         ['arg1','arg2',...'argn'],
         ['arg1', 'arg2'...'argn']
        */
    ]
}

// customDataProcessor
customDataProcessor = async ({
    contractName,
    contractInstance, 
    contractMethod, 
    argsArray,
    networkId,
    web3,
    web3Account
}) => {
  //process and insert data here 
}
```

#### Seeding the data 
 To seed the data to the contract's method, you will run the command below

 ```sh 
  yarn seeder-run 
 ```

 ## About
 The npm package is developed maintained by the team at [LibertyPie Project](https://libertypie.com)

 ## Contribution
 To contribute, kindly fork the project, at project root create a dev.env file, insert APP_ROOT_DIR pointint to your truffle project where testing will be done,
 example: 

 ```txt
  APP_ROOT_DIR=/path/to/truffle/solidity/project
 ```
npm package: @libertypie/vue-svg-img
Description: A super lightweight vue library for injecting svg as inline
Author: LibertyPie
Latest version: 1.0.8

# Intro
A super light weight and fast vue plugin for injecting svg as inline on runtime

# Install

## yarn 
```sh 
 yarn add @libertypie/vue-svg-img
```

## npm 
```sh 
 npm i @libertypie/vue-svg-img
```

# Usage 

## vue 2
```js 
    import vueSvgImg from 'vue-img-svg'

    Vue.use(vueSvgImg)
```

## vue 3
```js 
    import vueSvgImg from 'vue-img-svg'
    createApp(App)
    .use(vueSvgImg)
    ...
    .mount('#app');
```

## Using in template
```html
    <img-svg src="https://libertypie.com/assets/img/logo.svg" class="logo" />
```
npm package: @libexswap/sdk
Description: 🛠 An SDK for building applications on top of Libexswap.
Latest version: 1.0.0


> **Notice**
>
> Moved to https://github.com/pancakeswap/pancake-frontend/tree/develop/packages/swap-sdk

# Pancakeswap SDK

Forked from the [Uniswap SDK](https://github.com/Uniswap/uniswap-v2-sdk/commit/a88048e9c4198a5bdaea00883ca00c8c8e582605).

You can refer to the Uniswap SDK documentation [uniswap.org](https://docs.uniswap.org/sdk/2.0.0/).

## Running tests

To run the tests, follow these steps. You must have at least node v10 and [yarn](https://yarnpkg.com/) installed.

First clone the repository:

```sh
git clone https://github.com/pancakeswap/pancake-swap-sdk.git
```

Move into the pancakeswap-sdk working directory

```sh
cd pancakeswap-sdk/
```

Install dependencies

```sh
yarn install
```

Run tests

```sh
yarn test
```

You should see output like the following:

```sh
yarn run v1.22.4
$ tsdx test
 PASS  test/constants.test.ts
 PASS  test/pair.test.ts
 PASS  test/fraction.test.ts
 PASS  test/miscellaneous.test.ts
 PASS  test/entities.test.ts
 PASS  test/trade.test.ts

Test Suites: 1 skipped, 6 passed, 6 of 7 total
Tests:       3 skipped, 82 passed, 85 total
Snapshots:   0 total
Time:        5.091s
Ran all test suites.
✨  Done in 6.61s.
```
npm package: @libfintech/api-gateway-core
Description: api gateway core
Author: liamjung
Latest version: 0.1.31

[API网关](https://gitee.com/libfintech/wechat_api_gateway)核心库
========

用于插件开发的预定义类和工具方法

## Content
- 实体（entity）
- 枚举（enumeration）
- 错误（error）
- 日志（log）
- 工具（util）

## Installation

```sh
$ npm install @libfintech/api-gateway-core --save
```

## Example

- 错误
```js
//在运行过程中，抛出ResponseError错误，并未捕获时，终止当前插件的运行，并响应客户端
const {ResponseError} = require("@libfintech/api-gateway-core/error/response_error");

let status = 403;   //http响应状态
let headers = {};   //http响应头
let body = "..."    //http响应体

throw new ResponseError(status, headers, body);
```

- 日志
```js
//往控制台和日志文件中输出日志
//与pipeline中logger的区别是，日志中不含日志追踪标识（traceId、spanId、parentSpanId等）
const {Log} = require("@libfintech/api-gateway-core/log/log");

Log.debug("...");   //输出debug日志
Log.info("...");    //输出info日志
Log.warn("...");    //输出warn日志
Log.error("...");   //输出error日志
```
npm package: @libfintech/api-gateway-internal-plugin
Description: api gateway internal plugin
Author: liamjung
Latest version: 0.1.31

API网关内部插件库
==========

## 插件列表
- [A/B测试](https://gitee.com/libfintech/api_gateway_internal_plugin/tree/master/ab_testing)（ab_testing）
- [认证/授权](https://gitee.com/libfintech/api_gateway_internal_plugin/tree/master/auth)（auth）
- [业务](https://gitee.com/libfintech/api_gateway_internal_plugin/tree/master/handler)（handler）
- [服务注册/发现](https://gitee.com/libfintech/api_gateway_internal_plugin/tree/master/service)（service）

## Installation

```sh
$ npm install @libfintech/api-gateway-internal-plugin --save
```

## 自定义插件开发
- 插件入口：index.js
- 插件配置例子：xxx.conf.js.example，xxx为配置名称，可自定义配置名称，配置文件可有多个，需保存到应用的[插件配置目录](https://gitee.com/libfintech/api_gateway_internal/tree/master/plugin_config)中，并在[插件配置](https://gitee.com/libfintech/api_gateway_internal/blob/master/app_config.js.example)中指定配置目录

具体参考[插件模板](https://gitee.com/libfintech/api_gateway_internal_plugin/tree/master/_____temp)
npm package: @libfintech/api-gateway-plugin
Description: api gateway plugin
Author: liamjung
Latest version: 0.1.25

[API网关](https://gitee.com/libfintech/wechat_api_gateway)插件库
========

## 插件列表
- [IP白名单/黑名单](https://gitee.com/libfintech/api_gateway_plugin/tree/master/ip)（ip）
- [日志追踪](https://gitee.com/libfintech/api_gateway_plugin/tree/master/log_trace)（log_trace）
- [反向代理](https://gitee.com/libfintech/api_gateway_plugin/tree/master/proxy)（proxy）
- [转移请求](https://gitee.com/libfintech/api_gateway_plugin/tree/master/transfer)（transfer）
- [微信网关](https://gitee.com/libfintech/api_gateway_plugin/tree/master/wx_gateway)（wx_gateway & [wx_gateway_response](https://gitee.com/libfintech/api_gateway_plugin/tree/master/wx_gateway_response)）

## Installation

```sh
$ npm install @libfintech/api-gateway-plugin --save
```

## 自定义插件开发
- 插件入口：index.js
- 插件配置例子：xxx.conf.js.example，xxx为配置名称，可自定义配置名称，配置文件可有多个，需保存到应用的[插件配置目录](https://gitee.com/libfintech/wechat_api_gateway/tree/master/plugin_config)中，并在[插件配置](https://gitee.com/libfintech/wechat_api_gateway/blob/master/app_config.js.example)中指定配置目录

具体参考[插件模板](https://gitee.com/libfintech/api_gateway_plugin/tree/master/_____temp)