@gyyxds/zy-ui 0.0.1 → 0.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/CHANGELOG.md +34 -19
- package/CONTRIBUTING.md +109 -99
- package/LICENSE +21 -0
- package/README.md +397 -162
- package/dist/zy-ui/badge/ZyBadge.vue.d.ts +4 -4
- package/dist/zy-ui/badge/index.d.ts +6 -6
- package/dist/zy-ui/button/ZyButton.vue.d.ts +3 -3
- package/dist/zy-ui/button/index.d.ts +9 -9
- package/dist/zy-ui/card/ZyCard.vue.d.ts +1 -1
- package/dist/zy-ui/card/index.d.ts +3 -3
- package/dist/zy-ui/checkbox/ZyCheckboxGroup.vue.d.ts +1 -1
- package/dist/zy-ui/checkbox/index.d.ts +3 -3
- package/dist/zy-ui/code-input/ZyCodeInput.vue.d.ts +2 -2
- package/dist/zy-ui/code-input/index.d.ts +2 -2
- package/dist/zy-ui/divider/ZyDivider.vue.d.ts +1 -1
- package/dist/zy-ui/divider/index.d.ts +3 -3
- package/dist/zy-ui/icon/ZyIcon.vue.d.ts +1 -1
- package/dist/zy-ui/icon/index.d.ts +1 -1
- package/dist/zy-ui/index.d.ts +62 -46
- package/dist/zy-ui/input/ZyInput.vue.d.ts +3 -3
- package/dist/zy-ui/input/index.d.ts +3 -3
- package/dist/zy-ui/loading/ZyLoading.vue.d.ts +1 -1
- package/dist/zy-ui/loading/index.d.ts +1 -1
- package/dist/zy-ui/mega-menu/ZyMegaMenu.vue.d.ts +12 -4
- package/dist/zy-ui/mega-menu/index.d.ts +16 -0
- package/dist/zy-ui/progress/ZyProgress.vue.d.ts +1 -1
- package/dist/zy-ui/progress/index.d.ts +3 -3
- package/dist/zy-ui/radio/ZyRadioGroup.vue.d.ts +3 -3
- package/dist/zy-ui/select/ZySelect.vue.d.ts +1 -1
- package/dist/zy-ui/select/index.d.ts +3 -3
- package/dist/zy-ui/space/ZySpace.vue.d.ts +1 -1
- package/dist/zy-ui/space/index.d.ts +3 -3
- package/dist/zy-ui/table/ZyTable.vue.d.ts +3 -3
- package/dist/zy-ui/tag/ZyTag.vue.d.ts +2 -2
- package/dist/zy-ui/tag/index.d.ts +6 -6
- package/dist/zy-ui/themes/basic.css +837 -832
- package/dist/zy-ui/themes/material.css +41 -37
- package/dist/zy-ui/themes/solid.css +665 -664
- package/dist/zy-ui/tree/ZyTree.vue.d.ts +2 -2
- package/dist/zy-ui/zy-ui.css +1 -1
- package/dist/zy-ui/zy-ui.js +299 -247
- package/package.json +82 -82
package/CHANGELOG.md
CHANGED
|
@@ -1,19 +1,34 @@
|
|
|
1
|
-
# Changelog
|
|
2
|
-
|
|
3
|
-
## Unreleased
|
|
4
|
-
|
|
5
|
-
- `
|
|
6
|
-
-
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
-
|
|
10
|
-
-
|
|
11
|
-
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
-
|
|
16
|
-
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
-
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
## Unreleased
|
|
4
|
+
|
|
5
|
+
- **站点瘦身:回归组件库与组件文档本身**。移除动效页(`/animations`)、效果详情页、收藏页与 `src/effects/**` 片段体系,连同 `mocks/families.ts` / `mocks/catalog.ts` / favorites store / `PreviewHost` / `GlassCard` / `GlassButton` / `FilterChip` 一并删除;旧地址与未知路由统一回落首页。组件库公共 API 不变。
|
|
6
|
+
- **首页改为展示设计方案**:`/` 现在按「两根轴 → 四种组合 → 两套色板 → 设计原则 → 判据 → 落地清单」展示 `docs/theme` 的方案;四种组合可点击切换整站材质与光照。色板与文案的单一事实源迁到 `src/mocks/theme-design.ts`,四张展示板读同一份数据。
|
|
7
|
+
- 校验脚本收敛:`check:registry` 只校验组件注册表 ↔ 实现文件、`COMPONENT_TOTAL` 与 `--zy-*` 令牌完整性;移除 `check:snippets` 与 `sync:scoped`(片段体系已下线),CI 同步。
|
|
8
|
+
- **首页改用四张背景图**:`basic` / `solid` × 浅色 / 深色各一张 `1920 × 1200` PNG(`src/assets/backgrounds/`),按主题切换铺满视口,代替原来的页面渐变;左上阅读区保持近纯色,图纸的弧线 / 网格与键帽的挤出体只压在页边,生成脚本为 `scripts/gen_home_backgrounds.py`。
|
|
9
|
+
- 修复 `ZyMegaMenu` 在实色主题下一级选中与悬停不一致的问题:悬停、选中、展开统一为同一枚凸起的品牌键(不使用内凹槽,也不再为展开单独按下),开合只由箭头方向表示;图纸主题原本就是浅底常亮,行为不变。
|
|
10
|
+
- **顶栏导航改为胶囊滑行**:四个栏目不再铺轨道,选中胶囊直接浮在顶栏上,复用 `ZyRadioGroup` 分段按钮组的 400ms 回弹曲线与 320ms 品牌光晕;顶栏移到路由外,切栏目时不再重建,胶囊从上一格滑过去,同栏目内换组件页不闪。深色胶囊 / 字色另调,当前栏目补 `aria-current="page"`。
|
|
11
|
+
- **站点品牌文案统一为「智云UI」**:顶栏、页面标题、页脚、关于页、MegaMenu 示例与主题展示板里的 MotionVault 字样全部替换。主题存储键(`motionvault-theme` / `motionvault-zy-theme`)与仓库路径保持不变,避免已有访客的主题选择丢失。
|
|
12
|
+
- **主题页改为当前实现的真实演示**:`/theme` 用材质 / 光照两根轴的开关、9 颗真实 `ZyButton`(press / sweep / fill)、4 个材质验收样本(`raised`、`fill`、`hover-fill`)和品牌色 / 圆角令牌覆盖,替换原先手写按钮与站点变量样板;覆盖片段含深浅两档与悬停 / 按下派生令牌,可一键复制。
|
|
13
|
+
- 修正 README / AGENTS 的深色换肤示例:`html.dark` 的权重低于 `dark.css` 的 `html.dark[data-zy-theme]`,示例改用 `html.dark[data-zy-theme]` 并注明加载顺序。
|
|
14
|
+
- 文档更新:README / AGENTS / CONTRIBUTING / `docs/theme/README.md` / `dark-mode-design.md` 按新范围重写;删除已过时的 `docs/SPEC.md`。
|
|
15
|
+
- `ZyMegaMenu` 面板里的二级菜单在没有 `desc`(描述行)时,图标与名称改为垂直居中,行高由 56.5 收到 36(图标 30 → 24、上内距 9 → 6);有描述时排版不变。
|
|
16
|
+
- `ZyMegaMenu` 新增选中态 `active`(一级项 key)/ `activeLink`(二级链接标题):选中项沿用悬停那套底色常亮,一级和二级都不再随指针离开或面板收起消失;不传这两个 prop 时点击链接自动记下,并回传 `update:active` / `update:activeLink`。
|
|
17
|
+
- `ZyTag` 的 `effect="fill"` 与 `ZyButton` 对齐:图纸主题里没有实色键帽这一档,切到图纸时自动退回 Element 的浅底标签;组件页的「实色标签」舞台同样只在键帽主题下出现。
|
|
18
|
+
- 修复 `ZyTag` 在 `effect="fill"` + `closable` 时关闭图标与实色面同色、默认看不见的问题:关闭图标改跟标签字色(`--el-tag-text-color`),悬停不再被 Element 强制成「白图标 + type 色圆底」,改为压暗到挤出底座色,键盘焦点环也跟着字色走。
|
|
19
|
+
- 发布流程补前置体检:`npm run release` 现在先跑 `scripts/check-release-env.mjs`,检查 registry、账号登录、该版本是否已发布、有无待发 changeset;不通过直接退出并给出补法(原来要先跑完 40 秒构建,再在 `changeset publish` 上撞 `ENEEDAUTH`)。同时把 `.changeset/config.json` 的 `access` 从 `restricted` 改回 `public`,与 `package.json` 的 `publishConfig` 对齐。
|
|
20
|
+
- `ZyInput` / `ZySelect` 的 `raised`(键帽凸起形态)补上组件页舞台:实色主题下多一节「键帽凸起」,输入框与选择器各两颗(可输入 / 可清空、单选 / 可搜索),文案与代码片段齐全;图纸主题不出现(`raised` 在 A 里是空操作)。样式与展示板 `is-raised` 逐值一致(白键面 + `0 4px 0` 底座 + 落地影 + 两侧白弧),深色档同形不同光。
|
|
21
|
+
- 修复键帽主题(`solid`)复选框**未勾选**时方框看不见:原先只把描边设为透明、再补一道白色顶光,白色键面落在白卡片上就整颗消失。现在未选态是**空槽**(`--zy-slot-face` 槽底 + `--zy-slot-shadow-sm` 内阴影 + `--zy-slot-line` 描边),与单选框、输入框同一个坑;深色档同样成立。`checkmark` / `tick` 两个变体不受影响。展示板复选框补了「未选」样本。
|
|
22
|
+
- **新增 `ZyMegaMenu`(导航 + 大面板)**:`items` 数据驱动,面板支持 `grid` / `list` / `groups` 三种布局,也可用 `#panel-<key>` 整块接管;`v-model:open` 受控开合;键盘可达(↓ 进面板、Escape 关闭并把焦点还给触发器);`#brand` / `#actions` 插槽。没有对应的 Element 组件,属自研件。组件数 27 → 28。
|
|
23
|
+
- 深色色板换成方案稿那一套:`tokens/dark.css` 收成**两套材质共用的深色板**(品牌字 `#5aa6e4` / 键面 `#2876af`、储能、危险、警示、信息、焦点环、Element `--el-color-*` 桥接),`theme/basic.css` 增 §0.1「图纸 · 夜」(中性石墨纸 `#0f1014` / 纸片 `#1b1d23`、发丝线与控件线分档、表格栏头、实心按钮深档渐变),`theme/solid.css` 只留键帽的材质值。深色下 A 的实心按钮白字 2.78 → 4.88、角标 2.65 → 5.19、实心标签 2.0–2.7 → 4.86–5.19。
|
|
24
|
+
- `ZyButton` 的 `effect="fill"`(实色键帽 / 悬停扩散)改为**只在键帽主题成立**:图纸主题下不渲染键帽层,`effect="fill"` 自动按 `press` 渲染;标题栏 / 舞台 / 参数表同步标注「仅键帽主题」,组件页在图纸主题下不再出现「实色按钮」舞台。
|
|
25
|
+
- 移除 `ZyButton` 的 `effect="outline"`(描边展开)与 `hoverLabel` prop:悬停即把文案换成「已展开 / 已删除」,在点击发生前就宣告结果,对危险操作是错误的状态承诺;描边语义已由 `plain` / `dashed` 承担,按压与图标动效由 `press` / `sweep` 承担。`effect` 现为 `'press' | 'sweep' | 'fill'`。
|
|
26
|
+
- 同步移除组件页「描边按钮」舞台、`button:outline` 片段、`solid` 主题里的 `.is-outline` 选择器与相关文档说明。
|
|
27
|
+
|
|
28
|
+
## 0.1.0
|
|
29
|
+
|
|
30
|
+
- 建立 Element Plus 二次封装组件库基础。
|
|
31
|
+
- 新增 `basic` / `solid` 两套主题入口与 `data-zy-theme` 主题契约。
|
|
32
|
+
- 新增 `ZyPagination`、`ZyPanel`、`ZyDatePicker`、`ZyTimePicker`。
|
|
33
|
+
- 新增实验性 `ZySlideVerify`。
|
|
34
|
+
- 增加发布产物、真实消费方、主题运行时和视觉回归检查。
|
package/CONTRIBUTING.md
CHANGED
|
@@ -1,99 +1,109 @@
|
|
|
1
|
-
# Zy UI 贡献规范
|
|
2
|
-
|
|
3
|
-
## 先判断产物类型
|
|
4
|
-
|
|
5
|
-
- 有 props / events / slots,供业务项目 `import
|
|
6
|
-
-
|
|
7
|
-
-
|
|
8
|
-
|
|
9
|
-
组件库改造规范见 [docs/ui-library-refactor-spec.md](docs/ui-library-refactor-spec.md)。
|
|
10
|
-
|
|
11
|
-
## 本地开发
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
npm ci
|
|
15
|
-
npm run dev
|
|
16
|
-
```
|
|
17
|
-
|
|
18
|
-
文档站默认运行在 Vite 输出地址。组件实现放在 `src/zy/<name>/`,每个组件目录必须有:
|
|
19
|
-
|
|
20
|
-
- `Zy<Name>.vue`
|
|
21
|
-
- `index.ts`
|
|
22
|
-
- 需要样式资产时放在同目录
|
|
23
|
-
|
|
24
|
-
## 新增或修改组件
|
|
25
|
-
|
|
26
|
-
提交前至少完成:
|
|
27
|
-
|
|
28
|
-
1. 组件实现与入口。
|
|
29
|
-
2. `src/zy/index.ts` 导出与全局注册。
|
|
30
|
-
3. `src/mocks/element-demos.ts` 演示。
|
|
31
|
-
4. `src/mocks/element-components.ts` API 文档。
|
|
32
|
-
5. 两套主题下的状态检查。
|
|
33
|
-
6. 键盘、禁用、加载、错误、弹层等适用状态。
|
|
34
|
-
7. 视觉基线更新并经过人工审核。
|
|
35
|
-
8. README / 规范中的组件数量和说明同步。
|
|
36
|
-
|
|
37
|
-
##
|
|
38
|
-
|
|
39
|
-
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
```
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
npm run
|
|
62
|
-
npm run check:
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
npm run check:
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
1
|
+
# Zy UI 贡献规范
|
|
2
|
+
|
|
3
|
+
## 先判断产物类型
|
|
4
|
+
|
|
5
|
+
- 有 props / events / slots,供业务项目 `import`:组件(`src/zy/`)。
|
|
6
|
+
- 组件的用法与设计依据:文档页(`src/views/`、`src/mocks/`)与设计规范(`docs/theme/`)。
|
|
7
|
+
- 动效片段体系已于 2026-10 下线;组件内的 `effect` 微动效属于组件 API,不单独建产物。
|
|
8
|
+
|
|
9
|
+
组件库改造规范见 [docs/ui-library-refactor-spec.md](docs/ui-library-refactor-spec.md),主题设计见 [docs/theme/README.md](docs/theme/README.md)。
|
|
10
|
+
|
|
11
|
+
## 本地开发
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npm ci
|
|
15
|
+
npm run dev
|
|
16
|
+
```
|
|
17
|
+
|
|
18
|
+
文档站默认运行在 Vite 输出地址。组件实现放在 `src/zy/<name>/`,每个组件目录必须有:
|
|
19
|
+
|
|
20
|
+
- `Zy<Name>.vue`
|
|
21
|
+
- `index.ts`
|
|
22
|
+
- 需要样式资产时放在同目录
|
|
23
|
+
|
|
24
|
+
## 新增或修改组件
|
|
25
|
+
|
|
26
|
+
提交前至少完成:
|
|
27
|
+
|
|
28
|
+
1. 组件实现与入口。
|
|
29
|
+
2. `src/zy/index.ts` 导出与全局注册。
|
|
30
|
+
3. `src/mocks/element-demos.ts` 演示。
|
|
31
|
+
4. `src/mocks/element-components.ts` API 文档。
|
|
32
|
+
5. 两套主题下的状态检查。
|
|
33
|
+
6. 键盘、禁用、加载、错误、弹层等适用状态。
|
|
34
|
+
7. 视觉基线更新并经过人工审核。
|
|
35
|
+
8. README / 规范中的组件数量和说明同步。
|
|
36
|
+
|
|
37
|
+
## 新增或修改设计 / 首页
|
|
38
|
+
|
|
39
|
+
1. 主题名、立场、两档色板、材质解剖、原则与判据改 `src/mocks/theme-design.ts` —— 首页 `/` 与四张展示板共用这一份,不要在两处各写一份。
|
|
40
|
+
2. 令牌改 `src/zy/styles/tokens/`,材质改 `src/zy/styles/themes/`;主题层只消费 `--zy-*`。
|
|
41
|
+
3. 同步 `docs/theme/README.md`(推导与数值)并跑 `node docs/theme/tools/contrast.mjs`。
|
|
42
|
+
4. 首页结构改 `src/views/HomeView.vue`,保持「两根轴 → 四种组合 → 两套色板 → 原则 → 判据/落地」的信息顺序。
|
|
43
|
+
5. 视觉有变化时先人工确认,再 `npm run check:visual:update`。
|
|
44
|
+
|
|
45
|
+
## 主题约束
|
|
46
|
+
|
|
47
|
+
- 主题属性:`html[data-zy-theme="basic|solid"]`。
|
|
48
|
+
- 明暗属性:`html[data-zy-color-scheme="light|dark"]`。
|
|
49
|
+
- 组件优先消费 `--zy-*` 语义令牌。
|
|
50
|
+
- 主题层不得引用展示板专用类名或站点专属变量。
|
|
51
|
+
- 不得依赖组件内部 `.el-*` 子结构作为公共 API。
|
|
52
|
+
- 深浅色在当前材质内切换(`solid` 深色 = 「键帽 · 夜」),不要回退到另一套材质,也不要在深色中叠加 `solid` 材质。
|
|
53
|
+
|
|
54
|
+
## 提交前验证
|
|
55
|
+
|
|
56
|
+
```bash
|
|
57
|
+
npm run check:registry
|
|
58
|
+
npm run lint
|
|
59
|
+
npm run test
|
|
60
|
+
npm run build
|
|
61
|
+
npm run build:lib
|
|
62
|
+
npm run check:consumer
|
|
63
|
+
```
|
|
64
|
+
|
|
65
|
+
主题运行时与视觉回归需要先启动站点:
|
|
66
|
+
|
|
67
|
+
```bash
|
|
68
|
+
npm run preview -- --port 4173
|
|
69
|
+
npm run check:theme-runtime
|
|
70
|
+
npm run check:visual
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
只有确认视觉变化符合设计后,才允许执行:
|
|
74
|
+
|
|
75
|
+
```bash
|
|
76
|
+
npm run check:visual:update
|
|
77
|
+
```
|
|
78
|
+
|
|
79
|
+
## 版本与发布
|
|
80
|
+
|
|
81
|
+
- 使用 Changesets 描述变更。
|
|
82
|
+
- patch:样式或类型修复。
|
|
83
|
+
- minor:向后兼容的新组件 / 新能力。
|
|
84
|
+
- major:删除或改变公共 API、主题默认值、组件 DOM 契约。
|
|
85
|
+
- `prepublishOnly` 会重新构建并校验发布产物。
|
|
86
|
+
|
|
87
|
+
```bash
|
|
88
|
+
npm run changeset
|
|
89
|
+
npm run version
|
|
90
|
+
npm run release
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
`npm run release` 先跑 `node scripts/check-release-env.mjs`(registry / 登录 / 版本是否已发 / 有无待发 changeset),体检不过直接退,不会再白跑一遍构建。
|
|
94
|
+
|
|
95
|
+
|
|
96
|
+
发布前必须确认:
|
|
97
|
+
|
|
98
|
+
- 包 scope 与私有 registry 已配置。
|
|
99
|
+
- 当前账号不是唯一发布人。
|
|
100
|
+
- CHANGELOG 和迁移说明完整。
|
|
101
|
+
- `npm pack` 产物可由非作者安装。
|
|
102
|
+
|
|
103
|
+
## 组件 RFC
|
|
104
|
+
|
|
105
|
+
大型组件或破坏性改动先提交 RFC。模板位于 `.gitlab/issue_templates/component-rfc.md`。
|
|
106
|
+
|
|
107
|
+
## 浏览器支持
|
|
108
|
+
|
|
109
|
+
见 [docs/browser-support.md](docs/browser-support.md)。如业务需要旧 WebView,必须先评估 `color-mix()`、`:has()` 与 CSS 自定义属性的降级。
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 @gyyxds/zy-ui contributors
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|