open-index/open-npm huggingface dataset:
npm package: @munyinsam/fence
Description: Keep AI in learning mode. Fence integrates with Claude Code and limits it
Latest version: 1.0.2

# fence README

This is the README for your extension "fence". After writing up a brief description, we recommend including the following sections.

## Features

Describe specific features of your extension including screenshots of your extension in action. Image paths are relative to this README file.

For example if there is an image subfolder under your extension project workspace:

\!\[feature X\]\(images/feature-x.png\)

> Tip: Many popular extensions utilize animations. This is an excellent way to show off your extension! We recommend short, focused animations that are easy to follow.

## Requirements

If you have any requirements or dependencies, add a section describing those and how to install and configure them.

## Extension Settings

Include if your extension adds any VS Code settings through the `contributes.configuration` extension point.

For example:

This extension contributes the following settings:

* `myExtension.enable`: Enable/disable this extension.
* `myExtension.thing`: Set to `blah` to do something.

## Known Issues

Calling out known issues can help limit users opening duplicate issues against your extension.

## Release Notes

Users appreciate release notes as you update your extension.

### 1.0.0

Initial release of ...

### 1.0.1

Fixed issue #.

### 1.1.0

Added features X, Y, and Z.

---

## Following extension guidelines

Ensure that you've read through the extensions guidelines and follow the best practices for creating your extension.

* [Extension Guidelines](https://code.visualstudio.com/api/references/extension-guidelines)

## Working with Markdown

You can author your README using Visual Studio Code. Here are some useful editor keyboard shortcuts:

* Split the editor (`Cmd+\` on macOS or `Ctrl+\` on Windows and Linux).
* Toggle preview (`Shift+Cmd+V` on macOS or `Shift+Ctrl+V` on Windows and Linux).
* Press `Ctrl+Space` (Windows, Linux, macOS) to see a list of Markdown snippets.

## For more information

* [Visual Studio Code's Markdown Support](http://code.visualstudio.com/docs/languages/markdown)
* [Markdown Syntax Reference](https://help.github.com/articles/markdown-basics/)

**Enjoy!**
npm package: @muonroi/ui-engine-core
Description: Muonroi UI engine core runtime
Latest version: 0.1.22

# @muonroi/ui-engine-core

Core runtime for backend-driven UI rendering.

Main exports:
- `MUiEngineApiClient`
- `MUiEngineRuntime`
- `MUiEngineBootstrapper`
- `MCreateEngineFetch`
- `MBuildRenderPlan`
- `MValidateUiEngineManifest`
- `MCheckContractCompatibility` via bootstrapper + `/auth/ui-engine/contract-info`
npm package: @muonroi/ui-engine-primeng
Description: PrimeNG adapter for Muonroi UI engine
Latest version: 0.1.22

# @muonroi/ui-engine-primeng

PrimeNG adapter package for Muonroi UI engine runtime.

## Exports

- `MPrimeNgRenderAdapter`
- `MMapNavigationGroupsToPrimeNgMenu`
- `MMapActionsToPrimeNgButtons`
- `MPrimeNgFreyaMenuLayoutStrategy`
- `MResolvePrimeNgMenuLayoutStrategy`
npm package: @muops/theme-naive
Description: NaiveUI 主题样式配置管理
Latest version: 0.1.7

# NaiveUI 主题样式配置管理

## 使用

- `package.json` 添加配置项：`"type": "module"`
- `ApplyTheme` 方法返回的对象传递给 `n-config-provider` 组件的 `theme-overrides` 属性

## 方法

### ApplyTheme

```javascript
import { ApplyTheme } from '@muops/theme-naive'
// 预设了 blue green 两种主题，可以通过 MixinTheme 扩展更多，如果传入了未定义的主题，则返回 null
ApplyTheme('blue')

// 临时扩展主题，参数都可选
import THEME from 'theme.json'
// inline 方式引入 css 以免被插入到 DOM 当中
import STYLE from 'style.styl?inline'
ApplyTheme('blue', THEME, STYLE)
```

### MixinTheme

```javascript
import { MixinTheme, ApplyTheme } from '@muops/theme-naive'

import THEME from 'theme.json'
import STYLE from 'style.styl?inline'
// 混合新的主题，或者扩展原有主题，扩展后会覆盖原主题配置
MixinTheme('red', THEME, STYLE)
MixinTheme('blue', THEME, STYLE)

// 混合后不会应用主题，需要手动进行应用
ApplyTheme('red')
ApplyTheme('blue')
```

## 维护

- 参照下方的文件结构修改对应部分的样式与配置
- 新增主题配置时需要修改 `index.js`，参照已有主题进行新增配置

```
.
├─ dist，构建结果目录，实际使用的文件
│
├─ fonts，字体文件目录
│  └─ source_hans_regular，思源黑
│
├─ style，基础样式目录
│  ├─ index.styl，通用工具样式
│  ├─ mobile.json，naive-ui 的移动端变量配置
│  ├─ naive.styl，naive-ui 的样式调整
│  ├─ theme.json，naive-ui 的变量配置
│  └─ theme.styl，涉及主题的公共样式部分
│
├─ theme，主题样式目录，内容以主题命名，两个一组构成配置
│  ├─ [color].json，主题变量配置
│  └─ [color].styl，主题样式调整，不便通过变量控制的样式覆盖部分
│
├─ index.js，主题配置部分
└─ utils.js，主题管理逻辑
```

## 发布

```bash
npm i nrm -g   # 通过 nrm 管理源
nrm use npm    # 使用 npm 源
npm login      # 首次使用需要先登录 npm 帐号
npm run build  # 构建生产版本
npm publish    # 每次推送前须在 package.json 中更新版本号
```
npm package: @muops/vite-plugin-oss-upload
Description: OSS 文件上传插件
Latest version: 0.1.0

# OSS 文件上传插件

使用了场景应用控制，只在构建阶段生效，所以本插件是 Vite 专属的插件，主要功能是自动上传构建后的资源文件到 OSS，并修改相关资源引用地址。

为保证信息安全，不使用本地直传，通过项目标识与服务器提供的上传接口，先上传文件到服务器再由服务器转发到 OSS，相关配置存在服务器当中。

每次上传时都会以当时的月日时分作为上传目录，项目周期内一般不会出现覆盖的情况，这样设计主要是为了避免构建时覆盖已部署的资源导致错误，同时每个版本都有自己的资源目录，要回退版本也比较轻松，同时为了方便查看当前版本的资源目录，构建结束后会在 index.html 最后增加注释标明对应的资源目录名。

构建结果资源目录固定为 `dist/assets`，入口文件固定为 `dist/index.html`。

## 使用

```javascript
// vite.config.js

import OSSUpload from '@muops/vite-plugin-oss-upload'

export default {
  plugins: [
    // 传入一个配置对象
    OSSUpload({
      // 项目标识，供上传接口获取对应 OSS 配置
      name: '******',
      // 为保证信息安全不内置接口地址，具体配置参考其它项目，仅需配置域名
      path: '******',
      // 构建结束后等待执行的时间，避免执行上传时还有处理尚未完成，默认值为 1000ms
      // wait: 1000,
      // 上传类型列表，默认为 png/jpg/mp3，配置此字段将覆盖默认上传类型列表
      // type: ['webp'],
      // 对于没有内置的类型需要指定 MIME 值，否则将被跳过
      // 详见 [MIME 类型表](https://trac.nginx.org/nginx/browser/nginx/conf/mime.types)
      // 内置类型为 png/jpg/mp3/mp4/css/js，不需要额外配置到 mime 当中
      // mime: {
      //   webp: 'image/webp'
      // }
    })
  ]
}
```

## 推送

```bash
npm i nrm -g  # 通过 nrm 管理源
nrm use npm   # 使用 npm 源
npm login     # 首次使用需要先登录 npm 帐号
npm publish   # 每次推送前须在 package.json 中更新版本号
```