@xihan-ui/styles 3.2.0 → 4.0.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 +441 -0
- package/component-tokens.d.ts +229 -60
- package/components.tokens.json +5124 -1555
- package/css/accordion.css +47 -20
- package/css/alert.css +14 -15
- package/css/anchor.css +2 -2
- package/css/approval.css +37 -13
- package/css/avatar-group.css +9 -12
- package/css/avatar.css +20 -18
- package/css/back-top.css +21 -7
- package/css/badge.css +5 -5
- package/css/breadcrumb.css +18 -16
- package/css/button-group.css +4 -6
- package/css/button.css +4 -7
- package/css/calendar-picker.css +177 -94
- package/css/calendar-range-picker.css +206 -121
- package/css/card.css +34 -6
- package/css/carousel.css +65 -49
- package/css/cascader.css +41 -29
- package/css/checkbox-group.css +9 -6
- package/css/checkbox.css +5 -4
- package/css/citation.css +7 -2
- package/css/clipboard.css +20 -4
- package/css/collapsible.css +29 -14
- package/css/color-field.css +4 -4
- package/css/color-picker.css +77 -23
- package/css/color-slider.css +10 -8
- package/css/color-swatch-picker.css +5 -5
- package/css/combobox.css +14 -10
- package/css/command.css +13 -8
- package/css/context-menu.css +10 -5
- package/css/date-field.css +4 -4
- package/css/date-picker.css +165 -102
- package/css/date-range-picker.css +186 -123
- package/css/description.css +10 -6
- package/css/descriptions.css +47 -19
- package/css/dialog.css +50 -35
- package/css/drawer.css +75 -21
- package/css/editable.css +15 -41
- package/css/empty-state.css +21 -3
- package/css/field-array.css +4 -1
- package/css/field.css +17 -18
- package/css/fieldset.css +33 -13
- package/css/file-upload.css +65 -32
- package/css/float-button.css +25 -15
- package/css/floating-panel.css +1 -1
- package/css/form.css +24 -10
- package/css/grid-list.css +1 -1
- package/css/highlight.css +4 -4
- package/css/hover-card.css +19 -12
- package/css/image-viewer.css +77 -27
- package/css/image.css +12 -4
- package/css/infinite-scroll.css +8 -4
- package/css/input-group.css +74 -26
- package/css/kbd.css +1 -1
- package/css/label.css +27 -11
- package/css/layout.css +17 -10
- package/css/list.css +13 -9
- package/css/listbox.css +12 -7
- package/css/loading-bar.css +3 -0
- package/css/mention.css +10 -8
- package/css/menu.css +10 -5
- package/css/menubar.css +13 -8
- package/css/navigation-menu.css +2 -2
- package/css/notification.css +114 -31
- package/css/number-animation.css +2 -2
- package/css/number-field.css +60 -37
- package/css/page-header.css +63 -26
- package/css/pagination.css +35 -38
- package/css/password-input.css +10 -66
- package/css/pin-input.css +18 -26
- package/css/popconfirm.css +20 -11
- package/css/popover.css +18 -12
- package/css/progress.css +14 -13
- package/css/prompt-input.css +3 -3
- package/css/question-flow.css +33 -7
- package/css/radio-group.css +120 -55
- package/css/rating.css +31 -14
- package/css/select.css +14 -10
- package/css/separator.css +22 -4
- package/css/side-nav.css +16 -11
- package/css/signature-pad.css +23 -9
- package/css/skeleton.css +7 -7
- package/css/slider.css +71 -42
- package/css/sparkline.css +8 -2
- package/css/spinner.css +40 -20
- package/css/statistic.css +14 -14
- package/css/steps.css +115 -84
- package/css/switch.css +9 -7
- package/css/table.css +27 -10
- package/css/tabs.css +35 -12
- package/css/tag-group.css +17 -6
- package/css/tag.css +54 -29
- package/css/tags-input.css +38 -19
- package/css/text-field.css +5 -5
- package/css/time-field.css +4 -4
- package/css/time-picker.css +150 -64
- package/css/time-range-picker.css +91 -62
- package/css/timeline.css +37 -20
- package/css/timer.css +3 -3
- package/css/toggle-group.css +4 -4
- package/css/tool-call.css +6 -4
- package/css/toolbar.css +6 -5
- package/css/tooltip.css +15 -16
- package/css/tour.css +14 -7
- package/css/transfer.css +22 -16
- package/css/tree-select.css +10 -10
- package/css/tree.css +26 -25
- package/css/typography.css +28 -25
- package/dist/css/accordion.css +47 -20
- package/dist/css/alert.css +14 -15
- package/dist/css/anchor.css +2 -2
- package/dist/css/approval.css +37 -13
- package/dist/css/avatar-group.css +9 -12
- package/dist/css/avatar.css +20 -18
- package/dist/css/back-top.css +21 -7
- package/dist/css/badge.css +5 -5
- package/dist/css/breadcrumb.css +18 -16
- package/dist/css/button-group.css +4 -6
- package/dist/css/button.css +4 -7
- package/dist/css/calendar-picker.css +177 -94
- package/dist/css/calendar-range-picker.css +206 -121
- package/dist/css/card.css +34 -6
- package/dist/css/carousel.css +65 -49
- package/dist/css/cascader.css +41 -29
- package/dist/css/checkbox-group.css +9 -6
- package/dist/css/checkbox.css +5 -4
- package/dist/css/citation.css +7 -2
- package/dist/css/clipboard.css +20 -4
- package/dist/css/collapsible.css +29 -14
- package/dist/css/color-field.css +4 -4
- package/dist/css/color-picker.css +77 -23
- package/dist/css/color-slider.css +10 -8
- package/dist/css/color-swatch-picker.css +5 -5
- package/dist/css/combobox.css +14 -10
- package/dist/css/command.css +13 -8
- package/dist/css/context-menu.css +10 -5
- package/dist/css/date-field.css +4 -4
- package/dist/css/date-picker.css +165 -102
- package/dist/css/date-range-picker.css +186 -123
- package/dist/css/description.css +10 -6
- package/dist/css/descriptions.css +47 -19
- package/dist/css/dialog.css +50 -35
- package/dist/css/drawer.css +75 -21
- package/dist/css/editable.css +15 -41
- package/dist/css/empty-state.css +21 -3
- package/dist/css/field-array.css +4 -1
- package/dist/css/field.css +17 -18
- package/dist/css/fieldset.css +33 -13
- package/dist/css/file-upload.css +65 -32
- package/dist/css/float-button.css +25 -15
- package/dist/css/floating-panel.css +1 -1
- package/dist/css/form.css +24 -10
- package/dist/css/grid-list.css +1 -1
- package/dist/css/highlight.css +4 -4
- package/dist/css/hover-card.css +19 -12
- package/dist/css/image-viewer.css +77 -27
- package/dist/css/image.css +12 -4
- package/dist/css/infinite-scroll.css +8 -4
- package/dist/css/input-group.css +74 -26
- package/dist/css/kbd.css +1 -1
- package/dist/css/label.css +27 -11
- package/dist/css/layout.css +17 -10
- package/dist/css/list.css +13 -9
- package/dist/css/listbox.css +12 -7
- package/dist/css/loading-bar.css +3 -0
- package/dist/css/mention.css +10 -8
- package/dist/css/menu.css +10 -5
- package/dist/css/menubar.css +13 -8
- package/dist/css/navigation-menu.css +2 -2
- package/dist/css/notification.css +114 -31
- package/dist/css/number-animation.css +2 -2
- package/dist/css/number-field.css +60 -37
- package/dist/css/page-header.css +63 -26
- package/dist/css/pagination.css +35 -38
- package/dist/css/password-input.css +10 -66
- package/dist/css/pin-input.css +18 -26
- package/dist/css/popconfirm.css +20 -11
- package/dist/css/popover.css +18 -12
- package/dist/css/progress.css +14 -13
- package/dist/css/prompt-input.css +3 -3
- package/dist/css/question-flow.css +33 -7
- package/dist/css/radio-group.css +120 -55
- package/dist/css/rating.css +31 -14
- package/dist/css/select.css +14 -10
- package/dist/css/separator.css +22 -4
- package/dist/css/side-nav.css +16 -11
- package/dist/css/signature-pad.css +23 -9
- package/dist/css/skeleton.css +7 -7
- package/dist/css/slider.css +71 -42
- package/dist/css/sparkline.css +8 -2
- package/dist/css/spinner.css +40 -20
- package/dist/css/statistic.css +14 -14
- package/dist/css/steps.css +115 -84
- package/dist/css/switch.css +9 -7
- package/dist/css/table.css +27 -10
- package/dist/css/tabs.css +35 -12
- package/dist/css/tag-group.css +17 -6
- package/dist/css/tag.css +54 -29
- package/dist/css/tags-input.css +38 -19
- package/dist/css/text-field.css +5 -5
- package/dist/css/time-field.css +4 -4
- package/dist/css/time-picker.css +150 -64
- package/dist/css/time-range-picker.css +91 -62
- package/dist/css/timeline.css +37 -20
- package/dist/css/timer.css +3 -3
- package/dist/css/toggle-group.css +4 -4
- package/dist/css/tool-call.css +6 -4
- package/dist/css/toolbar.css +6 -5
- package/dist/css/tooltip.css +15 -16
- package/dist/css/tour.css +14 -7
- package/dist/css/transfer.css +22 -16
- package/dist/css/tree-select.css +10 -10
- package/dist/css/tree.css +26 -25
- package/dist/css/typography.css +28 -25
- package/dist/family/action-control.css +30 -24
- package/dist/family/chart.css +57 -0
- package/dist/family/collection-item.css +12 -8
- package/dist/family/field-chrome.css +28 -19
- package/dist/family/loading-ring.css +20 -13
- package/dist/family/swatch.css +4 -4
- package/dist/family/tag-list.css +6 -0
- package/family/action-control.css +30 -24
- package/family/chart.css +57 -0
- package/family/collection-item.css +12 -8
- package/family/field-chrome.css +28 -19
- package/family/loading-ring.css +20 -13
- package/family/swatch.css +4 -4
- package/family/tag-list.css +6 -0
- package/index.css +3580 -2060
- package/index.unlayered.css +3579 -2060
- package/package.json +2 -2
|
@@ -70,7 +70,6 @@
|
|
|
70
70
|
--xh-_time-range-picker-control-px: var(--xh-control-px-md);
|
|
71
71
|
--xh-_time-range-picker-gap: var(--xh-control-gap-md);
|
|
72
72
|
--xh-_time-range-picker-font-size: var(--xh-control-font-md);
|
|
73
|
-
--xh-_time-range-picker-item-py: var(--xh-list-option-py-md);
|
|
74
73
|
|
|
75
74
|
/* 段位强调随语气走:当前段是「当前项」,淡底 + 淡底前景;对号使用普通表面上的前景色。
|
|
76
75
|
没写 data-tone 时这几个 --xh-_tone* 没被声明,退回品牌色 */
|
|
@@ -103,7 +102,6 @@
|
|
|
103
102
|
--xh-_time-range-picker-control-px: var(--xh-control-px-sm);
|
|
104
103
|
--xh-_time-range-picker-gap: var(--xh-control-gap-sm);
|
|
105
104
|
--xh-_time-range-picker-font-size: var(--xh-control-font-sm);
|
|
106
|
-
--xh-_time-range-picker-item-py: var(--xh-list-option-py-sm);
|
|
107
105
|
}
|
|
108
106
|
|
|
109
107
|
.xh-scope-time-range-picker:is([data-part='root'], [data-part='positioner'])[data-size='lg'] {
|
|
@@ -112,7 +110,6 @@
|
|
|
112
110
|
--xh-_time-range-picker-control-px: var(--xh-control-px-lg);
|
|
113
111
|
--xh-_time-range-picker-gap: var(--xh-control-gap-lg);
|
|
114
112
|
--xh-_time-range-picker-font-size: var(--xh-control-font-lg);
|
|
115
|
-
--xh-_time-range-picker-item-py: var(--xh-list-option-py-lg);
|
|
116
113
|
}
|
|
117
114
|
|
|
118
115
|
/* 声明了 display 就盖掉了 UA 的 [hidden]{display:none},收起态得自己还回去 */
|
|
@@ -121,14 +118,16 @@
|
|
|
121
118
|
}
|
|
122
119
|
|
|
123
120
|
.xh-scope-time-range-picker[data-part='label'] {
|
|
124
|
-
|
|
121
|
+
/* 竖排时标签与控件之间的距离:根的 gap 之上补一段差值,--xh-time-range-picker-label-gap 给多少最终就是多少 */
|
|
122
|
+
margin-block-end: calc(var(--xh-time-range-picker-label-gap, var(--xh-space-2)) - var(--xh-time-range-picker-gap, var(--xh-space-1)));
|
|
123
|
+
color: var(--xh-time-range-picker-label-fg, var(--xh-fg-muted));
|
|
125
124
|
font-size: var(--xh-time-range-picker-label-font-size, var(--xh-text-label-size));
|
|
126
125
|
font-weight: var(--xh-time-range-picker-label-font-weight, var(--xh-text-label-weight));
|
|
127
126
|
line-height: var(--xh-leading-none);
|
|
128
127
|
}
|
|
129
128
|
|
|
130
129
|
.xh-scope-time-range-picker[data-part='label'][data-disabled] {
|
|
131
|
-
color: var(--xh-time-range-picker-label-fg-disabled, var(--xh-fg-
|
|
130
|
+
color: var(--xh-time-range-picker-label-fg-disabled, var(--xh-fg-muted));
|
|
132
131
|
}
|
|
133
132
|
|
|
134
133
|
/* 画成一个框的是 control:几段文字、展开按钮、清空按钮要看起来是一体的,
|
|
@@ -150,8 +149,6 @@
|
|
|
150
149
|
--xh-field-border-hover: var(--xh-time-range-picker-control-border-hover, var(--xh-_field-variant-border-hover));
|
|
151
150
|
--xh-field-border-focus: var(--xh-time-range-picker-control-border-focus, var(--xh-_field-variant-border-focus));
|
|
152
151
|
--xh-field-border-invalid: var(--xh-time-range-picker-control-border-invalid, var(--xh-_field-variant-border-invalid));
|
|
153
|
-
--xh-field-ring-focus: var(--xh-ring-focus);
|
|
154
|
-
--xh-field-ring-invalid: var(--xh-ring-invalid);
|
|
155
152
|
--xh-field-shadow-rest: var(--xh-time-range-picker-control-shadow, none);
|
|
156
153
|
/* 段位靠键盘编辑,盒上不是文本光标 */
|
|
157
154
|
--xh-field-cursor-rest: default;
|
|
@@ -325,21 +322,22 @@
|
|
|
325
322
|
/* 几列并排:整体高度由列自己撑,滚动发生在列里而不是整个面板上——
|
|
326
323
|
整面板滚会让时列与分列一起走,挑分的时候时就看不见了。
|
|
327
324
|
含多列的锚定面板走 floating 材质:实体底 + --xh-border-default 描边 + --xh-elevation-floating 落影,
|
|
328
|
-
|
|
325
|
+
不透景、不画顶光。面板自己不留内衬:各列与快捷选项列自带内衬,列间分隔线从面板顶边通到底边 */
|
|
329
326
|
.xh-scope-time-range-picker[data-part='content'] {
|
|
330
327
|
position: relative;
|
|
331
328
|
display: flex;
|
|
332
329
|
align-items: stretch;
|
|
333
|
-
padding-block: var(--xh-time-range-picker-content-py, var(--xh-space-
|
|
334
|
-
padding-inline: var(--xh-time-range-picker-content-px, var(--xh-space-
|
|
330
|
+
padding-block: var(--xh-time-range-picker-content-py, var(--xh-space-0));
|
|
331
|
+
padding-inline: var(--xh-time-range-picker-content-px, var(--xh-space-0));
|
|
335
332
|
/* 行内轴的上限是落位后的可用宽度:两组时列并排,秒与上下午都开时八列合计会越过最窄视口,
|
|
336
333
|
放不下时面板内自己横滚,每一列保持自己的宽度不被压 */
|
|
337
334
|
max-inline-size: var(--xh-_time-range-picker-available-w);
|
|
338
335
|
overflow-x: auto;
|
|
339
336
|
/* 浮层滚动面:滚到头不把页面一起带走 */
|
|
340
337
|
overscroll-behavior: contain;
|
|
341
|
-
/*
|
|
342
|
-
|
|
338
|
+
/* 两组时列都按 px 定高(列取 --xh-overlay-time-column-h),面板的天然高度就是它们的和,缺省不另设上限:
|
|
339
|
+
按 rem 的滚动面档会随根字号缩小,根字号很小时面板出竖滚 */
|
|
340
|
+
max-block-size: var(--xh-time-range-picker-content-max-h, none);
|
|
343
341
|
border: var(--xh-stroke-thin) solid var(--xh-time-range-picker-content-border, var(--xh-border-default));
|
|
344
342
|
border-radius: var(--xh-time-range-picker-content-radius, var(--xh-shape-overlay));
|
|
345
343
|
background: var(--xh-time-range-picker-content-bg, var(--xh-bg-surface));
|
|
@@ -373,60 +371,71 @@
|
|
|
373
371
|
animation: xh-overlay-slide-out var(--xh-motion-duration-exit) var(--xh-motion-ease-exit) forwards;
|
|
374
372
|
}
|
|
375
373
|
|
|
376
|
-
/*
|
|
374
|
+
/* 快捷选项也是一列,与时分秒那几列并排,排在行内起始一侧;限高与时间列同一档 */
|
|
377
375
|
.xh-scope-time-range-picker[data-part='preset-group'] {
|
|
378
376
|
display: flex;
|
|
379
377
|
flex: none;
|
|
380
378
|
flex-direction: column;
|
|
381
|
-
gap: var(--xh-time-range-picker-preset-group-gap, var(--xh-
|
|
382
|
-
max-block-size: var(--xh-time-range-picker-preset-group-h, var(--xh-
|
|
383
|
-
padding-
|
|
379
|
+
gap: var(--xh-time-range-picker-preset-group-gap, var(--xh-space-1));
|
|
380
|
+
max-block-size: var(--xh-time-range-picker-preset-group-h, var(--xh-overlay-time-column-h));
|
|
381
|
+
padding-block: var(--xh-time-range-picker-preset-group-py, var(--xh-space-2_5));
|
|
382
|
+
padding-inline: var(--xh-time-range-picker-preset-group-px, var(--xh-space-2));
|
|
384
383
|
overflow-y: auto;
|
|
385
384
|
/* 浮层滚动面:滚到头不把页面一起带走 */
|
|
386
385
|
overscroll-behavior: contain;
|
|
387
|
-
border-inline-end: var(--xh-stroke-thin) solid var(--xh-time-range-picker-column-divider, var(--xh-material-solid-
|
|
386
|
+
border-inline-end: var(--xh-stroke-thin) solid var(--xh-time-range-picker-column-divider, var(--xh-material-solid-border));
|
|
388
387
|
}
|
|
389
388
|
|
|
390
389
|
.xh-scope-time-range-picker[data-part='preset-group'][hidden] {
|
|
391
390
|
display: none;
|
|
392
391
|
}
|
|
393
392
|
|
|
394
|
-
/*
|
|
395
|
-
|
|
396
|
-
|
|
393
|
+
/* 快捷选项:每一项是一颗 24 高的淡底小钮——静息 100、悬停 / 高亮 200、按下 300(淡底承载阶梯),
|
|
394
|
+
字取说明档 12px、次级前景;禁用面由 Collection Item 家族按 overlay 语境给。headless 把它投成 listbox 的
|
|
395
|
+
option、当前值落在哪一项就报 aria-selected,选中仍画行尾对号(面与字不变),对号是这条状态唯一的视觉通道。
|
|
396
|
+
选项没有正文部件,匿名文本进不了家族网格的 text 列,行保持块级排版,末端为对号预留固定轨 */
|
|
397
397
|
.xh-scope-time-range-picker[data-part='preset'] {
|
|
398
|
-
--xh-collection-block-padding:
|
|
399
|
-
--xh-collection-inline-padding: var(--xh-time-range-picker-preset-px, var(--xh-space-
|
|
400
|
-
--xh-collection-font-size: var(--xh-text-
|
|
401
|
-
--xh-collection-radius: var(--xh-time-range-picker-preset-radius, var(--xh-shape-
|
|
402
|
-
|
|
403
|
-
--xh-collection-fg-
|
|
404
|
-
|
|
405
|
-
--xh-collection-fg-
|
|
406
|
-
--xh-collection-fg-
|
|
407
|
-
--xh-collection-fg-
|
|
408
|
-
--xh-collection-fg-selected-highlight: var(--xh-time-range-picker-preset-fg-
|
|
409
|
-
--xh-collection-fg-selected-hover: var(--xh-time-range-picker-preset-fg-
|
|
410
|
-
--xh-collection-fg-selected-pressed: var(--xh-time-range-picker-preset-fg-
|
|
398
|
+
--xh-collection-block-padding: 0;
|
|
399
|
+
--xh-collection-inline-padding: var(--xh-time-range-picker-preset-px, var(--xh-space-2));
|
|
400
|
+
--xh-collection-font-size: var(--xh-time-range-picker-preset-font-size, var(--xh-text-caption-size));
|
|
401
|
+
--xh-collection-radius: var(--xh-time-range-picker-preset-radius, var(--xh-shape-control));
|
|
402
|
+
--xh-collection-fg-rest: var(--xh-time-range-picker-preset-fg, var(--xh-fg-muted));
|
|
403
|
+
--xh-collection-fg-selected: var(--xh-time-range-picker-preset-fg, var(--xh-fg-muted));
|
|
404
|
+
/* 悬停 / 高亮 / 按下时字换正文色:底升到 200 / 300 之后,次级前景在暗色下不足 4.5:1 */
|
|
405
|
+
--xh-collection-fg-hover: var(--xh-time-range-picker-preset-fg-hover, var(--xh-fg-default));
|
|
406
|
+
--xh-collection-fg-keyboard-highlight: var(--xh-time-range-picker-preset-fg-hover, var(--xh-fg-default));
|
|
407
|
+
--xh-collection-fg-pressed: var(--xh-time-range-picker-preset-fg-hover, var(--xh-fg-default));
|
|
408
|
+
--xh-collection-fg-selected-highlight: var(--xh-time-range-picker-preset-fg-hover, var(--xh-fg-default));
|
|
409
|
+
--xh-collection-fg-selected-hover: var(--xh-time-range-picker-preset-fg-hover, var(--xh-fg-default));
|
|
410
|
+
--xh-collection-fg-selected-pressed: var(--xh-time-range-picker-preset-fg-hover, var(--xh-fg-default));
|
|
411
411
|
--xh-collection-fg-disabled: var(--xh-time-range-picker-preset-fg-disabled, var(--xh-fg-disabled));
|
|
412
|
-
--xh-collection-
|
|
413
|
-
--xh-collection-
|
|
414
|
-
--xh-collection-
|
|
415
|
-
--xh-collection-
|
|
416
|
-
--xh-collection-bg-
|
|
417
|
-
--xh-collection-bg-selected
|
|
412
|
+
--xh-collection-font-weight-selected: var(--xh-font-weight-regular);
|
|
413
|
+
--xh-collection-font-weight-selected-highlight: var(--xh-font-weight-regular);
|
|
414
|
+
--xh-collection-font-weight-selected-hover: var(--xh-font-weight-regular);
|
|
415
|
+
--xh-collection-font-weight-selected-pressed: var(--xh-font-weight-regular);
|
|
416
|
+
--xh-collection-bg-rest: var(--xh-time-range-picker-preset-bg, var(--xh-bg-subtle));
|
|
417
|
+
--xh-collection-bg-selected: var(--xh-time-range-picker-preset-bg, var(--xh-bg-subtle));
|
|
418
|
+
--xh-collection-bg-hover: var(--xh-time-range-picker-preset-bg-hover, var(--xh-bg-subtle-hover));
|
|
419
|
+
--xh-collection-bg-keyboard-highlight: var(--xh-time-range-picker-preset-bg-hover, var(--xh-bg-subtle-hover));
|
|
420
|
+
--xh-collection-bg-selected-highlight: var(--xh-time-range-picker-preset-bg-hover, var(--xh-bg-subtle-hover));
|
|
421
|
+
--xh-collection-bg-selected-hover: var(--xh-time-range-picker-preset-bg-hover, var(--xh-bg-subtle-hover));
|
|
422
|
+
--xh-collection-bg-pressed: var(--xh-time-range-picker-preset-bg-pressed, var(--xh-bg-subtle-active));
|
|
423
|
+
--xh-collection-bg-selected-pressed: var(--xh-time-range-picker-preset-bg-pressed, var(--xh-bg-subtle-active));
|
|
418
424
|
--xh-collection-outline-keyboard-highlight: transparent;
|
|
419
425
|
--xh-collection-outline-selected-highlight: transparent;
|
|
420
426
|
|
|
421
427
|
position: relative;
|
|
422
428
|
display: block;
|
|
423
429
|
flex: none;
|
|
430
|
+
block-size: var(--xh-time-range-picker-preset-h, var(--xh-control-action-size));
|
|
424
431
|
/* 对号的末端轨始终留着,切换选中时文字与整列宽度都不移动。 */
|
|
425
432
|
padding-inline-end: calc(
|
|
426
|
-
var(--xh-time-range-picker-preset-px, var(--xh-space-
|
|
427
|
-
+ var(--xh-time-range-picker-preset-check-size, var(--xh-control-indicator-
|
|
433
|
+
var(--xh-time-range-picker-preset-px, var(--xh-space-2))
|
|
434
|
+
+ var(--xh-time-range-picker-preset-check-size, var(--xh-control-indicator-sm))
|
|
428
435
|
+ var(--xh-space-1)
|
|
429
436
|
);
|
|
437
|
+
/* 一行字在 24 高的钮里垂直居中 */
|
|
438
|
+
line-height: var(--xh-time-range-picker-preset-h, var(--xh-control-action-size));
|
|
430
439
|
white-space: nowrap;
|
|
431
440
|
user-select: none;
|
|
432
441
|
}
|
|
@@ -444,9 +453,9 @@
|
|
|
444
453
|
content: '';
|
|
445
454
|
position: absolute;
|
|
446
455
|
inset-block-start: 50%;
|
|
447
|
-
inset-inline-end: var(--xh-time-range-picker-preset-px, var(--xh-space-
|
|
448
|
-
inline-size: var(--xh-time-range-picker-preset-check-size, var(--xh-control-indicator-
|
|
449
|
-
block-size: var(--xh-time-range-picker-preset-check-size, var(--xh-control-indicator-
|
|
456
|
+
inset-inline-end: var(--xh-time-range-picker-preset-px, var(--xh-space-2));
|
|
457
|
+
inline-size: var(--xh-time-range-picker-preset-check-size, var(--xh-control-indicator-sm));
|
|
458
|
+
block-size: var(--xh-time-range-picker-preset-check-size, var(--xh-control-indicator-sm));
|
|
450
459
|
background-color: var(--xh-time-range-picker-preset-check-fg, var(--xh-_time-range-picker-check-fg));
|
|
451
460
|
opacity: 0;
|
|
452
461
|
translate: 0 -50%;
|
|
@@ -470,7 +479,7 @@
|
|
|
470
479
|
background-color: var(--xh-time-range-picker-preset-fg-disabled, var(--xh-fg-disabled));
|
|
471
480
|
}
|
|
472
481
|
|
|
473
|
-
/*
|
|
482
|
+
/* 一端的几列成组并排,小标题独占顶上一行;两组之间不另留空当,只隔一道竖线,眼睛先分起止、再分时分 */
|
|
474
483
|
.xh-scope-time-range-picker[data-part='column-group'] {
|
|
475
484
|
--xh-_time-range-picker-column-group-label-py: var(
|
|
476
485
|
--xh-time-range-picker-column-group-py,
|
|
@@ -499,9 +508,9 @@
|
|
|
499
508
|
}
|
|
500
509
|
|
|
501
510
|
.xh-scope-time-range-picker[data-part='column-group'] + .xh-scope-time-range-picker[data-part='column-group'] {
|
|
502
|
-
margin-inline-start: var(--xh-time-range-picker-column-group-gap, var(--xh-space-
|
|
503
|
-
padding-inline-start: var(--xh-time-range-picker-column-group-gap, var(--xh-space-
|
|
504
|
-
border-inline-start: var(--xh-stroke-thin) solid var(--xh-time-range-picker-column-group-divider, var(--xh-material-solid-
|
|
511
|
+
margin-inline-start: var(--xh-time-range-picker-column-group-gap, var(--xh-space-0));
|
|
512
|
+
padding-inline-start: var(--xh-time-range-picker-column-group-gap, var(--xh-space-0));
|
|
513
|
+
border-inline-start: var(--xh-stroke-thin) solid var(--xh-time-range-picker-column-group-divider, var(--xh-material-solid-border));
|
|
505
514
|
}
|
|
506
515
|
|
|
507
516
|
/* 组顶上的小标题:独占一行,字号走辅助文本档 */
|
|
@@ -527,15 +536,21 @@
|
|
|
527
536
|
display: none;
|
|
528
537
|
}
|
|
529
538
|
|
|
530
|
-
/* 一列一个滚动区:列与列之间用细分隔线,视觉上"时 | 分 | 秒"
|
|
539
|
+
/* 一列一个滚动区:列与列之间用细分隔线,视觉上"时 | 分 | 秒"三栏分明。列宽取时间列档(两位数字加两侧对号轨),
|
|
540
|
+
列高是七格整行;列顶留 4,列底留出一截空白,末尾几格(23 时、55–59 分)也能滚到列顶,各列的选中落在同一行 */
|
|
531
541
|
.xh-scope-time-range-picker[data-part='column'] {
|
|
542
|
+
--xh-_time-range-picker-column-h: var(--xh-time-range-picker-column-h, var(--xh-overlay-time-column-h));
|
|
543
|
+
--xh-_time-range-picker-column-py: var(--xh-time-range-picker-column-py, var(--xh-space-1));
|
|
544
|
+
|
|
532
545
|
display: flex;
|
|
533
546
|
flex: none;
|
|
534
547
|
flex-direction: column;
|
|
535
|
-
gap: var(--xh-time-range-picker-column-gap,
|
|
536
|
-
min-inline-size: var(--xh-time-range-picker-column-min-w, var(--xh-overlay-column-
|
|
548
|
+
gap: var(--xh-time-range-picker-column-gap, var(--xh-space-2));
|
|
549
|
+
min-inline-size: var(--xh-time-range-picker-column-min-w, var(--xh-overlay-time-column-w));
|
|
537
550
|
/* 几列并排:定高而不是随内容收,否则时列与分列的可选值一多一少就错位 */
|
|
538
|
-
block-size: var(--xh-
|
|
551
|
+
block-size: var(--xh-_time-range-picker-column-h);
|
|
552
|
+
padding-block: var(--xh-_time-range-picker-column-py)
|
|
553
|
+
calc(var(--xh-_time-range-picker-column-h) - var(--xh-time-range-picker-item-h, var(--xh-control-action-size)) - var(--xh-_time-range-picker-column-py));
|
|
539
554
|
padding-inline: var(--xh-time-range-picker-column-px, 0);
|
|
540
555
|
overflow-y: auto;
|
|
541
556
|
/* 浮层滚动面:滚到头不把页面一起带走 */
|
|
@@ -543,6 +558,11 @@
|
|
|
543
558
|
/* 滚动容器在某些浏览器里会被自动塞进 Tab 序列,是否画环见下方按 tabindex 分档的两条 */
|
|
544
559
|
}
|
|
545
560
|
|
|
561
|
+
/* 组里的列顶画一道线:组顶小标题那一带与列分开,起止两组的线在组边接上 */
|
|
562
|
+
.xh-scope-time-range-picker[data-part='column-group'] > .xh-scope-time-range-picker[data-part='column'] {
|
|
563
|
+
border-block-start: var(--xh-stroke-thin) solid var(--xh-time-range-picker-column-divider, var(--xh-material-solid-border));
|
|
564
|
+
}
|
|
565
|
+
|
|
546
566
|
/* granularity 关掉的列(精度不到秒时的秒列)由连接层打 hidden */
|
|
547
567
|
.xh-scope-time-range-picker[data-part='column'][hidden] {
|
|
548
568
|
display: none;
|
|
@@ -550,7 +570,7 @@
|
|
|
550
570
|
|
|
551
571
|
/* 每列后面紧跟着它自己的贴层条子节点,相邻选择器接不到下一列,按「前面有过列」取第二列起 */
|
|
552
572
|
.xh-scope-time-range-picker[data-part='column'] ~ .xh-scope-time-range-picker[data-part='column'] {
|
|
553
|
-
border-inline-start: var(--xh-stroke-thin) solid var(--xh-time-range-picker-column-divider, var(--xh-material-solid-
|
|
573
|
+
border-inline-start: var(--xh-stroke-thin) solid var(--xh-time-range-picker-column-divider, var(--xh-material-solid-border));
|
|
554
574
|
}
|
|
555
575
|
|
|
556
576
|
/* 焦点落在列上有两种情形:指针打开、这一段还空着、还没有任何格当锚点,或整列被界裁空。
|
|
@@ -564,8 +584,8 @@
|
|
|
564
584
|
outline: none;
|
|
565
585
|
}
|
|
566
586
|
|
|
567
|
-
/*
|
|
568
|
-
|
|
587
|
+
/* 时间格:24 高的通栏条,列内间距 8 撑出 32 的行距;悬停 / 高亮 100、按下 200 由 Collection Item 家族按
|
|
588
|
+
overlay 语境给,选中透明底 + 中等字重 + 末端对号(对号集合的选中),不上品牌淡底、不变字色。格里只有数字、没有正文部件,保持自己的
|
|
569
589
|
居中排版与等宽标记轨,家族只给状态面。行的字色与字重按值选择族的同一套映射写(--xh-time-range-picker-item-fg
|
|
570
590
|
/ -fg-selected / -font-weight-selected 使用者槽,缺省落家族配方的行字色 --xh-material-frosted-fg:
|
|
571
591
|
它在各主题与 forced-colors 下都等于 --xh-fg-default,floating 面板上的面色仍由 content 自己给) */
|
|
@@ -574,11 +594,12 @@
|
|
|
574
594
|
var(--xh-time-range-picker-item-px, var(--xh-space-0_5)),
|
|
575
595
|
calc(var(--xh-time-range-picker-item-check-size, var(--xh-control-indicator-size)) + var(--xh-space-0_5))
|
|
576
596
|
);
|
|
577
|
-
--xh-collection-block-padding:
|
|
597
|
+
--xh-collection-block-padding: 0;
|
|
578
598
|
/* 两侧留同宽轨:对号绝对落在末端,数字仍在整格的数学中心。 */
|
|
579
599
|
--xh-collection-inline-padding: var(--xh-_time-range-picker-item-rail);
|
|
580
600
|
--xh-collection-font-size: var(--xh-time-range-picker-item-font-size, var(--xh-_time-range-picker-font-size));
|
|
581
|
-
|
|
601
|
+
/* 浮层里的列表是通栏行:格铺满列宽、不取圆角 */
|
|
602
|
+
--xh-collection-radius: var(--xh-time-range-picker-item-radius, 0);
|
|
582
603
|
--xh-collection-fg-rest: var(--xh-time-range-picker-item-fg, var(--xh-material-frosted-fg));
|
|
583
604
|
--xh-collection-fg-hover: var(--xh-time-range-picker-item-fg, var(--xh-material-frosted-fg));
|
|
584
605
|
--xh-collection-fg-keyboard-highlight: var(--xh-time-range-picker-item-fg, var(--xh-material-frosted-fg));
|
|
@@ -587,10 +608,10 @@
|
|
|
587
608
|
--xh-collection-fg-selected-highlight: var(--xh-time-range-picker-item-fg-selected, var(--xh-time-range-picker-item-fg, var(--xh-material-frosted-fg)));
|
|
588
609
|
--xh-collection-fg-selected-hover: var(--xh-time-range-picker-item-fg-selected, var(--xh-time-range-picker-item-fg, var(--xh-material-frosted-fg)));
|
|
589
610
|
--xh-collection-fg-selected-pressed: var(--xh-time-range-picker-item-fg-selected, var(--xh-time-range-picker-item-fg, var(--xh-material-frosted-fg)));
|
|
590
|
-
--xh-collection-font-weight-selected: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-
|
|
591
|
-
--xh-collection-font-weight-selected-highlight: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-
|
|
592
|
-
--xh-collection-font-weight-selected-hover: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-
|
|
593
|
-
--xh-collection-font-weight-selected-pressed: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-
|
|
611
|
+
--xh-collection-font-weight-selected: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-medium));
|
|
612
|
+
--xh-collection-font-weight-selected-highlight: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-medium));
|
|
613
|
+
--xh-collection-font-weight-selected-hover: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-medium));
|
|
614
|
+
--xh-collection-font-weight-selected-pressed: var(--xh-time-range-picker-item-font-weight-selected, var(--xh-font-weight-medium));
|
|
594
615
|
--xh-collection-bg-hover: var(--xh-time-range-picker-item-bg-hover, var(--xh-bg-subtle));
|
|
595
616
|
--xh-collection-bg-keyboard-highlight: var(--xh-time-range-picker-item-bg-hover, var(--xh-bg-subtle));
|
|
596
617
|
--xh-collection-bg-selected-highlight: var(--xh-time-range-picker-item-bg-hover, var(--xh-bg-subtle));
|
|
@@ -605,7 +626,7 @@
|
|
|
605
626
|
flex: none;
|
|
606
627
|
align-items: center;
|
|
607
628
|
justify-content: center;
|
|
608
|
-
block-size: var(--xh-time-range-picker-item-h,
|
|
629
|
+
block-size: var(--xh-time-range-picker-item-h, var(--xh-control-action-size));
|
|
609
630
|
/* 居中的单个数字格没有截断层,行高保持紧排,列内多露几格 */
|
|
610
631
|
line-height: var(--xh-leading-normal);
|
|
611
632
|
white-space: nowrap;
|
|
@@ -621,6 +642,14 @@
|
|
|
621
642
|
}
|
|
622
643
|
|
|
623
644
|
/* 作者自己藏掉某几格时要让位,有 display 就得补这条 */
|
|
645
|
+
/* 命中区向上下各补半个列内间距:两格之间那 8px 缝归上下两格各一半,指针落在缝里不落空 */
|
|
646
|
+
.xh-scope-time-range-picker[data-part='item']::before {
|
|
647
|
+
content: '';
|
|
648
|
+
position: absolute;
|
|
649
|
+
inset-block: calc(-0.5 * var(--xh-time-range-picker-column-gap, var(--xh-space-2)));
|
|
650
|
+
inset-inline: 0;
|
|
651
|
+
}
|
|
652
|
+
|
|
624
653
|
.xh-scope-time-range-picker[data-part='item'][hidden] {
|
|
625
654
|
display: none;
|
|
626
655
|
}
|
package/dist/css/timeline.css
CHANGED
|
@@ -14,14 +14,15 @@
|
|
|
14
14
|
.xh-scope-timeline[data-part='root'] {
|
|
15
15
|
/* 尺寸档只换这几个私有槽,条目、圆点与文字都从 root 继承它们,
|
|
16
16
|
换档不必给每个部件各写一条选择器 */
|
|
17
|
-
|
|
18
|
-
--xh-_timeline-
|
|
19
|
-
--xh-_timeline-
|
|
17
|
+
/* 圆点只标位置,6px 实心;圆点到内容 16px;条目之间 32px,事件一条条分得开 */
|
|
18
|
+
--xh-_timeline-dot-size: var(--xh-space-1_5);
|
|
19
|
+
--xh-_timeline-gutter: var(--xh-space-4);
|
|
20
|
+
--xh-_timeline-item-gap: var(--xh-space-8);
|
|
20
21
|
--xh-_timeline-title-font-size: var(--xh-control-font-md);
|
|
21
22
|
--xh-_timeline-caption-font-size: var(--xh-text-caption-size);
|
|
22
23
|
/* 标题首行占多高。圆点按它居中下移,圆心才落在标题这一行的中线上 */
|
|
23
24
|
--xh-_timeline-line-h: calc(
|
|
24
|
-
var(--xh-timeline-title-font-size, var(--xh-_timeline-title-font-size)) * var(--xh-leading-
|
|
25
|
+
var(--xh-timeline-title-font-size, var(--xh-_timeline-title-font-size)) * var(--xh-leading-normal)
|
|
25
26
|
);
|
|
26
27
|
|
|
27
28
|
/* 条目之间不设 gap:留白由 content 自己的边距撑出来,连线才连得到下一条的圆点。
|
|
@@ -51,17 +52,17 @@
|
|
|
51
52
|
/* —— 尺寸 —— */
|
|
52
53
|
/* 缺省档写在上面的基础规则里。圆点直径不在控件高度那把尺上,三档走空间尺相邻的三格 */
|
|
53
54
|
.xh-scope-timeline[data-part='root'][data-size='sm'] {
|
|
54
|
-
--xh-_timeline-dot-size: var(--xh-space-
|
|
55
|
-
--xh-_timeline-gutter: var(--xh-space-
|
|
56
|
-
--xh-_timeline-item-gap: var(--xh-space-
|
|
55
|
+
--xh-_timeline-dot-size: var(--xh-space-1);
|
|
56
|
+
--xh-_timeline-gutter: var(--xh-space-3);
|
|
57
|
+
--xh-_timeline-item-gap: var(--xh-space-6);
|
|
57
58
|
--xh-_timeline-title-font-size: var(--xh-control-font-sm);
|
|
58
59
|
/* 字号档最小就是 xs,时刻文本不再往下走,故不重声明 caption */
|
|
59
60
|
}
|
|
60
61
|
|
|
61
62
|
.xh-scope-timeline[data-part='root'][data-size='lg'] {
|
|
62
|
-
--xh-_timeline-dot-size: var(--xh-space-
|
|
63
|
-
--xh-_timeline-gutter: var(--xh-space-
|
|
64
|
-
--xh-_timeline-item-gap: var(--xh-space-
|
|
63
|
+
--xh-_timeline-dot-size: var(--xh-space-2);
|
|
64
|
+
--xh-_timeline-gutter: var(--xh-space-5);
|
|
65
|
+
--xh-_timeline-item-gap: calc(var(--xh-space-8) + var(--xh-space-2));
|
|
65
66
|
--xh-_timeline-title-font-size: var(--xh-control-font-lg);
|
|
66
67
|
--xh-_timeline-caption-font-size: var(--xh-text-secondary-size);
|
|
67
68
|
}
|
|
@@ -99,8 +100,8 @@
|
|
|
99
100
|
inline-size: var(--xh-timeline-indicator-size, var(--xh-_timeline-dot-size));
|
|
100
101
|
block-size: var(--xh-timeline-indicator-size, var(--xh-_timeline-dot-size));
|
|
101
102
|
border-radius: var(--xh-timeline-indicator-radius, var(--xh-shape-circle));
|
|
102
|
-
/*
|
|
103
|
-
background: var(--xh-timeline-indicator-bg, var(--xh-_tone-soft, var(--xh-fg-
|
|
103
|
+
/* 使用者令牌排在语气之前;两者都没有时退回品牌色的实心点 */
|
|
104
|
+
background: var(--xh-timeline-indicator-bg, var(--xh-_tone-soft, var(--xh-fg-brand)));
|
|
104
105
|
color: var(--xh-timeline-indicator-fg, var(--xh-_tone-on, var(--xh-fg-on-brand)));
|
|
105
106
|
font-size: var(--xh-timeline-indicator-font-size, var(--xh-_timeline-caption-font-size));
|
|
106
107
|
line-height: var(--xh-leading-none);
|
|
@@ -140,7 +141,7 @@
|
|
|
140
141
|
grid-column: 1;
|
|
141
142
|
grid-row: 2;
|
|
142
143
|
justify-self: center;
|
|
143
|
-
inline-size: var(--xh-timeline-connector-thickness, var(--xh-stroke-
|
|
144
|
+
inline-size: var(--xh-timeline-connector-thickness, var(--xh-stroke-thin));
|
|
144
145
|
min-block-size: var(--xh-timeline-connector-min-length, var(--xh-space-4));
|
|
145
146
|
margin-block-start: var(--xh-space-1);
|
|
146
147
|
}
|
|
@@ -223,7 +224,8 @@
|
|
|
223
224
|
font-size: var(--xh-timeline-label-font-size, var(--xh-_timeline-caption-font-size));
|
|
224
225
|
/* 等宽数字:日期里的 1 与 7 在比例字体里宽度不同,不定住会让整列坐标左右抖一格 */
|
|
225
226
|
font-variant-numeric: tabular-nums;
|
|
226
|
-
|
|
227
|
+
/* 坐标的行盒与标题首行同高,小一号的坐标字落在标题那一行的中线上 */
|
|
228
|
+
line-height: var(--xh-_timeline-line-h);
|
|
227
229
|
text-align: var(--xh-_timeline-label-align, end);
|
|
228
230
|
}
|
|
229
231
|
|
|
@@ -311,17 +313,17 @@
|
|
|
311
313
|
justify-self: stretch;
|
|
312
314
|
inline-size: auto;
|
|
313
315
|
min-inline-size: var(--xh-timeline-connector-min-length, var(--xh-space-4));
|
|
314
|
-
block-size: var(--xh-timeline-connector-thickness, var(--xh-stroke-
|
|
316
|
+
block-size: var(--xh-timeline-connector-thickness, var(--xh-stroke-thin));
|
|
315
317
|
min-block-size: 0;
|
|
316
318
|
margin-block-start: 0;
|
|
317
|
-
margin-inline
|
|
319
|
+
margin-inline: var(--xh-space-1_5) var(--xh-space-1);
|
|
318
320
|
}
|
|
319
321
|
|
|
320
322
|
.xh-scope-timeline[data-part='item'][data-orientation='horizontal'] .xh-scope-timeline[data-part='content'],
|
|
321
323
|
.xh-scope-timeline[data-part='item'][data-orientation='horizontal']:has(> .xh-scope-timeline[data-part='label']) > .xh-scope-timeline[data-part='content'] {
|
|
322
324
|
grid-column: 1 / -1;
|
|
323
325
|
grid-row: 2;
|
|
324
|
-
padding-block-start: var(--xh-timeline-content-pt, var(--xh-space-
|
|
326
|
+
padding-block-start: var(--xh-timeline-content-pt, var(--xh-space-4));
|
|
325
327
|
padding-block-end: 0;
|
|
326
328
|
padding-inline-end: var(--xh-timeline-item-gap, var(--xh-_timeline-item-gap));
|
|
327
329
|
}
|
|
@@ -353,7 +355,7 @@
|
|
|
353
355
|
grid-row: 1;
|
|
354
356
|
align-self: end;
|
|
355
357
|
padding-block-start: 0;
|
|
356
|
-
padding-block-end: var(--xh-timeline-content-pb, var(--xh-space-
|
|
358
|
+
padding-block-end: var(--xh-timeline-content-pb, var(--xh-space-4));
|
|
357
359
|
}
|
|
358
360
|
|
|
359
361
|
.xh-scope-timeline[data-part='item'][data-orientation='horizontal'][data-placement='alternate'] {
|
|
@@ -374,7 +376,7 @@
|
|
|
374
376
|
grid-row: 1;
|
|
375
377
|
align-self: end;
|
|
376
378
|
padding-block-start: 0;
|
|
377
|
-
padding-block-end: var(--xh-timeline-content-pb, var(--xh-space-
|
|
379
|
+
padding-block-end: var(--xh-timeline-content-pb, var(--xh-space-4));
|
|
378
380
|
}
|
|
379
381
|
}
|
|
380
382
|
|
|
@@ -389,7 +391,7 @@
|
|
|
389
391
|
color: var(--xh-timeline-title-fg, var(--xh-fg-default));
|
|
390
392
|
font-size: var(--xh-timeline-title-font-size, var(--xh-_timeline-title-font-size));
|
|
391
393
|
font-weight: var(--xh-timeline-title-font-weight, var(--xh-text-label-weight));
|
|
392
|
-
line-height: var(--xh-leading-
|
|
394
|
+
line-height: var(--xh-leading-normal);
|
|
393
395
|
}
|
|
394
396
|
|
|
395
397
|
.xh-scope-timeline[data-part='description'] {
|
|
@@ -411,6 +413,21 @@
|
|
|
411
413
|
* 只剩几段没有次序的文字。两处都改由描边承载:圆点成一个空心圈,
|
|
412
414
|
* 连线的两条边合起来就是那条线(线本身只有一个描边厚,两边各画一半正好填满)。
|
|
413
415
|
*/
|
|
416
|
+
/* 强制色:圆点与连线都是底色画的,系统会把底色换成 Canvas,整条轴就此消失。
|
|
417
|
+
两处退出强制换色、直接写系统色;圆点里的序号字取 Canvas 压在 CanvasText 上 */
|
|
418
|
+
@media (forced-colors: active) {
|
|
419
|
+
.xh-scope-timeline[data-part='indicator'] {
|
|
420
|
+
forced-color-adjust: none;
|
|
421
|
+
background: CanvasText;
|
|
422
|
+
color: Canvas;
|
|
423
|
+
}
|
|
424
|
+
|
|
425
|
+
.xh-scope-timeline[data-part='connector'] {
|
|
426
|
+
forced-color-adjust: none;
|
|
427
|
+
background: CanvasText;
|
|
428
|
+
}
|
|
429
|
+
}
|
|
430
|
+
|
|
414
431
|
@media print {
|
|
415
432
|
.xh-scope-timeline[data-part='indicator'] {
|
|
416
433
|
border: var(--xh-stroke-thick) solid currentColor;
|
package/dist/css/timer.css
CHANGED
|
@@ -17,7 +17,7 @@
|
|
|
17
17
|
/* 三个尺寸档只换这两个私有槽,各部件从 root 继承它们,换档不必给每个部件各写一条选择器;
|
|
18
18
|
起停钮的档位由连接层直接投给家族,这里不再中转 */
|
|
19
19
|
.xh-scope-timer[data-part='root'] {
|
|
20
|
-
--xh-_timer-digit-size: var(--xh-text-heading-
|
|
20
|
+
--xh-_timer-digit-size: var(--xh-text-heading-1-size);
|
|
21
21
|
--xh-_timer-gap: var(--xh-space-3);
|
|
22
22
|
|
|
23
23
|
display: inline-flex;
|
|
@@ -33,12 +33,12 @@
|
|
|
33
33
|
|
|
34
34
|
/* —— 尺寸 —— */
|
|
35
35
|
.xh-scope-timer[data-part='root'][data-size='sm'] {
|
|
36
|
-
--xh-_timer-digit-size: var(--xh-text-heading-
|
|
36
|
+
--xh-_timer-digit-size: var(--xh-text-heading-2-size);
|
|
37
37
|
--xh-_timer-gap: var(--xh-space-2);
|
|
38
38
|
}
|
|
39
39
|
|
|
40
40
|
.xh-scope-timer[data-part='root'][data-size='lg'] {
|
|
41
|
-
--xh-_timer-digit-size: var(--xh-text-
|
|
41
|
+
--xh-_timer-digit-size: var(--xh-text-display-size);
|
|
42
42
|
--xh-_timer-gap: var(--xh-space-4);
|
|
43
43
|
}
|
|
44
44
|
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
--xh-_toggle-group-item-bg: var(--xh-bg-subtle);
|
|
36
36
|
--xh-_toggle-group-item-bg-hover: var(--xh-bg-subtle-hover);
|
|
37
37
|
--xh-_toggle-group-item-bg-active: var(--xh-bg-subtle-active);
|
|
38
|
-
--xh-_toggle-group-item-fg: var(--xh-fg-
|
|
38
|
+
--xh-_toggle-group-item-fg: var(--xh-fg-muted);
|
|
39
39
|
--xh-_toggle-group-item-border: transparent;
|
|
40
40
|
--xh-_toggle-group-item-bg-on: var(--xh-_tone-subtle, var(--xh-bg-brand-subtle));
|
|
41
41
|
--xh-_toggle-group-item-bg-on-hover: var(
|
|
@@ -86,7 +86,7 @@
|
|
|
86
86
|
--xh-_toggle-group-item-bg: var(--xh-bg-subtle);
|
|
87
87
|
--xh-_toggle-group-item-bg-hover: var(--xh-bg-subtle-hover);
|
|
88
88
|
--xh-_toggle-group-item-bg-active: var(--xh-bg-subtle-active);
|
|
89
|
-
--xh-_toggle-group-item-fg: var(--xh-fg-
|
|
89
|
+
--xh-_toggle-group-item-fg: var(--xh-fg-muted);
|
|
90
90
|
--xh-_toggle-group-item-border: transparent;
|
|
91
91
|
--xh-_toggle-group-item-bg-on: var(--xh-_tone-subtle, var(--xh-bg-brand-subtle));
|
|
92
92
|
--xh-_toggle-group-item-bg-on-hover: var(--xh-_tone-subtle-hover, var(--xh-bg-brand-subtle-hover));
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
--xh-_toggle-group-item-bg: transparent;
|
|
102
102
|
--xh-_toggle-group-item-bg-hover: var(--xh-_tone-subtle, var(--xh-bg-subtle));
|
|
103
103
|
--xh-_toggle-group-item-bg-active: var(--xh-_tone-subtle-hover, var(--xh-bg-subtle-hover));
|
|
104
|
-
--xh-_toggle-group-item-fg: var(--xh-_tone-fg, var(--xh-fg-
|
|
104
|
+
--xh-_toggle-group-item-fg: var(--xh-_tone-fg, var(--xh-fg-muted));
|
|
105
105
|
--xh-_toggle-group-item-border: transparent;
|
|
106
106
|
--xh-_toggle-group-item-bg-on: var(--xh-_tone-subtle, var(--xh-bg-brand-subtle));
|
|
107
107
|
--xh-_toggle-group-item-bg-on-hover: var(--xh-_tone-subtle-hover, var(--xh-bg-brand-subtle-hover));
|
|
@@ -129,7 +129,7 @@
|
|
|
129
129
|
--xh-_toggle-group-item-bg: transparent;
|
|
130
130
|
--xh-_toggle-group-item-bg-hover: var(--xh-_tone-subtle, var(--xh-bg-subtle));
|
|
131
131
|
--xh-_toggle-group-item-bg-active: var(--xh-_tone-subtle-hover, var(--xh-bg-subtle-hover));
|
|
132
|
-
--xh-_toggle-group-item-fg: var(--xh-_tone-fg, var(--xh-fg-
|
|
132
|
+
--xh-_toggle-group-item-fg: var(--xh-_tone-fg, var(--xh-fg-muted));
|
|
133
133
|
--xh-_toggle-group-item-border: transparent;
|
|
134
134
|
--xh-_toggle-group-item-bg-on: var(--xh-_tone-subtle, var(--xh-bg-brand-subtle));
|
|
135
135
|
--xh-_toggle-group-item-bg-on-hover: var(--xh-_tone-subtle-hover, var(--xh-bg-brand-subtle-hover));
|
package/dist/css/tool-call.css
CHANGED
|
@@ -211,13 +211,15 @@
|
|
|
211
211
|
display: none;
|
|
212
212
|
}
|
|
213
213
|
|
|
214
|
-
/* 三档落定的阶段收成状态 chip
|
|
215
|
-
|
|
214
|
+
/* 三档落定的阶段收成状态 chip:与 Tag 的 sm 档同一副方签——control 圆角、块尺寸取 chip 档、竖向内衬为 0,
|
|
215
|
+
淡底 + 同族可读字取连接层投影的语气。在跑的两档不带底,让扫光自己说话 */
|
|
216
216
|
.xh-scope-tool-call[data-part='status'][data-tone] {
|
|
217
|
-
|
|
217
|
+
box-sizing: border-box;
|
|
218
|
+
min-block-size: var(--xh-tool-call-status-h, var(--xh-chip-h-sm));
|
|
219
|
+
padding-block: var(--xh-tool-call-status-py, 0);
|
|
218
220
|
padding-inline: var(--xh-tool-call-status-px, var(--xh-space-1_5));
|
|
219
221
|
border: var(--xh-stroke-thin) solid transparent;
|
|
220
|
-
border-radius: var(--xh-tool-call-status-radius, var(--xh-shape-
|
|
222
|
+
border-radius: var(--xh-tool-call-status-radius, var(--xh-shape-control));
|
|
221
223
|
font-weight: var(--xh-font-weight-medium);
|
|
222
224
|
line-height: var(--xh-control-indicator-md);
|
|
223
225
|
}
|
package/dist/css/toolbar.css
CHANGED
|
@@ -149,7 +149,7 @@
|
|
|
149
149
|
200 → 300);这里只把使用者槽映射到桥接槽(-gap / -h / -px / -radius / -bg / -bg-hover /
|
|
150
150
|
-bg-active / -bg-disabled / -fg / -font-size 保留为第一参数)。作者仍可用类名或内联样式完整覆盖。 */
|
|
151
151
|
.xh-scope-toolbar[data-part='item'] {
|
|
152
|
-
--xh-action-gap: var(--xh-toolbar-item-gap, var(--xh-
|
|
152
|
+
--xh-action-gap: var(--xh-toolbar-item-gap, var(--xh-_action-profile-gap));
|
|
153
153
|
--xh-action-visual-size: var(--xh-toolbar-item-h, var(--xh-_action-profile-visual-size));
|
|
154
154
|
--xh-action-padding-inline: var(--xh-toolbar-item-px, var(--xh-_action-profile-padding-inline));
|
|
155
155
|
--xh-action-radius: var(--xh-toolbar-item-radius, var(--xh-_action-profile-radius));
|
|
@@ -237,13 +237,14 @@
|
|
|
237
237
|
inline-size: var(--xh-toolbar-separator-thickness, var(--xh-stroke-thin));
|
|
238
238
|
block-size: var(--xh-_toolbar-separator-size);
|
|
239
239
|
margin-block: var(--xh-toolbar-separator-inset, var(--xh-space-0));
|
|
240
|
-
|
|
240
|
+
/* 散落的分隔线两侧各让出 12px,与工具条间距叠起来把前后两组分开 */
|
|
241
|
+
margin-inline: var(--xh-toolbar-separator-gap, var(--xh-space-3));
|
|
241
242
|
}
|
|
242
243
|
|
|
243
244
|
.xh-scope-toolbar[data-part='separator'][data-orientation='horizontal'] {
|
|
244
245
|
block-size: var(--xh-toolbar-separator-thickness, var(--xh-stroke-thin));
|
|
245
246
|
inline-size: var(--xh-_toolbar-separator-size);
|
|
246
|
-
margin-block: var(--xh-toolbar-separator-gap, var(--xh-space-
|
|
247
|
+
margin-block: var(--xh-toolbar-separator-gap, var(--xh-space-3));
|
|
247
248
|
margin-inline: var(--xh-toolbar-separator-inset, var(--xh-space-0));
|
|
248
249
|
}
|
|
249
250
|
|
|
@@ -255,11 +256,11 @@
|
|
|
255
256
|
}
|
|
256
257
|
|
|
257
258
|
.xh-scope-toolbar[data-part='group'] > .xh-scope-toolbar[data-part='separator'][data-orientation='vertical'] {
|
|
258
|
-
margin-inline
|
|
259
|
+
margin-inline: calc(-1 * var(--xh-toolbar-separator-thickness, var(--xh-stroke-thin))) 0;
|
|
259
260
|
}
|
|
260
261
|
|
|
261
262
|
.xh-scope-toolbar[data-part='group'] > .xh-scope-toolbar[data-part='separator'][data-orientation='horizontal'] {
|
|
262
|
-
margin-block
|
|
263
|
+
margin-block: calc(-1 * var(--xh-toolbar-separator-thickness, var(--xh-stroke-thin))) 0;
|
|
263
264
|
}
|
|
264
265
|
|
|
265
266
|
/* —— 收纳 —— */
|