@kdcloudjs/kdesign 1.8.15 → 1.8.16

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 (73) hide show
  1. package/dist/kdesign-complete.less +297 -81
  2. package/dist/kdesign.css +269 -58
  3. package/dist/kdesign.css.map +1 -1
  4. package/dist/kdesign.js +838 -379
  5. package/dist/kdesign.js.map +1 -1
  6. package/dist/kdesign.min.css +3 -3
  7. package/dist/kdesign.min.js +10 -10
  8. package/dist/kdesign.min.js.map +1 -1
  9. package/es/breadcrumb/breadcrumb.js +2 -2
  10. package/es/button/group.d.ts +1 -1
  11. package/es/button/group.js +5 -3
  12. package/es/city-picker/city-picker.js +1 -0
  13. package/es/city-picker/style/index.css +8 -0
  14. package/es/city-picker/style/index.less +10 -0
  15. package/es/color-picker/color-picker-panel.js +332 -82
  16. package/es/color-picker/color-picker.js +128 -58
  17. package/es/color-picker/constant/colorTypes.js +4 -4
  18. package/es/color-picker/constant/defaultColor.d.ts +1 -1
  19. package/es/color-picker/constant/defaultColor.js +1 -1
  20. package/es/color-picker/interface.d.ts +33 -11
  21. package/es/color-picker/style/index.css +256 -53
  22. package/es/color-picker/style/index.less +277 -73
  23. package/es/color-picker/style/token.less +6 -2
  24. package/es/color-picker/utils/colorFormat.d.ts +5 -1
  25. package/es/color-picker/utils/colorFormat.js +10 -10
  26. package/es/color-picker/utils/convertLetters.d.ts +1 -0
  27. package/es/color-picker/utils/convertLetters.js +12 -0
  28. package/es/color-picker/utils/validateColor.js +12 -9
  29. package/es/config-provider/compDefaultProps.d.ts +8 -0
  30. package/es/config-provider/compDefaultProps.js +8 -0
  31. package/es/popper/index.d.ts +1 -1
  32. package/es/popper/index.js +4 -1
  33. package/es/popper/style/index.css +4 -4
  34. package/es/popper/style/index.less +4 -6
  35. package/es/signature/signature.d.ts +1 -0
  36. package/es/signature/signature.js +42 -8
  37. package/es/tree/tree.d.ts +1 -0
  38. package/es/tree/tree.js +3 -1
  39. package/es/tree/treeNode.d.ts +1 -0
  40. package/es/tree/treeNode.js +3 -2
  41. package/lib/breadcrumb/breadcrumb.js +2 -2
  42. package/lib/button/group.d.ts +1 -1
  43. package/lib/button/group.js +5 -3
  44. package/lib/city-picker/city-picker.js +1 -0
  45. package/lib/city-picker/style/index.css +8 -0
  46. package/lib/city-picker/style/index.less +10 -0
  47. package/lib/color-picker/color-picker-panel.js +329 -79
  48. package/lib/color-picker/color-picker.js +125 -55
  49. package/lib/color-picker/constant/colorTypes.js +4 -4
  50. package/lib/color-picker/constant/defaultColor.d.ts +1 -1
  51. package/lib/color-picker/constant/defaultColor.js +1 -1
  52. package/lib/color-picker/interface.d.ts +33 -11
  53. package/lib/color-picker/style/index.css +256 -53
  54. package/lib/color-picker/style/index.less +277 -73
  55. package/lib/color-picker/style/token.less +6 -2
  56. package/lib/color-picker/utils/colorFormat.d.ts +5 -1
  57. package/lib/color-picker/utils/colorFormat.js +10 -9
  58. package/lib/color-picker/utils/convertLetters.d.ts +1 -0
  59. package/lib/color-picker/utils/convertLetters.js +13 -0
  60. package/lib/color-picker/utils/validateColor.js +12 -9
  61. package/lib/config-provider/compDefaultProps.d.ts +8 -0
  62. package/lib/config-provider/compDefaultProps.js +8 -0
  63. package/lib/popper/index.d.ts +1 -1
  64. package/lib/popper/index.js +4 -1
  65. package/lib/popper/style/index.css +4 -4
  66. package/lib/popper/style/index.less +4 -6
  67. package/lib/signature/signature.d.ts +1 -0
  68. package/lib/signature/signature.js +42 -8
  69. package/lib/tree/tree.d.ts +1 -0
  70. package/lib/tree/tree.js +3 -1
  71. package/lib/tree/treeNode.d.ts +1 -0
  72. package/lib/tree/treeNode.js +3 -2
  73. package/package.json +1 -1
@@ -8,8 +8,13 @@ Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports.default = void 0;
11
+ var _find = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/find"));
12
+ var _filter = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/filter"));
11
13
  var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
14
+ var _fill = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/fill"));
15
+ var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
12
16
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
17
+ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/slicedToArray"));
13
18
  var _react = _interopRequireWildcard(require("react"));
14
19
  var _index = require("../index");
15
20
  var _classnames = _interopRequireDefault(require("classnames"));
@@ -27,13 +32,16 @@ var _ieUtil = require("../_utils/ieUtil");
27
32
  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); }
28
33
  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; }
29
34
  var ColorPickerPanel = function ColorPickerPanel(props) {
30
- var _classNames, _classNames2, _context;
35
+ var _classNames, _context, _context2, _context3, _context4, _context5;
31
36
  var setCorrectColorValue = props.setCorrectColorValue,
37
+ setInputCorrectColorValue = props.setInputCorrectColorValue,
32
38
  setInputColorValue = props.setInputColorValue,
33
39
  setAlpha = props.setAlpha,
34
40
  setAlphaNoVerifyVal = props.setAlphaNoVerifyVal,
35
41
  setIsFollow = props.setIsFollow,
36
- setClickedColorIndex = props.setClickedColorIndex,
42
+ setClickedPresetColorIndex = props.setClickedPresetColorIndex,
43
+ setClickedHistoricalColorIndex = props.setClickedHistoricalColorIndex,
44
+ setClickColorIndex = props.setClickColorIndex,
37
45
  setShowPanel = props.setShowPanel,
38
46
  setColTypeArr = props.setColTypeArr,
39
47
  setCurrentColorType = props.setCurrentColorType,
@@ -41,26 +49,42 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
41
49
  onVisibleChange = props.onVisibleChange,
42
50
  alpha = props.alpha,
43
51
  alphaNoVerifyVal = props.alphaNoVerifyVal,
44
- clickedColorIndex = props.clickedColorIndex,
52
+ clickedPresetColorIndex = props.clickedPresetColorIndex,
53
+ clickedHistoricalColorIndex = props.clickedHistoricalColorIndex,
45
54
  colTypeArr = props.colTypeArr,
46
55
  correctColorValue = props.correctColorValue,
56
+ inputCorrectColorValue = props.inputCorrectColorValue,
47
57
  currentColorType = props.currentColorType,
48
58
  functionalColor = props.functionalColor,
49
59
  functionalColorName = props.functionalColorName,
50
60
  switchName = props.switchName,
51
61
  inputRef = props.inputRef,
52
62
  isFollow = props.isFollow,
63
+ panelFormatConfig = props.panelFormatConfig,
64
+ format = props.format,
53
65
  presetColor = props.presetColor,
66
+ historicalColor = props.historicalColor,
67
+ showClear = props.showClear,
54
68
  showSwitch = props.showSwitch,
55
69
  showColorTransfer = props.showColorTransfer,
56
70
  showPresetColor = props.showPresetColor,
57
71
  showColorPickerBox = props.showColorPickerBox,
58
72
  showColorPickerPanel = props.showColorPickerPanel,
73
+ showAlphaInput = props.showAlphaInput,
59
74
  value = props.value,
60
75
  visible = props.visible,
61
76
  showPanel = props.showPanel;
62
- var panelInputRef = (0, _react.useRef)(null);
77
+ var panelSelectRef = (0, _react.useRef)(null);
63
78
  var panelClsRef = (0, _react.useRef)(null);
79
+ var _useState = (0, _react.useState)(panelFormatConfig),
80
+ _useState2 = (0, _slicedToArray2.default)(_useState, 2),
81
+ innerFormatConfig = _useState2[0],
82
+ setInnerFormatConfig = _useState2[1];
83
+ var _useState3 = (0, _react.useState)(),
84
+ _useState4 = (0, _slicedToArray2.default)(_useState3, 2),
85
+ activeGroupInptItem = _useState4[0],
86
+ setActiveGroupInptItem = _useState4[1];
87
+ var baseFormat = ['HEX', 'HSB', 'RGB', 'HSL'];
64
88
  var Option = _index.Select.Option;
65
89
  var _useContext = (0, _react.useContext)(_configProvider.ConfigContext),
66
90
  getPrefixCls = _useContext.getPrefixCls,
@@ -69,66 +93,121 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
69
93
  var colorPickerPrefixCls = getPrefixCls(prefixCls, 'color-picker');
70
94
  var panelCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel"));
71
95
  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));
96
+ var panelClearColor = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-clear"));
97
+ var panelClearColorBox = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-clear-box"));
98
+ var panelClearColorText = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-clear-text"));
72
99
  var panelFollowThemeCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-switch"));
73
100
  var panelContainerCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container"));
101
+ var panelselectCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container-select"));
74
102
  var panelInputCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container-input"));
103
+ var panelInputGroupCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container-input-group"));
104
+ var gePanelInputGroupItemCls = function gePanelInputGroupItemCls(order) {
105
+ return (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container-input-group-item"), {
106
+ active: activeGroupInptItem === order && order === 1
107
+ });
108
+ };
75
109
  var transparentCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-container-transparent"));
76
- var colorDivContainerCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-colorDivContainer"), (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, "".concat(colorPickerPrefixCls, "-panel-colorDivContainer-unset-color"), (presetColor === null || presetColor === void 0 ? void 0 : presetColor.length) === 0), (0, _defineProperty2.default)(_classNames2, "".concat(colorPickerPrefixCls, "-panel-colorDivContainer-ie11"), _ieUtil.isIE), _classNames2));
77
- var colorLiClick = function colorLiClick(index, colorValue) {
78
- var formatArr = (0, _colorFormat.colorFormat)(colorValue, alpha);
79
- var formatValue = (0, _convertLetters.toLowerCase)(formatArr[(0, _colorFormat.valOfCorrespondingType)(currentColorType)].value);
110
+ var colorBoxCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-color-box"), (0, _defineProperty2.default)({}, "".concat(colorPickerPrefixCls, "-panel-color-box-container-ie11"), _ieUtil.isIE));
111
+ var colorBoxTitleCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-color-box-title"));
112
+ var colorBoxContainerCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-color-box-container"));
113
+ var historicalColorBoxCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-historical-color-box"), (0, _defineProperty2.default)({}, "".concat(colorPickerPrefixCls, "-panel-historical-color-box-container-ie11"), _ieUtil.isIE));
114
+ var historicalColorBoxTitleCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-historical-color-box-title"));
115
+ var historicalColorBoxContainerCls = (0, _classnames.default)("".concat(colorPickerPrefixCls, "-panel-historical-color-box-container"));
116
+ var setPanelState = function setPanelState(formatArr, correctColorValue, inputColorValue, alpha, alphaStr) {
117
+ setColTypeArr(formatArr);
118
+ setCorrectColorValue(correctColorValue);
119
+ setInputCorrectColorValue(inputColorValue);
120
+ setInputColorValue(inputColorValue);
121
+ alpha && setAlpha(alpha);
122
+ alphaStr && setAlphaNoVerifyVal(alphaStr);
123
+ };
124
+ var handleClearClick = function handleClearClick() {
125
+ var formatArr = (0, _colorFormat.colorFormat)(_defaultColor.defaultSystemColor, 0);
126
+ setPanelState(formatArr, _defaultColor.defaultSystemColor, '', 0, '0%');
127
+ setClickColorIndex(-1);
128
+ onChange === null || onChange === void 0 ? void 0 : onChange('', formatArr);
129
+ };
130
+ var presetColorClick = function presetColorClick(index, colorValue) {
131
+ var colorLiAlpha = (0, _colorFormat.strFixed)((0, _color.default)((0, _colorFormat.getColorObj)(colorValue)).alpha(), 2);
132
+ var formatArr = (0, _colorFormat.colorFormat)(colorValue, colorLiAlpha);
133
+ var formatCorrectValue = removeTransparency(colorValue);
134
+ var formatInputValue = (0, _convertLetters.toUpCase)(formatArr[(0, _colorFormat.valOfCorrespondingType)(format)].value);
80
135
  setIsFollow(false);
81
- if (isFollow) {
82
- setAlpha(1);
83
- setAlphaNoVerifyVal(100 + '%');
84
- }
136
+ setAlpha(isFollow ? 1 : colorLiAlpha);
137
+ setAlphaNoVerifyVal(isFollow ? 100 + '%' : colorLiAlpha * 100 + '%');
85
138
  if (value === undefined) {
86
- setInputColorValue(formatValue);
87
- setCorrectColorValue(formatValue);
139
+ setInputColorValue(formatInputValue);
140
+ setCorrectColorValue(formatCorrectValue);
88
141
  setColTypeArr(formatArr);
89
142
  }
90
- setClickedColorIndex(index);
91
- onChange && onChange(formatValue, formatArr);
143
+ setClickedPresetColorIndex(index);
144
+ onChange === null || onChange === void 0 ? void 0 : onChange(formatInputValue, formatArr);
92
145
  };
93
- var handleTypeChange = function handleTypeChange(selectValue, option) {
94
- setCurrentColorType(option.label);
146
+ var historicalColorClick = function historicalColorClick(index, colorValue) {
147
+ var colorLiAlpha = (0, _colorFormat.strFixed)((0, _color.default)((0, _colorFormat.getColorObj)(colorValue)).alpha(), 2);
148
+ var formatArr = (0, _colorFormat.colorFormat)(colorValue, colorLiAlpha);
149
+ var formatCorrectValue = removeTransparency(colorValue);
150
+ var formatInputValue = (0, _convertLetters.toUpCase)(formatArr[(0, _colorFormat.valOfCorrespondingType)(format)].value);
151
+ setIsFollow(false);
152
+ setAlpha(isFollow ? 1 : colorLiAlpha);
153
+ setAlphaNoVerifyVal(isFollow ? 100 + '%' : colorLiAlpha * 100 + '%');
95
154
  if (value === undefined) {
96
- setCorrectColorValue(selectValue);
97
- setInputColorValue(selectValue);
155
+ setInputColorValue(formatInputValue);
156
+ setCorrectColorValue(formatCorrectValue);
157
+ setColTypeArr(formatArr);
98
158
  }
99
- onChange && onChange(selectValue, colTypeArr);
159
+ setClickedHistoricalColorIndex(index);
160
+ onChange === null || onChange === void 0 ? void 0 : onChange(formatInputValue, formatArr);
100
161
  };
101
- var setPanelState = function setPanelState(formatArr, correctColorValue, inputColorValue, alpha, alphaStr) {
102
- setColTypeArr(formatArr);
103
- setCorrectColorValue(correctColorValue);
104
- setInputColorValue(inputColorValue);
105
- alpha && setAlpha(alpha);
106
- alphaStr && setAlphaNoVerifyVal(alphaStr);
162
+ var handleTypeChange = function handleTypeChange(selectValue) {
163
+ var _a, _b, _c;
164
+ setCurrentColorType(selectValue);
165
+ var colorStr = (_a = (0, _find.default)(colTypeArr).call(colTypeArr, function (item) {
166
+ return item.type === selectValue;
167
+ })) === null || _a === void 0 ? void 0 : _a.value;
168
+ setCorrectColorValue((0, _colorFormat.colorFormat)(colorStr, 1, selectValue, true));
169
+ setInputColorValue((_b = (0, _find.default)(colTypeArr).call(colTypeArr, function (item) {
170
+ return item.type === format;
171
+ })) === null || _b === void 0 ? void 0 : _b.value);
172
+ onChange === null || onChange === void 0 ? void 0 : onChange((_c = (0, _find.default)(colTypeArr).call(colTypeArr, function (item) {
173
+ return item.type === format;
174
+ })) === null || _c === void 0 ? void 0 : _c.value, colTypeArr);
175
+ };
176
+ var removeTransparency = function removeTransparency(color) {
177
+ return (0, _colorFormat.colorFormat)(color, 1, currentColorType, true);
107
178
  };
108
179
  var handleAlphaChange = function handleAlphaChange(e) {
109
180
  var regPercentage = /^(0|[1-9][0-9]?|100)%$/;
110
181
  var regDot = /^(0(\.\d+)?|1(\.0+)?)$/;
111
182
  var val = e.target.value;
112
- var formatArr, outValue;
183
+ var getColorFormat = function getColorFormat(alpha) {
184
+ var formatArr = (0, _colorFormat.colorFormat)(correctColorValue, alpha, 'all', true);
185
+ var outValue = formatArr[(0, _colorFormat.valOfCorrespondingType)(format)].value;
186
+ var innerInput = removeTransparency(outValue);
187
+ return {
188
+ formatArr: formatArr,
189
+ outValue: outValue,
190
+ innerInput: innerInput
191
+ };
192
+ };
193
+ var alphaValue;
194
+ if (regPercentage.test(val)) {
195
+ alphaValue = +val.replace('%', '') / 100;
196
+ } else if (regDot.test(val)) {
197
+ alphaValue = +val;
198
+ } else {
199
+ alphaValue = 1;
200
+ }
201
+ var _getColorFormat = getColorFormat(alphaValue),
202
+ formatArr = _getColorFormat.formatArr,
203
+ outValue = _getColorFormat.outValue,
204
+ innerInput = _getColorFormat.innerInput;
113
205
  if (value === undefined) {
114
- setAlphaNoVerifyVal(e.target.value);
115
- if (regPercentage.test(val)) {
116
- formatArr = (0, _colorFormat.colorFormat)(correctColorValue, +val.replace('%', '') / 100, 'all', true);
117
- outValue = formatArr[(0, _colorFormat.valOfCorrespondingType)(currentColorType)].value;
118
- setPanelState(formatArr, outValue, outValue, +val.replace('%', '') / 100);
119
- setClickedColorIndex((0, _colorFormat.highlightPresetColorIndex)(formatArr[0].value, (0, _colorFormat.presetColorToHEX)(presetColor || _systemPresetColor.systemPresetColor)));
120
- } else if (regDot.test(val)) {
121
- formatArr = (0, _colorFormat.colorFormat)(correctColorValue, +val, 'all', true);
122
- outValue = formatArr[(0, _colorFormat.valOfCorrespondingType)(currentColorType)].value;
123
- setPanelState(formatArr, outValue, outValue, (0, _colorFormat.strFixed)(val, 2));
124
- setClickedColorIndex((0, _colorFormat.highlightPresetColorIndex)(formatArr[0].value, (0, _colorFormat.presetColorToHEX)(presetColor || _systemPresetColor.systemPresetColor)));
125
- } else {
126
- formatArr = (0, _colorFormat.colorFormat)(correctColorValue, 1, 'all', true);
127
- outValue = formatArr[(0, _colorFormat.valOfCorrespondingType)(currentColorType)].value;
128
- setPanelState(formatArr, outValue, outValue, 1);
129
- }
130
- onChange && onChange(outValue, formatArr);
206
+ setAlphaNoVerifyVal(val);
207
+ setPanelState(formatArr, innerInput, outValue, alphaValue);
208
+ setClickColorIndex(formatArr[0].value);
131
209
  }
210
+ onChange === null || onChange === void 0 ? void 0 : onChange(outValue, formatArr);
132
211
  };
133
212
  var handleAlphaBlur = function handleAlphaBlur(e) {
134
213
  var regPercentage = /^(0|[1-9][0-9]?|100)%$/;
@@ -142,6 +221,98 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
142
221
  setAlphaNoVerifyVal('100%');
143
222
  }
144
223
  };
224
+ var handleHEXInputChange = function handleHEXInputChange(e) {
225
+ setCorrectColorValue(e.target.value);
226
+ };
227
+ var handleHEXInputBlur = function handleHEXInputBlur(e) {
228
+ var _a, _b, _c;
229
+ var val = e.target.value;
230
+ var correctColor = (_a = (0, _find.default)(colTypeArr).call(colTypeArr, function (item) {
231
+ return item.type === format;
232
+ })) === null || _a === void 0 ? void 0 : _a.value;
233
+ if ((0, _validateColor.validateColor)(val)) {
234
+ var formatArr = (0, _colorFormat.colorFormat)(val, inputCorrectColorValue ? alpha : 1, 'all', true);
235
+ var outValue = formatArr[(0, _colorFormat.valOfCorrespondingType)(format)].value;
236
+ if (value === undefined) {
237
+ var innerInput = removeTransparency(val);
238
+ if (!inputCorrectColorValue) {
239
+ setPanelState(formatArr, innerInput, outValue, 1, '100%');
240
+ } else {
241
+ setPanelState(formatArr, innerInput, outValue);
242
+ }
243
+ } else if (onChange === undefined) {
244
+ setPanelState(colTypeArr, removeTransparency(correctColor), correctColor);
245
+ }
246
+ onChange === null || onChange === void 0 ? void 0 : onChange(outValue, formatArr);
247
+ } else {
248
+ if (!inputCorrectColorValue) {
249
+ var _formatArr = (0, _colorFormat.colorFormat)(correctColor, 1, 'all', true);
250
+ setPanelState(_formatArr, removeTransparency(correctColor), correctColor, 1, '100%');
251
+ onChange === null || onChange === void 0 ? void 0 : onChange((_b = (0, _find.default)(_formatArr).call(_formatArr, function (item) {
252
+ return item.type === format;
253
+ })) === null || _b === void 0 ? void 0 : _b.value, _formatArr);
254
+ } else {
255
+ setPanelState(colTypeArr, removeTransparency(correctColor), correctColor);
256
+ onChange === null || onChange === void 0 ? void 0 : onChange((_c = (0, _find.default)(colTypeArr).call(colTypeArr, function (item) {
257
+ return item.type === format;
258
+ })) === null || _c === void 0 ? void 0 : _c.value, colTypeArr);
259
+ }
260
+ }
261
+ };
262
+ var handleInputGroupItemFocus = function handleInputGroupItemFocus(order) {
263
+ setActiveGroupInptItem(order);
264
+ };
265
+ var handleInputGroupItemBlur = function handleInputGroupItemBlur() {
266
+ var _a;
267
+ var formatArr = (0, _colorFormat.colorFormat)(correctColorValue, inputCorrectColorValue ? alpha : 1, 'all', true);
268
+ var outValue = formatArr[(0, _colorFormat.valOfCorrespondingType)(format)].value;
269
+ if (value === undefined) {
270
+ if (inputCorrectColorValue) {
271
+ setPanelState(formatArr, correctColorValue, outValue);
272
+ } else {
273
+ setPanelState(formatArr, correctColorValue, outValue, 1, '100%');
274
+ }
275
+ } else if (onChange === undefined) {
276
+ var correctColor = (_a = (0, _find.default)(colTypeArr).call(colTypeArr, function (item) {
277
+ return item.type === format;
278
+ })) === null || _a === void 0 ? void 0 : _a.value;
279
+ setPanelState(colTypeArr, removeTransparency(correctColor), correctColor);
280
+ }
281
+ onChange === null || onChange === void 0 ? void 0 : onChange(outValue, formatArr);
282
+ };
283
+ var handleInputGroupItemChange = function handleInputGroupItemChange(e, color, i) {
284
+ var number = e.target.value;
285
+ if (!/^\d*$/.test(number)) return;
286
+ var colorArr = (0, _color.default)((0, _colorFormat.getColorObj)(color)).color;
287
+ var colorComponents = {
288
+ HSB: ['h', 's', 'v'],
289
+ HSL: ['h', 's', 'l'],
290
+ RGB: ['r', 'g', 'b']
291
+ };
292
+ var methodName = colorComponents[currentColorType].join('');
293
+ var getColorAttr = function getColorAttr() {
294
+ var selectedComponents = colorComponents[currentColorType];
295
+ if (!selectedComponents) {
296
+ return;
297
+ }
298
+ return selectedComponents.reduce(function (acc, component, index) {
299
+ acc[component] = i === index ? number : colorArr[index];
300
+ return acc;
301
+ }, {});
302
+ };
303
+ var getColorValue = function getColorValue() {
304
+ var colorObj = (0, _color.default)(getColorAttr())[methodName]();
305
+ if (currentColorType === 'RGB') {
306
+ return colorObj.toString();
307
+ }
308
+ return (0, _colorFormat.colorToStr)(colorObj);
309
+ };
310
+ setCorrectColorValue(getColorValue());
311
+ };
312
+ var getColorNumberVal = function getColorNumberVal(color, i) {
313
+ var colorArr = (0, _color.default)((0, _colorFormat.getColorObj)(color)).color;
314
+ return colorArr[i];
315
+ };
145
316
  var handleSwitchChange = function handleSwitchChange(switchValue) {
146
317
  var formatArr;
147
318
  if (functionalColor) {
@@ -151,39 +322,40 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
151
322
  setIsFollow(switchValue);
152
323
  if (switchValue) {
153
324
  formatArr = (0, _colorFormat.colorFormat)(functionalColor, alpha);
154
- setPanelState(formatArr, formatArr[(0, _colorFormat.valOfCorrespondingType)(currentColorType)].value, functionalColorName, (0, _colorFormat.strFixed)((0, _color.default)((0, _colorFormat.getColorObj)(functionalColor)).alpha(), 2), (0, _colorFormat.strFixed)((0, _color.default)((0, _colorFormat.getColorObj)(functionalColor)).alpha(), 2) * 100 + '%');
155
- setClickedColorIndex((0, _colorFormat.highlightPresetColorIndex)(formatArr[0].value, (0, _colorFormat.presetColorToHEX)(presetColor || _systemPresetColor.systemPresetColor)));
325
+ setPanelState(formatArr, removeTransparency(formatArr[(0, _colorFormat.valOfCorrespondingType)(currentColorType)].value), functionalColorName, (0, _colorFormat.strFixed)((0, _color.default)((0, _colorFormat.getColorObj)(functionalColor)).alpha(), 2), (0, _colorFormat.strFixed)((0, _color.default)((0, _colorFormat.getColorObj)(functionalColor)).alpha(), 2) * 100 + '%');
326
+ setClickColorIndex(formatArr[0].value);
156
327
  } else {
157
328
  formatArr = (0, _colorFormat.colorFormat)(_defaultColor.defaultSystemColor, 1, 'all', true);
158
329
  setPanelState(formatArr, _defaultColor.defaultSystemColor, '', 1, 100 + '%');
159
- setClickedColorIndex(-1);
330
+ setClickColorIndex(formatArr[0].value);
160
331
  }
161
332
  }
162
333
  }
163
334
  (0, _devwarning.default)(!inputValType, 'color-picker', "'themeColor' must be hexadecimal, RGB, HSB, HSL or English color name");
164
335
  }
165
336
  if (switchValue) {
166
- onChange && onChange(functionalColorName, formatArr);
337
+ onChange === null || onChange === void 0 ? void 0 : onChange(functionalColorName, formatArr);
167
338
  } else {
168
- onChange && onChange(_defaultColor.defaultSystemColor, formatArr);
339
+ onChange === null || onChange === void 0 ? void 0 : onChange(_defaultColor.defaultSystemColor, formatArr);
169
340
  }
170
341
  };
171
342
  var handleChromeChange = function handleChromeChange(color) {
172
- var formatArr = (0, _colorFormat.colorFormat)(color.hex, color.rgb.a);
343
+ var formatArr = (0, _colorFormat.colorFormat)(color.hex, inputCorrectColorValue ? color.rgb.a : 1);
173
344
  var colorObj = formatArr[(0, _colorFormat.valOfCorrespondingType)(currentColorType)];
345
+ console.log('colorObj', formatArr, colorObj);
174
346
  if (value === undefined) {
175
347
  setIsFollow(false);
176
- setPanelState(formatArr, colorObj.value, colorObj.value, color.rgb.a, (color.rgb.a * 100).toFixed() + '%');
177
- setClickedColorIndex((0, _colorFormat.highlightPresetColorIndex)(formatArr[0].value, (0, _colorFormat.presetColorToHEX)(presetColor || _systemPresetColor.systemPresetColor)));
348
+ setPanelState(formatArr, removeTransparency(colorObj.value), colorObj.value, inputCorrectColorValue ? color.rgb.a : 1, inputCorrectColorValue ? (color.rgb.a * 100).toFixed() + '%' : '100%');
349
+ setClickColorIndex(formatArr[0].value);
178
350
  }
179
- onChange && onChange(colorObj.value, formatArr);
351
+ onChange === null || onChange === void 0 ? void 0 : onChange(colorObj.value, formatArr);
180
352
  };
181
353
  var checkUserPresetColor = function checkUserPresetColor(colorArr) {
182
354
  if (!colorArr) return false;
183
355
  var isTrueFormat = colorArr.every(function (hexColor) {
184
- return ['HEX', 'HSB', 'RGB', 'HSL', 'colorName'].indexOf((0, _validateColor.validateColor)(hexColor)) !== -1;
356
+ return ['HEX', 'HEXA', 'HSB', 'HSBA', 'RGB', 'RGBA', 'HSL', 'HSLA', 'colorName'].indexOf((0, _validateColor.validateColor)(hexColor)) !== -1;
185
357
  });
186
- (0, _devwarning.default)(!isTrueFormat, 'color-picker', "'presetColor' must be an array of hexadecimal, RGB, HSB, HSL or English color name string type");
358
+ (0, _devwarning.default)(!isTrueFormat, 'color-picker', "'presetColor' must be an array of hexadecimal, HEXA, RGB, RGBA, HSB, HSBA, HSL, HSLA or English color name string type");
187
359
  return isTrueFormat;
188
360
  };
189
361
  (0, _hooks.useOnClickOutside)([panelClsRef, inputRef], function () {
@@ -192,66 +364,144 @@ var ColorPickerPanel = function ColorPickerPanel(props) {
192
364
  }
193
365
  showPanel && onVisibleChange && onVisibleChange(false);
194
366
  });
367
+ (0, _react.useEffect)(function () {
368
+ if (!panelFormatConfig) return;
369
+ if (!Array.isArray(panelFormatConfig.show) || panelFormatConfig.show.length === 0) {
370
+ (0, _devwarning.default)(true, 'color-picker', "'show' property of 'panelFormatConfig' must be one or more of HEX, RGB, HSB, or HSL");
371
+ }
372
+ if (baseFormat.indexOf(panelFormatConfig === null || panelFormatConfig === void 0 ? void 0 : panelFormatConfig.default) === -1) {
373
+ setInnerFormatConfig((0, _extends2.default)((0, _extends2.default)({}, panelFormatConfig), {
374
+ default: 'HEX'
375
+ }));
376
+ (0, _devwarning.default)(true, 'color-picker', "'default' property of 'panelFormatConfig' must be one of HEX, RGB, HSB, or HSL");
377
+ }
378
+ if (panelFormatConfig.show.every(function (item) {
379
+ return baseFormat.indexOf(item) !== -1;
380
+ })) {
381
+ var newShow = (0, _filter.default)(baseFormat).call(baseFormat, function (ele) {
382
+ return panelFormatConfig.show.indexOf(ele) !== -1;
383
+ });
384
+ if (newShow.indexOf(panelFormatConfig.default) === -1) {
385
+ (0, _devwarning.default)(true, 'color-picker', "'default' property of 'panelFormatConfig' must be one of 'show'");
386
+ }
387
+ } else {
388
+ (0, _devwarning.default)(true, 'color-picker', "'show' property of 'panelFormatConfig' must be one or more of HEX, RGB, HSB, or HSL");
389
+ }
390
+ }, [panelFormatConfig]);
195
391
  return _react.default.createElement(_react.default.Fragment, null, showColorPickerPanel && _react.default.createElement("div", {
196
392
  className: panelCls,
197
393
  ref: panelClsRef
198
- }, _react.default.createElement(_reactColor.ChromePicker, {
199
- className: panelChromePickerCls,
200
- color: colTypeArr[2].value,
201
- onChange: handleChromeChange
202
- }), functionalColor && showSwitch && _react.default.createElement("div", {
394
+ }, showClear && _react.default.createElement("div", {
395
+ className: panelClearColor
396
+ }, _react.default.createElement("span", {
397
+ className: panelClearColorBox,
398
+ onClick: handleClearClick
399
+ }), _react.default.createElement("span", {
400
+ className: panelClearColorText
401
+ }, "\u65E0\u989C\u8272\u586B\u5145")), functionalColor && showSwitch && _react.default.createElement("div", {
203
402
  className: panelFollowThemeCls
204
403
  }, _react.default.createElement("span", null, (switchName === null || switchName === void 0 ? void 0 : switchName.internationalName) && locale.getLangMsg('ColorPicker', switchName.internationalName) || switchName.name), _react.default.createElement(_index.Switch, {
205
404
  checked: isFollow,
206
405
  onChange: handleSwitchChange
207
- })), showColorTransfer && _react.default.createElement("div", {
406
+ })), _react.default.createElement(_reactColor.ChromePicker, {
407
+ className: panelChromePickerCls,
408
+ color: colTypeArr[2].value,
409
+ onChange: handleChromeChange
410
+ }), showColorTransfer && _react.default.createElement("div", {
208
411
  className: panelContainerCls
209
412
  }, _react.default.createElement("div", {
210
- className: panelInputCls,
211
- ref: panelInputRef
413
+ className: panelselectCls,
414
+ ref: panelSelectRef
212
415
  }, _react.default.createElement(_index.Select, {
213
416
  disabled: isFollow,
214
417
  borderType: "bordered",
215
- value: correctColorValue,
216
- placeholder: "#",
418
+ value: currentColorType,
217
419
  onChange: handleTypeChange,
218
420
  optionLabelProp: "value",
219
421
  getPopupContainer: function getPopupContainer() {
220
- return panelInputRef.current;
422
+ return panelSelectRef.current;
221
423
  }
222
- }, (0, _map.default)(colTypeArr).call(colTypeArr, function (obj, i) {
424
+ }, (0, _map.default)(_context = innerFormatConfig.show).call(_context, function (name, i) {
223
425
  return _react.default.createElement(Option, {
224
- title: obj.value,
225
- value: obj.value,
426
+ title: name,
427
+ value: name,
226
428
  className: (0, _classnames.default)({
227
- 'active-option': obj.type === currentColorType && obj.value === correctColorValue
429
+ 'active-option': name === currentColorType
228
430
  }),
229
431
  key: i
230
- }, obj.type);
231
- }))), _react.default.createElement(_index.Input, {
432
+ }, name);
433
+ }))), currentColorType === 'HEX' ? _react.default.createElement(_index.Input, {
434
+ className: panelInputCls,
435
+ value: correctColorValue,
436
+ onChange: handleHEXInputChange,
437
+ onBlur: handleHEXInputBlur,
438
+ borderType: "bordered",
439
+ disabled: isFollow
440
+ }) : _react.default.createElement("div", {
441
+ className: panelInputGroupCls
442
+ }, (0, _map.default)(_context2 = (0, _fill.default)(_context3 = new Array(3)).call(_context3, undefined)).call(_context2, function (_, i) {
443
+ return _react.default.createElement(_index.Input, {
444
+ key: i,
445
+ className: gePanelInputGroupItemCls(i),
446
+ onFocus: function onFocus() {
447
+ handleInputGroupItemFocus(i);
448
+ },
449
+ onBlur: handleInputGroupItemBlur,
450
+ value: getColorNumberVal(correctColorValue, i),
451
+ onChange: function onChange(e) {
452
+ handleInputGroupItemChange(e, correctColorValue, i);
453
+ },
454
+ borderType: "bordered",
455
+ disabled: isFollow
456
+ });
457
+ })), showAlphaInput && _react.default.createElement(_index.Input, {
232
458
  className: transparentCls,
233
459
  onChange: handleAlphaChange,
234
460
  onBlur: handleAlphaBlur,
235
461
  borderType: "bordered",
236
462
  value: alphaNoVerifyVal,
237
463
  disabled: isFollow
238
- })), showPresetColor && _react.default.createElement("div", {
239
- className: colorDivContainerCls
240
- }, (0, _map.default)(_context = checkUserPresetColor(presetColor) && (0, _colorFormat.presetColorToHEX)(presetColor) || _systemPresetColor.systemPresetColor).call(_context, function (colorValue, i) {
464
+ })), historicalColor && (historicalColor === null || historicalColor === void 0 ? void 0 : historicalColor.length) > 0 && _react.default.createElement("div", {
465
+ className: historicalColorBoxCls
466
+ }, _react.default.createElement("div", {
467
+ className: historicalColorBoxTitleCls
468
+ }, "\u6700\u8FD1\u4F7F\u7528\u989C\u8272"), _react.default.createElement("div", {
469
+ className: historicalColorBoxContainerCls
470
+ }, checkUserPresetColor(historicalColor) && (0, _map.default)(_context4 = (0, _colorFormat.presetColorToHEX)(historicalColor)).call(_context4, function (colorValue, i) {
471
+ return _react.default.createElement("li", {
472
+ key: i,
473
+ style: {
474
+ backgroundColor: "".concat(colorValue)
475
+ },
476
+ onClick: function onClick() {
477
+ historicalColorClick(i, colorValue);
478
+ }
479
+ }, _react.default.createElement("div", {
480
+ className: (0, _classnames.default)('square', {
481
+ 'square-click': clickedHistoricalColorIndex === i
482
+ })
483
+ }));
484
+ }))), showPresetColor && (presetColor && (presetColor === null || presetColor === void 0 ? void 0 : presetColor.length) > 0 || !presetColor && _systemPresetColor.systemPresetColor.length > 0) && _react.default.createElement("div", {
485
+ className: colorBoxCls
486
+ }, historicalColor && (historicalColor === null || historicalColor === void 0 ? void 0 : historicalColor.length) > 0 && _react.default.createElement("div", {
487
+ className: colorBoxTitleCls
488
+ }, "\u63A8\u8350\u8272"), _react.default.createElement("div", {
489
+ className: colorBoxContainerCls
490
+ }, (0, _map.default)(_context5 = checkUserPresetColor(presetColor) && (0, _colorFormat.presetColorToHEX)(presetColor) || _systemPresetColor.systemPresetColor).call(_context5, function (colorValue, i) {
241
491
  return _react.default.createElement("li", {
242
492
  key: i,
243
493
  style: {
244
494
  backgroundColor: "".concat(colorValue)
245
495
  },
246
496
  onClick: function onClick() {
247
- colorLiClick(i, colorValue);
497
+ presetColorClick(i, colorValue);
248
498
  }
249
499
  }, _react.default.createElement("div", {
250
500
  className: (0, _classnames.default)('square', {
251
- 'square-click': clickedColorIndex === i
501
+ 'square-click': clickedPresetColorIndex === i
252
502
  })
253
503
  }));
254
- }))));
504
+ })))));
255
505
  };
256
506
  ColorPickerPanel.displayName = 'ColorPickerPanel';
257
507
  var _default = ColorPickerPanel;