@yuku123/z-frontend-common 1.1.0 → 1.1.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.md +22 -10
- package/dist/ComponentDoc-C4XFElke.js +1657 -0
- package/dist/index.js +160 -154
- package/dist/ui-echarts.js +54 -0
- package/dist/ui.js +19 -19
- package/package.json +6 -2
- package/src/components/ui/ComponentDoc.jsx +890 -0
- package/src/components/ui/echarts.js +8 -0
- package/src/components/ui/index.js +3 -2
- package/src/index.js +19 -2
- package/src/services/request.js +19 -5
- package/dist/PagedTable-DyjNokXN.js +0 -1211
package/README.md
CHANGED
|
@@ -2,9 +2,10 @@
|
|
|
2
2
|
|
|
3
3
|
> z-opc-foundation 全仓共享前端基座 —— lead 008《前端开发规范》§1-§16 的唯一承载仓。
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
5
|
+
工作区内 **41** 个 `*-suit` 工程通过同一份 AppLayout / LoginPage 获得一致的
|
|
6
|
+
左菜单架子、登录流程与右上角用户组件;**31** 个 `*-component` 工程声明依赖本包
|
|
7
|
+
(其中 **30** 个在源码里真的 import)。
|
|
8
|
+
**改一处,全仓同步**。
|
|
8
9
|
|
|
9
10
|
---
|
|
10
11
|
|
|
@@ -14,25 +15,28 @@
|
|
|
14
15
|
|------|-----|
|
|
15
16
|
| 仓 | `z-opc-foundation/z-frontend-common`(本仓) |
|
|
16
17
|
| npm 包 | `@yuku123/z-frontend-common`(scope 沿用 yuku123,与 0.1.x/0.2.x 旧线连续) |
|
|
17
|
-
| 当前版本 | `1.
|
|
18
|
+
| 当前版本 | `1.1.2` —— 1.0 语义:§1-§16 规范化起点;1.1.x 在其上追加扁平 ui 组件桶。0.1.x 是 pre-§16 形态;0.2.x 内嵌 react-dom 已废弃 |
|
|
18
19
|
| 技术栈 | React 19 + antd 6 + react-router-dom 7 + Vite 6(lead 005 §3.0 版本线单一尺子) |
|
|
19
|
-
| 产物 | ESM
|
|
20
|
-
|
|
|
20
|
+
| 产物 | ESM **3 入口**(`formats: ['es']`):`dist/index.js`(主桶)+ `dist/ui.js`(扁平 ui 桶)+ `dist/ui-echarts.js`(`ui/echarts` 子路径) |
|
|
21
|
+
| 打包策略 | external 精确 **9** 个包 + **1** 条前缀规则(`echarts/*`):react / react-dom / react-dom/client / react/jsx-runtime / react-router-dom / antd / @ant-design/icons / axios / echarts |
|
|
22
|
+
| axios | 声明在 `dependencies`(由消费方安装,`_shared/` vendoring 时期的决策保留:避免消费方从无 node_modules 的目录解析 axios);bundle 侧 external,不打进产物 |
|
|
21
23
|
|
|
22
|
-
## 对外 API
|
|
24
|
+
## 对外 API(0.1.1 契约完全兼容 + 两处升级 + 一处新增;1.1.x 追加扁平 ui 桶)
|
|
23
25
|
|
|
24
26
|
| 导出 | 说明 |
|
|
25
27
|
|------|------|
|
|
26
28
|
| `AppLayout` | **升级**:§1 sider 双模式品牌区(暗主题显式白字 / 折叠 36×36 圆角图标 + Tooltip)、§11 selectedKey 最长菜单前缀、§12 sider 顶 `产品名@版本`、§15 Header 48px + 1px 下边线、§16 `appUser` 右上角下拉(profile + 退出登录,`loginPath` 按 `menuItems[0].key` 自动推导可覆盖) |
|
|
27
29
|
| `LoginPage` | **升级**:`mockAuth` 双模式 —— 传 `{username, password, user}` 走纯前端校验(CTC/SSO 接入前短期形态);缺省走 `loginApi` 真实端点 |
|
|
28
|
-
| `EmptyState
|
|
30
|
+
| `EmptyState` | **已实装**:`src/components/ui/EmptyState.jsx`(44×44 触控目标、默认标题「暂无数据」、可选 action 按钮),由扁平 ui 桶导出 |
|
|
29
31
|
| `StatusTag` / `defaultStatusMap` | 0.1.1 契约原样保留 |
|
|
30
32
|
| `ErrorBoundary` | 0.1.1 契约原样保留(antd Result 形态重绘) |
|
|
31
|
-
| `createRequest(options)` | axios 实例工厂:`{baseURL='/api', timeout=10000, tokenKey, userInfoKey, unauthorizedRedirect}`;
|
|
33
|
+
| `createRequest(options)` | axios 实例工厂:`{baseURL='/api', timeout=10000, tokenKey='token', userInfoKey='userInfo', unauthorizedRedirect='/login'}`;31 个 `*-component` 工程声明依赖本包 |
|
|
32
34
|
| `request` / `authRequest` | 预建实例(`createRequest()` 双份,0.1.1 契约) |
|
|
33
35
|
| `setupInterceptors` | 拦截器装配(Bearer token 注入 + 401 清凭跳登录 + 响应解包) |
|
|
34
36
|
| `unwrapResponse` | **新增显式导出**:`{code, data}` 包装解包 / 裸数据透传(z-opc Spring MVC 统一返回体兼容) |
|
|
35
|
-
| `
|
|
37
|
+
| `ui` 扁平桶(`export *`) | **1.1.x 追加**:14 个 UI 组件文件导出 **15** 个具名(`TableToolbar` 同时导出 `RefreshButton`)+ **9** 个 design token(`brand` / `palette` / `neutral` / `radius` / `shadow` / `lift` / `space` / `fontSize` / `antdTheme`)= **24** 个具名导出 |
|
|
38
|
+
| `EChartsChart` | 走子路径 `@yuku123/z-frontend-common/ui/echarts`(不进扁平桶:让不画图的域解析 `echarts/core` 会构建失败) |
|
|
39
|
+
| `default`(桶) | `{AppLayout, StatusTag, defaultStatusMap, LoginPage, ErrorBoundary, request, authRequest, createRequest}` —— 0.1.1 形状原样,**8** 个成员 |
|
|
36
40
|
|
|
37
41
|
## AppLayout props
|
|
38
42
|
|
|
@@ -64,9 +68,17 @@ const MOCK_AUTH = { username: 'admin', password: '123456', user: { name: 'admin'
|
|
|
64
68
|
|
|
65
69
|
完整模板见 lead 008 §16;出厂自检清单见 §9。
|
|
66
70
|
|
|
71
|
+
## 文档目录
|
|
72
|
+
|
|
73
|
+
本项目文档统一收口在 `_doc/` 下(八类固定编号表,桶按需存在):
|
|
74
|
+
|
|
75
|
+
- [`_doc/001_arch/`](_doc/001_arch/) — 架构、接口、DB schema、协议、路线图
|
|
76
|
+
|
|
67
77
|
## 历史
|
|
68
78
|
|
|
69
79
|
- `0.1.0 – 0.1.6`:早期形态(pre-§16),源码曾位于 `yuku123/z-opc` 仓的 `z-frontend-common/` 子目录
|
|
70
80
|
- `0.2.x`:内嵌 react-dom 的失败尝试线,已废弃
|
|
71
81
|
- 应急过渡:`z-opc-foundation/_shared/z-frontend-common-local/` vendoring(不入 git,1.0.0 发版后退役)
|
|
72
82
|
- `1.0.0`:独立仓首版 —— 源码自 vendoring 迁入,API 契约兼容 0.1.1,AppLayout/LoginPage 升级 §1-§16 规范版
|
|
83
|
+
- `1.1.1`:在 1.0.0 之上追加扁平 ui 组件桶(13 个 UI 组件 + design token)与 `ui/echarts` 子路径
|
|
84
|
+
- `1.1.2`:ui 桶追加 `ComponentDoc`(§7 组件文档页:240px TOC + 正文两栏、滚动联动、锚点跳转、自带零依赖 markdown 引擎,宿主可注册 react-markdown 三件套升级为 GFM + Prism 高亮)
|