@deepseek-ai/dsh-client-ui-slots 0.1.3-alpha.2 → 0.1.5-alpha.2

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/README.i18n.yaml CHANGED
@@ -2,5 +2,5 @@
2
2
  # side as of the last confirmed-consistent state. Both languages carry equal authority;
3
3
  # after editing either side, bring the other along and re-record with:
4
4
  # pnpm run verify-translation-pairing --write packages/client/ui-slots/README.md
5
- README.md: f42b5c797c49702ec22900de019913b43992c683
6
- README.zh.md: ef743787b24334febe822213746187a94fa10602
5
+ README.md: 1e3775221ea68bb81dba5ee6c65d58fe7520912e
6
+ README.zh.md: 8c769d355ef21016cde2c2100ffc5ac120dff7ae
package/README.md CHANGED
@@ -9,7 +9,7 @@ English | [中文](README.zh.md)
9
9
 
10
10
  ## Summary
11
11
 
12
- `dsh-client-ui-slots` is the pure core of the web client's slot system: the type-level contract every UI feature composes through. One `register({ name, children?, store?, inject?, ...kind }, Component)` call contributes a component into a declared slot and, in the same breath, declares child slots, a store seat, and the registrant's business face. The component is checked at the call site against `ComposedProps` — the intersection of four shares, each derived from its single source of truth — so a wrong composition fails to compile. Chain-kind slots invert keyed routing: entries self-nominate through a pure selector instead of the dispatch site picking an `entryKey`. The package is React-free and Cordis-free at runtime (React types only); `ui-renderer` owns the engine implementation and React bindings.
12
+ `dsh-client-ui-slots` lets web client plugins define and compose typed UI regions. Callers can add components, declare nested regions, attach scoped state, and supply business props through one compile-time-checked API. It supports single, ordered-list, keyed, and self-selecting chain composition, and reports conflicting compositions during plugin loading. Choose it for framework-neutral slot composition; pair it with `ui-renderer` when the client needs React rendering.
13
13
 
14
14
  ## Table of Contents
15
15
 
package/README.zh.md CHANGED
@@ -9,7 +9,7 @@ kind: "package-library"
9
9
 
10
10
  ## 概述
11
11
 
12
- `dsh-client-ui-slots` Web 客户端 slot 系统的纯核心:每个 UI 功能都经由它组合的类型级约定。一次 `register({ name, children?, store?, inject?, ...kind }, Component)` 调用会向已声明 slot 贡献一个组件,同时声明子 slot、store 席位与注册方的业务表层。组件会在调用点依据 `ComposedProps` 接受类型检查——该类型是四个 share 的交集,每个 share 都从各自的唯一真源派生——因此错误的组合在编译期就会失败。chain-kind slot 会反转键控路由:条目通过纯 selector 自行提名,而不是由分发点选择 `entryKey`。本包在运行时与 Cordis 无关(仅使用 React 类型);`ui-renderer` 拥有引擎实现与 React 绑定。
12
+ `dsh-client-ui-slots` Web 客户端插件定义并组合带类型检查的 UI 区域。调用方可以通过一个在编译期检查的 API 添加组件、声明嵌套区域、附加作用域状态并提供业务 props。它支持单项、有序列表、键控和自行选择的 chain 组合,并会在插件加载期间报告冲突组合。需要与框架无关的 slot 组合时选择本包;客户端需要 React 渲染时与 `ui-renderer` 配合使用。
13
13
 
14
14
  ## 目录
15
15
 
@@ -26,6 +26,14 @@ export interface SlotMap {
26
26
  */
27
27
  export interface LocaleNamespaceMap {
28
28
  }
29
+ /**
30
+ * Resource protocol (URL scheme) → the value its provider streams. Declared
31
+ * empty here, the zero-dependency merge point; each protocol owner merges its
32
+ * own member (`file`, later `chat`), and `useResource<P>(address)` narrows its
33
+ * value by `P`. The resource service itself lives in `dsh-client-resources`.
34
+ */
35
+ export interface ResourceProtocolMap {
36
+ }
29
37
  /**
30
38
  * Translate a dictionary key with optional `{name}` template params.
31
39
  * `K` narrows the accepted keys to the owning namespace's dictionary union
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-client-ui-slots",
3
3
  "description": "Slot registry pure core: SlotMap declaration merging, single register composition API, four-share props types, store-seat types, renderer install seam",
4
- "version": "0.1.3-alpha.2",
4
+ "version": "0.1.5-alpha.2",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -24,8 +24,8 @@
24
24
  "license": "MIT",
25
25
  "devDependencies": {
26
26
  "@types/react": "~18.3.1",
27
- "@deepseek-ai/dsh-client-store": "^0.1.3-alpha.2",
28
- "@deepseek-ai/cordis": "^4.0.2"
27
+ "@deepseek-ai/cordis": "^4.0.2",
28
+ "@deepseek-ai/dsh-client-store": "^0.1.5-alpha.2"
29
29
  },
30
30
  "files": [
31
31
  "lib/index.js",