open-index/open-npm huggingface dataset:
npm package: @ltns/use-skeleton
Description: A React hook used to display skeleton placeholders where content needs to wait for loading.
Latest version: 0.0.6

`@ltns/use-skeleton` is a React hook used to display skeleton placeholders where content needs to wait for loading.


https://github.com/willltns/use-skeleton/assets/35132956/da5932ed-0981-403c-ad07-d0e6d85a55ed


## Install

```shell
npm i @ltns/use-skeleton
# or
yarn add @ltns/use-skeleton
```

## Usage

```tsx
import useSkeleton from '@ltns/use-skeleton';

const [ref, setAnimate, animate] = useSkeleton('& > *');

return (
	<div ref={ref}>
		{animate ? 'Loading...' : null}
		<div>Set the width of the element.</div>
		<span style={{ display: 'inline-flex' }}>Or use mocking text to expand the width of the element.</span>
	</div>
);
```

> [!IMPORTANT]
>
> `CSS Modules` should be enabled.
>
> The skeleton inline element's `display` type should not be `inline`(the default for inline elements.), set it to `inline-flex` or `inline-block`.
>
> Use the `CSS Variables` feature for custom styling: `--ltns-skeleton-bg-color`, `--ltns-skeleton-sk-color`, `--ltns-skeleton-anim-str`.
>
> `transform` animation is better than `background-position` animation in rendering performance.

> This package distributed with ESNext language level and ES modules system.
> It means that depending on your browser target you might need to transpile it. Every major
> bundler provides a way to transpile `node_modules` fully or partially.
> Address your bundler documentation for more details.
npm package: @lto-network/lto-crypto
Description: Using this library you can easily create and sign binary data for LTO Network. It provides all you need on crypto and binary layers.
Author: Sven Stam
Latest version: 1.1.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# lto-crypto  [![npm version](https://badge.fury.io/js/%40lto-network%2Flto-crypto.svg)](https://www.npmjs.com/package/@lto-network/lto-crypto)

Using this library you can easily create and sign binary data for LTO Network.
It provides all you need on crypto and binary layers.

### Includes:
- Key pair generation
- Address generation
- Bytes signature
- Signature validation

### Keys and Addresses

```js
const lc = require('lto-crypto');

//Mainnet address
lc.address('seed'); //3JyGQNS7yqfKV1P2RaLE3bVyga6JAmUXVzE

//Testnet address
lc.address('seed', 'T'); //3NByEFJWHX72VYr97mgtbUW9yc8MiNpiDVo

//Public and private keys from seed
lc.keyPair('seed');

/*{
  public: '2od6By8qGe5DLYj7LD9djxVLBWVx5Dsy3P1TMRWdBPX6',
  private: '3wKoEgaFjnT8mcPS7cmpgsB6eXuo6oC4CvTBP47jFHAoXJsqiBuXSy6C3dy9wLTfRVEqhmaaj8x3ThVMMET6yN6t'
}*/

//Public only
lc.publicKey('seed'); //2od6By8qGe5DLYj7LD9djxVLBWVx5Dsy3P1TMRWdBPX6

//Private only
lc.privateKey('seed'); //3wKoEgaFjnT8mcPS7cmpgsB6eXuo6oC4CvTBP47jFHAoXJsqiBuXSy6C3dy9wLTfRVEqhmaaj8x3ThVMMET6yN6t

```

### Signatures and verification

```js
const lc = require('lto-crypto');
const { verifySignature, signBytes, publicKey } = lc;

const seed = 'magicseed';
const pubKey = publicKey(seed);

const bytes = Uint8Array.from([1, 2, 3, 4]);
const sig = signBytes(bytes, seed);
const isValid = verifySignature(pubKey, bytes, sig); //true

```
npm package: @lto-network/lto-marshall
Description: Marshall can serialize and parse LTO blockchain data structures
Author: LTO Network
Latest version: 1.2.1
Deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info.

# @lto-network/lto-marshall [![npm version](https://badge.fury.io/js/%40lto-network%2Flto-marshall.svg)](https://badge.fury.io/js/%40lto-network%2Flto-marshall) [![Build Status](https://travis-ci.com/ltonetwork/lto-marshall.svg?branch=master)](https://travis-ci.com/ltonetwork/lto-marshall)

Marshall can serialize and parse LTO blockchain data structures

### Includes:
- Serialization primitives
- Parsing primitives
- Binary to js converters
- Js to binary converters
- JSON to js converters
- Js to JSON converters

### Usage:
```javascript
import { binary, json } from 'parse-serialize'

const tx = {
  type: 4,
  version: 2,
  fee: 100000,
  senderPublicKey: '7GGPvAPV3Gmxo4eswmBRLb6bXXEhAovPinfcwVkA2LJh',
  timestamp: 1542539421461,
  proofs:
  ['22J76sGhLRo3S5pkqGjCi9fijpEeGGRmnv7canxeon2n2MNx1HhvKaBz2gYTdpJQohmUusRKR3yoCAHptRnJ1Fwe'],
  id: 'EG3WvPWWEU5DdJ7xfB3Y5TRJNzMpt6urgKoP7docipvW',
  recipient: '3N3Cn2pYtqzj7N9pviSesNe8KG9Cmb718Y1',
  amount: 10000,
  attachment: '',
};

// Binary converter
const bytes = binary.serializeTx(tx);

const txb = binary.parseTx(bytes)

// json converted
const jsonString = json.stringifyTx(tx)

const txj = json.parseTx(jsonString)

```
npm package: @ltonetwork/lto
Description: Client library for LTO Network - Hybrid blockchain
Author: LTO Network
Latest version: 0.16.15

![LTO github readme](https://user-images.githubusercontent.com/100821/196711741-96cd4ba5-932a-4e95-b420-42d4d61c21fd.png)

# LTO API [![npm version](https://badge.fury.io/js/@ltonetwork%2Flto.svg)](https://badge.fury.io/js/@ltonetwork%2Flto)

Client for LTO Network. Integration for both public blockchain and private event-chain.

## Installation

```shell
npm install @ltonetwork/lto
```

or

```shell
yarn add @ltonetwork/lto
```

Alternatively you can [download the library as bundle](#download-bundle).

## Usage

The chain id is 'L' for the mainnet and 'T' testnet.

```js
import LTO, {Binary} from '@ltonetwork/lto';

const lto = new LTO('T');

const account = lto.account();

const seed = 'satisfy sustain shiver skill betray mother appear pupil coconut weasel firm top puzzle monkey seek';
const accountFromSeed = lto.account({ seed });

lto.transfer(account, recipient, 100_00000000);
lto.massTransfer(account, [{recipient: recipient1, amount: 100_00000000}, {recipient: recipient2, amount: 50_00000000}]);
lto.anchor(account, new Binary('some value').hash(), new Binary('other value').hash());
lto.associate(account, 0x3400, recipient);
lto.revokeAssociation(account, 0x3400, recipient);
lto.lease(account, recipient, 10000_00000000);
lto.cancelLease(account, leaseId);
lto.sponsor(account, otherAccount);
lto.cancelSponsorship(account, otherAccount);

lto.getBalance(account);
lto.setData(account, {foo: 'bar'});
lto.getData(account);
```

_Amounts are in `LTO * 10^8`. Eg: 12.46 LTO is `12_46000000`._

## Documentation

For more advanced use cases, please [read the documentation](https://docs.ltonetwork.com/libraries/javascript).

## Download bundle

The library is also available as a bundle. This bundle includes the library and all its dependencies. This bundle is
useful if you want to use the library in a browser environment.

You can download the bundle from the [GitHub releases page](https://github.com/ltonetwork/lto-api.js/releases).

The library is bundles as a UMD module. This means you can use it in the browser as global variable `LTO`, or you can
import it as a module in your JavaScript code.

### Browser

```html
<script src="lto.js"></script>
<script>
    const lto = LTO.connect('T');
    const account = lto.account();
    console.log(account.address);
    
    lto.anchor(account, new LTO.Binary('test').hash())
      .then(tx => console.log(tx.id));
</script>
```

### Troubleshooting

Global variable `LTO` is an object with all exported classes and functions. If you try to do `new LTO()` you will get
the error:

    TypeError: LTO is not a constructor

Use `LTO.connect()` instead.
npm package: @ltonetwork/veramo-plugin
Description: Veramo plugins to manage DIDs and verifiable credentials on LTO Network
Author: Arnold Daniels
Latest version: 0.1.13

![lto-veramo](https://github.com/ltonetwork/lto-veramo/assets/100821/ef26b8c6-82d4-4911-afe7-85dedd621a3a)

This library provides [Veramo](https://veramo.io/) plugins to manage DIDs and verifiable credentials on LTO Network.

## Installation

To install the library, you can use npm or yarn:

```shell
npm install @ltonetwork/veramo-plugin
```

or

```shell
yarn add @ltonetwork/veramo-plugin
```

## LTO DID provider

The LTO DID provider allows you to manage DIDs on the LTO Network blockchain.

### Usage

```typescript
import { createAgent } from '@veramo/core'
import { DIDManager } from '@veramo/did-manager'
import { LtoDidProvider } from '@lto-network/veramo-plugin'

const agent = createAgent<DIDManager>({
  plugins: [
    new DIDManager({
      defaultProvider: 'did:lto',
      providers: {
        'did:lto': new LtoDidProvider({
          nodeAddress: 'https://testnet.lto.network',
          networkId: 'T',
        }),
      },
    }),
  ],
})
```

#### Options

The LTO DID provider accepts the following options:

| Name          | Type       | Description                                         |
|---------------|------------|-----------------------------------------------------|
| defaultKms    | string     | The default key management system (KMS).            |
| lto           | LTO        | Optional. The `LTO` instance.                       |
| networkId     | string     | `T` for testnet or `L` for mainnet. Defaults to `L` |
| nodeAddress   | string     | Optional. URL of your LTO public node.              |
| nodeApiKey    | string     | Optional. The node API key.                         |
| sponsor       | Account    | Optional. The sponsor account or information.       |

In case an `LTO` instance is not provided, the provider will create one using the `networkId`, `nodeAddress` and
`nodeApiKey` options.

#### Sponsor

The `sponsor` option can be used to automatically sponsor the transaction fees for new DIDs. It can be either an
`Account` object or account settings.

```typescript
new LtoDidProvider({
  nodeAddress: 'https://testnet.lto.network',
  networkId: 'T',
  sponsor: {
    seed: 'my seed',
    keyType: 'ed25519',
    address: '3JfLsayRvWbJh2JjEhCnfr6hKv8L1xUkH9p',
  },
});
```

Only `seed` or `privateKey` is required.

## Contributing

Contributions are welcome! If you encounter any issues or have suggestions for improvements, please create an issue or
submit a pull request on the [GitHub repository](https://github.com/ltonetwork/lto-veramo-plugin).

## License

This library is licensed under the [MIT License](LICENSE).
npm package: @ltopx/lx-ui
Description: A react ui library based on radix-ui and tailwindcss
Author: liushuxiang19930729@gmail.com
Latest version: 0.1.18

<div align="center">
<h1>LX-UI</h1>
<p>Based on Radix UI and Tailwind CSS. Works great with Next.js!</p>
<p>
<a href="https://www.npmjs.com/package/@ltopx/lx-ui"><img src="https://img.shields.io/npm/v/@ltopx/lx-ui?color=38bdf8&amp;label=" alt="NPM version"></a>
</p>
<p>
English
/
<a href="./README_CN.md">简体中文</a> 
</p>
<p>
<a href="https://lx-ui.ltopx.com">Document</a> 
</p>
</div>

## Introduction

`LX-UI` is a set of React component library developed based on [Radix UI](https://www.radix-ui.com) and [Tailwind CSS](https://tailwindcss.com/).

The purpose of creating this project is to solve the issue of UI consistency for my personal development project, [L-GPT](https://chat.ltopx.com). The initial version may be relatively simple 🤣🤣, but it will gradually iterate and improve in the future.

## Features

- 💎 Based on Radix UI, it enriches and extends some components
- 🔥 Utilizes Tailwind CSS for easy customization of styles in the future
- 🎉 Supports Typescript
- 📱 Responsive design support

## Setup

### Environment

- It is recommended to use pnpm for installation (although npm or yarn can also be used)

  ```bash copy
  npm i -g pnpm
  ```

- Installing Tailwind CSS

  Since LX-UI is based on Tailwind CSS, you need to install and configure Tailwind CSS in your project in order to use it properly. [Tailwind CSS installation guide](https://tailwindcss.com/docs/installation)

### Install

```bash
pnpm add @ltopx/lx-ui
```

### Configuring

Since LX-UI is developed based on Tailwind CSS, you need to modify the `tailwind.config.js` file in your project and add the relevant configurations for LX-UI.

- Add presets configuration.
- Configure content path to resolve LX-UI components.

```js filename="tailwind.config.js" copy {3-4}
/** @type {import('tailwindcss').Config} */
module.exports = {
  presets: [require("@ltopx/lx-ui/dist/presets")],
  content: ["./node_modules/@ltopx/lx-ui/dist/**/*.{mjs,js,ts,jsx,tsx,mdx}"],
  theme: {
    extend: {},
  },
  plugins: [],
};
```

## Usage

```js copy
import { Select } from "@ltopx/lx-ui";

export default function Home() {
  return <Select placeholder="请选择" options={[1, 2, 3]} />;
}
```

## License

[MIT]() License © 2023 Powered by [LTopx](https://github.com/LTopx)
npm package: @ltotal/openclaw-config-guard
Description: A publishable CLI that modularizes OpenClaw config files and keeps them hot-reload friendly.
Author: ltotal
Latest version: 1.0.2

# openclaw-config-guard

`@ltotal/openclaw-config-guard` is a publishable npm CLI that watches an OpenClaw config directory, splits large `openclaw.json` sections into `conf.d/*.json`, and touches the root config when sub-config files change so OpenClaw can hot-reload consistently.

The CLI provides:

- `start`, `stop`, `restart`, `status`, and `logs` commands for managing the background guard
- `watch` for foreground debugging
- `config` for an interactive settings wizard covering:
  - `TARGET_DIR`
  - `MAX_BACKUPS`
  - `STABILITY_WAIT`
  - `USE_POLLING`
  - `POLL_INTERVAL`
  - `SUB_EXT`
  - `KEYS_TO_EXTRACT`

## Install

```bash
npm install -g @ltotal/openclaw-config-guard
```

Node.js 20.19.0 or newer is required.

Or run it without a global install:

```bash
npx @ltotal/openclaw-config-guard help
```

## Commands

```bash
openclaw-config-guard config
openclaw-config-guard start
openclaw-config-guard status
openclaw-config-guard logs
openclaw-config-guard restart
openclaw-config-guard stop
```

For local debugging, you can also run the watcher in the foreground:

```bash
openclaw-config-guard watch
```

## Config Wizard

The wizard stores settings in:

```text
~/.openclaw-config-guard/config.json
```

Default values:

```json
{
  "targetDir": "~/.openclaw",
  "maxBackups": 6,
  "stabilityWait": 5000,
  "usePolling": false,
  "pollInterval": 500,
  "subExt": ".json",
  "keysToExtract": [
    "agents",
    "gateway",
    "hooks",
    "models",
    "skills",
    "channels",
    "plugins",
    "bindings"
  ]
}
```

## Runtime Files

The CLI keeps its own runtime files under:

```text
~/.openclaw-config-guard/
```

- `config.json`: saved wizard settings
- `state.json`: active background process metadata
- `guard.log`: watcher logs
- `guard.log.1` to `guard.log.3`: rotated log files when the active log exceeds 1 MiB

## Publishing checklist

1. Confirm the GitHub URLs in `package.json` match the real repository.
2. Run `npm run release:check`.
3. Publish with `npm run publish:npm -- --access public`.

## Development

```bash
npm install
npm test
npm run release:check
node ./bin/openclaw-config-guard.js help
```