@douyinfe/semi-foundation 2.9.0-beta.0 → 2.9.1
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/divider/divider.scss +1 -1
- package/form/form.scss +0 -1
- package/form/interface.ts +2 -2
- package/lib/cjs/divider/divider.scss +1 -1
- package/lib/cjs/form/form.css +0 -1
- package/lib/cjs/form/form.scss +0 -1
- package/lib/cjs/form/interface.d.ts +2 -2
- package/lib/cjs/select/select.css +1 -0
- package/lib/cjs/select/select.scss +2 -1
- package/lib/cjs/tagInput/foundation.js +6 -2
- package/lib/cjs/timePicker/foundation.js +11 -0
- package/lib/cjs/tooltip/tooltip.scss +1 -1
- package/lib/cjs/transfer/transfer.css +1 -1
- package/lib/cjs/transfer/transfer.scss +1 -1
- package/lib/cjs/upload/foundation.d.ts +1 -1
- package/lib/es/divider/divider.scss +1 -1
- package/lib/es/form/form.css +0 -1
- package/lib/es/form/form.scss +0 -1
- package/lib/es/form/interface.d.ts +2 -2
- package/lib/es/select/select.css +1 -0
- package/lib/es/select/select.scss +2 -1
- package/lib/es/tagInput/foundation.js +6 -2
- package/lib/es/timePicker/foundation.js +14 -1
- package/lib/es/tooltip/tooltip.scss +1 -1
- package/lib/es/transfer/transfer.css +1 -1
- package/lib/es/transfer/transfer.scss +1 -1
- package/lib/es/upload/foundation.d.ts +1 -1
- package/package.json +3 -3
- package/select/select.scss +2 -1
- package/tagInput/foundation.ts +5 -2
- package/timePicker/foundation.ts +11 -2
- package/tooltip/tooltip.scss +1 -1
- package/transfer/transfer.scss +1 -1
- package/upload/foundation.ts +1 -1
package/divider/divider.scss
CHANGED
package/form/form.scss
CHANGED
package/form/interface.ts
CHANGED
|
@@ -111,8 +111,8 @@ export interface ArrayFieldStaff {
|
|
|
111
111
|
export interface FormUpdaterContextType {
|
|
112
112
|
register: (field: string, fieldState: FieldState, fieldStuff: FieldStaff) => void;
|
|
113
113
|
unRegister: (field: string) => void;
|
|
114
|
-
updateStateValue: (field: string, value: any, opts
|
|
115
|
-
updateStateError: (field: string, error: any, opts
|
|
114
|
+
updateStateValue: (field: string, value: any, opts?: CallOpts) => void;
|
|
115
|
+
updateStateError: (field: string, error: any, opts?: CallOpts) => void;
|
|
116
116
|
updateStateTouched: (field: string, isTouched: boolean, opts?: CallOpts) => void;
|
|
117
117
|
getValue: (field?: string | undefined, opts?: CallOpts) => any;
|
|
118
118
|
getError: (field?: string) => any;
|
package/lib/cjs/form/form.css
CHANGED
|
@@ -47,7 +47,6 @@
|
|
|
47
47
|
line-height: 20px;
|
|
48
48
|
font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
49
49
|
flex-shrink: 0;
|
|
50
|
-
user-select: none;
|
|
51
50
|
}
|
|
52
51
|
.semi-form-field-label-disabled {
|
|
53
52
|
color: var(--semi-color-disabled-text);
|
package/lib/cjs/form/form.scss
CHANGED
|
@@ -104,8 +104,8 @@ export interface ArrayFieldStaff {
|
|
|
104
104
|
export interface FormUpdaterContextType {
|
|
105
105
|
register: (field: string, fieldState: FieldState, fieldStuff: FieldStaff) => void;
|
|
106
106
|
unRegister: (field: string) => void;
|
|
107
|
-
updateStateValue: (field: string, value: any, opts
|
|
108
|
-
updateStateError: (field: string, error: any, opts
|
|
107
|
+
updateStateValue: (field: string, value: any, opts?: CallOpts) => void;
|
|
108
|
+
updateStateError: (field: string, error: any, opts?: CallOpts) => void;
|
|
109
109
|
updateStateTouched: (field: string, isTouched: boolean, opts?: CallOpts) => void;
|
|
110
110
|
getValue: (field?: string | undefined, opts?: CallOpts) => any;
|
|
111
111
|
getError: (field?: string) => any;
|
|
@@ -115,6 +115,7 @@
|
|
|
115
115
|
}
|
|
116
116
|
.semi-select-open:hover, .semi-select-focus:hover {
|
|
117
117
|
background-color: var(--semi-color-fill-0);
|
|
118
|
+
border: 1px solid var(--semi-color-focus-border);
|
|
118
119
|
}
|
|
119
120
|
.semi-select-warning {
|
|
120
121
|
background-color: var(--semi-color-warning-light-default);
|
|
@@ -54,9 +54,10 @@ $multiple: #{$module}-multiple;
|
|
|
54
54
|
|
|
55
55
|
&:hover {
|
|
56
56
|
background-color: $color-select-bg-default;
|
|
57
|
+
border: $border-thickness-control-focus solid $color-select_default-border-focus;
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
|
-
|
|
60
|
+
|
|
60
61
|
&-warning {
|
|
61
62
|
background-color: $color-select_warning-bg-default;
|
|
62
63
|
border-color: $color-select_warning-border-default;
|
|
@@ -109,8 +109,12 @@ class TagInputFoundation extends _foundation.default {
|
|
|
109
109
|
|
|
110
110
|
const code = e.keyCode;
|
|
111
111
|
|
|
112
|
-
if (code === _keyCode.default.ENTER
|
|
113
|
-
|
|
112
|
+
if (code === _keyCode.default.ENTER) {
|
|
113
|
+
e.preventDefault(); // prevent trigger submit when using in form
|
|
114
|
+
|
|
115
|
+
if (inputValue !== '') {
|
|
116
|
+
this._handleAddTags(e);
|
|
117
|
+
}
|
|
114
118
|
}
|
|
115
119
|
|
|
116
120
|
const {
|
|
@@ -126,6 +126,10 @@ class TimePickerFoundation extends _foundation.default {
|
|
|
126
126
|
parsedValues.push(this.isValidTimeZone() ? (0, _dateFnsExtra.utcToZonedTime)(pv, timeZone) : pv);
|
|
127
127
|
}
|
|
128
128
|
});
|
|
129
|
+
const isAM = [true, false];
|
|
130
|
+
(0, _map.default)(parsedValues).call(parsedValues, (item, idx) => {
|
|
131
|
+
isAM[idx] = (0, _dateFns.getHours)(item) < 12;
|
|
132
|
+
});
|
|
129
133
|
|
|
130
134
|
if (parsedValues.length === value.length) {
|
|
131
135
|
value = parsedValues;
|
|
@@ -144,6 +148,7 @@ class TimePickerFoundation extends _foundation.default {
|
|
|
144
148
|
}
|
|
145
149
|
|
|
146
150
|
this.setState({
|
|
151
|
+
isAM,
|
|
147
152
|
value,
|
|
148
153
|
inputValue,
|
|
149
154
|
invalid
|
|
@@ -181,6 +186,12 @@ class TimePickerFoundation extends _foundation.default {
|
|
|
181
186
|
isAM[index] = panelIsAM;
|
|
182
187
|
const inputValue = this.formatValue(value);
|
|
183
188
|
|
|
189
|
+
if (this.getState('isAM')[index] !== result.isAM) {
|
|
190
|
+
this.setState({
|
|
191
|
+
isAM
|
|
192
|
+
});
|
|
193
|
+
}
|
|
194
|
+
|
|
184
195
|
if (!this._isControlledComponent('value')) {
|
|
185
196
|
const invalid = this.validateDates(value);
|
|
186
197
|
this.setState({
|
package/lib/es/form/form.css
CHANGED
|
@@ -47,7 +47,6 @@
|
|
|
47
47
|
line-height: 20px;
|
|
48
48
|
font-family: "Inter", -apple-system, BlinkMacSystemFont, "Segoe UI", "PingFang SC", "Hiragino Sans GB", "Microsoft YaHei", "Helvetica Neue", Helvetica, Arial, sans-serif;
|
|
49
49
|
flex-shrink: 0;
|
|
50
|
-
user-select: none;
|
|
51
50
|
}
|
|
52
51
|
.semi-form-field-label-disabled {
|
|
53
52
|
color: var(--semi-color-disabled-text);
|
package/lib/es/form/form.scss
CHANGED
|
@@ -104,8 +104,8 @@ export interface ArrayFieldStaff {
|
|
|
104
104
|
export interface FormUpdaterContextType {
|
|
105
105
|
register: (field: string, fieldState: FieldState, fieldStuff: FieldStaff) => void;
|
|
106
106
|
unRegister: (field: string) => void;
|
|
107
|
-
updateStateValue: (field: string, value: any, opts
|
|
108
|
-
updateStateError: (field: string, error: any, opts
|
|
107
|
+
updateStateValue: (field: string, value: any, opts?: CallOpts) => void;
|
|
108
|
+
updateStateError: (field: string, error: any, opts?: CallOpts) => void;
|
|
109
109
|
updateStateTouched: (field: string, isTouched: boolean, opts?: CallOpts) => void;
|
|
110
110
|
getValue: (field?: string | undefined, opts?: CallOpts) => any;
|
|
111
111
|
getError: (field?: string) => any;
|
package/lib/es/select/select.css
CHANGED
|
@@ -115,6 +115,7 @@
|
|
|
115
115
|
}
|
|
116
116
|
.semi-select-open:hover, .semi-select-focus:hover {
|
|
117
117
|
background-color: var(--semi-color-fill-0);
|
|
118
|
+
border: 1px solid var(--semi-color-focus-border);
|
|
118
119
|
}
|
|
119
120
|
.semi-select-warning {
|
|
120
121
|
background-color: var(--semi-color-warning-light-default);
|
|
@@ -54,9 +54,10 @@ $multiple: #{$module}-multiple;
|
|
|
54
54
|
|
|
55
55
|
&:hover {
|
|
56
56
|
background-color: $color-select-bg-default;
|
|
57
|
+
border: $border-thickness-control-focus solid $color-select_default-border-focus;
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
|
-
|
|
60
|
+
|
|
60
61
|
&-warning {
|
|
61
62
|
background-color: $color-select_warning-bg-default;
|
|
62
63
|
border-color: $color-select_warning-border-default;
|
|
@@ -82,8 +82,12 @@ class TagInputFoundation extends BaseFoundation {
|
|
|
82
82
|
|
|
83
83
|
const code = e.keyCode;
|
|
84
84
|
|
|
85
|
-
if (code === keyCode.ENTER
|
|
86
|
-
|
|
85
|
+
if (code === keyCode.ENTER) {
|
|
86
|
+
e.preventDefault(); // prevent trigger submit when using in form
|
|
87
|
+
|
|
88
|
+
if (inputValue !== '') {
|
|
89
|
+
this._handleAddTags(e);
|
|
90
|
+
}
|
|
87
91
|
}
|
|
88
92
|
|
|
89
93
|
const {
|
|
@@ -10,7 +10,7 @@ import _someInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instanc
|
|
|
10
10
|
import { strings } from './constants';
|
|
11
11
|
import BaseFoundation from '../base/foundation';
|
|
12
12
|
import { formatToString, parseToDate, hourIsDisabled, minuteIsDisabled, secondIsDisabled, transformToArray, isTimeFormatLike } from './utils';
|
|
13
|
-
import { isValid, format } from 'date-fns';
|
|
13
|
+
import { isValid, format, getHours } from 'date-fns';
|
|
14
14
|
import { utcToZonedTime, zonedTimeToUtc } from '../utils/date-fns-extra';
|
|
15
15
|
import isNullOrUndefined from '../utils/isNullOrUndefined'; // TODO: split, timePicker different components cannot share a foundation
|
|
16
16
|
|
|
@@ -102,6 +102,12 @@ class TimePickerFoundation extends BaseFoundation {
|
|
|
102
102
|
}
|
|
103
103
|
});
|
|
104
104
|
|
|
105
|
+
const isAM = [true, false];
|
|
106
|
+
|
|
107
|
+
_mapInstanceProperty(parsedValues).call(parsedValues, (item, idx) => {
|
|
108
|
+
isAM[idx] = getHours(item) < 12;
|
|
109
|
+
});
|
|
110
|
+
|
|
105
111
|
if (parsedValues.length === value.length) {
|
|
106
112
|
value = parsedValues;
|
|
107
113
|
} else {
|
|
@@ -119,6 +125,7 @@ class TimePickerFoundation extends BaseFoundation {
|
|
|
119
125
|
}
|
|
120
126
|
|
|
121
127
|
this.setState({
|
|
128
|
+
isAM,
|
|
122
129
|
value,
|
|
123
130
|
inputValue,
|
|
124
131
|
invalid
|
|
@@ -156,6 +163,12 @@ class TimePickerFoundation extends BaseFoundation {
|
|
|
156
163
|
isAM[index] = panelIsAM;
|
|
157
164
|
const inputValue = this.formatValue(value);
|
|
158
165
|
|
|
166
|
+
if (this.getState('isAM')[index] !== result.isAM) {
|
|
167
|
+
this.setState({
|
|
168
|
+
isAM
|
|
169
|
+
});
|
|
170
|
+
}
|
|
171
|
+
|
|
159
172
|
if (!this._isControlledComponent('value')) {
|
|
160
173
|
const invalid = this.validateDates(value);
|
|
161
174
|
this.setState({
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@douyinfe/semi-foundation",
|
|
3
|
-
"version": "2.9.
|
|
3
|
+
"version": "2.9.1",
|
|
4
4
|
"description": "",
|
|
5
5
|
"scripts": {
|
|
6
6
|
"build:lib": "node ./scripts/compileLib.js",
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
},
|
|
9
9
|
"dependencies": {
|
|
10
10
|
"@babel/runtime-corejs3": "^7.15.4",
|
|
11
|
-
"@douyinfe/semi-animation": "2.9.
|
|
11
|
+
"@douyinfe/semi-animation": "2.9.1",
|
|
12
12
|
"async-validator": "^3.5.0",
|
|
13
13
|
"classnames": "^2.2.6",
|
|
14
14
|
"date-fns": "^2.9.0",
|
|
@@ -24,7 +24,7 @@
|
|
|
24
24
|
"*.scss",
|
|
25
25
|
"*.css"
|
|
26
26
|
],
|
|
27
|
-
"gitHead": "
|
|
27
|
+
"gitHead": "9593ab23b59b5a18305627ac402cfd4527072f9c",
|
|
28
28
|
"devDependencies": {
|
|
29
29
|
"@babel/plugin-proposal-decorators": "^7.15.8",
|
|
30
30
|
"@babel/plugin-transform-runtime": "^7.15.8",
|
package/select/select.scss
CHANGED
|
@@ -54,9 +54,10 @@ $multiple: #{$module}-multiple;
|
|
|
54
54
|
|
|
55
55
|
&:hover {
|
|
56
56
|
background-color: $color-select-bg-default;
|
|
57
|
+
border: $border-thickness-control-focus solid $color-select_default-border-focus;
|
|
57
58
|
}
|
|
58
59
|
}
|
|
59
|
-
|
|
60
|
+
|
|
60
61
|
&-warning {
|
|
61
62
|
background-color: $color-select_warning-bg-default;
|
|
62
63
|
border-color: $color-select_warning-border-default;
|
package/tagInput/foundation.ts
CHANGED
|
@@ -83,8 +83,11 @@ class TagInputFoundation extends BaseFoundation<TagInputAdapter> {
|
|
|
83
83
|
tagsArray
|
|
84
84
|
} = this._adapter.getStates();
|
|
85
85
|
const code = e.keyCode;
|
|
86
|
-
if (code === keyCode.ENTER
|
|
87
|
-
|
|
86
|
+
if (code === keyCode.ENTER) {
|
|
87
|
+
e.preventDefault(); // prevent trigger submit when using in form
|
|
88
|
+
if (inputValue !== '') {
|
|
89
|
+
this._handleAddTags(e);
|
|
90
|
+
}
|
|
88
91
|
}
|
|
89
92
|
const { length } = tagsArray;
|
|
90
93
|
if (code === keyCode.BACKSPACE && inputValue === '' && length > 0) {
|
package/timePicker/foundation.ts
CHANGED
|
@@ -11,7 +11,7 @@ import {
|
|
|
11
11
|
isTimeFormatLike
|
|
12
12
|
} from './utils';
|
|
13
13
|
import { split } from 'lodash';
|
|
14
|
-
import { isValid, format } from 'date-fns';
|
|
14
|
+
import { isValid, format, getHours } from 'date-fns';
|
|
15
15
|
import { utcToZonedTime, zonedTimeToUtc } from '../utils/date-fns-extra';
|
|
16
16
|
import isNullOrUndefined from '../utils/isNullOrUndefined';
|
|
17
17
|
|
|
@@ -125,6 +125,11 @@ class TimePickerFoundation<P = Record<string, any>, S = Record<string, any>> ext
|
|
|
125
125
|
}
|
|
126
126
|
});
|
|
127
127
|
|
|
128
|
+
const isAM = [true, false];
|
|
129
|
+
parsedValues.map((item, idx)=>{
|
|
130
|
+
isAM[idx]= getHours(item) < 12;
|
|
131
|
+
});
|
|
132
|
+
|
|
128
133
|
if (parsedValues.length === value.length) {
|
|
129
134
|
value = parsedValues;
|
|
130
135
|
} else {
|
|
@@ -142,6 +147,7 @@ class TimePickerFoundation<P = Record<string, any>, S = Record<string, any>> ext
|
|
|
142
147
|
}
|
|
143
148
|
|
|
144
149
|
this.setState({
|
|
150
|
+
isAM,
|
|
145
151
|
value,
|
|
146
152
|
inputValue,
|
|
147
153
|
invalid,
|
|
@@ -176,6 +182,9 @@ class TimePickerFoundation<P = Record<string, any>, S = Record<string, any>> ext
|
|
|
176
182
|
isAM[index] = panelIsAM;
|
|
177
183
|
const inputValue = this.formatValue(value);
|
|
178
184
|
|
|
185
|
+
if (this.getState('isAM')[index] !== result.isAM){
|
|
186
|
+
this.setState({ isAM } as any);
|
|
187
|
+
}
|
|
179
188
|
if (!this._isControlledComponent('value')) {
|
|
180
189
|
const invalid = this.validateDates(value);
|
|
181
190
|
this.setState({
|
|
@@ -307,7 +316,7 @@ class TimePickerFoundation<P = Record<string, any>, S = Record<string, any>> ext
|
|
|
307
316
|
|
|
308
317
|
validateStr(inputValue = '') {
|
|
309
318
|
const dates = this.parseInput(inputValue);
|
|
310
|
-
|
|
319
|
+
|
|
311
320
|
return this.validateDates(dates);
|
|
312
321
|
}
|
|
313
322
|
|
package/tooltip/tooltip.scss
CHANGED
package/transfer/transfer.scss
CHANGED