@douyinfe/semi-foundation 2.28.2 → 2.29.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.
@@ -168,7 +168,7 @@ export interface DatePickerFoundationProps extends ElementProps, RenderProps, Ev
168
168
  dateFnsLocale?: any;
169
169
  localeCode?: string;
170
170
  rangeSeparator?: string;
171
- insetInput?: boolean;
171
+ insetInput?: DateInputFoundationProps['insetInput'];
172
172
  preventScroll?: boolean
173
173
  }
174
174
 
@@ -38,9 +38,19 @@ export interface DateInputElementProps {
38
38
  prefix?: any
39
39
  }
40
40
 
41
+ export interface InsetInputProps {
42
+ placeholder?: {
43
+ dateStart?: string;
44
+ dateEnd?: string;
45
+ timeStart?: string;
46
+ timeEnd?: string
47
+ }
48
+ // showClear?: boolean
49
+ }
50
+
41
51
  export interface DateInputFoundationProps extends DateInputElementProps, DateInputEventHandlerProps {
42
52
  [x: string]: any;
43
- value?: BaseValueType[];
53
+ value?: Date[];
44
54
  disabled?: boolean;
45
55
  type?: Type;
46
56
  showClear?: boolean;
@@ -51,7 +61,7 @@ export interface DateInputFoundationProps extends DateInputElementProps, DateInp
51
61
  prefixCls?: string;
52
62
  rangeSeparator?: string;
53
63
  panelType?: PanelType;
54
- insetInput?: boolean;
64
+ insetInput?: boolean | InsetInputProps;
55
65
  insetInputValue?: InsetInputValue;
56
66
  density?: typeof strings.DENSITY_SET[number];
57
67
  defaultPickerValue?: ValueType
@@ -81,7 +91,7 @@ export interface InsetInputChangeProps {
81
91
  insetInputValue: InsetInputValue
82
92
  }
83
93
 
84
- export interface DateInputAdapter extends DefaultAdapter {
94
+ export interface DateInputAdapter extends DefaultAdapter<DateInputFoundationProps, Record<string, any>> {
85
95
  updateIsFocusing: (isFocusing: boolean) => void;
86
96
  notifyClick: DateInputFoundationProps['onClick'];
87
97
  notifyChange: DateInputFoundationProps['onChange'];
@@ -20,7 +20,7 @@ import { includes, isSet, isEqual, isFunction } from 'lodash';
20
20
  import { zonedTimeToUtc } from '../utils/date-fns-extra';
21
21
  import { getDefaultFormatTokenByType } from './_utils/getDefaultFormatToken';
22
22
  import isNullOrUndefined from '../utils/isNullOrUndefined';
23
- import { BaseValueType, PresetPosition, ValueType } from './foundation';
23
+ import { BaseValueType, DateInputFoundationProps, PresetPosition, ValueType } from './foundation';
24
24
  import { MonthDayInfo } from './monthFoundation';
25
25
  import { ArrayElement } from '../utils/type';
26
26
 
@@ -90,7 +90,7 @@ export interface MonthsGridFoundationProps extends MonthsGridElementProps {
90
90
  isAnotherPanelHasOpened?: (currentRangeInput: 'rangeStart' | 'rangeEnd') => boolean;
91
91
  focusRecordsRef?: any;
92
92
  triggerRender?: (props: Record<string, any>) => any;
93
- insetInput: boolean;
93
+ insetInput: DateInputFoundationProps['insetInput'];
94
94
  presetPosition?: PresetPosition;
95
95
  renderQuickControls?: any;
96
96
  renderDateInput?: any
package/form/form.scss CHANGED
@@ -257,11 +257,11 @@ $rating: #{$prefix}-rating;
257
257
  margin-bottom: 0;
258
258
  padding-top: $spacing-form_field_group_vertical-paddingTop;
259
259
  padding-bottom: $spacing-form_field_group_vertical-paddingBottom;
260
+ overflow: hidden;
260
261
  }
261
262
  }
262
263
 
263
264
  .#{$form}-field-group {
264
-
265
265
  &[x-label-pos="top"] {
266
266
  }
267
267
 
@@ -136,7 +136,7 @@ export interface DatePickerFoundationProps extends ElementProps, RenderProps, Ev
136
136
  dateFnsLocale?: any;
137
137
  localeCode?: string;
138
138
  rangeSeparator?: string;
139
- insetInput?: boolean;
139
+ insetInput?: DateInputFoundationProps['insetInput'];
140
140
  preventScroll?: boolean;
141
141
  }
142
142
  export interface DatePickerFoundationState {
@@ -19,9 +19,17 @@ export interface DateInputElementProps {
19
19
  insetLabel?: any;
20
20
  prefix?: any;
21
21
  }
22
+ export interface InsetInputProps {
23
+ placeholder?: {
24
+ dateStart?: string;
25
+ dateEnd?: string;
26
+ timeStart?: string;
27
+ timeEnd?: string;
28
+ };
29
+ }
22
30
  export interface DateInputFoundationProps extends DateInputElementProps, DateInputEventHandlerProps {
23
31
  [x: string]: any;
24
- value?: BaseValueType[];
32
+ value?: Date[];
25
33
  disabled?: boolean;
26
34
  type?: Type;
27
35
  showClear?: boolean;
@@ -32,7 +40,7 @@ export interface DateInputFoundationProps extends DateInputElementProps, DateInp
32
40
  prefixCls?: string;
33
41
  rangeSeparator?: string;
34
42
  panelType?: PanelType;
35
- insetInput?: boolean;
43
+ insetInput?: boolean | InsetInputProps;
36
44
  insetInputValue?: InsetInputValue;
37
45
  density?: typeof strings.DENSITY_SET[number];
38
46
  defaultPickerValue?: ValueType;
@@ -58,7 +66,7 @@ export interface InsetInputChangeProps {
58
66
  format: string;
59
67
  insetInputValue: InsetInputValue;
60
68
  }
61
- export interface DateInputAdapter extends DefaultAdapter {
69
+ export interface DateInputAdapter extends DefaultAdapter<DateInputFoundationProps, Record<string, any>> {
62
70
  updateIsFocusing: (isFocusing: boolean) => void;
63
71
  notifyClick: DateInputFoundationProps['onClick'];
64
72
  notifyChange: DateInputFoundationProps['onChange'];
@@ -1,7 +1,7 @@
1
1
  import BaseFoundation, { DefaultAdapter } from '../base/foundation';
2
2
  import { strings } from './constants';
3
3
  import { WeekStartNumber } from './_utils/getMonthTable';
4
- import { PresetPosition, ValueType } from './foundation';
4
+ import { DateInputFoundationProps, PresetPosition, ValueType } from './foundation';
5
5
  import { MonthDayInfo } from './monthFoundation';
6
6
  import { ArrayElement } from '../utils/type';
7
7
  declare type Type = ArrayElement<typeof strings.TYPE_SET>;
@@ -53,7 +53,7 @@ export interface MonthsGridFoundationProps extends MonthsGridElementProps {
53
53
  isAnotherPanelHasOpened?: (currentRangeInput: 'rangeStart' | 'rangeEnd') => boolean;
54
54
  focusRecordsRef?: any;
55
55
  triggerRender?: (props: Record<string, any>) => any;
56
- insetInput: boolean;
56
+ insetInput: DateInputFoundationProps['insetInput'];
57
57
  presetPosition?: PresetPosition;
58
58
  renderQuickControls?: any;
59
59
  renderDateInput?: any;
@@ -173,6 +173,7 @@
173
173
  margin-bottom: 0;
174
174
  padding-top: 12px;
175
175
  padding-bottom: 12px;
176
+ overflow: hidden;
176
177
  }
177
178
  .semi-form-vertical .semi-form-field-group .semi-form-field {
178
179
  margin-top: 0;
@@ -257,11 +257,11 @@ $rating: #{$prefix}-rating;
257
257
  margin-bottom: 0;
258
258
  padding-top: $spacing-form_field_group_vertical-paddingTop;
259
259
  padding-bottom: $spacing-form_field_group_vertical-paddingBottom;
260
+ overflow: hidden;
260
261
  }
261
262
  }
262
263
 
263
264
  .#{$form}-field-group {
264
-
265
265
  &[x-label-pos="top"] {
266
266
  }
267
267
 
@@ -2,8 +2,8 @@
2
2
  /* sizing */
3
3
  /* spacing */
4
4
  .semi-slider {
5
- padding: 0 13px;
6
- margin: 0;
5
+ padding: 0px 13px;
6
+ margin: 0px;
7
7
  }
8
8
  .semi-slider-wrapper {
9
9
  box-sizing: border-box;
@@ -15,8 +15,8 @@
15
15
  }
16
16
  .semi-slider-rail {
17
17
  box-sizing: border-box;
18
- margin: 0;
19
- padding: 0;
18
+ margin: 0px;
19
+ padding: 0px;
20
20
  color: rgba(0, 0, 0, 0.65);
21
21
  font-size: 14px;
22
22
  font-variant: tabular-nums;
@@ -45,7 +45,7 @@
45
45
  border-radius: 50%;
46
46
  cursor: pointer;
47
47
  transition: background-color var(--semi-transition_duration-none) var(--semi-transition_function-easeIn) var(--semi-transition_delay-none);
48
- transform: scale(var(--semi-transform_scale-small));
48
+ transform: var(--semi-transform_scale-small) translateX(-50%) translateY(0px);
49
49
  }
50
50
  .semi-slider-handle:focus-visible {
51
51
  outline: 2px solid var(--semi-color-primary-light-active);
@@ -81,6 +81,7 @@
81
81
  background-color: var(--semi-color-white);
82
82
  border-radius: 50%;
83
83
  cursor: pointer;
84
+ transform: translateX(0px);
84
85
  }
85
86
  .semi-slider-dot-active {
86
87
  background-color: var(--semi-color-white);
@@ -88,7 +89,7 @@
88
89
  .semi-slider-marks {
89
90
  position: absolute;
90
91
  top: 23px;
91
- left: 0;
92
+ left: 0px;
92
93
  width: 100%;
93
94
  font-size: 14px;
94
95
  }
@@ -103,7 +104,7 @@
103
104
  .semi-slider-marks-reverse {
104
105
  position: absolute;
105
106
  top: 23px;
106
- left: 0;
107
+ left: 0px;
107
108
  width: 100%;
108
109
  font-size: 14px;
109
110
  }
@@ -127,10 +128,10 @@
127
128
  display: inline-block;
128
129
  }
129
130
  .semi-slider-boundary-min {
130
- left: 0;
131
+ left: 0px;
131
132
  }
132
133
  .semi-slider-boundary-max {
133
- right: 0;
134
+ right: 0px;
134
135
  }
135
136
  .semi-slider-boundary-show {
136
137
  visibility: visible;
@@ -156,11 +157,15 @@
156
157
  .semi-slider-vertical-wrapper .semi-slider-rail {
157
158
  width: 4px;
158
159
  height: 100%;
159
- top: 0;
160
+ top: 0px;
160
161
  }
161
162
  .semi-slider-vertical-wrapper .semi-slider-handle {
162
- margin-top: 0;
163
+ margin-top: 0px;
163
164
  margin-left: -10px;
165
+ transform: var(--semi-transform_scale-small) translateY(-50%) translateX(0px);
166
+ }
167
+ .semi-slider-vertical-wrapper .semi-slider-dot {
168
+ transform: translateY(0px);
164
169
  }
165
170
 
166
171
  .semi-slider-disabled {
@@ -57,7 +57,7 @@ $module: #{$prefix}-slider;
57
57
  border-radius: 50%;
58
58
  cursor: pointer;
59
59
  transition: background-color $transition_duration_slider_handle-bg $transition_function-slider-handle-bg $transition_delay-slider_handle-bg;
60
- transform: scale($transform_scale-slider_handle);
60
+ transform: $transform_scale-slider_handle translateX(-50%) translateY($spacing-slider_handle-translateY);
61
61
  &:focus-visible {
62
62
  outline: $width-slider_handle-focus solid $color-slider_handle-focus;
63
63
  }
@@ -101,6 +101,7 @@ $module: #{$prefix}-slider;
101
101
  //border: 1px solid $color-control-bg-default;
102
102
  border-radius: 50%;
103
103
  cursor: pointer;
104
+ transform: translateX($spacing-slider_dot-translateX);
104
105
  }
105
106
 
106
107
  &-dot-active {
@@ -196,6 +197,10 @@ $module: #{$prefix}-slider;
196
197
  .#{$module}-handle {
197
198
  margin-top: $spacing-slider_vertical_handle-marginTop;
198
199
  margin-left: $spacing-slider_vertical_handle-marginLeft;
200
+ transform: $transform_scale-slider_handle translateY(-50%) translateX($spacing-slider_vertical_handle-translateX);
201
+ }
202
+ .#{$module}-dot{
203
+ transform: translateY($spacing-slider_vertical_dot-translateY);
199
204
  }
200
205
  }
201
206
 
@@ -18,26 +18,30 @@ $color-slider_handle-focus: var(--semi-color-primary-light-active); // 圆形按
18
18
 
19
19
  // Spacing
20
20
  $spacing-slider-paddingX: 13px; // 滑动条整体水平内边距
21
- $spacing-slider-paddingY: 0; // 滑动条整体垂直内边距
22
- $spacing-slider-margin: 0; // 滑动条整体外边距
23
- $spacing-slider_rail-margin: 0; // 滑动条轨道外边距
24
- $spacing-slider_rail-padding: 0; // 滑动条轨道内边距
21
+ $spacing-slider-paddingY: 0px; // 滑动条整体垂直内边距
22
+ $spacing-slider-margin: 0px; // 滑动条整体外边距
23
+ $spacing-slider_rail-margin: 0px; // 滑动条轨道外边距
24
+ $spacing-slider_rail-padding: 0px; // 滑动条轨道内边距
25
25
  $spacing-slider_rail-top: 14px; // 滑动条未填充轨道顶部距离
26
26
  $spacing-slider_handle-marginTop: 4px; // 滑动条圆形按钮顶部外边距
27
27
  $spacing-slider_track-top: 14px; // 滑动条已填充轨道顶部距离
28
28
  $spacing-slider_tooltip-top: -40px; // 滑动条工具提示顶部距离
29
29
  $spacing-slider_dot-top: 14px; // 滑动条圆形刻度点顶部距离
30
30
  $spacing-slider_marks-top: 23px; // 滑动条刻度标签顶部距离
31
- $spacing-slider_marks-left: 0; // 滑动条刻度标签左侧距离
31
+ $spacing-slider_marks-left: 0px; // 滑动条刻度标签左侧距离
32
32
  $spacing-slider_boundary-top: 30px;
33
- $spacing-slider_boundary_min-left: 0;
34
- $spacing-slider_boundary_max-right: 0;
33
+ $spacing-slider_boundary_min-left: 0px;
34
+ $spacing-slider_boundary_max-right: 0px;
35
35
  $spacing-slider_vertical_marks-marginTop: -30px; // 垂直滑动条刻度标签顶部外边距
36
36
  $spacing-slider_vertical_marks-marginLeft: 29px; // 垂直滑动条刻度标签左侧外边距
37
37
  $spacing-slider_vertical_marks-reverse-marginLeft: -26px; // 垂直滑动条刻度标签左侧外边距(标签在左侧时)
38
- $spacing-slider_vertical_rail-top: 0; // 垂直滑动条轨道顶部距离
39
- $spacing-slider_vertical_handle-marginTop: 0; // 垂直滑动条原型按钮顶部外边距
38
+ $spacing-slider_vertical_rail-top: 0px; // 垂直滑动条轨道顶部距离
39
+ $spacing-slider_vertical_handle-marginTop: 0px; // 垂直滑动条原型按钮顶部外边距
40
40
  $spacing-slider_vertical_handle-marginLeft: -10px; // 垂直滑动条原型按钮左侧外边距
41
+ $spacing-slider_handle-translateY: 0px; // 水平滑动条原型按钮垂直偏移量
42
+ $spacing-slider_vertical_handle-translateX: 0px; // 垂直滑动条原型按钮水平偏移量
43
+ $spacing-slider_dot-translateX: 0px; // 水平滑动条圆形刻度点水平偏移量
44
+ $spacing-slider_vertical_dot-translateY: 0px; // 垂直滑动条圆形刻度点垂直偏移量
41
45
 
42
46
  // Radius
43
47
  $radius-slider_rail: var(--semi-border-radius-small); // 滚动条未填充轨道圆角
@@ -136,7 +136,7 @@ export interface DatePickerFoundationProps extends ElementProps, RenderProps, Ev
136
136
  dateFnsLocale?: any;
137
137
  localeCode?: string;
138
138
  rangeSeparator?: string;
139
- insetInput?: boolean;
139
+ insetInput?: DateInputFoundationProps['insetInput'];
140
140
  preventScroll?: boolean;
141
141
  }
142
142
  export interface DatePickerFoundationState {
@@ -19,9 +19,17 @@ export interface DateInputElementProps {
19
19
  insetLabel?: any;
20
20
  prefix?: any;
21
21
  }
22
+ export interface InsetInputProps {
23
+ placeholder?: {
24
+ dateStart?: string;
25
+ dateEnd?: string;
26
+ timeStart?: string;
27
+ timeEnd?: string;
28
+ };
29
+ }
22
30
  export interface DateInputFoundationProps extends DateInputElementProps, DateInputEventHandlerProps {
23
31
  [x: string]: any;
24
- value?: BaseValueType[];
32
+ value?: Date[];
25
33
  disabled?: boolean;
26
34
  type?: Type;
27
35
  showClear?: boolean;
@@ -32,7 +40,7 @@ export interface DateInputFoundationProps extends DateInputElementProps, DateInp
32
40
  prefixCls?: string;
33
41
  rangeSeparator?: string;
34
42
  panelType?: PanelType;
35
- insetInput?: boolean;
43
+ insetInput?: boolean | InsetInputProps;
36
44
  insetInputValue?: InsetInputValue;
37
45
  density?: typeof strings.DENSITY_SET[number];
38
46
  defaultPickerValue?: ValueType;
@@ -58,7 +66,7 @@ export interface InsetInputChangeProps {
58
66
  format: string;
59
67
  insetInputValue: InsetInputValue;
60
68
  }
61
- export interface DateInputAdapter extends DefaultAdapter {
69
+ export interface DateInputAdapter extends DefaultAdapter<DateInputFoundationProps, Record<string, any>> {
62
70
  updateIsFocusing: (isFocusing: boolean) => void;
63
71
  notifyClick: DateInputFoundationProps['onClick'];
64
72
  notifyChange: DateInputFoundationProps['onChange'];
@@ -1,7 +1,7 @@
1
1
  import BaseFoundation, { DefaultAdapter } from '../base/foundation';
2
2
  import { strings } from './constants';
3
3
  import { WeekStartNumber } from './_utils/getMonthTable';
4
- import { PresetPosition, ValueType } from './foundation';
4
+ import { DateInputFoundationProps, PresetPosition, ValueType } from './foundation';
5
5
  import { MonthDayInfo } from './monthFoundation';
6
6
  import { ArrayElement } from '../utils/type';
7
7
  declare type Type = ArrayElement<typeof strings.TYPE_SET>;
@@ -53,7 +53,7 @@ export interface MonthsGridFoundationProps extends MonthsGridElementProps {
53
53
  isAnotherPanelHasOpened?: (currentRangeInput: 'rangeStart' | 'rangeEnd') => boolean;
54
54
  focusRecordsRef?: any;
55
55
  triggerRender?: (props: Record<string, any>) => any;
56
- insetInput: boolean;
56
+ insetInput: DateInputFoundationProps['insetInput'];
57
57
  presetPosition?: PresetPosition;
58
58
  renderQuickControls?: any;
59
59
  renderDateInput?: any;
@@ -173,6 +173,7 @@
173
173
  margin-bottom: 0;
174
174
  padding-top: 12px;
175
175
  padding-bottom: 12px;
176
+ overflow: hidden;
176
177
  }
177
178
  .semi-form-vertical .semi-form-field-group .semi-form-field {
178
179
  margin-top: 0;
@@ -257,11 +257,11 @@ $rating: #{$prefix}-rating;
257
257
  margin-bottom: 0;
258
258
  padding-top: $spacing-form_field_group_vertical-paddingTop;
259
259
  padding-bottom: $spacing-form_field_group_vertical-paddingBottom;
260
+ overflow: hidden;
260
261
  }
261
262
  }
262
263
 
263
264
  .#{$form}-field-group {
264
-
265
265
  &[x-label-pos="top"] {
266
266
  }
267
267
 
@@ -2,8 +2,8 @@
2
2
  /* sizing */
3
3
  /* spacing */
4
4
  .semi-slider {
5
- padding: 0 13px;
6
- margin: 0;
5
+ padding: 0px 13px;
6
+ margin: 0px;
7
7
  }
8
8
  .semi-slider-wrapper {
9
9
  box-sizing: border-box;
@@ -15,8 +15,8 @@
15
15
  }
16
16
  .semi-slider-rail {
17
17
  box-sizing: border-box;
18
- margin: 0;
19
- padding: 0;
18
+ margin: 0px;
19
+ padding: 0px;
20
20
  color: rgba(0, 0, 0, 0.65);
21
21
  font-size: 14px;
22
22
  font-variant: tabular-nums;
@@ -45,7 +45,7 @@
45
45
  border-radius: 50%;
46
46
  cursor: pointer;
47
47
  transition: background-color var(--semi-transition_duration-none) var(--semi-transition_function-easeIn) var(--semi-transition_delay-none);
48
- transform: scale(var(--semi-transform_scale-small));
48
+ transform: var(--semi-transform_scale-small) translateX(-50%) translateY(0px);
49
49
  }
50
50
  .semi-slider-handle:focus-visible {
51
51
  outline: 2px solid var(--semi-color-primary-light-active);
@@ -81,6 +81,7 @@
81
81
  background-color: var(--semi-color-white);
82
82
  border-radius: 50%;
83
83
  cursor: pointer;
84
+ transform: translateX(0px);
84
85
  }
85
86
  .semi-slider-dot-active {
86
87
  background-color: var(--semi-color-white);
@@ -88,7 +89,7 @@
88
89
  .semi-slider-marks {
89
90
  position: absolute;
90
91
  top: 23px;
91
- left: 0;
92
+ left: 0px;
92
93
  width: 100%;
93
94
  font-size: 14px;
94
95
  }
@@ -103,7 +104,7 @@
103
104
  .semi-slider-marks-reverse {
104
105
  position: absolute;
105
106
  top: 23px;
106
- left: 0;
107
+ left: 0px;
107
108
  width: 100%;
108
109
  font-size: 14px;
109
110
  }
@@ -127,10 +128,10 @@
127
128
  display: inline-block;
128
129
  }
129
130
  .semi-slider-boundary-min {
130
- left: 0;
131
+ left: 0px;
131
132
  }
132
133
  .semi-slider-boundary-max {
133
- right: 0;
134
+ right: 0px;
134
135
  }
135
136
  .semi-slider-boundary-show {
136
137
  visibility: visible;
@@ -156,11 +157,15 @@
156
157
  .semi-slider-vertical-wrapper .semi-slider-rail {
157
158
  width: 4px;
158
159
  height: 100%;
159
- top: 0;
160
+ top: 0px;
160
161
  }
161
162
  .semi-slider-vertical-wrapper .semi-slider-handle {
162
- margin-top: 0;
163
+ margin-top: 0px;
163
164
  margin-left: -10px;
165
+ transform: var(--semi-transform_scale-small) translateY(-50%) translateX(0px);
166
+ }
167
+ .semi-slider-vertical-wrapper .semi-slider-dot {
168
+ transform: translateY(0px);
164
169
  }
165
170
 
166
171
  .semi-slider-disabled {
@@ -57,7 +57,7 @@ $module: #{$prefix}-slider;
57
57
  border-radius: 50%;
58
58
  cursor: pointer;
59
59
  transition: background-color $transition_duration_slider_handle-bg $transition_function-slider-handle-bg $transition_delay-slider_handle-bg;
60
- transform: scale($transform_scale-slider_handle);
60
+ transform: $transform_scale-slider_handle translateX(-50%) translateY($spacing-slider_handle-translateY);
61
61
  &:focus-visible {
62
62
  outline: $width-slider_handle-focus solid $color-slider_handle-focus;
63
63
  }
@@ -101,6 +101,7 @@ $module: #{$prefix}-slider;
101
101
  //border: 1px solid $color-control-bg-default;
102
102
  border-radius: 50%;
103
103
  cursor: pointer;
104
+ transform: translateX($spacing-slider_dot-translateX);
104
105
  }
105
106
 
106
107
  &-dot-active {
@@ -196,6 +197,10 @@ $module: #{$prefix}-slider;
196
197
  .#{$module}-handle {
197
198
  margin-top: $spacing-slider_vertical_handle-marginTop;
198
199
  margin-left: $spacing-slider_vertical_handle-marginLeft;
200
+ transform: $transform_scale-slider_handle translateY(-50%) translateX($spacing-slider_vertical_handle-translateX);
201
+ }
202
+ .#{$module}-dot{
203
+ transform: translateY($spacing-slider_vertical_dot-translateY);
199
204
  }
200
205
  }
201
206
 
@@ -18,26 +18,30 @@ $color-slider_handle-focus: var(--semi-color-primary-light-active); // 圆形按
18
18
 
19
19
  // Spacing
20
20
  $spacing-slider-paddingX: 13px; // 滑动条整体水平内边距
21
- $spacing-slider-paddingY: 0; // 滑动条整体垂直内边距
22
- $spacing-slider-margin: 0; // 滑动条整体外边距
23
- $spacing-slider_rail-margin: 0; // 滑动条轨道外边距
24
- $spacing-slider_rail-padding: 0; // 滑动条轨道内边距
21
+ $spacing-slider-paddingY: 0px; // 滑动条整体垂直内边距
22
+ $spacing-slider-margin: 0px; // 滑动条整体外边距
23
+ $spacing-slider_rail-margin: 0px; // 滑动条轨道外边距
24
+ $spacing-slider_rail-padding: 0px; // 滑动条轨道内边距
25
25
  $spacing-slider_rail-top: 14px; // 滑动条未填充轨道顶部距离
26
26
  $spacing-slider_handle-marginTop: 4px; // 滑动条圆形按钮顶部外边距
27
27
  $spacing-slider_track-top: 14px; // 滑动条已填充轨道顶部距离
28
28
  $spacing-slider_tooltip-top: -40px; // 滑动条工具提示顶部距离
29
29
  $spacing-slider_dot-top: 14px; // 滑动条圆形刻度点顶部距离
30
30
  $spacing-slider_marks-top: 23px; // 滑动条刻度标签顶部距离
31
- $spacing-slider_marks-left: 0; // 滑动条刻度标签左侧距离
31
+ $spacing-slider_marks-left: 0px; // 滑动条刻度标签左侧距离
32
32
  $spacing-slider_boundary-top: 30px;
33
- $spacing-slider_boundary_min-left: 0;
34
- $spacing-slider_boundary_max-right: 0;
33
+ $spacing-slider_boundary_min-left: 0px;
34
+ $spacing-slider_boundary_max-right: 0px;
35
35
  $spacing-slider_vertical_marks-marginTop: -30px; // 垂直滑动条刻度标签顶部外边距
36
36
  $spacing-slider_vertical_marks-marginLeft: 29px; // 垂直滑动条刻度标签左侧外边距
37
37
  $spacing-slider_vertical_marks-reverse-marginLeft: -26px; // 垂直滑动条刻度标签左侧外边距(标签在左侧时)
38
- $spacing-slider_vertical_rail-top: 0; // 垂直滑动条轨道顶部距离
39
- $spacing-slider_vertical_handle-marginTop: 0; // 垂直滑动条原型按钮顶部外边距
38
+ $spacing-slider_vertical_rail-top: 0px; // 垂直滑动条轨道顶部距离
39
+ $spacing-slider_vertical_handle-marginTop: 0px; // 垂直滑动条原型按钮顶部外边距
40
40
  $spacing-slider_vertical_handle-marginLeft: -10px; // 垂直滑动条原型按钮左侧外边距
41
+ $spacing-slider_handle-translateY: 0px; // 水平滑动条原型按钮垂直偏移量
42
+ $spacing-slider_vertical_handle-translateX: 0px; // 垂直滑动条原型按钮水平偏移量
43
+ $spacing-slider_dot-translateX: 0px; // 水平滑动条圆形刻度点水平偏移量
44
+ $spacing-slider_vertical_dot-translateY: 0px; // 垂直滑动条圆形刻度点垂直偏移量
41
45
 
42
46
  // Radius
43
47
  $radius-slider_rail: var(--semi-border-radius-small); // 滚动条未填充轨道圆角
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@douyinfe/semi-foundation",
3
- "version": "2.28.2",
3
+ "version": "2.29.0",
4
4
  "description": "",
5
5
  "scripts": {
6
6
  "build:lib": "node ./scripts/compileLib.js",
@@ -23,7 +23,7 @@
23
23
  "*.scss",
24
24
  "*.css"
25
25
  ],
26
- "gitHead": "d9651593e39ad3333e0f138a678460e959d01bbd",
26
+ "gitHead": "cf2c6529fb778787c2d3f6cb826e64af358a5215",
27
27
  "devDependencies": {
28
28
  "@babel/plugin-transform-runtime": "^7.15.8",
29
29
  "@babel/preset-env": "^7.15.8",
@@ -57,7 +57,7 @@ $module: #{$prefix}-slider;
57
57
  border-radius: 50%;
58
58
  cursor: pointer;
59
59
  transition: background-color $transition_duration_slider_handle-bg $transition_function-slider-handle-bg $transition_delay-slider_handle-bg;
60
- transform: scale($transform_scale-slider_handle);
60
+ transform: $transform_scale-slider_handle translateX(-50%) translateY($spacing-slider_handle-translateY);
61
61
  &:focus-visible {
62
62
  outline: $width-slider_handle-focus solid $color-slider_handle-focus;
63
63
  }
@@ -101,6 +101,7 @@ $module: #{$prefix}-slider;
101
101
  //border: 1px solid $color-control-bg-default;
102
102
  border-radius: 50%;
103
103
  cursor: pointer;
104
+ transform: translateX($spacing-slider_dot-translateX);
104
105
  }
105
106
 
106
107
  &-dot-active {
@@ -196,6 +197,10 @@ $module: #{$prefix}-slider;
196
197
  .#{$module}-handle {
197
198
  margin-top: $spacing-slider_vertical_handle-marginTop;
198
199
  margin-left: $spacing-slider_vertical_handle-marginLeft;
200
+ transform: $transform_scale-slider_handle translateY(-50%) translateX($spacing-slider_vertical_handle-translateX);
201
+ }
202
+ .#{$module}-dot{
203
+ transform: translateY($spacing-slider_vertical_dot-translateY);
199
204
  }
200
205
  }
201
206
 
@@ -18,26 +18,30 @@ $color-slider_handle-focus: var(--semi-color-primary-light-active); // 圆形按
18
18
 
19
19
  // Spacing
20
20
  $spacing-slider-paddingX: 13px; // 滑动条整体水平内边距
21
- $spacing-slider-paddingY: 0; // 滑动条整体垂直内边距
22
- $spacing-slider-margin: 0; // 滑动条整体外边距
23
- $spacing-slider_rail-margin: 0; // 滑动条轨道外边距
24
- $spacing-slider_rail-padding: 0; // 滑动条轨道内边距
21
+ $spacing-slider-paddingY: 0px; // 滑动条整体垂直内边距
22
+ $spacing-slider-margin: 0px; // 滑动条整体外边距
23
+ $spacing-slider_rail-margin: 0px; // 滑动条轨道外边距
24
+ $spacing-slider_rail-padding: 0px; // 滑动条轨道内边距
25
25
  $spacing-slider_rail-top: 14px; // 滑动条未填充轨道顶部距离
26
26
  $spacing-slider_handle-marginTop: 4px; // 滑动条圆形按钮顶部外边距
27
27
  $spacing-slider_track-top: 14px; // 滑动条已填充轨道顶部距离
28
28
  $spacing-slider_tooltip-top: -40px; // 滑动条工具提示顶部距离
29
29
  $spacing-slider_dot-top: 14px; // 滑动条圆形刻度点顶部距离
30
30
  $spacing-slider_marks-top: 23px; // 滑动条刻度标签顶部距离
31
- $spacing-slider_marks-left: 0; // 滑动条刻度标签左侧距离
31
+ $spacing-slider_marks-left: 0px; // 滑动条刻度标签左侧距离
32
32
  $spacing-slider_boundary-top: 30px;
33
- $spacing-slider_boundary_min-left: 0;
34
- $spacing-slider_boundary_max-right: 0;
33
+ $spacing-slider_boundary_min-left: 0px;
34
+ $spacing-slider_boundary_max-right: 0px;
35
35
  $spacing-slider_vertical_marks-marginTop: -30px; // 垂直滑动条刻度标签顶部外边距
36
36
  $spacing-slider_vertical_marks-marginLeft: 29px; // 垂直滑动条刻度标签左侧外边距
37
37
  $spacing-slider_vertical_marks-reverse-marginLeft: -26px; // 垂直滑动条刻度标签左侧外边距(标签在左侧时)
38
- $spacing-slider_vertical_rail-top: 0; // 垂直滑动条轨道顶部距离
39
- $spacing-slider_vertical_handle-marginTop: 0; // 垂直滑动条原型按钮顶部外边距
38
+ $spacing-slider_vertical_rail-top: 0px; // 垂直滑动条轨道顶部距离
39
+ $spacing-slider_vertical_handle-marginTop: 0px; // 垂直滑动条原型按钮顶部外边距
40
40
  $spacing-slider_vertical_handle-marginLeft: -10px; // 垂直滑动条原型按钮左侧外边距
41
+ $spacing-slider_handle-translateY: 0px; // 水平滑动条原型按钮垂直偏移量
42
+ $spacing-slider_vertical_handle-translateX: 0px; // 垂直滑动条原型按钮水平偏移量
43
+ $spacing-slider_dot-translateX: 0px; // 水平滑动条圆形刻度点水平偏移量
44
+ $spacing-slider_vertical_dot-translateY: 0px; // 垂直滑动条圆形刻度点垂直偏移量
41
45
 
42
46
  // Radius
43
47
  $radius-slider_rail: var(--semi-border-radius-small); // 滚动条未填充轨道圆角