open-index/open-npm huggingface dataset:
npm package: @smilekite/css-url
Description: postcss plugin for css url
Author: gw
Latest version: 1.0.1

# css-url
postcss 插件 , 用与处理 css 中 url 加载 图片和字体问题 。

## 安装

```sh
yarn add @smilekite/css-url -D
```

or

```sh
npm i @smilekite/css-url -D
```

## 使用

```js
import { cssUrl } from '@smilekite/css-url'
export default {
  plugins: [
    postcss({
        plugins: [
          cssUrl({
            imgOutput: 'dist/imgs',
            fontOutput: 'dist/font',
            cssOutput: 'dist/style'
          }),
        ],
        extract: path.resolve('dist/style/index.css')  
    })
  ]
}
```

运行结果

```css
@font-face {
　　font-family: "test";
　　src: url('./font/iconfont.ttf');
}

div {
    color : red;
    background : url(./test.png);
    font-family : "test";
}
```

转换为

```css
@font-face {
　　font-family: "test";
　　src: url('../font/iconfont.ttf');
}

div {
    color : red;
    background : url(../imgs/test.png);
    font-family : "test";
}
```

## 配置参数

### `imgOutput`

作用 : 图片生成路径

参数类型 : string  

### `fontOuput`

作用 : 字体生成路径

参数类型 : string  

### `cssOuput`

作用 :  由于无法直接获取 css 输出路径 , 导致 url 路径修改错误 。 您需要手动配置该选项 ，该选项请与你的 css 输出路径保持一致 。

参数类型 ： string 

### `imgExtensions`

作用 : 图片扩展名

参数类型 : RegExp

默认参数 ：/\.(png|jpg|jpeg|gif|svg)$/

### `fontExtensions`

作用 ：字体扩展名

参数类型 : RegExp

默认参数 ：/\.(ttf|woff|woff2|eot)$/

### `limit`

作用 ：限制文件大小 ，低于此数值的文件转换成 base64 编码嵌套在文件中 。

参数类型 : number 

默认参数 : 8192 

### `hash`

作用 ：文件名是否 hash 

参数类型 : boolean

默认参数 : false

### `slash`

作用 : url 路径前缀是否加上 ./ 

参数类型 : boolean

默认参数 : false



demo 

```js
import {cssUrl} from '@smilekite/css-url'  
postcss({
        plugins: [
          cssUrl({
            imgOutput: 'dist/imgs',
            fontOutput: 'dist/font',
            cssOutput: 'dist/style',
            imgExtensions : /\.(png|jpg|jpeg|gif|svg)$/,
            fontExtensions : /\.(ttf|woff|woff2|eot)$/,
            limit : 8192,
            hash : false,
            slash : false
          }),
        ],
        extract: path.resolve('dist/style/my-css.css') 
    })
```

### v1.0.0新增功能 
使用 less/sass 等预处理器 @import 时，可导入 loader : importLoader 进行使用
dome 
```js
import {cssUrl,importLoader} from '@smilekite/css-url'
postcss({
      plugins: [
        cssUrl({
          imgOutput: 'dist/imgs',
          fontOutput: 'dist/font',
          cssOutput: 'dist/style',
          imgExtensions : /\.(png|jpg|jpeg|gif|svg)$/,
          fontExtensions : /\.(ttf|woff|woff2|eot)$/,
          limit : 8192,
          hash : false,
          slash : false
        })
      ],
      use: ['less', 'import-url'],
      extract: path.resolve('dist/style/my-css.css'),
      loaders: [importLoader]
  }),


```
npm package: @smilekite/lego-bricks
Description: SMILE LEGO 是一个基于 Vue3 + TypeScript 开发的业务组件库，提供了一系列可复用的 UI 组件，帮助开发者快速构建现代化的 Web 应用。
Author: smiley
Latest version: 1.0.8

# SMILE LEGO 业务组件库

SMILE LEGO 是一个基于 Vue3 + TypeScript 开发的业务组件库，提供了一系列可复用的 UI 组件，帮助开发者快速构建现代化的 Web 应用。

## 特性
* ✅ **TypeScript 支持**：完整的类型定义，提供良好的开发体验
* ✅ **Vue3 组合式 API**：采用最新的 Vue3 特性，支持组合式 API
* ✅ **单元测试**：完善的测试用例，确保组件质量
* ✅ **提交发布前验证**：自动化的代码检查和测试流程
* ✅ **Travis CI 自动发布**：持续集成，自动发布新版本
* ✅ **轻量化**：按需引入，减少打包体积

## 安装

使用 npm 安装：

```bash
npm install @smilekite/lego-bricks
```

使用 yarn 安装：

```bash
yarn add @smilekite/lego-bricks
```

## 快速开始

### 全局引入

```javascript
import { createApp } from 'vue'
import LegoBricks from '@smilekite/lego-bricks'
import '@smilekite/lego-bricks/dist/bundle.css'
import App from './App.vue'

const app = createApp(App)
app.use(LegoBricks)
app.mount('#app')
```

### 按需引入

```javascript
import { createApp } from 'vue'
import { LText, LImage, LShape } from '@smilekite/lego-bricks'
import '@smilekite/lego-bricks/dist/bundle.css'
import App from './App.vue'

const app = createApp(App)
app.component('LText', LText)
app.component('LImage', LImage)
app.component('LShape', LShape)
app.mount('#app')
```

## 组件列表

### LText
文本组件，用于展示和编辑文本内容。

### LImage
图片组件，用于展示和处理图片。

### LShape
形状组件，用于绘制各种几何形状。

### FinalPage
最终页面组件，用于展示最终的页面效果。

## 开发指南

### 克隆仓库

```bash
git clone https://github.com/Kitesource/lego-bricks.git
cd lego-bricks
```

### 安装依赖

```bash
npm install
```

### 启动开发服务器

```bash
npm run serve
```

### 构建组件库

```bash
npm run build
```

### 运行单元测试

```bash
# 运行所有测试
npm run test

# 监听模式运行测试
npm run test:watch
```

### 代码检查

```bash
npm run lint
```

### 发布
```
npm run publish --access public
```

## 项目结构

```
lego-bricks/
├── build/              # 构建配置文件
├── dist/               # 构建输出目录
├── src/                # 源代码目录
│   ├── components/     # 组件目录
│   ├── hooks/          # 自定义 hooks
│   ├── App.vue         # 应用入口组件
│   ├── index.ts        # 组件库入口
│   └── main.ts         # 开发环境入口
├── tests/              # 测试目录
├── package.json        # 项目配置
└── README.md           # 项目说明
```

## 贡献指南

1. Fork 仓库
2. 创建特性分支 (`git checkout -b feature/AmazingFeature`)
3. 提交更改 (`git commit -m 'Add some AmazingFeature'`)
4. 推送到分支 (`git push origin feature/AmazingFeature`)
5. 开启 Pull Request
npm package: @smileyjames/boardgame.io
Description: library for turn-based games
Author: nicolodavis@gmail.com
Latest version: 0.39.13

<p align="center">
  <img src="https://raw.githubusercontent.com/nicolodavis/boardgame.io/master/docs/logo-optimized.svg?sanitize=true" alt="boardgame.io" />
</p>

<p align="center">
<a href="https://www.npmjs.com/package/boardgame.io"><img src="https://badge.fury.io/js/boardgame.io.svg" alt="npm version" /></a>
<a href='https://semaphoreci.com/nicolodavis/boardgame-io'> <img src='https://semaphoreci.com/api/v1/nicolodavis/boardgame-io/branches/master/shields_badge.svg' alt='Build Status'></a>
<a href="https://coveralls.io/github/nicolodavis/boardgame.io?branch=master"><img src="https://img.shields.io/coveralls/nicolodavis/boardgame.io.svg" alt="Coveralls" /></a>
<a href="https://gitter.im/boardgame-io"><img src="https://badges.gitter.im/boardgame-io.svg" alt="Gitter" /></a>
</p>

<p align="center">
  <strong><a href="https://boardgame.io/documentation/#/">Read the Documentation</a></strong>
  
</p>

<p align="center">
  <strong>boardgame.io</strong> is an engine for creating turn-based games using JavaScript.
</p>

Write simple functions that describe how the game state changes
when a particular move is made. This is automatically converted
into a playable game complete with online multiplayer
features, all without requiring you to write a single line of
networking or storage code.

### Features

- **State Management**: Game state is managed seamlessly across clients, server and storage automatically.
- **Multiplayer**: Game state is kept in sync in realtime and across platforms.
- **AI**: Automatically generated bots that can play your game.
- **Game Phases**: with different game rules and turn orders per phase.
- **Lobby**: Player matchmaking and game creation.
- **Prototyping**: Interface to simulate moves even before you render the game.
- **Extendable**: Plugin system that allows creating new abstractions.
- **View-layer Agnostic**: Use the vanilla JS client or the bindings for React / React Native.
- **Logs**: Game logs with the ability to time travel (viewing the board at an earlier state).

## Usage

### Installation

```
$ npm install --save boardgame.io
```

### Documentation

Read our [Full Documentation](https://boardgame.io/documentation/) to learn how to
use boardgame.io, and join the [community on gitter](https://gitter.im/boardgame-io/General)
to ask your questions!

### Running examples in this repository

```
$ npm install
$ npm run build
$ npm start
```

The examples can be found in the [examples](examples/) folder.

## Changelog

See [changelog](docs/documentation/CHANGELOG.md).

## Contributing

See the contributing [guidelines](CONTRIBUTING.md). Also take a look at the [roadmap](roadmap.md)
to find things that you could contribute to.

## License

[MIT](LICENSE)
npm package: @smileysscript/cli
Description: The CLI for SmileysScript.
Author: JRed
Latest version: 0.0.1-beta.9

<p align="center">
  <a href="https://SmileysScript.JRed.io/">
    <img alt="babel" src="https://raw.githubusercontent.com/SmileysScript/Logo/master/Logo.png" width="546">
  </a>
</p>

<p align="center">
  The language made of Smileys Compiling to JavaScript, allowing full connectivity!
</p>

# SmileysScript CLI

This package is the Command Line Interface for SmileysScript!

Learn more [here](https://SmileysScript.JRed.io)!
npm package: @smileysscript/core
Description: The Core for SmileysScript.
Author: JRed
Latest version: 0.0.1-beta.1

<p align="center">
  <a href="https://SmileysScript.JRed.io/">
    <img alt="babel" src="https://raw.githubusercontent.com/SmileysScript/Logo/master/Logo.png" width="546">
  </a>
</p>

<p align="center">
  The language made of Smileys Compiling to JavaScript, allowing full connectivity!
</p>

# SmileysScript Core

This package is the Core for SmileysScript!

Learn more [here](https://SmileysScript.JRed.io)!
npm package: @smileysscript/generator
Description: The Generator for SmileysScript.
Author: JRed
Latest version: 0.0.1-beta.0

<p align="center">
  <a href="https://SmileysScript.JRed.io/">
    <img alt="babel" src="https://raw.githubusercontent.com/SmileysScript/Logo/master/Logo.png" width="546">
  </a>
</p>

<p align="center">
  The language made of Smileys Compiling to JavaScript, allowing full connectivity!
</p>

# SmileysScript Generator

This package is the generator for SmileysScript!

Learn more [here](https://SmileysScript.JRed.io)!
npm package: @smileysscript/lexer
Description: The Lexer for SmileysScript.
Author: JRed
Latest version: 0.0.1-beta.0

<p align="center">
  <a href="https://SmileysScript.JRed.io/">
    <img alt="babel" src="https://raw.githubusercontent.com/SmileysScript/Logo/master/Logo.png" width="546">
  </a>
</p>

<p align="center">
  The language made of Smileys Compiling to JavaScript, allowing full connectivity!
</p>

# SmileysScript Lexer

This package is the lexer for SmileysScript!

Learn more [here](https://SmileysScript.JRed.io)!
npm package: @smileysscript/parser
Description: The Parser for SmileysScript.
Author: JRed
Latest version: 0.0.1-beta.0

<p align="center">
  <a href="https://SmileysScript.JRed.io/">
    <img alt="babel" src="https://raw.githubusercontent.com/SmileysScript/Logo/master/Logo.png" width="546">
  </a>
</p>

<p align="center">
  The language made of Smileys Compiling to JavaScript, allowing full connectivity!
</p>

# SmileysScript Parser
The package is the parser for SmileysScript!

Learn more [here](https://SmileysScript.JRed.io)!
npm package: @smileysscript/util
Description: The Utilities for SmileysScript.
Author: JRed
Latest version: 0.0.1-beta.0

<p align="center">
  <a href="https://SmileysScript.JRed.io/">
    <img alt="babel" src="https://raw.githubusercontent.com/SmileysScript/Logo/master/Logo.png" width="546">
  </a>
</p>

<p align="center">
  The language made of Smileys Compiling to JavaScript, allowing full connectivity!
</p>

# SmileysScript Util
The utilities package for SmileysScript!

Learn more [here](https://SmileysScript.JRed.io)!
npm package: @smileznpm/mylru
Description: lru缓存
Author: smileznpm
Latest version: 0.0.3

# @smileznpm/mylru

> 轻量级浏览器端 LRU 缓存，自动在 LocalStorage 与 IndexedDB 间切换，支持过期、容量控制与持久化。

## 特性

- 最大缓存数量可配（默认 10）
- 过期时间可配（默认 10 分钟）
- 自动统计缓存总体积：小于 3MB 使用 `localStorage`，超过自动切换 `indexedDB`
- 支持持久化（页面刷新后仍可恢复）
- 提供单例 `getInstance()` 与手动 `new LRUCache()` 两种用法
- TypeScript 友好（包含类型定义）

## 安装

```bash
# npm
npm i @smileznpm/mylru

# pnpm
pnpm add @smileznpm/mylru

# yarn
yarn add @smileznpm/mylru
```

> 注意：该库依赖浏览器环境（`localStorage` / `indexedDB`）。SSR/Node 环境请在客户端再导入或做运行时判断。

## 快速上手

```ts
import LRUCache from '@smileznpm/mylru';

// 方式一：单例（推荐）
const cache = LRUCache.getInstance({
  maxCacheNum: 50,          // 最大条目数（默认 10）
  maxCacheTime: 5 * 60_000, // 过期时间 ms（默认 10 分钟）
});

await cache.set('user:1', { id: 1, name: 'Tom' });
const user = await cache.get('user:1'); // { id: 1, name: 'Tom' } | null

console.log(cache.size);       // 当前条目数量
console.log(cache.totalBytes); // 估算的字节数

// 方式二：自行创建实例
const another = new LRUCache({ maxCacheNum: 100 });
```

## API

### 类型
```ts
interface LRUCacheOptions {
  maxCacheNum?: number;   // 最大缓存数量，默认 10
  maxCacheTime?: number;  // 过期时间（毫秒），默认 10 分钟
}

// 泛型参数 T 为 value 的类型
class LRUCache<T = any> {
  constructor(options?: LRUCacheOptions)
  static getInstance(options?: LRUCacheOptions): LRUCache<any>

  // 基础能力（均为异步）
  set(key: string, value: T): Promise<void>
  get(key: string): Promise<T | null>
  remove(key: string): Promise<void>
  clear(): Promise<void>

  // 只读属性
  readonly size: number            // 当前条目数量
  readonly totalBytes: number      // 估算的总字节数
}
```

### 方法说明
- `getInstance(options?)`：返回全局单例；仅首次调用的 `options` 生效。
- `set(key, value)`：写入或更新条目，更新后会进行 LRU 调整与持久化。
- `get(key)`：读取条目，若过期或不存在返回 `null`；访问会刷新 LRU 顺序。
- `remove(key)`：删除指定条目。
- `clear()`：清空缓存及持久化存储。
- `size`：当前缓存条目数。
- `totalBytes`：内存中条目的估算总字节数（用于存储策略判断）。

## 存储与淘汰策略

- 持久化：
  - 小于 3MB 时，使用 `localStorage`，键为 `__mylru_cache__`；
  - 超过 3MB 时，自动切换为 `indexedDB`（数据库 `__mylru_cache_db__`，表 `lru_cache`）。
- 淘汰策略：
  - 每次写入后会先删除已过期条目；
  - 若条目数量超过 `maxCacheNum`，按 LRU（最久未使用）淘汰最老的条目。

## 使用建议与注意事项

- 浏览器环境依赖：该库使用 `localStorage` 与 `indexedDB`，请在客户端环境使用。
- 异步 API：由于涉及持久化与潜在的 `indexedDB` 操作，`set/get/remove/clear` 均为 `async`。
- 数据大小估算：内部通过 `JSON.stringify(value)` 后按字节计算，作为策略判断依据。
- 首次 `getInstance` 的 `options` 生效；后续调用将复用已创建的单例。

## 示例：结合过期与容量控制

```ts
import LRUCache from '@smileznpm/mylru';

const cache = LRUCache.getInstance({
  maxCacheNum: 20,
  maxCacheTime: 10 * 60_000,
});

await cache.set('list', Array.from({ length: 1000 }, (_, i) => i));
const list = await cache.get('list');

// 到达上限时，将自动淘汰最久未使用的条目
for (let i = 0; i < 100; i++) {
  await cache.set(`k${i}`, i);
}
```

## 常见问题（FAQ）

- 为什么在 Node/SSR 中报错？
  - 本库依赖浏览器对象（`localStorage` / `indexedDB`），请在客户端再导入或按需动态加载。
- 我可以关闭持久化吗？
  - 目前未提供开关。若有需求，可在 issue 中反馈或自行维护一个不持久化的实例分支。
- 为什么方法是异步？
  - 涉及 `indexedDB` 初始化、读写与迁移等异步流程。

## 版本与变更

- `0.1.0`：初始版本，支持 LRU、过期、LocalStorage/IndexedDB 自动切换与持久化。

## 许可证

MIT © 2025-present `smileznpm`
npm package: @smiling_tests/egg-mongoose-smiling
Description: egg mongoose plugin
Author: smiling.
Latest version: 1.0.5

# egg-mongoose-smiling

[![NPM version][npm-image]][npm-url]
[![build status][travis-image]][travis-url]
[![Test coverage][codecov-image]][codecov-url]
[![David deps][david-image]][david-url]
[![Known Vulnerabilities][snyk-image]][snyk-url]
[![npm download][download-image]][download-url]

[npm-image]: https://img.shields.io/npm/v/egg-mongoose-smiling.svg?style=flat-square
[npm-url]: https://npmjs.org/package/egg-mongoose-smiling
[travis-image]: https://img.shields.io/travis/eggjs/egg-mongoose-smiling.svg?style=flat-square
[travis-url]: https://travis-ci.org/eggjs/egg-mongoose-smiling
[codecov-image]: https://img.shields.io/codecov/c/github/eggjs/egg-mongoose-smiling.svg?style=flat-square
[codecov-url]: https://codecov.io/github/eggjs/egg-mongoose-smiling?branch=master
[david-image]: https://img.shields.io/david/eggjs/egg-mongoose-smiling.svg?style=flat-square
[david-url]: https://david-dm.org/eggjs/egg-mongoose-smiling
[snyk-image]: https://snyk.io/test/npm/egg-mongoose-smiling/badge.svg?style=flat-square
[snyk-url]: https://snyk.io/test/npm/egg-mongoose-smiling
[download-image]: https://img.shields.io/npm/dm/egg-mongoose-smiling.svg?style=flat-square
[download-url]: https://npmjs.org/package/egg-mongoose-smiling

<!--
Description here.
-->

## Install

```bash
$ npm i egg-mongoose-smiling --save
```

## Usage

```js
// {app_root}/config/plugin.js
exports.mongooseSmiling = {
  enable: true,
  package: 'egg-mongoose-smiling',
};
```

## Configuration

```js
// {app_root}/config/config.default.js
exports.mongooseSmiling = {
};
```

see [config/config.default.js](config/config.default.js) for more detail.

## Example

<!-- example here -->

## Questions & Suggestions

Please open an issue [here](https://github.com/eggjs/egg/issues).

## License

[MIT](LICENSE)