@retailcrm/embed-ui 0.9.23-alpha.1 → 0.9.23-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +8 -0
- package/README.md +14 -6
- package/bin/embed-ui.mjs +21 -2
- package/package.json +6 -6
package/CHANGELOG.md
CHANGED
|
@@ -1,6 +1,14 @@
|
|
|
1
1
|
# Changelog
|
|
2
2
|
|
|
3
3
|
|
|
4
|
+
## [0.9.23-alpha.3](https://github.com/retailcrm/embed-ui/compare/v0.9.23-alpha.2...v0.9.23-alpha.3) (2026-05-23)
|
|
5
|
+
|
|
6
|
+
### Features
|
|
7
|
+
|
|
8
|
+
* Contexts MCP init support added ([ff151f4](https://github.com/retailcrm/embed-ui/commit/ff151f47f2cef4d3a8ab0812c481cc5d9ae5ccf9))
|
|
9
|
+
* **v1-contexts:** MCP server for context profiles added ([9f5184b](https://github.com/retailcrm/embed-ui/commit/9f5184bb52e48e5165a12490089d761a4fd5a6cd))
|
|
10
|
+
* **v1-endpoint:** Context profile links added ([996903f](https://github.com/retailcrm/embed-ui/commit/996903fcbea45bd6012bf3f2d2f84426c09f6756))
|
|
11
|
+
## [0.9.23-alpha.2](https://github.com/retailcrm/embed-ui/compare/v0.9.23-alpha.1...v0.9.23-alpha.2) (2026-05-22)
|
|
4
12
|
## [0.9.23-alpha.1](https://github.com/retailcrm/embed-ui/compare/v0.9.22...v0.9.23-alpha.1) (2026-05-22)
|
|
5
13
|
|
|
6
14
|
### Features
|
package/README.md
CHANGED
|
@@ -60,7 +60,7 @@ npx @retailcrm/embed-ui init ./web --package-manager yarn
|
|
|
60
60
|
- шаблон — создается стартовая конфигурация для страницы настроек и виджета `order/card:common.after`;
|
|
61
61
|
- каталоги — создаются `endpoint`, `pages`, `widgets`, `shared`, `i18n` и `i18n/locales` внутри frontend-каталога;
|
|
62
62
|
- `AGENTS.md` — создается или дополняется инструкциями корневого пакета и выбранных пакетов;
|
|
63
|
-
- MCP — добавляется `.mcp.json` для `v1-endpoint
|
|
63
|
+
- MCP — добавляется `.mcp.json` для выбранных пакетов с MCP (`v1-contexts` и `v1-endpoint`);
|
|
64
64
|
- project-level client configs для Codex CLI, Cursor, Junie и VS Code — не создаются без `--mcp-client-configs`;
|
|
65
65
|
- Git — в неинтерактивном режиме не инициализируется без `--git`, а в интерактивном режиме предлагается, если корень проекта не является Git-репозиторием;
|
|
66
66
|
- существующие файлы не перезаписываются, а зависимости с потенциальным конфликтом не заменяются без явных force-флагов.
|
|
@@ -104,12 +104,20 @@ npx @retailcrm/embed-ui init ./web --force --no-install --no-template
|
|
|
104
104
|
При `init` CLI добавляет общий раздел в `AGENTS.md`, а пакеты могут добавить свои инструкции. Сейчас это используют:
|
|
105
105
|
|
|
106
106
|
- `@retailcrm/embed-ui-v1-components` — добавляет порядок чтения README, AI-документации и YAML-профилей компонентов.
|
|
107
|
+
- `@retailcrm/embed-ui-v1-contexts` — добавляет инструкции по контекстам, actions, custom contexts и MCP-ресурсам.
|
|
107
108
|
- `@retailcrm/embed-ui-v1-endpoint` — добавляет инструкции по целям виджетов и MCP-ресурсам.
|
|
108
109
|
|
|
109
|
-
Для `v1-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
110
|
+
Для `v1-contexts` и `v1-endpoint`, если эти пакеты выбраны для установки, также создается `.mcp.json` с серверами
|
|
111
|
+
`retailcrm-embed-ui-v1-contexts` и `retailcrm-embed-ui-v1-endpoint`. Этот файл рассчитан на Claude Code project scope
|
|
112
|
+
и использует `${CLAUDE_PROJECT_DIR:-.}/node_modules/.bin/...`, чтобы серверы резолвились относительно открытого проекта.
|
|
113
|
+
MCP отдает AI-friendly описания через ресурсы:
|
|
114
|
+
|
|
115
|
+
- `embed-ui-v1-contexts://contexts`;
|
|
116
|
+
- `embed-ui-v1-contexts://contexts/<encoded-context>`;
|
|
117
|
+
- `embed-ui-v1-contexts://actions`;
|
|
118
|
+
- `embed-ui-v1-contexts://actions/<encoded-scope>`;
|
|
119
|
+
- `embed-ui-v1-contexts://custom-contexts`;
|
|
120
|
+
- `embed-ui-v1-contexts://custom-contexts/<encoded-entity>`;
|
|
113
121
|
- `embed-ui-v1-endpoint://targets`;
|
|
114
122
|
- `embed-ui-v1-endpoint://targets/<encoded-target>`.
|
|
115
123
|
|
|
@@ -123,7 +131,7 @@ npx @retailcrm/embed-ui init ./web --no-install --mcp-client-configs codex,curso
|
|
|
123
131
|
Для Codex CLI создается `.codex/config.toml`. Codex подхватывает его только в trusted project, поэтому после генерации
|
|
124
132
|
проект нужно открыть/перезапустить в Codex и доверить ему проект, если клиент спросит. User-level подключение через
|
|
125
133
|
`codex mcp add` намеренно не выполняется автоматически: на одной машине могут быть проекты с разными версиями
|
|
126
|
-
`@retailcrm/embed-ui
|
|
134
|
+
`@retailcrm/embed-ui*`, а user-level серверы с одинаковыми MCP resource URI могут конфликтовать между собой.
|
|
127
135
|
Для Cursor и VS Code CLI генерирует project-level конфиги с `${workspaceFolder}/node_modules/.bin/...`; для Junie
|
|
128
136
|
остается относительный `./node_modules/.bin/...`.
|
|
129
137
|
|
package/bin/embed-ui.mjs
CHANGED
|
@@ -253,7 +253,23 @@ const INSTALLABLE_PACKAGES = [
|
|
|
253
253
|
id: "contexts",
|
|
254
254
|
name: "@retailcrm/embed-ui-v1-contexts",
|
|
255
255
|
section: "dependencies",
|
|
256
|
-
description: "Реактивные контексты RetailCRM JS API."
|
|
256
|
+
description: "Реактивные контексты RetailCRM JS API.",
|
|
257
|
+
hooks: [
|
|
258
|
+
{
|
|
259
|
+
type: "agents",
|
|
260
|
+
binName: "embed-ui-v1-contexts",
|
|
261
|
+
command: "init-agents",
|
|
262
|
+
failureMode: "advisory",
|
|
263
|
+
requiresMcp: true
|
|
264
|
+
},
|
|
265
|
+
{
|
|
266
|
+
type: "config",
|
|
267
|
+
binName: "embed-ui-v1-contexts",
|
|
268
|
+
command: "init-config",
|
|
269
|
+
failureMode: "advisory",
|
|
270
|
+
requiresMcp: true
|
|
271
|
+
}
|
|
272
|
+
]
|
|
257
273
|
},
|
|
258
274
|
{
|
|
259
275
|
id: "types",
|
|
@@ -1223,7 +1239,10 @@ const applyInitPreflight = (cwd, sourceRoot, packageManager, selectedPackages, v
|
|
|
1223
1239
|
}
|
|
1224
1240
|
analyzeTemplateFileSkips(cwd, sourceRoot, options, changes);
|
|
1225
1241
|
if (hasEnabledMcpConfigHook(selectedPackages, options)) {
|
|
1226
|
-
|
|
1242
|
+
const packageNames = selectedPackages.filter(
|
|
1243
|
+
(selectedPackage) => selectedPackage.hooks?.some((hook) => hook.type === "config" && hook.requiresMcp) ?? false
|
|
1244
|
+
).map((selectedPackage) => selectedPackage.id).join(", ");
|
|
1245
|
+
changes.preflight.push(`package MCP init-config: enabled for ${packageNames}`);
|
|
1227
1246
|
if (options.mcpClientConfigs?.length) {
|
|
1228
1247
|
changes.preflight.push(`MCP client configs requested: ${options.mcpClientConfigs.join(", ")}`);
|
|
1229
1248
|
}
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@retailcrm/embed-ui",
|
|
3
3
|
"type": "module",
|
|
4
|
-
"version": "0.9.23-alpha.
|
|
4
|
+
"version": "0.9.23-alpha.3",
|
|
5
5
|
"description": "API and components for creating RetailCRM UI extensions",
|
|
6
6
|
"repository": {
|
|
7
7
|
"type": "git",
|
|
@@ -57,10 +57,10 @@
|
|
|
57
57
|
"@omnicajs/symfony-router": "^1.0.0",
|
|
58
58
|
"@omnicajs/vue-remote": "^0.2.24",
|
|
59
59
|
"@remote-ui/rpc": "^1.4.5",
|
|
60
|
-
"@retailcrm/embed-ui-v1-components": "^0.9.23-alpha.
|
|
61
|
-
"@retailcrm/embed-ui-v1-contexts": "^0.9.23-alpha.
|
|
62
|
-
"@retailcrm/embed-ui-v1-endpoint": "^0.9.23-alpha.
|
|
63
|
-
"@retailcrm/embed-ui-v1-types": "^0.9.23-alpha.
|
|
60
|
+
"@retailcrm/embed-ui-v1-components": "^0.9.23-alpha.3",
|
|
61
|
+
"@retailcrm/embed-ui-v1-contexts": "^0.9.23-alpha.3",
|
|
62
|
+
"@retailcrm/embed-ui-v1-endpoint": "^0.9.23-alpha.3",
|
|
63
|
+
"@retailcrm/embed-ui-v1-types": "^0.9.23-alpha.3",
|
|
64
64
|
"yargs": "^17.7.2"
|
|
65
65
|
},
|
|
66
66
|
"devDependencies": {
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"@modulify/git-toolkit": "^0.0.2",
|
|
70
70
|
"@modulify/pkg": "^1.0.1",
|
|
71
71
|
"@omnicajs/eslint-plugin-dependencies": "^0.0.2",
|
|
72
|
-
"@retailcrm/embed-ui-v1-testing": "^0.9.23-alpha.
|
|
72
|
+
"@retailcrm/embed-ui-v1-testing": "^0.9.23-alpha.3",
|
|
73
73
|
"@types/git-semver-tags": "^7.0.0",
|
|
74
74
|
"@types/node": "^22.19.2",
|
|
75
75
|
"@types/semver": "^7.7.1",
|