@deepseek-ai/dsh-client-web 0.2.1-alpha.2 → 0.2.1-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/README.i18n.yaml CHANGED
@@ -15,17 +15,17 @@
15
15
  en: d152484eb41ac6b4
16
16
  zh: 09388d293f9be9cb
17
17
  /deepseek-ai-dsh-client-web/use-this-package:
18
- en: 0c8b98946feedb0f
19
- zh: ae10ae7b9ecbf89c
18
+ en: 8778e166024b9628
19
+ zh: 777d6923db199337
20
20
  /deepseek-ai-dsh-client-web/use-this-package/what-boot-looks-like:
21
21
  en: f3b01aa878764e5c
22
22
  zh: f02eab65d441bfe0
23
23
  /deepseek-ai-dsh-client-web/use-this-package/the-boot-page:
24
- en: add354591107b80d
25
- zh: 41136254a00d785e
24
+ en: 1757ef1631612ff5
25
+ zh: d2d3fd0313908c12
26
26
  /deepseek-ai-dsh-client-web/use-this-package/the-shared-module-table:
27
- en: 8380cd70b861a3a8
28
- zh: 5a331deb7ad8fca1
27
+ en: 33b256e108a7bd6a
28
+ zh: 3b2b1368721803b7
29
29
  /deepseek-ai-dsh-client-web/use-this-package/configuration:
30
30
  en: 942959cb40ee31a1
31
31
  zh: 9c86ac2cf6a13976
package/README.md CHANGED
@@ -31,6 +31,8 @@ Static application pages install `__DSH_BOOT_READY__` before the entry runs. The
31
31
 
32
32
  The shell base styles apply automatic CJK/Latin spacing to ordinary content in supporting browsers. Semantic code and terminal, diff, read, and search output containers retain literal source spacing and column alignment; browsers without `text-autospace` support ignore both declarations.
33
33
 
34
+ Web and Desktop mathematical rendering requires WOFF2 support. The [Web build](../../../apps/web/katex-fonts.ts) retains every KaTeX font face in WOFF2 and omits WOFF/TTF fallbacks; a face without WOFF2 rejects the build. Font glyphs, weights, styles, and layout rules are preserved.
35
+
34
36
  ### What boot looks like
35
37
 
36
38
  Boot runs in two stages: the module stage adopts the parser-loaded bootstrap batch, builds the module system from the Host-provided boot graph, and prefetches the `immediately` tier through the shared application-batch URL, which executes once. The plugin stage then activates every graph entry and waits for all of them before handing the marked boot DOM to the UI renderer, which hydrates it and switches to the complete UI.
@@ -39,9 +41,12 @@ Boot runs in two stages: the module stage adopts the parser-loaded bootstrap bat
39
41
 
40
42
  The boot page uses plain DOM and local CSS, so bundle and plugin-activation failures remain visible: it shows one spinner node whose CSS arc grows as entries activate, and reports per-entry status. The spinner and its animation phase persist until the full UI replaces the boot page. A plugin that fails import or activation is reported by name with the reason (missing service, import failure, or state) instead of a blank page. The console contains the original import error.
41
43
 
44
+ <a id="the-shared-module-table"></a>
42
45
  ### The shared module table
43
46
 
44
- `PLATFORM_MODULES` (in `src/platform.ts`) names the shell-seeded shared modules — React, Cordis, and static UI libraries — and together with `PRELOADED_CLIENT_EXTERNALS` (the parser-preloaded runtime row) defines the implicit external baseline every dynamic bundle resolves against. `dsh.client.external` adds only exact non-baseline requests; see [shared modules and the module graph](../AGENTS.md#shared-modules-and-the-module-graph).
47
+ `PLATFORM_MODULES` (in `src/platform.ts`) names the shell-seeded shared modules — React, Cordis, Zod (`zod`), TanStack Virtual (`@tanstack/react-virtual`), and static UI libraries — and together with `PRELOADED_CLIENT_EXTERNALS` (the parser-preloaded runtime row) defines the implicit external baseline every dynamic bundle resolves against. `dsh.client.external` adds only exact non-baseline requests; see [shared modules and the module graph](../AGENTS.md#shared-modules-and-the-module-graph).
48
+
49
+ Built-in and installed browser plugins in the same page receive the same module instances. The shell supplies the dependency versions declared in this package's `package.json`; the module table does not negotiate versions per plugin. External plugins that use these modules must target a host that provides the required specifiers and APIs, and keep those imports external when building their client bundle. Inlined dependencies remain private to their bundle; Host code and Workers resolve their dependencies separately.
45
50
 
46
51
  ### Configuration
47
52
 
package/README.zh.md CHANGED
@@ -31,6 +31,8 @@ kind: "package-library"
31
31
 
32
32
  外壳基础样式会在支持的浏览器中为普通内容自动添加中西文间距。语义化代码以及终端、diff、读取和搜索输出容器会保留源码中的原始间距和列对齐;不支持 `text-autospace` 的浏览器会忽略这两项声明。
33
33
 
34
+ Web 和 Desktop 的数学公式渲染要求支持 WOFF2。[Web 构建](../../../apps/web/katex-fonts.ts)以 WOFF2 保留全部 KaTeX 字体样式,并排除 WOFF/TTF 后备格式;任一字体样式缺少 WOFF2 都会使构建失败。字体的字形、字重、样式和布局规则保持不变。
35
+
34
36
  ### 启动过程是怎样的
35
37
 
36
38
  启动分两个阶段:模块阶段接纳 parser 已加载的 bootstrap 批次,从 Host 提供的启动图构建模块系统,并通过只执行一次的共享 application 批次 URL 预取 `immediately` 层级。插件阶段随后激活每个图 entry 并等待全部就绪,之后才把带标记的启动 DOM 交给 UI 渲染器,由它 hydrate 并切换到完整 UI。
@@ -39,9 +41,12 @@ kind: "package-library"
39
41
 
40
42
  启动页只使用原生 DOM 与本地 CSS,因此 bundle 与插件激活失败保持可见:它显示一个 spinner 节点,其 CSS 圆弧随 entry 激活而增长,并逐 entry 报告状态。spinner 及其动画相位会一直保留,直到完整 UI 替换启动页。导入或激活失败的插件会按名称报告并给出原因(缺失服务、导入失败或状态),而不是白屏。控制台包含原始导入错误。
41
43
 
44
+ <a id="the-shared-module-table"></a>
42
45
  ### 共享模块表
43
46
 
44
- `PLATFORM_MODULES`(位于 `src/platform.ts`)列出外壳预置的共享模块——React、Cordis 与静态 UI 库——并与 `PRELOADED_CLIENT_EXTERNALS`(parser 预载的运行时行)一起定义每个动态 bundle 解析所依据的隐式 external 基座。`dsh.client.external` 只添加基座之外的精确请求;参见[共享模块与模块图](../AGENTS.md#shared-modules-and-the-module-graph)。
47
+ `PLATFORM_MODULES`(位于 `src/platform.ts`)列出外壳预置的共享模块——React、Cordis、Zod(`zod`)、TanStack Virtual(`@tanstack/react-virtual`)与静态 UI 库——并与 `PRELOADED_CLIENT_EXTERNALS`(parser 预载的运行时行)一起定义每个动态 bundle 解析所依据的隐式 external 基座。`dsh.client.external` 只添加基座之外的精确请求;参见[共享模块与模块图](../AGENTS.md#shared-modules-and-the-module-graph)。
48
+
49
+ 同一页面中的内置浏览器插件和已安装的浏览器插件获得相同的模块实例。外壳提供本包 `package.json` 声明的依赖版本,模块表不会为每个插件协商版本。使用这些模块的外部插件必须以提供所需模块标识符和 API 的宿主为目标,并在构建客户端 bundle 时将相应导入保留为 external。内联依赖仍归各自 bundle 私有;Host 代码与 Worker 单独解析其依赖。
45
50
 
46
51
  ### 配置
47
52
 
package/lib/index.js CHANGED
@@ -6,6 +6,8 @@ import * as React from "react";
6
6
  import * as ReactJsxRuntime from "react/jsx-runtime";
7
7
  import * as ReactDom from "react-dom";
8
8
  import * as ReactDomClient from "react-dom/client";
9
+ import * as Zod from "zod";
10
+ import * as ReactVirtual from "@tanstack/react-virtual";
9
11
  import * as ClientStore from "@deepseek-ai/dsh-client-store";
10
12
  import * as UiSlots from "@deepseek-ai/dsh-client-ui-slots";
11
13
  import * as UiPrimitives from "@deepseek-ai/dsh-client-ui-primitives";
@@ -213,6 +215,8 @@ function getStaticModules() {
213
215
  "react-dom": ReactDom,
214
216
  "react-dom/client": ReactDomClient,
215
217
  "@deepseek-ai/cordis": Cordis,
218
+ "zod": Zod,
219
+ "@tanstack/react-virtual": ReactVirtual,
216
220
  "@deepseek-ai/dsh-client-store": ClientStore,
217
221
  "@deepseek-ai/dsh-client-ui-slots": UiSlots,
218
222
  "@deepseek-ai/dsh-client-ui-primitives": UiPrimitives,
@@ -562,6 +566,8 @@ const PLATFORM_MODULES = [
562
566
  "react-dom",
563
567
  "react-dom/client",
564
568
  "@deepseek-ai/cordis",
569
+ "zod",
570
+ "@tanstack/react-virtual",
565
571
  "@deepseek-ai/dsh-client-store",
566
572
  "@deepseek-ai/dsh-client-ui-slots",
567
573
  "@deepseek-ai/dsh-client-ui-primitives",
@@ -4,7 +4,7 @@
4
4
  * @module @deepseek-ai/dsh-client-web/src/platform
5
5
  */
6
6
  /** The module specifiers the shell shares into the frozen module table. */
7
- export declare const PLATFORM_MODULES: readonly ["react", "react/jsx-runtime", "react-dom", "react-dom/client", "@deepseek-ai/cordis", "@deepseek-ai/dsh-client-store", "@deepseek-ai/dsh-client-ui-slots", "@deepseek-ai/dsh-client-ui-primitives", "@deepseek-ai/dsh-client-ui-dockkit"];
7
+ export declare const PLATFORM_MODULES: readonly ["react", "react/jsx-runtime", "react-dom", "react-dom/client", "@deepseek-ai/cordis", "zod", "@tanstack/react-virtual", "@deepseek-ai/dsh-client-store", "@deepseek-ai/dsh-client-ui-slots", "@deepseek-ai/dsh-client-ui-primitives", "@deepseek-ai/dsh-client-ui-dockkit"];
8
8
  /** Client-bundle specifiers whose factories the parser preloads before the shell starts. */
9
9
  export declare const PRELOADED_CLIENT_EXTERNALS: readonly [];
10
10
  /** One platform module specifier (a seed-table key). */
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@deepseek-ai/dsh-client-web",
3
3
  "description": "Web boot kernel: static module table, Cordis loader, framework-free boot page, and UI-renderer handoff",
4
- "version": "0.2.1-alpha.2",
4
+ "version": "0.2.1-alpha.3",
5
5
  "publishConfig": {
6
6
  "access": "public"
7
7
  },
@@ -27,23 +27,23 @@
27
27
  },
28
28
  "license": "MIT",
29
29
  "devDependencies": {
30
- "@deepseek-ai/cordis-plugin-loader": "~1.0.6-alpha.1",
31
- "@deepseek-ai/dsh-client-modules": "0.2.1-alpha.2",
32
- "@deepseek-ai/dsh-client-store": "0.2.1-alpha.2",
33
- "@deepseek-ai/dsh-client-ui-dockkit": "0.2.1-alpha.2",
34
- "@deepseek-ai/dsh-client-ui-renderer": "0.2.1-alpha.2",
35
- "@deepseek-ai/dsh-client-ui-primitives": "0.2.1-alpha.2",
36
- "@deepseek-ai/dsh-client-ui-slots": "0.2.1-alpha.2",
37
- "@types/react": "~18.3.1",
38
- "@types/react-dom": "~18.3.0",
39
- "@deepseek-ai/cordis": "~4.0.5-alpha.1",
30
+ "@deepseek-ai/cordis-plugin-loader": "~1.0.6-alpha.2",
31
+ "@deepseek-ai/dsh-client-modules": "0.2.1-alpha.3",
32
+ "@deepseek-ai/dsh-client-store": "0.2.1-alpha.3",
33
+ "@deepseek-ai/dsh-client-ui-dockkit": "0.2.1-alpha.3",
34
+ "@deepseek-ai/dsh-client-ui-renderer": "0.2.1-alpha.3",
35
+ "@deepseek-ai/dsh-client-ui-primitives": "0.2.1-alpha.3",
36
+ "@deepseek-ai/dsh-client-ui-slots": "0.2.1-alpha.3",
37
+ "@deepseek-ai/cordis": "~4.0.5-alpha.2",
40
38
  "react": "^18.2.0",
41
39
  "react-dom": "^18.2.0",
42
40
  "typescript": "^6.0.3",
43
- "@deepseek-ai/dsh-host-webserver": "0.2.1-alpha.2"
41
+ "@deepseek-ai/dsh-host-webserver": "0.2.1-alpha.3",
42
+ "zod": "4.4.3",
43
+ "@tanstack/react-virtual": "3.14.10"
44
44
  },
45
45
  "peerDependencies": {
46
- "@deepseek-ai/cordis": "~4.0.5-alpha.1"
46
+ "@deepseek-ai/cordis": "~4.0.5-alpha.2"
47
47
  },
48
48
  "files": [
49
49
  "lib/index.js",