@zhin.js/pagemanager 2.0.1 → 2.0.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.md
ADDED
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# @zhin.js/pagemanager
|
|
2
|
+
|
|
3
|
+
Remote Console **Node 侧运行时**:PageManager、EntryStore、`GET /entries`、esbuild 打包与 `/@dev` 开发资源路由。无 UI;契约在 `@zhin.js/contract`,浏览器 SDK 在 `@zhin.js/client`。
|
|
4
|
+
|
|
5
|
+
> **路径约定**:本包位于 `packages/console/pagemanager/`。源码在 `src/node/`,构建产物在 `lib/node/`。
|
|
6
|
+
|
|
7
|
+
## 分层
|
|
8
|
+
|
|
9
|
+
见 [Console 栈概览](../README.md):
|
|
10
|
+
|
|
11
|
+
```
|
|
12
|
+
@zhin.js/contract → @zhin.js/pagemanager → @zhin.js/client → zhin-console(独立仓库)
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
领域术语与关系图见 **[CONTEXT.md](./CONTEXT.md)**。
|
|
16
|
+
|
|
17
|
+
## 安装
|
|
18
|
+
|
|
19
|
+
Monorepo 内 workspace 依赖;对外发布时:
|
|
20
|
+
|
|
21
|
+
```bash
|
|
22
|
+
pnpm add @zhin.js/pagemanager
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
## 主要导出
|
|
26
|
+
|
|
27
|
+
| 导出 | 用途 |
|
|
28
|
+
|------|------|
|
|
29
|
+
| `PageManager` | 控制台服务端运行时;拥有 EntryStore,注册 Console Entry |
|
|
30
|
+
| `mountConsoleRouter` | 挂载 entries 与静态/dev 资源路由 |
|
|
31
|
+
| `createInMemoryEntryStore` / `EntryStore` | Entry 目录 |
|
|
32
|
+
| `buildEntriesResponse` / `rewriteEntriesForClient` | 序列化 `GET /entries` 响应 |
|
|
33
|
+
| `attachConsoleClientHost` | 将 Console 路由挂到现有 Koa Host |
|
|
34
|
+
| `serverRuntimeEnv` | development / production 运行时标记 |
|
|
35
|
+
|
|
36
|
+
类型(`ConsoleServerOptions`、`PluginServerRegisterHostApi` 等)自 `./consoleServerOptions.js` 导出。
|
|
37
|
+
|
|
38
|
+
## 插件注册 Entry
|
|
39
|
+
|
|
40
|
+
在插件 Node 侧通过 `web` 上下文获取 **PageManager 实例**(非静态全局):
|
|
41
|
+
|
|
42
|
+
```typescript
|
|
43
|
+
useContext('web', (pageManager) => {
|
|
44
|
+
pageManager.addEntry({
|
|
45
|
+
id: 'my-plugin',
|
|
46
|
+
name: 'My Plugin',
|
|
47
|
+
dev: '/@dev/plugins/my-plugin/client/index.tsx',
|
|
48
|
+
prod: '/@assets/my-plugin/client/index.js',
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
```
|
|
52
|
+
|
|
53
|
+
浏览器侧由 `@zhin.js/client` 的 `loadConsoleEntries` 拉取并动态 `import`。
|
|
54
|
+
|
|
55
|
+
## 构建
|
|
56
|
+
|
|
57
|
+
```bash
|
|
58
|
+
pnpm --filter @zhin.js/pagemanager build
|
|
59
|
+
```
|
|
60
|
+
|
|
61
|
+
## 相关文档
|
|
62
|
+
|
|
63
|
+
- [Remote Console 使用说明](../../../docs/console-remote.md)
|
|
64
|
+
- [@zhin.js/contract](../contract/README.md)
|
|
65
|
+
- [@zhin.js/client](../client/README.md)
|
|
66
|
+
- [@zhin.js/host-api 管理面 API](../../host/api/README.md)
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import Router from "@koa/router";
|
|
2
2
|
import type Koa from "koa";
|
|
3
|
-
import type
|
|
3
|
+
import { type ConsoleFileAddEntryInput } from '@zhin.js/contract';
|
|
4
4
|
import { type EntryStore } from "./entryStore.js";
|
|
5
5
|
import type { ConsoleServerOptions, ConsoleClientHostAttachment } from "./consoleServerOptions.js";
|
|
6
6
|
export declare function mountConsoleRouter(router: Router): Koa.Middleware;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pageManager.d.ts","sourceRoot":"","sources":["../../src/node/pageManager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAK3B,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"pageManager.d.ts","sourceRoot":"","sources":["../../src/node/pageManager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AACjC,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAK3B,OAAO,EAAgD,KAAK,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AAEhH,OAAO,EAA4B,KAAK,UAAU,EAAE,MAAM,iBAAiB,CAAC;AAC5E,OAAO,KAAK,EACV,oBAAoB,EAEpB,2BAA2B,EAC5B,MAAM,2BAA2B,CAAC;AAInC,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,MAAM,GAAG,GAAG,CAAC,UAAU,CAEjE;AAED,qBAAa,WAAW;IACtB,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,UAAU,EAAE,UAAU,CAAC;IAChC,OAAO,CAAC,QAAQ,CAAC,UAAU,CAAS;IACpC,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAuB;gBAEzC,OAAO,EAAE,oBAAoB;IAmBzC,OAAO,CAAC,wBAAwB;YAUlB,0BAA0B;YA0B1B,wBAAwB;IAOhC,KAAK,IAAI,OAAO,CAAC,2BAA2B,CAAC;IAgCnD,QAAQ,CAAC,KAAK,EAAE,wBAAwB;CAqBzC"}
|
package/lib/node/pageManager.js
CHANGED
|
@@ -2,7 +2,7 @@ import Router from "@koa/router";
|
|
|
2
2
|
import compose from "koa-compose";
|
|
3
3
|
import { createHash } from "node:crypto";
|
|
4
4
|
import * as path from "node:path";
|
|
5
|
-
import { DEFAULT_CONSOLE_BASE_PATH } from
|
|
5
|
+
import { DEFAULT_CONSOLE_BASE_PATH } from '@zhin.js/contract';
|
|
6
6
|
import { createInMemoryEntryStore } from "./entryStore.js";
|
|
7
7
|
import { registerConsoleApiRoutes } from "./consoleApiRouter.js";
|
|
8
8
|
import { attachConsoleClientHost } from "./startHost.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pageManager.js","sourceRoot":"","sources":["../../src/node/pageManager.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,aAAa,CAAC;AAEjC,OAAO,OAAO,MAAM,aAAa,CAAC;AAClC,OAAO,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAEzC,OAAO,KAAK,IAAI,MAAM,WAAW,CAAC;
|
|
1
|
+
{"version":3,"file":"pageManager.js","sourceRoot":"","sources":["../../src/node/pageManager.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@zhin.js/pagemanager",
|
|
3
|
-
"version": "2.0.
|
|
3
|
+
"version": "2.0.3",
|
|
4
4
|
"description": "Zhin PageManager Host runtime: entries, esbuild pipeline (no UI; contract in @zhin.js/contract)",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"exports": {
|
|
@@ -17,18 +17,18 @@
|
|
|
17
17
|
},
|
|
18
18
|
"dependencies": {
|
|
19
19
|
"@koa/router": "^15.6.0",
|
|
20
|
-
"esbuild": "^0.28.
|
|
20
|
+
"esbuild": "^0.28.1",
|
|
21
21
|
"koa": "^3.2.1",
|
|
22
22
|
"koa-compose": "^4.1.0",
|
|
23
23
|
"koa-static": "^5.0.0",
|
|
24
|
-
"@zhin.js/contract": "1.0.
|
|
24
|
+
"@zhin.js/contract": "1.0.3"
|
|
25
25
|
},
|
|
26
26
|
"devDependencies": {
|
|
27
27
|
"@types/koa": "^3.0.3",
|
|
28
28
|
"@types/koa-compose": "^3.2.9",
|
|
29
29
|
"@types/koa-static": "^4.0.4",
|
|
30
30
|
"@types/koa__router": "^12.0.4",
|
|
31
|
-
"@types/node": "^
|
|
31
|
+
"@types/node": "^26.1.0",
|
|
32
32
|
"rimraf": "^6.0.1",
|
|
33
33
|
"typescript": "^6.0.2"
|
|
34
34
|
},
|
|
@@ -41,6 +41,14 @@
|
|
|
41
41
|
"url": "git+https://github.com/zhinjs/zhin.git",
|
|
42
42
|
"directory": "packages/console/pagemanager"
|
|
43
43
|
},
|
|
44
|
+
"engines": {
|
|
45
|
+
"node": "^20.19.0 || >=22.12.0"
|
|
46
|
+
},
|
|
47
|
+
"author": {
|
|
48
|
+
"name": "lc-cn",
|
|
49
|
+
"email": "admin@liucl.cn",
|
|
50
|
+
"url": "https://github.com/lc-cn"
|
|
51
|
+
},
|
|
44
52
|
"scripts": {
|
|
45
53
|
"build": "tsc -p tsconfig.json",
|
|
46
54
|
"build:node": "tsc -p tsconfig.json",
|