@kdcloudjs/kdesign 1.7.33 → 1.7.35

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.
Files changed (60) hide show
  1. package/CHANGELOG.md +44 -0
  2. package/dist/kdesign-complete.less +63 -51
  3. package/dist/kdesign.css +39 -19
  4. package/dist/kdesign.css.map +1 -1
  5. package/dist/kdesign.js +232 -217
  6. package/dist/kdesign.js.map +1 -1
  7. package/dist/kdesign.min.css +3 -3
  8. package/dist/kdesign.min.js +8 -8
  9. package/dist/kdesign.min.js.map +1 -1
  10. package/es/_utils/ieUtil.d.ts +2 -0
  11. package/es/_utils/ieUtil.js +20 -0
  12. package/es/color-picker/color-picker-panel.js +15 -6
  13. package/es/color-picker/color-picker.js +17 -3
  14. package/es/color-picker/interface.d.ts +5 -0
  15. package/es/color-picker/style/index.css +30 -13
  16. package/es/color-picker/style/index.less +49 -43
  17. package/es/date-picker/date-picker.d.ts +1 -0
  18. package/es/date-picker/date-picker.js +6 -15
  19. package/es/date-picker/interface.d.ts +1 -0
  20. package/es/date-picker/range/input-range.js +3 -2
  21. package/es/date-picker/range-picker.js +6 -4
  22. package/es/date-picker/single/input-date.js +3 -2
  23. package/es/date-picker/style/index.css +3 -0
  24. package/es/date-picker/style/index.less +4 -0
  25. package/es/date-picker/utils/date-fns.js +5 -11
  26. package/es/locale/locale.d.ts +2 -0
  27. package/es/locale/zh-CN.d.ts +2 -0
  28. package/es/locale/zh-CN.js +3 -1
  29. package/es/select/select.js +12 -4
  30. package/es/select/style/index.css +5 -5
  31. package/es/select/style/index.less +10 -8
  32. package/es/upload/upload.js +3 -4
  33. package/lib/_utils/ieUtil.d.ts +2 -0
  34. package/lib/_utils/ieUtil.js +28 -0
  35. package/lib/color-picker/color-picker-panel.js +16 -7
  36. package/lib/color-picker/color-picker.js +17 -3
  37. package/lib/color-picker/interface.d.ts +5 -0
  38. package/lib/color-picker/style/index.css +30 -13
  39. package/lib/color-picker/style/index.less +49 -43
  40. package/lib/date-picker/date-picker.d.ts +1 -0
  41. package/lib/date-picker/date-picker.js +5 -14
  42. package/lib/date-picker/interface.d.ts +1 -0
  43. package/lib/date-picker/range/input-range.js +3 -2
  44. package/lib/date-picker/range-picker.js +5 -3
  45. package/lib/date-picker/single/input-date.js +3 -2
  46. package/lib/date-picker/style/index.css +3 -0
  47. package/lib/date-picker/style/index.less +4 -0
  48. package/lib/date-picker/utils/date-fns.js +5 -11
  49. package/lib/locale/locale.d.ts +2 -0
  50. package/lib/locale/zh-CN.d.ts +2 -0
  51. package/lib/locale/zh-CN.js +3 -1
  52. package/lib/select/select.js +12 -4
  53. package/lib/select/style/index.css +5 -5
  54. package/lib/select/style/index.less +10 -8
  55. package/lib/upload/upload.js +3 -4
  56. package/package.json +1 -1
  57. package/es/color-picker/utils/hooks/useOnClickOutside.d.ts +0 -2
  58. package/es/color-picker/utils/hooks/useOnClickOutside.js +0 -16
  59. package/lib/color-picker/utils/hooks/useOnClickOutside.d.ts +0 -2
  60. package/lib/color-picker/utils/hooks/useOnClickOutside.js +0 -23
@@ -75,6 +75,8 @@ var locale = _extends(_extends({
75
75
  'Table.isNull': '为空',
76
76
  'Table.notIsNull': '不为空',
77
77
  'Table.resetFilter': '重置',
78
- 'Table.confirmFilter': '确定'
78
+ 'Table.confirmFilter': '确定',
79
+ 'Select.selectAll': '全选',
80
+ 'Select.seleted': '已选{size}项'
79
81
  });
80
82
  export default locale;
@@ -26,8 +26,12 @@ var InternalSelect = function InternalSelect(props, ref) {
26
26
  var _useContext = useContext(ConfigContext),
27
27
  getPrefixCls = _useContext.getPrefixCls,
28
28
  prefixCls = _useContext.prefixCls,
29
- userDefaultProps = _useContext.compDefaultProps;
29
+ userDefaultProps = _useContext.compDefaultProps,
30
+ locale = _useContext.locale;
30
31
  var selectProps = getCompProps('Select', userDefaultProps, props);
32
+ var selectLangMsg = locale.getCompLangMsg({
33
+ componentName: 'Select'
34
+ });
31
35
  var size = selectProps.size,
32
36
  value = selectProps.value,
33
37
  autoFocus = selectProps.autoFocus,
@@ -568,16 +572,20 @@ var InternalSelect = function InternalSelect(props, ref) {
568
572
  className: dropDownCls,
569
573
  style: dropdownStyle,
570
574
  ref: dropDownRef
571
- }, !dropdownRender && childrenToRender.length > 0 ? dropRender(eleOptionList, heightStyle) : null, renderNotContent(), /*#__PURE__*/React.createElement("div", null, dropdownRender ? dropdownRender(dropRender(childrenToRender, heightStyle)) : null), isMultiple && realChildren.length > 0 ? /*#__PURE__*/React.createElement("div", {
575
+ }, !dropdownRender && childrenToRender.length > 0 ? dropRender(eleOptionList, heightStyle) : null, renderNotContent(), /*#__PURE__*/React.createElement("div", null, dropdownRender ? dropdownRender(dropRender(eleOptionList, heightStyle)) : null), isMultiple && realChildren.length > 0 ? /*#__PURE__*/React.createElement("div", {
572
576
  className: multipleFooterCls
573
577
  }, /*#__PURE__*/React.createElement(Checkbox, {
574
578
  style: checkboxStyle,
575
579
  checked: checked,
576
580
  indeterminate: indeterminate,
577
581
  onChange: handleSelectAll
578
- }, "\u5168\u9009"), /*#__PURE__*/React.createElement("span", {
582
+ }, selectLangMsg === null || selectLangMsg === void 0 ? void 0 : selectLangMsg.selectAll), /*#__PURE__*/React.createElement("span", {
579
583
  className: "".concat(selectPrefixCls, "-multiple-footer-hadSelected")
580
- }, "\u5DF2\u9009", /*#__PURE__*/React.createElement("span", null, selectedVal.length), "\u9879")) : null));
584
+ }, locale.getLangMsg('Select', 'seleted', {
585
+ size: /*#__PURE__*/React.createElement("span", {
586
+ className: "".concat(selectPrefixCls, "-multiple-footer-hadSelected-number")
587
+ }, selectedVal.length)
588
+ }))) : null));
581
589
  };
582
590
  // 处理多选tag
583
591
  var handleMaxTagHolder = useCallback(function () {
@@ -698,14 +698,14 @@
698
698
  color: #999999;
699
699
  padding-left: 12px;
700
700
  }
701
- .kd-select-multiple-footer-hadSelected > span {
701
+ .kd-select-multiple-footer-hadSelected-number {
702
702
  color: var(--kd-c-select-footer-color-text-selected, #0e5fd8);
703
703
  padding: 0 2px;
704
704
  }
705
- .kd-select.topLeft.hidden,
706
- .kd-select.bottomLeft.hidden,
707
- .kd-select.topRight.hidden,
708
- .kd-select.bottomRight.hidden {
705
+ .kd-select-dropdown-panel.topLeft.hidden,
706
+ .kd-select-dropdown-panel.bottomLeft.hidden,
707
+ .kd-select-dropdown-panel.topRight.hidden,
708
+ .kd-select-dropdown-panel.bottomRight.hidden {
709
709
  opacity: 0;
710
710
  visibility: hidden;
711
711
  -webkit-transition: all calc(0.3s - 0.1s) cubic-bezier(0.4, 0, 0.6, 1);
@@ -431,7 +431,7 @@
431
431
  &-hadSelected {
432
432
  color: #999999;
433
433
  padding-left: 12px;
434
- > span {
434
+ &-number {
435
435
  color: @select-footer-g-text-color-selected;
436
436
  padding: 0 2px;
437
437
  }
@@ -439,12 +439,14 @@
439
439
  }
440
440
  }
441
441
 
442
- &.topLeft.hidden,
443
- &.bottomLeft.hidden,
444
- &.topRight.hidden,
445
- &.bottomRight.hidden {
446
- opacity: 0;
447
- visibility: hidden;
448
- transition: all calc(@transition-duration - 0.1s) @ease;
442
+ &-dropdown-panel {
443
+ &.topLeft.hidden,
444
+ &.bottomLeft.hidden,
445
+ &.topRight.hidden,
446
+ &.bottomRight.hidden {
447
+ opacity: 0;
448
+ visibility: hidden;
449
+ transition: all calc(@transition-duration - 0.1s) @ease;
450
+ }
449
451
  }
450
452
  }
@@ -41,6 +41,7 @@ import React, { Children, forwardRef, useContext, useEffect, useImperativeHandle
41
41
  import classNames from 'classnames';
42
42
  import ConfigContext from '../config-provider/ConfigContext';
43
43
  import { getCompProps } from '../_utils';
44
+ import { getFileUtil } from '../_utils/ieUtil';
44
45
  import Icon from '../icon';
45
46
  import request from './request';
46
47
  import verifyFile from './verify-file';
@@ -124,9 +125,7 @@ var InternalUpload = function InternalUpload(props, ref) {
124
125
  if (Array.isArray(files) && files.length) {
125
126
  var _context2;
126
127
  files.forEach(function (file) {
127
- file.originFileObj = new File([file], file.name, {
128
- type: file.type
129
- });
128
+ file.originFileObj = getFileUtil(file, allProps === null || allProps === void 0 ? void 0 : allProps.name);
130
129
  file.uid = getUid();
131
130
  file.status = 'notStart';
132
131
  file.fileName = allProps.name || file.name;
@@ -336,7 +335,7 @@ var InternalUpload = function InternalUpload(props, ref) {
336
335
  scanFiles(_sliceInstanceProperty(Array.prototype).call(e.dataTransfer.items), function (file) {
337
336
  return verifyFile(file, accept);
338
337
  }, function (file) {
339
- file.originFileObj = new File([file], file.type);
338
+ file.originFileObj = getFileUtil(file, allProps === null || allProps === void 0 ? void 0 : allProps.name);
340
339
  file.uid = getUid();
341
340
  file.status = 'notStart';
342
341
  file.fileName = allProps.name || file.name;
@@ -0,0 +1,2 @@
1
+ export declare const isIE: any;
2
+ export declare const getFileUtil: (file: any, name?: string) => any;
@@ -0,0 +1,28 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.isIE = exports.getFileUtil = void 0;
7
+ var _a;
8
+ var isIE = ((_a = window) === null || _a === void 0 ? void 0 : _a.ActiveXObject) || 'ActiveXObject' in window;
9
+ exports.isIE = isIE;
10
+ var getFileUtil = function getFileUtil(file) {
11
+ var name = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : '';
12
+ if (file) {
13
+ if (isIE) {
14
+ var blob = new Blob([file], {
15
+ type: file.type
16
+ });
17
+ blob.fileName = name || file.name;
18
+ blob.lastModifiedDate = (file === null || file === void 0 ? void 0 : file.lastModifiedDate) || Date.now();
19
+ return blob;
20
+ } else {
21
+ return new File([file], name || file.name, {
22
+ type: file.type
23
+ });
24
+ }
25
+ }
26
+ return file;
27
+ };
28
+ exports.getFileUtil = getFileUtil;
@@ -22,7 +22,7 @@ var _convertLetters = require("./utils/convertLetters");
22
22
  var _color = _interopRequireDefault(require("color"));
23
23
  var _reactColor = require("react-color");
24
24
  var _devwarning = _interopRequireDefault(require("../_utils/devwarning"));
25
- var _useOnClickOutside = _interopRequireDefault(require("./utils/hooks/useOnClickOutside"));
25
+ var _hooks = require("../_utils/hooks");
26
26
  function _getRequireWildcardCache(nodeInterop) { if (typeof _WeakMap !== "function") return null; var cacheBabelInterop = new _WeakMap(); var cacheNodeInterop = new _WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(nodeInterop) { return nodeInterop ? cacheNodeInterop : cacheBabelInterop; })(nodeInterop); }
27
27
  function _interopRequireWildcard(obj, nodeInterop) { if (!nodeInterop && obj && obj.__esModule) { return obj; } if (obj === null || _typeof(obj) !== "object" && typeof obj !== "function") { return { default: obj }; } var cache = _getRequireWildcardCache(nodeInterop); if (cache && cache.has(obj)) { return cache.get(obj); } var newObj = {}; var hasPropertyDescriptor = Object.defineProperty && _Object$getOwnPropertyDescriptor; for (var key in obj) { if (key !== "default" && Object.prototype.hasOwnProperty.call(obj, key)) { var desc = hasPropertyDescriptor ? _Object$getOwnPropertyDescriptor(obj, key) : null; if (desc && (desc.get || desc.set)) { Object.defineProperty(newObj, key, desc); } else { newObj[key] = obj[key]; } } } newObj.default = obj; if (cache) { cache.set(obj, newObj); } return newObj; }
28
28
  /* eslint-disable */
@@ -39,6 +39,7 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
39
39
  setColTypeArr = props.setColTypeArr,
40
40
  setCurrentColorType = props.setCurrentColorType,
41
41
  onChange = props.onChange,
42
+ onVisibleChange = props.onVisibleChange,
42
43
  alpha = props.alpha,
43
44
  alphaNoVerifyVal = props.alphaNoVerifyVal,
44
45
  clickedColorIndex = props.clickedColorIndex,
@@ -56,7 +57,9 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
56
57
  showPresetColor = props.showPresetColor,
57
58
  showColorPickerBox = props.showColorPickerBox,
58
59
  showColorPickerPanel = props.showColorPickerPanel,
59
- value = props.value;
60
+ value = props.value,
61
+ visible = props.visible,
62
+ showPanel = props.showPanel;
60
63
  var panelInputRef = (0, _react.useRef)(null);
61
64
  var panelClsRef = (0, _react.useRef)(null);
62
65
  var Option = _index.Select.Option;
@@ -68,8 +71,9 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
68
71
  var panelCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel"));
69
72
  var panelChromePickerCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-chrome"), (_classNames = {}, (0, _defineProperty2.default)(_classNames, "".concat(colorPickerPrefixCls, "-panel-chrome-no-box"), !(showColorPickerBox === null || showColorPickerBox === void 0 ? void 0 : showColorPickerBox.showBox)), (0, _defineProperty2.default)(_classNames, "".concat(colorPickerPrefixCls, "-panel-chrome-no-hue"), !(showColorPickerBox === null || showColorPickerBox === void 0 ? void 0 : showColorPickerBox.showHue)), (0, _defineProperty2.default)(_classNames, "".concat(colorPickerPrefixCls, "-panel-chrome-no-opacity"), !(showColorPickerBox === null || showColorPickerBox === void 0 ? void 0 : showColorPickerBox.showOpacity)), _classNames));
70
73
  var panelFollowThemeCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-switch"));
71
- var panelInputCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-input"), (0, _defineProperty2.default)({}, "".concat(colorPickerPrefixCls, "-panel-input-no-recommend"), !showPresetColor));
72
- var transparentCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-transparent"));
74
+ var panelContainerCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container"));
75
+ var panelInputCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container-input"));
76
+ var transparentCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container-transparent"));
73
77
  var colorDivContainerCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-colorDivContainer"), (0, _defineProperty2.default)({}, "".concat(colorPickerPrefixCls, "-panel-colorDivContainer-unset-color"), (presetColor === null || presetColor === void 0 ? void 0 : presetColor.length) === 0));
74
78
  var colorLiClick = function colorLiClick(index, colorValue) {
75
79
  var formatArr = (0, _colorFormat.colorFormat)(colorValue, alpha);
@@ -183,8 +187,11 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
183
187
  (0, _devwarning.default)(!isTrueFormat, 'color-picker', "'presetColor' must be an array of hexadecimal, RGB, HSB, HSL or English color name string type");
184
188
  return isTrueFormat;
185
189
  };
186
- (0, _useOnClickOutside.default)([panelClsRef, inputRef], function () {
187
- setShowPanel(false);
190
+ (0, _hooks.useOnClickOutside)([panelClsRef, inputRef], function () {
191
+ if (typeof visible === 'undefined') {
192
+ setShowPanel(false);
193
+ }
194
+ showPanel && onVisibleChange && onVisibleChange(false);
188
195
  });
189
196
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, showColorPickerPanel && /*#__PURE__*/_react.default.createElement("div", {
190
197
  className: panelCls,
@@ -198,7 +205,9 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
198
205
  }, /*#__PURE__*/_react.default.createElement("span", null, (switchName === null || switchName === void 0 ? void 0 : switchName.internationalName) && locale.getLangMsg('ColorPicker', switchName.internationalName) || switchName.name), /*#__PURE__*/_react.default.createElement(_index.Switch, {
199
206
  checked: isFollow,
200
207
  onChange: handleSwitchChange
201
- })), showColorTransfer && /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {
208
+ })), showColorTransfer && /*#__PURE__*/_react.default.createElement("div", {
209
+ className: panelContainerCls
210
+ }, /*#__PURE__*/_react.default.createElement("div", {
202
211
  className: panelInputCls,
203
212
  ref: panelInputRef
204
213
  }, /*#__PURE__*/_react.default.createElement(_index.Select, {
@@ -48,8 +48,10 @@ var ColorPicker = function ColorPicker(props) {
48
48
  placeholder = colorPickerProps.placeholder,
49
49
  defaultValue = colorPickerProps.defaultValue,
50
50
  defaultOpen = colorPickerProps.defaultOpen,
51
+ visible = colorPickerProps.visible,
51
52
  suffixIcon = colorPickerProps.suffixIcon,
52
- onChange = colorPickerProps.onChange;
53
+ onChange = colorPickerProps.onChange,
54
+ onVisibleChange = colorPickerProps.onVisibleChange;
53
55
  var _useState = (0, _react.useState)(defaultValue || ''),
54
56
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
55
57
  inputColorValue = _useState2[0],
@@ -66,7 +68,7 @@ var ColorPicker = function ColorPicker(props) {
66
68
  _useState8 = (0, _slicedToArray2.default)(_useState7, 2),
67
69
  colTypeArr = _useState8[0],
68
70
  setColTypeArr = _useState8[1];
69
- var _useState9 = (0, _react.useState)(defaultOpen),
71
+ var _useState9 = (0, _react.useState)(typeof visible === 'undefined' ? !!defaultOpen : !!visible),
70
72
  _useState10 = (0, _slicedToArray2.default)(_useState9, 2),
71
73
  showPanel = _useState10[0],
72
74
  setShowPanel = _useState10[1];
@@ -130,8 +132,16 @@ var ColorPicker = function ColorPicker(props) {
130
132
  functionalColor && showSwitch && setIsFollow(false);
131
133
  };
132
134
  var handleClick = function handleClick() {
133
- setShowPanel(!showPanel);
135
+ if (typeof visible === 'undefined') {
136
+ setShowPanel(!showPanel);
137
+ }
138
+ onVisibleChange && onVisibleChange(!showPanel);
134
139
  };
140
+ (0, _react.useEffect)(function () {
141
+ if (typeof visible !== 'undefined') {
142
+ setShowPanel(visible);
143
+ }
144
+ }, [visible]);
135
145
  (0, _react.useEffect)(function () {
136
146
  if (value) {
137
147
  setIconColor(value);
@@ -181,6 +191,9 @@ var ColorPicker = function ColorPicker(props) {
181
191
  switchName: switchName,
182
192
  presetColor: presetColor,
183
193
  value: value,
194
+ visible: visible,
195
+ showPanel: showPanel,
196
+ onVisibleChange: onVisibleChange,
184
197
  // private
185
198
  setInputColorValue: setInputColorValue,
186
199
  setCorrectColorValue: setCorrectColorValue,
@@ -207,6 +220,7 @@ var ColorPicker = function ColorPicker(props) {
207
220
  placement: 'bottomLeft',
208
221
  defaultVisible: showPanel,
209
222
  visible: showPanel,
223
+ onVisibleChange: null,
210
224
  clickToClose: false
211
225
  });
212
226
  return (0, _usePopper.default)(colorInputEle, panel, popperProps);
@@ -32,7 +32,9 @@ export interface IColorPickerProps extends PopperProps {
32
32
  showOpacity: boolean;
33
33
  };
34
34
  defaultOpen: boolean;
35
+ visible: boolean;
35
36
  onChange: (inputValue: string, formatColorArr: Array<IColorTypesObj>) => void;
37
+ onVisibleChange: (visible: boolean) => void;
36
38
  }
37
39
  export interface IColorPickerPanelProps {
38
40
  alpha: number;
@@ -60,6 +62,8 @@ export interface IColorPickerPanelProps {
60
62
  };
61
63
  showColorPickerPanel: boolean;
62
64
  value: string;
65
+ visible: boolean;
66
+ showPanel: boolean;
63
67
  setCurrentColorType: (currentColorType: IColorTypesObj['type']) => void;
64
68
  setColTypeArr: (colTypeArr: Array<IColorTypesObj>) => void;
65
69
  setClickedColorIndex: (clickedColorIndex: number) => void;
@@ -70,4 +74,5 @@ export interface IColorPickerPanelProps {
70
74
  setInputColorValue: (colorValue: string) => void;
71
75
  setShowPanel: (showPanel: boolean) => void;
72
76
  onChange?: (inputValue: string, formatColorArr: Array<IColorTypesObj>) => void;
77
+ onVisibleChange?: (visible: boolean) => void;
73
78
  }
@@ -105,6 +105,7 @@
105
105
  /* ----------- zIndex ——————---- end */
106
106
  .kd-color-picker-container {
107
107
  position: relative;
108
+ width: var(--kd-c-color-picker-input-sizing-width, 230px);
108
109
  }
109
110
  .kd-color-picker-container .kd-color-picker-input {
110
111
  width: var(--kd-c-color-picker-input-sizing-width, 230px);
@@ -146,6 +147,9 @@
146
147
  transition: transform 0.2s ease-in-out;
147
148
  transition: transform 0.2s ease-in-out, -webkit-transform 0.2s ease-in-out;
148
149
  }
150
+ .kd-color-picker-pop {
151
+ width: var(--kd-c-color-picker-panel-sizing-width, 304px);
152
+ }
149
153
  .kd-color-picker-pop.topLeft.hidden,
150
154
  .kd-color-picker-pop.bottomLeft.hidden,
151
155
  .kd-color-picker-pop.topRight.hidden,
@@ -255,19 +259,30 @@
255
259
  vertical-align: middle;
256
260
  margin-right: 9px;
257
261
  }
258
- .kd-color-picker-pop .kd-color-picker-panel-input {
262
+ .kd-color-picker-pop .kd-color-picker-panel-container {
263
+ display: -webkit-box;
264
+ display: -ms-flexbox;
265
+ display: flex;
266
+ -ms-flex-wrap: nowrap;
267
+ flex-wrap: nowrap;
268
+ margin-top: 10px;
269
+ }
270
+ .kd-color-picker-pop .kd-color-picker-panel-container-input {
271
+ -webkit-box-flex: 1;
272
+ -ms-flex: 1 1 auto;
273
+ flex: 1 1 auto;
259
274
  display: inline-block;
260
275
  position: relative;
261
- margin-top: 12px;
262
276
  font-size: var(--kd-c-color-picker-panel-select-font-size, var(--kd-g-font-size-middle, 14px));
263
277
  }
264
- .kd-color-picker-pop .kd-color-picker-panel-input-no-recommend {
265
- margin-bottom: 0;
278
+ .kd-color-picker-pop .kd-color-picker-panel-container-input .kd-select-dropdown-panel {
279
+ margin: 0 !important;
266
280
  }
267
- .kd-color-picker-pop .kd-color-picker-panel-input .kd-select.bottomLeft,
268
- .kd-color-picker-pop .kd-color-picker-panel-input .kd-select.topLeft {
281
+ .kd-color-picker-pop .kd-color-picker-panel-container-input .kd-select-dropdown-panel.bottomLeft,
282
+ .kd-color-picker-pop .kd-color-picker-panel-container-input .kd-select-dropdown-panel.topLeft {
269
283
  position: absolute;
270
284
  width: 60px !important;
285
+ min-width: unset !important;
271
286
  background: #FFFFFF;
272
287
  right: 0;
273
288
  left: unset !important;
@@ -275,7 +290,7 @@
275
290
  box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.2);
276
291
  border-radius: 2px;
277
292
  }
278
- .kd-color-picker-pop .kd-color-picker-panel-input .kd-select .kd-select-dropdown .kd-select-item-option {
293
+ .kd-color-picker-pop .kd-color-picker-panel-container-input .kd-select-dropdown-panel .kd-select-dropdown .kd-select-item-option {
279
294
  display: -webkit-box;
280
295
  display: -ms-flexbox;
281
296
  display: flex;
@@ -284,21 +299,23 @@
284
299
  justify-content: center;
285
300
  min-width: unset;
286
301
  }
287
- .kd-color-picker-pop .kd-color-picker-panel-input .kd-select-bordered {
302
+ .kd-color-picker-pop .kd-color-picker-panel-container-input .kd-select-bordered {
288
303
  border-radius: 2px;
289
304
  width: var(--kd-c-color-picker-panel-select-sizing-width, 212px);
290
305
  height: var(--kd-c-color-picker-panel-select-sizing-height, 28px);
291
306
  min-height: 28px;
292
- margin-top: -2px;
307
+ padding: 0 28px 0 0;
293
308
  }
294
- .kd-color-picker-pop .kd-color-picker-panel-input .kd-select-bordered .kd-select-placeholder {
309
+ .kd-color-picker-pop .kd-color-picker-panel-container-input .kd-select-bordered .kd-select-placeholder {
295
310
  left: 8px;
296
311
  }
297
- .kd-color-picker-pop .kd-color-picker-panel-input .active-option {
312
+ .kd-color-picker-pop .kd-color-picker-panel-container-input .active-option {
298
313
  background-color: var(--kd-c-color-picker-panel-option-color-background-selected, var(--kd-g-color-theme-3, #e3eeff));
299
314
  }
300
- .kd-color-picker-pop .kd-color-picker-panel-transparent {
301
- width: 60px;
315
+ .kd-color-picker-pop .kd-color-picker-panel-container-transparent {
316
+ -webkit-box-flex: 0;
317
+ -ms-flex: 0 0 60px;
318
+ flex: 0 0 60px;
302
319
  height: 28px;
303
320
  margin-left: 8px;
304
321
  text-align: center;
@@ -6,6 +6,7 @@
6
6
 
7
7
  .@{color-picker-prefix-cls}-container {
8
8
  position: relative;
9
+ width: @color-picker-input-sizing-width;
9
10
 
10
11
  .@{color-picker-prefix-cls}-input {
11
12
  width: @color-picker-input-sizing-width;
@@ -52,6 +53,7 @@
52
53
  }
53
54
 
54
55
  .@{color-picker-prefix-cls}-pop {
56
+ width: @color-picker-panel-sizing-width;
55
57
 
56
58
  &.topLeft.hidden,
57
59
  &.bottomLeft.hidden,
@@ -202,63 +204,67 @@
202
204
  }
203
205
  }
204
206
 
205
- &-input {
206
- display: inline-block;
207
- position: relative;
208
- margin-top: 12px;
209
- font-size: @color-picker-panel-select-font-size;
207
+ &-container {
208
+ display: flex;
209
+ flex-wrap: nowrap;
210
+ margin-top: 10px;
210
211
 
211
- &-no-recommend {
212
- margin-bottom: 0;
213
- }
212
+ &-input {
213
+ flex: 1 1 auto;
214
+ display: inline-block;
215
+ position: relative;
216
+ font-size: @color-picker-panel-select-font-size;
217
+
218
+ .@{kd-prefix}-select-dropdown-panel {
219
+ margin: 0 !important;
220
+
221
+ &.bottomLeft,
222
+ &.topLeft {
223
+ position: absolute;
224
+ width: 60px !important;
225
+ min-width: unset !important;
226
+ background: #FFFFFF;
227
+ right: 0;
228
+ left: unset !important;
229
+ box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.20);
230
+ border-radius: 2px;
231
+ }
214
232
 
215
- .@{kd-prefix}-select {
233
+ .@{kd-prefix}-select-dropdown {
234
+ .@{kd-prefix}-select-item-option {
235
+ display: flex;
236
+ justify-content: center;
237
+ min-width: unset;
238
+ }
239
+ }
240
+ }
216
241
 
217
- &.bottomLeft,
218
- &.topLeft {
219
- position: absolute;
220
- width: 60px !important;
221
- background: #FFFFFF;
222
- right: 0;
223
- left: unset !important;
224
- box-shadow: 0 4px 10px 0 rgba(0, 0, 0, 0.20);
242
+ .@{kd-prefix}-select-bordered {
225
243
  border-radius: 2px;
226
- }
244
+ width: @color-picker-panel-select-sizing-width;
245
+ height: @color-picker-panel-select-sizing-height;
246
+ min-height: 28px;
247
+ padding: 0 28px 0 0;
227
248
 
228
- .@{kd-prefix}-select-dropdown {
229
- .@{kd-prefix}-select-item-option {
230
- display: flex;
231
- justify-content: center;
232
- min-width: unset;
249
+ .@{kd-prefix}-select-placeholder {
250
+ left: 8px;
233
251
  }
234
252
  }
235
- }
236
-
237
- .@{kd-prefix}-select-bordered {
238
- border-radius: 2px;
239
- width: @color-picker-panel-select-sizing-width;
240
- height: @color-picker-panel-select-sizing-height;
241
- min-height: 28px;
242
- margin-top: -2px;
243
253
 
244
- .@{kd-prefix}-select-placeholder {
245
- left: 8px;
254
+ .active-option {
255
+ background-color: @color-picker-panel-option-color-background;
246
256
  }
247
257
  }
248
258
 
249
- .active-option {
250
- background-color: @color-picker-panel-option-color-background;
259
+ &-transparent {
260
+ flex: 0 0 60px;
261
+ height: 28px;
262
+ margin-left: 8px;
263
+ text-align: center;
264
+ font-size: @color-picker-panel-alpha-font-size;
251
265
  }
252
266
  }
253
267
 
254
- &-transparent {
255
- width: 60px;
256
- height: 28px;
257
- margin-left: 8px;
258
- text-align: center;
259
- font-size: @color-picker-panel-alpha-font-size;
260
- }
261
-
262
268
  &-colorDivContainer {
263
269
  display: grid;
264
270
  grid-template-columns: repeat(12, 1fr);
@@ -37,6 +37,7 @@ export interface PickerSharedProps extends React.AriaAttributes {
37
37
  onMouseLeave?: React.MouseEventHandler<HTMLDivElement>;
38
38
  onClick?: React.MouseEventHandler<HTMLDivElement>;
39
39
  onContextMenu?: React.MouseEventHandler<HTMLDivElement>;
40
+ status?: 'error';
40
41
  }
41
42
  declare type OmitPanelProps<Props> = Omit<Props, 'onChange' | 'hideHeader' | 'pickerValue' | 'onPickerValueChange'>;
42
43
  export interface PickerBaseProps extends PickerSharedProps, OmitPanelProps<PickerPanelBaseProps> {
@@ -92,8 +92,8 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
92
92
  onMouseLeave = datePickerProps.onMouseLeave,
93
93
  onContextMenu = datePickerProps.onContextMenu,
94
94
  onClick = datePickerProps.onClick,
95
- _onOk = datePickerProps.onOk;
96
- // ref
95
+ _onOk = datePickerProps.onOk,
96
+ status = datePickerProps.status;
97
97
  var inputDivRefDefault = _react.default.useRef(null);
98
98
  var inputDivRef = ref || inputDivRefDefault;
99
99
  var popperRefDefault = _react.default.useRef(null);
@@ -102,14 +102,10 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
102
102
  var isHourStepValid = 24 % hourStep === 0;
103
103
  var isMinuteStepValid = 60 % minuteStep === 0;
104
104
  var isSecondStepValid = 60 % secondStep === 0;
105
- // const hours = generateUnits(0, 23, hourStep, disabledHours && disabledHours())
106
- // const minutes = generateUnits(0, 59, minuteStep, disabledMinutes && disabledMinutes(originHour))
107
- // const seconds = generateUnits(0, 59, secondStep, disabledSeconds && disabledSeconds(originHour, minute))
108
105
  var needConfirmButton = picker === 'date' && !!showTime || picker === 'time';
109
106
  var datePickerLang = (0, _extends2.default)({}, globalLocale.getCompLangMsg({
110
107
  componentName: 'DatePicker'
111
108
  }), locale || {});
112
- // 原始数据
113
109
  var _useMergedState = (0, _hooks.useMergedState)(null, {
114
110
  value: value,
115
111
  defaultValue: defaultValue
@@ -117,7 +113,6 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
117
113
  _useMergedState2 = (0, _slicedToArray2.default)(_useMergedState, 2),
118
114
  dateValue = _useMergedState2[0],
119
115
  setDateValue = _useMergedState2[1];
120
- // 选中的数据
121
116
  var _React$useState = _react.default.useState(dateValue),
122
117
  _React$useState2 = (0, _slicedToArray2.default)(_React$useState, 2),
123
118
  selectedValue = _React$useState2[0],
@@ -147,22 +142,19 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
147
142
  }
148
143
  }
149
144
  var _format = (0, _utils2.getDefaultFormat)(format, picker, showTime && !disabledTimePanel, use12Hours);
150
- // 面板展示日期
151
145
  var _useState = (0, _react.useState)(defaultPickerValue || dateValue || new Date()),
152
146
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
153
147
  viewDate = _useState2[0],
154
148
  setInnerViewDate = _useState2[1];
155
149
  var setViewDate = function setViewDate(date) {
156
- setInnerViewDate(date || new Date());
150
+ setInnerViewDate((0, _dateFns.isDate)(date) ? date : new Date());
157
151
  };
158
152
  (0, _react.useEffect)(function () {
159
153
  setViewDate(dateValue);
160
154
  }, [dateValue]);
161
- // text
162
155
  var valueText = (0, _useValueTexts.default)(selectedValue, {
163
156
  format: _format
164
157
  });
165
- // input 展示
166
158
  var _useTextValueMapping = (0, _useTextValueMapping3.default)({
167
159
  valueText: valueText,
168
160
  onTextChange: function onTextChange(newText) {
@@ -212,7 +204,6 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
212
204
  _useMergedState4 = (0, _slicedToArray2.default)(_useMergedState3, 2),
213
205
  openValue = _useMergedState4[0],
214
206
  triggerInnerOpen = _useMergedState4[1];
215
- // Save panel is changed from which panel
216
207
  var _useMergedState5 = (0, _hooks.useMergedState)(function () {
217
208
  if (picker === 'time') {
218
209
  return 'time';
@@ -335,7 +326,6 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
335
326
  format: _format,
336
327
  onChange: setSelectedValue
337
328
  });
338
- // 渲染日期选择表盘
339
329
  var renderPanel = function renderPanel() {
340
330
  var panelNode = /*#__PURE__*/_react.default.createElement(_datePanel.default, (0, _extends2.default)({}, panelProps));
341
331
  if (panelRender) {
@@ -405,7 +395,8 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
405
395
  triggerTextChange: triggerTextChange,
406
396
  triggerOpen: triggerOpen,
407
397
  triggerChange: triggerChange,
408
- resetText: resetText
398
+ resetText: resetText,
399
+ status: status
409
400
  };
410
401
  return (0, _usePopper.default)( /*#__PURE__*/_react.default.createElement(_inputDate.default, (0, _extends2.default)({
411
402
  ref: inputDivRef
@@ -128,6 +128,7 @@ export interface InputCommonProps {
128
128
  prefixCls: string;
129
129
  locale: InnerLocale;
130
130
  dataOrAriaProps?: Record<string, any>;
131
+ status?: 'error';
131
132
  }
132
133
  export interface OutPopperProps {
133
134
  dropdownClassName?: string;
@@ -75,7 +75,8 @@ function InputDate(props, ref) {
75
75
  triggerChange = props.triggerChange,
76
76
  triggerOpenAndFocus = props.triggerOpenAndFocus,
77
77
  setMergedActivePickerIndex = props.setMergedActivePickerIndex,
78
- setHoverRangedValue = props.setHoverRangedValue;
78
+ setHoverRangedValue = props.setHoverRangedValue,
79
+ status = props.status;
79
80
  var preventBlurRef = (0, _react.useRef)(false);
80
81
  var _useState = (0, _react.useState)(false),
81
82
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -199,7 +200,7 @@ function InputDate(props, ref) {
199
200
  };
200
201
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
201
202
  ref: ref,
202
- className: (0, _classnames5.default)(prefixCls, "".concat(prefixCls, "-range"), className, borderClass, (_classnames2 = {}, (0, _defineProperty2.default)(_classnames2, (0, _concat.default)(_context = "".concat(prefixCls, "-")).call(_context, size), size), (0, _defineProperty2.default)(_classnames2, "".concat(prefixCls, "-disabled"), mergedDisabled[0] && mergedDisabled[1]), (0, _defineProperty2.default)(_classnames2, "".concat(prefixCls, "-focused"), mergedActivePickerIndex === 0 ? startFocused : endFocused), _classnames2)),
203
+ className: (0, _classnames5.default)(prefixCls, "".concat(prefixCls, "-range"), className, borderClass, (_classnames2 = {}, (0, _defineProperty2.default)(_classnames2, (0, _concat.default)(_context = "".concat(prefixCls, "-")).call(_context, size), size), (0, _defineProperty2.default)(_classnames2, "".concat(prefixCls, "-disabled"), mergedDisabled[0] && mergedDisabled[1]), (0, _defineProperty2.default)(_classnames2, "".concat(prefixCls, "-focused"), mergedActivePickerIndex === 0 ? startFocused : endFocused), (0, _defineProperty2.default)(_classnames2, "".concat(prefixCls, "-error"), status === 'error'), _classnames2)),
203
204
  style: style,
204
205
  onMouseDown: onInternalonMouseDown,
205
206
  onMouseUp: onMouseUp,