@xihan-ui/styles 2.0.0 → 2.1.0
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 +101 -0
- package/component-tokens.d.ts +0 -15
- package/components.tokens.json +65 -396
- package/css/accordion.css +6 -6
- package/css/alert.css +2 -2
- package/css/anchor.css +3 -3
- package/css/approval.css +8 -8
- package/css/back-top.css +2 -2
- package/css/badge.css +1 -1
- package/css/breadcrumb.css +1 -1
- package/css/button-group.css +1 -1
- package/css/button.css +2 -2
- package/css/calendar-picker.css +8 -8
- package/css/calendar-range-picker.css +9 -9
- package/css/card.css +1 -1
- package/css/carousel.css +6 -6
- package/css/cascader.css +3 -5
- package/css/checkbox-group.css +10 -10
- package/css/checkbox.css +5 -5
- package/css/clipboard.css +4 -4
- package/css/code-view.css +2 -2
- package/css/collapsible.css +4 -4
- package/css/color-picker.css +2 -4
- package/css/color-slider.css +4 -4
- package/css/color-swatch-picker.css +5 -5
- package/css/combobox.css +2 -4
- package/css/command.css +3 -5
- package/css/context-menu.css +4 -6
- package/css/date-picker.css +0 -2
- package/css/date-range-picker.css +0 -2
- package/css/descriptions.css +1 -1
- package/css/dialog.css +5 -7
- package/css/diff-view.css +4 -4
- package/css/download-trigger.css +3 -3
- package/css/drawer.css +9 -15
- package/css/empty-state.css +1 -1
- package/css/field.css +1 -1
- package/css/fieldset.css +1 -1
- package/css/file-upload.css +1 -1
- package/css/float-button.css +3 -3
- package/css/floating-panel.css +6 -8
- package/css/form.css +3 -3
- package/css/heatmap.css +1 -1
- package/css/hover-card.css +2 -4
- package/css/image-cropper.css +2 -2
- package/css/image-viewer.css +2 -4
- package/css/infinite-scroll.css +2 -2
- package/css/input-group.css +2 -2
- package/css/json-viewer.css +5 -5
- package/css/kbd.css +1 -1
- package/css/layout.css +3 -3
- package/css/list.css +1 -1
- package/css/listbox.css +26 -17
- package/css/log.css +2 -2
- package/css/mention.css +0 -2
- package/css/menu.css +5 -7
- package/css/menubar.css +6 -8
- package/css/message-feed.css +2 -2
- package/css/navigation-menu.css +5 -7
- package/css/notification.css +3 -3
- package/css/page-header.css +1 -1
- package/css/pagination.css +5 -7
- package/css/popconfirm.css +6 -8
- package/css/popover.css +5 -7
- package/css/prompt-input.css +1 -1
- package/css/question-flow.css +7 -7
- package/css/radio-group.css +9 -9
- package/css/rating.css +4 -4
- package/css/reasoning.css +5 -5
- package/css/reset.css +1 -1
- package/css/segmented.css +7 -7
- package/css/select.css +2 -4
- package/css/side-nav.css +4 -6
- package/css/signature-pad.css +7 -7
- package/css/slider.css +5 -5
- package/css/sortable.css +1 -1
- package/css/splitter.css +1 -1
- package/css/steps.css +10 -10
- package/css/switch.css +8 -8
- package/css/table.css +11 -11
- package/css/tabs.css +12 -12
- package/css/tag-group.css +39 -35
- package/css/tag.css +2 -2
- package/css/time-picker.css +0 -2
- package/css/time-range-picker.css +0 -2
- package/css/toast.css +3 -3
- package/css/toggle-group.css +4 -4
- package/css/toggle.css +2 -2
- package/css/tool-call.css +5 -5
- package/css/toolbar.css +4 -4
- package/css/tooltip.css +4 -6
- package/css/tour.css +7 -9
- package/css/transfer.css +6 -6
- package/css/tree-select.css +3 -5
- package/css/tree.css +46 -99
- package/css/virtualizer.css +1 -1
- package/family/collection-item.css +61 -12
- package/family/motion.css +1 -1
- package/index.css +506 -553
- package/index.unlayered.css +506 -553
- package/package.json +2 -2
package/CHANGELOG.md
CHANGED
|
@@ -1,5 +1,106 @@
|
|
|
1
1
|
# @xihan-ui/styles
|
|
2
2
|
|
|
3
|
+
## 2.1.0
|
|
4
|
+
|
|
5
|
+
### Minor Changes
|
|
6
|
+
|
|
7
|
+
- 7c813b5: Collection Item 家族 page 语境的选中对号从行首移到行尾,与 overlay 语境同列:Listbox 的选中项现在是品牌淡底 + 行尾对号。
|
|
8
|
+
|
|
9
|
+
对号一律落在行尾(`prefix | text | shortcut | suffix | indicator`),行首一格留给前导图标、展开箭头、拖拽把手与勾选框。配方 `markers.page.glyph` 由 `leading` 改为 `trailing`,生成器按它决定 page 语境是否另排一套行首网格;改回 `leading` 仍能生成旧的排法,但当前没有语境使用。
|
|
10
|
+
|
|
11
|
+
行面、字色与悬停 / 按下阶梯不变,只动对号的位置。
|
|
12
|
+
|
|
13
|
+
- 589d76b: Collection Item 家族的 `shortcut` 槽终于被真正画出来:与说明同档同色的次级文字,不换行。
|
|
14
|
+
|
|
15
|
+
这一列从家族建立起就在网格里(`prefix | text | shortcut | suffix | indicator`),但只声明了 `grid-column`——没有字号也没有颜色,落进去的文字会按主文字的 14px 与全强度前景显示,与命令本身抢层级。全库至今没有任何组件消费它,Menu 的示例只能在条目末尾塞一个没有槽位的裸 `<span>`,既不落列也不对齐。
|
|
16
|
+
|
|
17
|
+
现在补齐三条声明:
|
|
18
|
+
|
|
19
|
+
- 字号走 `--xh-control-caption-md`(控件内次级文字档,比同档主文字低一级),与 `description` 同档;可用 `--xh-collection-shortcut-font-size` 逐组件改写。
|
|
20
|
+
- 颜色跟着 `--xh-collection-description-fg` 那支 muted 走,因此逐态跟随(rest / hover / selected / disabled),也**不跟随语气**——一行里出现两种彩字,语气就失去指向。
|
|
21
|
+
- `white-space: nowrap`:它是一串按键记号,折行会被读成两个组合。
|
|
22
|
+
|
|
23
|
+
设计真源补「集合行的次级文字」一节,把说明与快捷键两处的落位、字号、颜色与语气边界写在一起。
|
|
24
|
+
|
|
25
|
+
- 8ada4b9: Collection Item 家族新增语气档:条目写 `data-tone` 即按该族颜色表达,不写保持中性。
|
|
26
|
+
|
|
27
|
+
此前语气只画在集合的容器上(菜单整张、列表整份),单条命令表达不了自身动作的性质——"移到回收站"与"复制"在皮肤上是同一条。作者要把删除项标红,只能绕过家族在条目上写散值,于是每个产品各自一套红。
|
|
28
|
+
|
|
29
|
+
新增的这一档只动面与字,节奏与中性行完全一致:
|
|
30
|
+
|
|
31
|
+
- 静息不换面,只把字换成 `--xh-tone-fg`。整行彩底会把菜单读成色块表,语气由字色承担即可。
|
|
32
|
+
- hover 与键盘高亮换 `--xh-tone-subtle`(12%),按下换 `--xh-tone-subtle-hover`(20%)——与中性行的透明 → 100 → 200 同节奏同层级,只是换了族色。
|
|
33
|
+
- 字一律取 `--xh-tone-fg` 而非 `--xh-tone-solid`:前者是按 WCAG 兑到 60% 的可读文字色,对本家族会遇到的透明面、语气淡底三态与抬起面共五种底、六个语气全部 ≥4.5。
|
|
34
|
+
|
|
35
|
+
三条边界写死在家族里,组件不必各自判断:
|
|
36
|
+
|
|
37
|
+
- **选中与当前压过语气。** 同一条既被选中又带 `danger` 时面归选中、语气退出——选中是集合的结构事实,语气只是该条动作的性质;`disabled` 压过一切。
|
|
38
|
+
- **`nav` 语境不接语气。** Tabs line trigger、Anchor / Breadcrumb link、Menubar / NavigationMenu trigger 表达的是位置而不是动作,写了也不产出语气面。
|
|
39
|
+
- **forced-colors 下语气整档退出**,逐态盖回系统色,只保留图标与文案通道。
|
|
40
|
+
|
|
41
|
+
说明行保持 muted、不跟随语气:一条里出现两种彩字,语气就失去指向。语气也不改字重、缩进与指示器颜色,非颜色通道仍由图标承担。
|
|
42
|
+
|
|
43
|
+
- e00c965: Listbox 的选中改成与 TreeSelect 同一种读法:行不换面、不换字色,只在行尾亮对号。
|
|
44
|
+
|
|
45
|
+
- 条目的 `data-xh-collection-context` 由 `page` 改为 `overlay`,选中叠悬停 / 按下沿用未选行的 100 → 200 阶梯。
|
|
46
|
+
- forced-colors 下选中行保持 Canvas,只由对号表达;打印时对号按原样印出。
|
|
47
|
+
|
|
48
|
+
**破坏性变更**:删除组件槽 `--xh-listbox-item-bg-selected`。`--xh-listbox-item-fg-selected` 保留,缺省改回条目自己的字色。
|
|
49
|
+
|
|
50
|
+
- d727908: TagGroup 的选中改成与 TreeSelect 同一种读法:选中的标签面、字与描边都不换,只在文字后亮一枚对号。
|
|
51
|
+
|
|
52
|
+
- 对号取品牌前景,标了语气的组取语气字色;实心标签取面配对的那支前景色,置灰标签跟着字一起置灰。
|
|
53
|
+
- 悬停、键盘锚点与按下沿用未选中的那条阶梯;forced-colors 下对号用系统高亮色画出,打印时按原样印出。
|
|
54
|
+
|
|
55
|
+
**破坏性变更**:删除组件槽 `--xh-tag-group-item-bg-selected`、`--xh-tag-group-item-bg-selected-hover`、`--xh-tag-group-item-bg-selected-pressed`、`--xh-tag-group-item-fg-selected` 与 `--xh-tag-group-item-border-selected`;实心标签选中时不再描出那一圈字色描边。
|
|
56
|
+
|
|
57
|
+
- c456e52: TagGroup 选中标签的对号从文字前移到文字后,与集合行「对号一律在行尾」统一。
|
|
58
|
+
|
|
59
|
+
- 皮肤按顺序排:对号排在文字与作者内容之后、摘除钮之前,作者在格里把 `item-indicator` 写在哪儿都一样。
|
|
60
|
+
- Vue / React 不传结构时的默认渲染同步改成「文字 → 对号 → 摘除钮」。
|
|
61
|
+
- 选中的淡底、配对前景与按压反馈不变。
|
|
62
|
+
|
|
63
|
+
- 9fd2157: Tree 的选中改成与 TreeSelect 同一种读法:行不换面,单选、多选与级联都只在行尾画对号,勾选框部件删除。
|
|
64
|
+
|
|
65
|
+
此前页内树有两套标记:单选铺品牌淡底 + 行首对号,勾选档再摆一枚行首方框——方框已经表明了勾选态,淡底又把同一件事说了一遍;而下拉里的树(TreeSelect)一直是透明底 + 行尾对号。现在两者统一:
|
|
66
|
+
|
|
67
|
+
- 行投影 Collection Item 的 `overlay` 语境:选中不换面、不换字色,悬停 / 高亮 / 按下沿用未选行的 100 → 200 阶梯。
|
|
68
|
+
- 对号(`item-indicator`)一律排到行尾,作者写在行首也会被排到最后;行尾那一格(`item-suffix`)在它之前。
|
|
69
|
+
- 分支行也放 `item-indicator`:勾选态与级联半选态落在标记自身的 `data-selected` / `data-indeterminate` 上,半选画横杠。
|
|
70
|
+
- forced-colors 下选中行保持 Canvas,只由对号表达;打印时对号按原样印出。
|
|
71
|
+
|
|
72
|
+
**破坏性变更**
|
|
73
|
+
|
|
74
|
+
- 删除部件 `item-checkbox` / `branch-checkbox`,以及三端对应的 `XhTreeItemCheckbox` / `XhTreeBranchCheckbox`(React 另有 `XhTreeItemCheckboxProps` / `XhTreeBranchCheckboxProps`)和 connect 上的 `getItemCheckboxProps` / `getBranchCheckboxProps`。
|
|
75
|
+
- 删除组件槽 `--xh-tree-checkbox-*`(8 个)与 `--xh-tree-row-bg-selected`。
|
|
76
|
+
- 行的 `data-xh-collection-context` 由 `page` 改为 `overlay`。
|
|
77
|
+
|
|
78
|
+
迁移:把勾选框换成对号,分支行同样摆一枚。
|
|
79
|
+
|
|
80
|
+
```vue
|
|
81
|
+
<XhTreeBranchControl>
|
|
82
|
+
<XhTreeBranchTrigger />
|
|
83
|
+
<XhTreeBranchText>华东</XhTreeBranchText>
|
|
84
|
+
<XhTreeItemIndicator />
|
|
85
|
+
</XhTreeBranchControl>
|
|
86
|
+
<XhTreeItem value="sh">
|
|
87
|
+
<XhTreeItemText>上海</XhTreeItemText>
|
|
88
|
+
<XhTreeItemIndicator />
|
|
89
|
+
</XhTreeItem>
|
|
90
|
+
```
|
|
91
|
+
|
|
92
|
+
Web Components 把 `data-xh-part="item-checkbox"` / `"branch-checkbox"` 换成 `data-xh-part="item-indicator"`。
|
|
93
|
+
|
|
94
|
+
### Patch Changes
|
|
95
|
+
|
|
96
|
+
- c79e9ac: 浮层打开后不再常驻 `will-change`,静止画面不再发虚。
|
|
97
|
+
|
|
98
|
+
此前 26 份浮层皮肤(Menu、Select、Popover、Dialog、Drawer、Tooltip、ContextMenu、Menubar、日期与时间选择器等)在 `[data-state='open']` 上一直挂着 `will-change: opacity, translate` 一类合成属性。Chromium 对这样的层沿用第一次栅格化时的位移与缩放:第一次栅格若落在入场动画中途,小数位移就被保留下来,动画播完后文字与 1px 分隔线仍是重采样出来的,看上去发虚;落在哪一帧取决于时序,所以时好时坏。
|
|
99
|
+
|
|
100
|
+
现在打开态只留入场动画:动画播放期间浏览器照样把这一层提到合成层,播完按整数像素重画。附带的变化是浮层里的文字与页面其他文字一样走亚像素抗锯齿,不再被合成层压成灰阶。退场态与拖拽中的 `will-change` 不变。
|
|
101
|
+
|
|
102
|
+
- @xihan-ui/tokens@2.1.0
|
|
103
|
+
|
|
3
104
|
## 2.0.0
|
|
4
105
|
|
|
5
106
|
### Major Changes
|
package/component-tokens.d.ts
CHANGED
|
@@ -1879,7 +1879,6 @@ export type ComponentTokenName
|
|
|
1879
1879
|
| '--xh-listbox-icon-size'
|
|
1880
1880
|
| '--xh-listbox-item-bg-hover'
|
|
1881
1881
|
| '--xh-listbox-item-bg-pressed'
|
|
1882
|
-
| '--xh-listbox-item-bg-selected'
|
|
1883
1882
|
| '--xh-listbox-item-check-fg'
|
|
1884
1883
|
| '--xh-listbox-item-fg'
|
|
1885
1884
|
| '--xh-listbox-item-fg-selected'
|
|
@@ -3173,11 +3172,6 @@ export type ComponentTokenName
|
|
|
3173
3172
|
| '--xh-tag-group-item-bg-hover'
|
|
3174
3173
|
| '--xh-tag-group-item-bg-pressed'
|
|
3175
3174
|
| '--xh-tag-group-item-bg-pressed-solid'
|
|
3176
|
-
| '--xh-tag-group-item-bg-selected'
|
|
3177
|
-
| '--xh-tag-group-item-bg-selected-hover'
|
|
3178
|
-
| '--xh-tag-group-item-bg-selected-pressed'
|
|
3179
|
-
| '--xh-tag-group-item-border-selected'
|
|
3180
|
-
| '--xh-tag-group-item-fg-selected'
|
|
3181
3175
|
| '--xh-tag-group-item-indicator-fg'
|
|
3182
3176
|
| '--xh-tag-group-item-indicator-size'
|
|
3183
3177
|
| '--xh-tag-group-label-fg'
|
|
@@ -3864,14 +3858,6 @@ export type ComponentTokenName
|
|
|
3864
3858
|
| '--xh-tree-branch-content-gap'
|
|
3865
3859
|
| '--xh-tree-branch-gap'
|
|
3866
3860
|
| '--xh-tree-branch-indicator-fg'
|
|
3867
|
-
| '--xh-tree-checkbox-bg'
|
|
3868
|
-
| '--xh-tree-checkbox-bg-checked'
|
|
3869
|
-
| '--xh-tree-checkbox-border'
|
|
3870
|
-
| '--xh-tree-checkbox-border-checked'
|
|
3871
|
-
| '--xh-tree-checkbox-border-disabled'
|
|
3872
|
-
| '--xh-tree-checkbox-fg'
|
|
3873
|
-
| '--xh-tree-checkbox-radius'
|
|
3874
|
-
| '--xh-tree-checkbox-size'
|
|
3875
3861
|
| '--xh-tree-drag-fg'
|
|
3876
3862
|
| '--xh-tree-drag-fg-active'
|
|
3877
3863
|
| '--xh-tree-drag-fg-disabled'
|
|
@@ -3908,7 +3894,6 @@ export type ComponentTokenName
|
|
|
3908
3894
|
| '--xh-tree-radius'
|
|
3909
3895
|
| '--xh-tree-row-bg-hover'
|
|
3910
3896
|
| '--xh-tree-row-bg-pressed'
|
|
3911
|
-
| '--xh-tree-row-bg-selected'
|
|
3912
3897
|
| '--xh-tree-row-fg'
|
|
3913
3898
|
| '--xh-tree-row-fg-selected'
|
|
3914
3899
|
| '--xh-tree-row-font-size'
|