@ commerce-klaus/ sfcc-module-resolver (商业-克劳斯语)
用于SFCC弹匣订单、模块分辨率、超级模块和钩子注册的共享节点.js公用事业。 大多数项目通过Commerce Klaus ESLint,TypeScript,Vite,或Babel包间接使用.
要点
- 从配置、环境、,
jsconfig,或site.xml - 解释哪些弹匣命令源获胜, 包括缺少条目和无效倒置
- 决定:
*/, (中文(简体) ),~/,弹匣别名,以及module.superModule - 用每一个尝试的文件路径和选中的匹配来解释解析
- 为 SFCC 认知工具提供决定性文件系统帮助
- 将网站元数据中的自定义属性和首选定义规范化
- 读取并解决弹匣钩注册
- 以墨盒路径顺序发现有效的钩脚本
- 读取工作步骤定义、参数、状态代码、执行能力和任务超时
steptypes.json - 验证带有结构化诊断的钩子、工作步骤和定制API合同
- 构建弹匣优先级、超级模块、 SRA 控制器的决定性项目图表 路线、有效的中间软件管道和元数据合同
ModuleResolutionOptions 是 Vite 使用的共享配置类型
还有维特适配器. ResolveCartridgeRootsOptions 以
仅解析器 containingFile 选项.
项目可在 commerce-klaus.config.ts 或者说
commerce-klaus.config.js。软件包选项继续得到支持并覆盖
核心价值观。 公共配置合同居住在
@commerce-klaus/config; 见 项目配置指南。 。 。 .
安装
pnpm add @commerce-klaus/sfcc-module-resolver
npm install @commerce-klaus/sfcc-module-resolver
yarn add @commerce-klaus/sfcc-module-resolver
vp install @commerce-klaus/sfcc-module-resolver
import {
createModuleResolver,
explainCartridgeOrder,
inferCartridgeOrder,
} from "@commerce-klaus/sfcc-module-resolver/resolution"
const cartridgeRoots = inferCartridgeOrder({ cartridgesDir: "cartridges" })
const resolveSfccModule = createModuleResolver(cartridgeRoots)
const orderTrace = explainCartridgeOrder({ cartridgesDir: "cartridges" })
这套软件包为 resolution, (中文(简体) ), object-metadata, (中文(简体) ),
hooks, (中文(简体) ), job-steps, (中文(简体) ), custom-apis,以及全项目验证和图表
project。软件包根仅包含分辨率 API.
文档
见 完整 API 和分辨率参考。 。 。 .
许可证
麻省理工学院