# @mes-processors/libs 这是一个用于处理MES(制造执行系统)相关工作流的处理器类库。 ## 安装 在内网环境下执行以下脚本进行安装 ```sh pnpm add http://gitea.cf/MES-FE/mes-packages/releases/download/0.1/mes-processors-libs-0.1.0.tgz ``` > [!CAUTION] > 在安装库之前,请确认以下信息: > > - 该库发布于内网gitea仓库的release中,所以你需要提前在gitea中进行登录,并确保你有该仓库的访问权限。 > - 库的版本需要手动进行控制,注意上述链接中的版本信息,在安装前需要主动修改版本号,请前往来确认最新版本。 ## 使用 该库提供了MES/iMES公用的处理器,并已配置为导出项,请参考以下Typescript代码进行使用: ```ts // 引入矩形优化处理器 import { RectLayoutProcConfig } from 'cut-abstractions'; import { RectLayoutProc } from '@mes-processors/libs'; // 实例化处理器 const proc = new RectLayoutProc(); // 构建上下文f proc.exec>[0] = { input: testObj, params: new RectLayoutProcConfig() }; // 异步执行 const ctx: Parameters [!NOTE] > 发布前记得更改版本号 ### 约定 **目录** ``` src ├── modules 项目模块分组 ├── processors 处理器 └── utils 公用的工具类 ``` **导出和打包** - 编写的处理器请在`src/index.ts`中进行导出 - 编写的工具类请在`src/utils/index.ts`中进行导出 - 在打包时项目仅会对`src/index.ts`进行打包,工具类相关模块不会进行打包 - 关于打包相关明细请自行查看相关文件 - [package.json](package.json) - [vite.config.ts](vite.config.ts) > [!WARNING] > 在该工作区中编写模块时,禁止使用绝对路径进行导入,禁止在`tsconfig.json`或`vite.config.ts`中添加"@"别名,所有导入语句请使用相对路径进行引入,否则会因monorepo内部导入混乱导致模块解析失败。 ### 测试 项目使用[Vitest](http://vitest.dev/)作为单元测试框架,若要对TS文件编写单元测试,请在文件的同目录下创建`<文件名>.test.ts`文件,并遵循Vitest规范编写单元测试。 要执行单元测试,请运行下面的命令: ```sh pnpm test ```