open-index/open-npm huggingface dataset:
npm package: @meteosci/vue-maplibre
Description: A Vue 3 Component Library for maplibre-gl
Latest version: 0.0.23

<!--
 * @Author: zouyaoji@https://github.com/zouyaoji
 * @Date: 2023-11-23 01:56:39
 * @Description: Do not edit
 * @LastEditors: zouyaoji 370681295@qq.com
 * @LastEditTime: 2024-04-25 21:03:41
 * @FilePath: \vue-maplibre\README.md
-->

<p align="center">
  <img width="256px" src="vue-maplibre-logo.svg">
</p>

<p align="center" style="font-weight: bold;">@meteosci/vue-maplibre - A Vue 3.x based component library of MaplibreGL for developers.</p>

- 💪 Vue 3.0 Composition API
- 🔥 Written in TypeScript

## Getting Started

## Bootstrap project

## License

@meteosci/vue-maplibre is open source software licensed as [MIT](https://github.com/meteosci/vue-maplibre/blob/dev/LICENSE).

Copyright (c) 2024-present, VueMapLibre contributors.

## Contributors

This project wouldn't exist without our amazing contributors.

<a href="https://github.com/meteosci/vue-maplibre/graphs/contributors">
  <img src="https://contrib.rocks/image?repo=meteosci/vue-maplibre" />
</a>
npm package: @meteozdemir/eslint-config-core
Description: Custom ESlint settings as an extensible shared config.
Author: Olcay Mete Ozdemir
Latest version: 1.3.4

# eslint-config-core

Custom ESLint settings as an extensible shared config.

## Installation

If using npm version 5+:

```bash
npx install-peerdeps --dev @meteozdemir/eslint-config-core
```

If using npm version version < 5:

```bash
npm install -g install-peerdeps
install-peerdeps --dev @meteozdemir/eslint-config-core
```

If want to install manually without install-peerdeps CLI:

```bash
npm i -D @meteozdemir/eslint-config-core eslint eslint-plugin-import eslint-plugin-prettier
```

## Usage

A `.eslintrc` file will be automatically created in the root of your project with:

```json
{
    "extends": [
        "@meteozdemir/eslint-config-core",
        "@meteozdemir/eslint-config-core/rules/prettier"
    ],
    "rules": {}
}
```

If the file is not created automatically by any reason, simply create a `.eslintrc` file in the root of project and copy code above.

## @meteozdemir/eslint-config-core/rules/prettier

Prettier is enabled by default with this package and `@meteozdemir/eslint-config-core/rules/prettier` disables ESLint rules that might conflict with Prettier.

If you don't want to use Prettier, remove `'@meteozdemir/eslint-config-core/rules/prettier'` from `.eslintrc` file.

```json
{
    "extends": ["@meteozdemir/eslint-config-core"],
    "rules": {}
}
```

## Rule Override

Add any rule you want to override to rules object in `.eslintrc` file.

```json
{
    "extends": [
        "@meteozdemir/eslint-config-core",
        "@meteozdemir/eslint-config-core/rules/prettier"
    ],
    "rules": {
        // ...
        "no-var": "off",
        "no-console": "off"
    }
}
```
npm package: @meteozdemir/eslint-config-react
Description: Custom ESLint settings for React as an extensible shared config.
Author: Olcay Mete Ozdemir
Latest version: 1.3.5

# eslint-config-react

Custom ESLint settings for React as an extensible shared config.

## Installation

If using npm version 5+:

```bash
npx install-peerdeps --dev @meteozdemir/eslint-config-react
```

If using npm version version < 5:

```bash
npm install -g install-peerdeps
install-peerdeps --dev @meteozdemir/eslint-config-react
```

If want to install manually without install-peerdeps CLI:

```bash
npm i -D @meteozdemir/eslint-config-react eslint eslint-plugin-import eslint-plugin-jsx-a11y eslint-plugin-prettier eslint-plugin-react eslint-plugin-react-hooks
```

## Usage

A `.eslintrc` file will be automatically created in the root of your project with:

```json
{
    "extends": [
        "@meteozdemir/eslint-config-react",
        "@meteozdemir/eslint-config-react/rules/prettier"
    ],
    "rules": {}
}
```

If the file is not created automatically by any reason, simply create a `.eslintrc` file in the root of project and copy code above.

## @meteozdemir/eslint-config-react/rules/prettier

Prettier is enabled by default with this package and `@meteozdemir/eslint-config-react/rules/prettier` disables ESLint rules that might conflict with Prettier.

If you don't want to use Prettier, remove `'@meteozdemir/eslint-config-react/rules/prettier'` from `.eslintrc` file.

```json
{
    "extends": ["@meteozdemir/eslint-config-react"],
    "rules": {}
}
```

## Rule Override

Add any rule you want to override to rules object in `.eslintrc` file.

```json
{
    "extends": [
        "@meteozdemir/eslint-config-react",
        "@meteozdemir/eslint-config-react/rules/prettier"
    ],
    "rules": {
        // ...
        "react/jsx-uses-vars": "off",
        "react/no-is-mounted": "off"
    }
}
```
npm package: @meteozdemir/markdownlint-config-core
Description: Custom MarkdownLint settings as an extensible shared config.
Author: Olcay Mete Ozdemir
Latest version: 1.0.1

# markdownlint-config-core

Custom MarkdownLint settings as an extensible shared config.

## Installation

If using npm version 5+:

```bash
npx install-peerdeps --dev @meteozdemir/markdownlint-config-core
```

If using npm version version < 5:

```bash
npm install -g install-peerdeps
install-peerdeps --dev @meteozdemir/markdownlint-config-core
```

If want to install manually without install-peerdeps CLI:

```bash
npm i -D @meteozdemir/markdownlint-config-core markdownlint-cli
```

## Usage

A `.markdownlint.json` file will be automatically created in the root of your project with:

```json
{
    "extends": "@meteozdemir/markdownlint-config-core"
}
```

If the file is not created automatically by any reason, simply create a `.markdownlint.json` file in the root of project and copy code above.

## Rule Override

Add any rule you want to override to `.markdownlint.json` file.

```json
{
    "extends": "@meteozdemir/markdownlint-config-core",
    // ...
    "heading-increment": false,
    "list-indent": false
}
```
npm package: @meteozdemir/prettier-config-core
Description: Custom Prettier settings as an extensible shared config.
Author: Olcay Mete Ozdemir
Latest version: 1.0.6

# prettier-config-core

Custom Prettier settings as an extensible shared config.

## Installation

If using npm version 5+:

```bash
npx install-peerdeps --dev @meteozdemir/prettier-config-core
```

If using npm version version < 5:

```bash
npm install -g install-peerdeps
install-peerdeps --dev @meteozdemir/prettier-config-core
```

If want to install manually without install-peerdeps CLI:

```bash
npm i -D @meteozdemir/prettier-config-core prettier
```

## Usage

A `.prettierrc.cjs` file will be automatically created in the root of your project with:

```javascript
module.exports = {
    ...require('@meteozdemir/prettier-config-core'),
};
```

If the file is not created automatically by any reason, simply create a `.prettierrc.cjs` file in the root of project and copy code above.

## Rule Override

Add any rule you want to override to `.prettierrc.cjs` file.

```javascript
module.exports = {
    ...require('@meteozdemir/prettier-config-core'),
    // ...
    singleQuote: false,
    bracketSpacing: false,
};
```
npm package: @meteozdemir/stylelint-config-core
Description: Custom StyleLint settings as an extensible shared config.
Author: Olcay Mete Ozdemir
Latest version: 1.2.3

# stylelint-config-core

Custom StyleLint settings as an extensible shared config.

## Installation

If using npm version 5+:

```bash
npx install-peerdeps --dev @meteozdemir/stylelint-config-core
```

If using npm version version < 5:

```bash
npm install -g install-peerdeps
install-peerdeps --dev @meteozdemir/stylelint-config-core
```

If want to install manually without install-peerdeps CLI:

```bash
npm i -D @meteozdemir/stylelint-config-core stylelint stylelint-high-performance-animation stylelint-order stylelint-prettier
```

## Usage

A `.stylelintrc` file will be automatically created in the root of your project with:

```json
{
    "extends": [
        "@meteozdemir/stylelint-config-core",
        "@meteozdemir/stylelint-config-core/rules/prettier"
    ],
    "rules": {}
}
```

If the file is not created automatically by any reason, simply create a `.stylelintrc` file in the root of project and copy code above.

## @meteozdemir/stylelint-config-core/rules/prettier

Prettier is enabled by default with this package and `@meteozdemir/stylelint-config-core/rules/prettier` disables StyleLint rules that might conflict with Prettier.

If you don't want to use Prettier, remove `'@meteozdemir/stylelint-config-core/rules/prettier'` from `.stylelintrc` file.

```json
{
    "extends": ["@meteozdemir/stylelint-config-core"],
    "rules": {}
}
```

## Rule Override

Add any rule you want to override to rules object in `.stylelintrc` file.

```json
{
    "extends": [
        "@meteozdemir/stylelint-config-core",
        "@meteozdemir/stylelint-config-core/rules/prettier"
    ],
    "rules": {
        // ...
        "color-hex-alpha": "always",
        "function-name-case": "upper"
    }
}
```
npm package: @meteozdemir/stylelint-config-order
Description: Custom StyleLint settings for CSS property sort order as an extensible shared config.
Author: Olcay Mete Ozdemir
Latest version: 1.0.3

# stylelint-config-order

Custom StyleLint settings for CSS property sort order as an extensible shared config.

## Installation

If using npm version 5+:

```bash
npx install-peerdeps --dev @meteozdemir/stylelint-config-order
```

If using npm version version < 5:

```bash
npm install -g install-peerdeps
install-peerdeps --dev @meteozdemir/stylelint-config-order
```

If want to install manually without install-peerdeps CLI:

```bash
npm i -D @meteozdemir/stylelint-config-order stylelint stylelint-order
```

## Usage

Simply create a `.stylelintrc` file in the root of project and copy code below.

```json
{
    "extends": ["@meteozdemir/stylelint-config-order"],
    "rules": {}
}
```

## Rule Override

Add any rule you want to override to rules object in `.stylelintrc` file.

```json
{
    "extends": ["@meteozdemir/stylelint-config-order"],
    "rules": {
        // ...
        "order/order": ["at-rules", "dollar-variables", "custom-properties"],
        "order/properties-order": [
            {
                "groupName": "Grid Layout",
                "properties": ["grid", "grid-row", "grid-column"]
            }
        ]
    }
}
```
npm package: @meteozdemir/stylelint-config-scss
Description: Custom StyleLint settings for SCSS as an extensible shared config.
Author: Olcay Mete Ozdemir
Latest version: 1.0.5

# stylelint-config-scss

Custom StyleLint settings for SCSS as an extensible shared config.

## Installation

If using npm version 5+:

```bash
npx install-peerdeps --dev @meteozdemir/stylelint-config-scss
```

If using npm version version < 5:

```bash
npm install -g install-peerdeps
install-peerdeps --dev @meteozdemir/stylelint-config-scss
```

If want to install manually without install-peerdeps CLI:

```bash
npm i -D @meteozdemir/stylelint-config-scss stylelint stylelint-scss postcss postcss-scss stylelint-high-performance-animation stylelint-order stylelint-prettier
```

## Usage

A `.stylelintrc` file will be automatically created in the root of your project with:

```json
{
    "extends": [
        "@meteozdemir/stylelint-config-scss",
        "@meteozdemir/stylelint-config-scss/rules/prettier"
    ],
    "rules": {}
}
```

If the file is not created automatically by any reason, simply create a `.stylelintrc` file in the root of project and copy code above.

## @meteozdemir/stylelint-config-scss/rules/prettier

Prettier is enabled by default with this package and `@meteozdemir/stylelint-config-scss/rules/prettier` disables StyleLint rules that might conflict with Prettier.

If you don't want to use Prettier, remove `'@meteozdemir/stylelint-config-scss/rules/prettier'` from `.stylelintrc` file.

```json
{
    "extends": ["@meteozdemir/stylelint-config-scss"],
    "rules": {}
}
```

## Rule Override

Add any rule you want to override to rules object in `.stylelintrc` file.

```json
{
    "extends": [
        "@meteozdemir/stylelint-config-scss",
        "@meteozdemir/stylelint-config-scss/rules/prettier"
    ],
    "rules": {
        // ...
        "scss/at-import-partial-extension": "always",
        "scss/at-mixin-argumentless-call-parentheses": "never",
    }
}
```
npm package: @meterio/bridge-sync
Description: Sync meter passport deposit/proposal info into mongo
Author: Simon Zhang
Latest version: 0.1.5

# Meter Passport Rebate

## Workflow

```
+----------------+       +--------------+        +----------------+
|                |       |              |        |                |
|  Home Network  +-----> +  Bridge Txs  +------->+ Rebate Details |
|                |       |   Base DB    |        |                |
+----------------+       +--------------+        +----------------+
```

- `Bridge Txs`: BridgeTx
- `Reward`: BatchReward

## Features

-

## Usage as Cli

## Usage with Typescript

```

```

## Daemon

```

```
npm package: @meterio/bridgev2-sync
Description: Sync meter passport deposit/proposal info into mongo
Author: Simon Zhang
Latest version: 0.0.1

# Meter Passport Sync

## Workflow

```
+----------------+       +--------------+        +----------------+
|                |       |              |        |                |
|  Home Network  +-----> +  Bridge Txs  +------->+ Rebate Details |
|                |       |   Base DB    |        |                |
+----------------+       +--------------+        +----------------+
```

- `Bridge Txs`: BridgeTx
- `Reward`: BatchReward

## Features

-

## Usage as Cli
npm package: @meterio/can-sync
Description: Collect blocks/txs/metrics from meter network
Author: Simon Zhang
Latest version: 0.0.2

# Example how to use TypeORM with MongoDB using TypeScript

1. clone repository 
2. run `npm i`
3. edit `ormconfig.json` and change your database configuration
4. run `npm start`
5. enjoy!

## How to use CLI?

1. install `typeorm` globally: `npm i -g typeorm`
2. run `typeorm -h` to show list of available commands
npm package: @meterio/chainbridge-solidity
Description: Meter Chainbridge solidity
Latest version: 2.0.3

# Token Contracts

## Install
```
npm install
```

## Compile
```
npm compile
```

## Deploy upgradeable contract
1. edit file[./scripts/deployProxy.js](./scripts/deployProxy.js)
2. run
```
npx hardhat run ./scripts/deployProxy.js --network metermain
```

## Deploy
```
npx hardhat deploy --name ttt --symbol ttt --supply 1000000000000000000000000 --owner 0x319a0cfD7595b0085fF6003643C7eD685269F851 --network metermain
```

## setBlackList
```
npx hardhat setBlackList --account 0x319a0cfD7595b0085fF6003643C7eD685269F851 --network metermain
```

## getBlackList
```
npx hardhat getBlackList --account 0x319a0cfD7595b0085fF6003643C7eD685269F851 --network metermain
```

## mint
```
npx npx hardhat mint --to 0x319a0cfD7595b0085fF6003643C7eD685269F851 amount 10000000000000000000000 --network metermain
```

## pause
```
npx hardhat pause --network metermain
```

## unpause
```
npx hardhat unpause --network metermain
```

## grantRole
```
npx hardhat grant --account 0x319a0cfD7595b0085fF6003643C7eD685269F851 --network metermain
```

## revokeRole
```
npx hardhat revoke --account 0x319a0cfD7595b0085fF6003643C7eD685269F851 --network metermain
```

## Publish & Verify
```
npx hardhat veri --network metermain
```
npm package: @meterio/contract-toolkit
Description: Toolkit for contract debugging on meter
Author: Simon.Z
Latest version: 0.0.6

# Contract Toolkit

This is a toolkit library for contract debugging

## Prerequisite

You need to create `providers.json`. 

A typical `providers.json` looks like this, where key is `provider-name` and value is rpc url config. `provider-name` is defined in `src/const/network.js`:

```json
{
  "mainnet": { "url": "http://rpc.meter.io", "meterifyUrl": "http://mainnet.meter.io" },
  "testnet": { "url": "http://rpctest.meter.io", "meterifyUrl": "http://testnet.meter.io" },

  "ethereum": { "url": "https://speedy-nodes-nyc.moralis.io/[key]/eth/mainnet" },
  "bsctest": { "url": "https://data-seed-prebsc-1-s1.binance.org:8545/" },

  "localhost": { "url": "http://localhost:8545", "meterifyUrl": "http://localhost:8669"},
}
```

Put these `providers.json` file under safe folders, such as `/Users/simon/safe/`. And configure .env with 

```
PROVIDERS_CONFIG=/Users/simon/safe/providers.json
```

And then, please put your private key in keystore and name it with `name.keystore` pattern, put them under safe folders, such as `/Users/simon/keys`, And add one more line in `.env` file

```
ACCOUNTS_DIR=/Users/simon/keys
```
Please notice that system will recursively find the keystore file and every time you load the private key, you'll need to type in the passphrase you set when you create the keystore.

## Read Usage (call)

Calling a contract is as simple as the following, notice that you could easily load the account you just set in `accounts.json` by `loadAccount`. Here's an example calling `balanceOf` on ERC20.

```js
const { loadAccount, loadWeb3Contract, Network } = require('../const');
const { inst } = loadWeb3Contract(Network.metermain, 'ERC20', 'VOLT_AIR');
(async () => {
  const userAcct = await loadAccount('bob');
  const owner = userAcct.addr;

  const r = await inst.methods.balanceOf(owner).call({});
  console.log(r);
})();

```

### Write Usage (send)

`send` is a little bit more complex then `call`, but it's still pretty straightforward. Here's an example calling `approve` on ERC20.

```js
const { enableAccount, loadAddress, loadWeb3Contract, Network } = require('../const');
const { utils } = require('ethers');

const network = Network.metermain;
const { web3, inst } = loadWeb3Contract(network, 'ERC20', 'VOLT_AIR');

const spender = loadAddress(network, 'Geyser_MTRG_USDC_LP');
const amount = utils.parseUnits('100', 18).toHexString();

(async () => {
  const ownerAcct = await enableAccount(web3, 'bob');
  const r = await inst.methods.approve(spender, amount).send({ from: ownerAcct.addr, gasLimit: 4700000 });
  console.log(r);
})();

```
npm package: @meterio/safe-gateway-typescript-sdk
Description: [![npm](https://img.shields.io/npm/v/@safe-global/safe-gateway-typescript-sdk?label=%40safe-global%2Fsafe-gateway-typescript-sdk)](https://www.npmjs.com/package/@safe-global/safe-gateway-typescript-sdk)
Author: katspaugh
Latest version: 0.3.8

# Safe Gateway TypeScript SDK

[![npm](https://img.shields.io/npm/v/@safe-global/safe-gateway-typescript-sdk?label=%40safe-global%2Fsafe-gateway-typescript-sdk)](https://www.npmjs.com/package/@safe-global/safe-gateway-typescript-sdk)

A TypeScript SDK for the [Safe Client Gateway](https://github.com/safe-global/safe-client-gateway)

📖 [API reference](https://safe-global.github.io/safe-gateway-typescript-sdk/modules.html)

## Usage policy

NB: Safe Client Gateway isn't meant for public use.
Please _do not_ use this SDK if you're building, e.g., a Safe App.

## Using the SDK

Install:

```shell
yarn add @safe-global/safe-gateway-typescript-sdk
```

Import:

```ts
import { getChainsConfig, type ChainListResponse } from '@safe-global/safe-gateway-typescript-sdk'
```

Use:

```ts
const chains = await getChainsConfig()
```

The SDK needs no initialization unless you want to override the base URL. You can set an alternative base URL like so:

```ts
import { setBaseUrl } from '@safe-global/safe-gateway-typescript-sdk'

// Switch the SDK to dev mode
setBaseUrl('https://safe-client.staging.5afe.dev')
```

The full SDK reference can be found [here](https://safe-global.github.io/safe-gateway-typescript-sdk/modules.html).

## Adding an endpoint

Endpoint types are defined in `src/types/gateway.ts`.

Each endpoint consists of:

- a function defined in `src/index.ts` (e.g. `getBalances`)
- a path definition (e.g. `'/chains/{chainId}/safes/{address}/balances/{currency}/'`)
- operation definition (e.g. `safes_balances_list`)
- response definition

To add a new endpoint, follow the pattern set by the existing endpoints.

## Eslint & prettier

This command will run before every commit:

```shell
yarn eslint:fix
```

## Tests

To run the unit and e2e tests locally:

```shell
yarn test
```

N.B.: the e2e tests make actual API calls on staging.

## Gateway API docs

The TypeScript types in this SDK are based on [Rust types](https://safe-global.github.io/safe-client-gateway/docs/routes/index.html) from the Gateway API.
npm package: @meterio/scan-sync
Description: Collect blocks/txs/metrics from meter network
Author: Simon Zhang
Latest version: 0.4.95

# Scan Sync

Scan the Meter blockchain and transform interested data into a MongoDB.

## Workflow

```
+----------------+       +--------------+        +----------------+
|                |       |              |        |                |
| Meter FullNode +-----> +   Base DB    +------->+ Defined Entity |
|                |       |              |        |                |
+----------------+       +--------------+        +----------------+
```

- `Base DB`: Blocks/TXs/PowBlocks/PowTxs/Receipts
- `Defined Entity`: Balances/Transfers/ etc

## Features

- Blocks/TXs/Receipts
- Committee/Epoch
- MTR/MTRG Native Balance and Transfer
- MTR/MTRG System Contract Transfer
- ERC20 Token Balance and Transfer
- Staking Engine (incomplete)
- Auction Engine (incomplete)
- AccountLock Engine (incomplete)

## Usage as Cli

1. Install dependency

```
npm install -g @meterio/scan-sync dotenv-cli
```

2. Prepare env file with these information

```
# database
MONGO_PATH=127.0.0.1:27017/scandb
MONGO_PWD=scan
MONGO_USER=scan
MONGO_SSL_CA=

# look at .env.sample
```

3. Run sync

```bash
dotenv -e env.prod scan-sync main pos
```

## Usage Typescript, Run with source code

```
ts-node main.ts [Network] [Task]

Network: [main|test|main-standby|test-standby|verse-main|verse-test]
Task: [pos|pow|metric|scriptengine]
```

## Usage Daemon, Run with binary

```bash
// notice Network & Task

nohup dotenv -e env.prod scan-sync main pos >> ~/pos-sync.log 2>&1 &
```