@kdcloudjs/kdesign 1.2.0 → 1.2.3

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 (106) hide show
  1. package/CHANGELOG.md +53 -0
  2. package/dist/kdesign-complete.less +566 -478
  3. package/dist/kdesign.css +240 -246
  4. package/dist/kdesign.css.map +1 -1
  5. package/dist/kdesign.js +350 -299
  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/usePopper.js +33 -11
  11. package/es/button/style/index.css +3 -3
  12. package/es/button/style/token.less +3 -3
  13. package/es/carousel/displayList.js +8 -4
  14. package/es/carousel/fadeList.js +9 -5
  15. package/es/carousel/slideList.js +6 -3
  16. package/es/carousel/style/index.css +66 -3
  17. package/es/carousel/style/index.less +67 -2
  18. package/es/collapse/panel.d.ts +1 -0
  19. package/es/collapse/panel.js +17 -5
  20. package/es/collapse/style/index.css +32 -6
  21. package/es/collapse/style/index.less +24 -1
  22. package/es/collapse/style/token.less +12 -10
  23. package/es/config-provider/compDefaultProps.d.ts +1 -0
  24. package/es/config-provider/compDefaultProps.js +2 -1
  25. package/es/drawer/drawer.d.ts +1 -0
  26. package/es/drawer/drawer.js +56 -21
  27. package/es/dropdown/style/index.css +5 -5
  28. package/es/form/Field.js +9 -4
  29. package/es/form/Form.js +7 -2
  30. package/es/form/hooks/useForm.js +1 -0
  31. package/es/form/interface.d.ts +5 -0
  32. package/es/input-number/inputNumber.d.ts +1 -0
  33. package/es/input-number/inputNumber.js +3 -2
  34. package/es/locale/locale.d.ts +1 -0
  35. package/es/locale/zh-CN.d.ts +1 -0
  36. package/es/locale/zh-CN.js +2 -1
  37. package/es/menu/subMenu.js +6 -2
  38. package/es/popconfirm/style/index.css +5 -5
  39. package/es/radio/radio.js +3 -1
  40. package/es/radio/style/index.css +51 -24
  41. package/es/radio/style/index.less +28 -2
  42. package/es/radio/style/token.less +4 -4
  43. package/es/select/option.js +1 -1
  44. package/es/select/style/index.css +27 -12
  45. package/es/select/style/index.less +382 -368
  46. package/es/select/style/token.less +6 -3
  47. package/es/steps/style/index.css +40 -32
  48. package/es/steps/style/index.less +23 -33
  49. package/es/steps/style/token.less +6 -9
  50. package/es/style/mixins/index.less +5 -5
  51. package/es/tabs/tabs.js +5 -1
  52. package/es/tag/style/index.css +2 -147
  53. package/es/tag/style/index.less +4 -24
  54. package/es/tag/style/mixin.less +0 -13
  55. package/es/tag/style/token.less +1 -1
  56. package/es/tooltip/style/index.css +8 -8
  57. package/es/tooltip/style/index.less +2 -2
  58. package/lib/_utils/usePopper.js +34 -11
  59. package/lib/button/style/index.css +3 -3
  60. package/lib/button/style/token.less +3 -3
  61. package/lib/carousel/displayList.js +9 -4
  62. package/lib/carousel/fadeList.js +10 -5
  63. package/lib/carousel/slideList.js +6 -3
  64. package/lib/carousel/style/index.css +66 -3
  65. package/lib/carousel/style/index.less +67 -2
  66. package/lib/collapse/panel.d.ts +1 -0
  67. package/lib/collapse/panel.js +17 -5
  68. package/lib/collapse/style/index.css +32 -6
  69. package/lib/collapse/style/index.less +24 -1
  70. package/lib/collapse/style/token.less +12 -10
  71. package/lib/config-provider/compDefaultProps.d.ts +1 -0
  72. package/lib/config-provider/compDefaultProps.js +2 -1
  73. package/lib/drawer/drawer.d.ts +1 -0
  74. package/lib/drawer/drawer.js +61 -27
  75. package/lib/dropdown/style/index.css +5 -5
  76. package/lib/form/Field.js +10 -4
  77. package/lib/form/Form.js +7 -2
  78. package/lib/form/hooks/useForm.js +1 -0
  79. package/lib/form/interface.d.ts +5 -0
  80. package/lib/input-number/inputNumber.d.ts +1 -0
  81. package/lib/input-number/inputNumber.js +3 -2
  82. package/lib/locale/locale.d.ts +1 -0
  83. package/lib/locale/zh-CN.d.ts +1 -0
  84. package/lib/locale/zh-CN.js +2 -1
  85. package/lib/menu/subMenu.js +6 -2
  86. package/lib/popconfirm/style/index.css +5 -5
  87. package/lib/radio/radio.js +3 -1
  88. package/lib/radio/style/index.css +51 -24
  89. package/lib/radio/style/index.less +28 -2
  90. package/lib/radio/style/token.less +4 -4
  91. package/lib/select/option.js +1 -1
  92. package/lib/select/style/index.css +27 -12
  93. package/lib/select/style/index.less +382 -368
  94. package/lib/select/style/token.less +6 -3
  95. package/lib/steps/style/index.css +40 -32
  96. package/lib/steps/style/index.less +23 -33
  97. package/lib/steps/style/token.less +6 -9
  98. package/lib/style/mixins/index.less +5 -5
  99. package/lib/tabs/tabs.js +6 -1
  100. package/lib/tag/style/index.css +2 -147
  101. package/lib/tag/style/index.less +4 -24
  102. package/lib/tag/style/mixin.less +0 -13
  103. package/lib/tag/style/token.less +1 -1
  104. package/lib/tooltip/style/index.css +8 -8
  105. package/lib/tooltip/style/index.less +2 -2
  106. package/package.json +1 -1
@@ -151,7 +151,7 @@
151
151
  .kd-dropdown.arrow::before {
152
152
  position: absolute;
153
153
  z-index: -2;
154
- background: transparent;
154
+ background: var(--kd-g-color-background, #fff);
155
155
  border-style: solid;
156
156
  border-width: var(--arrowSize);
157
157
  -webkit-transform: rotate(45deg);
@@ -176,7 +176,7 @@
176
176
  top: var(--arrowSpill);
177
177
  -webkit-box-shadow: -2px -2px calc(10px - 1px) rgba(0, 0, 0, 0.1);
178
178
  box-shadow: -2px -2px calc(10px - 1px) rgba(0, 0, 0, 0.1);
179
- border-color: var(--kd-g-color-white, #fff) transparent transparent var(--kd-g-color-white, #fff);
179
+ border-color: var(--kd-g-color-background, #fff) transparent transparent var(--kd-g-color-background, #fff);
180
180
  }
181
181
  .kd-dropdown.arrow.topLeft::before,
182
182
  .kd-dropdown.arrow.top::before,
@@ -185,7 +185,7 @@
185
185
  bottom: var(--arrowSpill);
186
186
  -webkit-box-shadow: 3px 3px calc(10px + 1px) rgba(0, 0, 0, 0.15);
187
187
  box-shadow: 3px 3px calc(10px + 1px) rgba(0, 0, 0, 0.15);
188
- border-color: transparent var(--kd-g-color-white, #fff) var(--kd-g-color-white, #fff) transparent;
188
+ border-color: transparent var(--kd-g-color-background, #fff) var(--kd-g-color-background, #fff) transparent;
189
189
  }
190
190
  .kd-dropdown.arrow.leftTop::before,
191
191
  .kd-dropdown.arrow.left::before,
@@ -194,7 +194,7 @@
194
194
  right: var(--arrowSpill);
195
195
  -webkit-box-shadow: 3px 0 10px rgba(0, 0, 0, 0.12), 0 -2px 10px rgba(204, 149, 149, 0.12);
196
196
  box-shadow: 3px 0 10px rgba(0, 0, 0, 0.12), 0 -2px 10px rgba(204, 149, 149, 0.12);
197
- border-color: var(--kd-g-color-white, #fff) var(--kd-g-color-white, #fff) transparent transparent;
197
+ border-color: var(--kd-g-color-background, #fff) var(--kd-g-color-background, #fff) transparent transparent;
198
198
  }
199
199
  .kd-dropdown.arrow.rightTop::before,
200
200
  .kd-dropdown.arrow.right::before,
@@ -203,7 +203,7 @@
203
203
  left: var(--arrowSpill);
204
204
  -webkit-box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), -2px 0 10px rgba(0, 0, 0, 0.1);
205
205
  box-shadow: 0 3px 10px rgba(0, 0, 0, 0.1), -2px 0 10px rgba(0, 0, 0, 0.1);
206
- border-color: transparent transparent var(--kd-g-color-white, #fff) var(--kd-g-color-white, #fff);
206
+ border-color: transparent transparent var(--kd-g-color-background, #fff) var(--kd-g-color-background, #fff);
207
207
  }
208
208
  .kd-dropdown-menu {
209
209
  max-height: var(--kd-c-dropdown-menu-sizing-max-height, 336px);
package/lib/form/Field.js CHANGED
@@ -23,6 +23,8 @@ var _slicedToArray2 = _interopRequireDefault(require("@babel/runtime-corejs3/hel
23
23
 
24
24
  var _getOwnPropertySymbols = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-symbols"));
25
25
 
26
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
27
+
26
28
  var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
27
29
 
28
30
  var _react = _interopRequireWildcard(require("react"));
@@ -85,7 +87,7 @@ var generateEventHandler = function generateEventHandler(handler, validateTrigge
85
87
  };
86
88
 
87
89
  var Field = function Field(props) {
88
- var _classnames, _context;
90
+ var _classnames, _context2;
89
91
 
90
92
  (0, _devwarning.default)(! /*#__PURE__*/_react.default.isValidElement(props.children), 'Form.Item', 'Children of Form.Item is not a valid element');
91
93
  (0, _devwarning.default)(!props.name, 'Form.Item', 'Form.Item must have a name');
@@ -107,7 +109,8 @@ var Field = function Field(props) {
107
109
  getFieldError = fieldContext.getFieldError,
108
110
  getInternalHooks = fieldContext.getInternalHooks,
109
111
  vertical = fieldContext.vertical,
110
- getDefaultValue = fieldContext.getDefaultValue;
112
+ getDefaultValue = fieldContext.getDefaultValue,
113
+ local = fieldContext.local;
111
114
 
112
115
  var _getInternalHooks = getInternalHooks(_useForm.INTERNAL_HOOK_KEY),
113
116
  registerField = _getInternalHooks.registerField,
@@ -162,8 +165,11 @@ var Field = function Field(props) {
162
165
  if (Array.isArray(rules) && !rules.some(function (rule) {
163
166
  return Object.prototype.hasOwnProperty.call(rule, 'required');
164
167
  }) && required) {
168
+ var _context;
169
+
165
170
  rules.push({
166
- required: true
171
+ required: true,
172
+ message: (0, _concat.default)(_context = "".concat(local && local.requiredMessage)).call(_context, label)
167
173
  });
168
174
  }
169
175
 
@@ -282,7 +288,7 @@ var Field = function Field(props) {
282
288
  }), /*#__PURE__*/_react.default.createElement(_FieldWrapper.default, {
283
289
  width: wrapperWidth,
284
290
  validateMessage: validateMessage
285
- }, (0, _map.default)(_context = (0, _reactChildren.toArray)(children)).call(_context, function (child, index) {
291
+ }, (0, _map.default)(_context2 = (0, _reactChildren.toArray)(children)).call(_context2, function (child, index) {
286
292
  var keys = mergeProps((0, _extends3.default)((0, _extends3.default)({
287
293
  disabled: disabled,
288
294
  value: value
package/lib/form/Form.js CHANGED
@@ -60,9 +60,13 @@ var Form = function Form(props, ref) {
60
60
  var _useContext = (0, _react.useContext)(_configProvider.ConfigContext),
61
61
  getPrefixCls = _useContext.getPrefixCls,
62
62
  prefixCls = _useContext.prefixCls,
63
- userDefaultProps = _useContext.compDefaultProps;
63
+ userDefaultProps = _useContext.compDefaultProps,
64
+ globalLocale = _useContext.locale;
64
65
 
65
66
  var formProps = (0, _utils.getCompProps)('Form', userDefaultProps, props);
67
+ var formLang = globalLocale.getCompLangMsg({
68
+ componentName: 'Form'
69
+ });
66
70
 
67
71
  var children = formProps.children,
68
72
  defaultValues = formProps.defaultValues,
@@ -116,9 +120,10 @@ var Form = function Form(props, ref) {
116
120
  labelAlign: labelAlign,
117
121
  labelWidth: labelWidth,
118
122
  wrapperWidth: wrapperWidth,
123
+ local: formLang,
119
124
  vertical: layout === 'vertical'
120
125
  });
121
- }, [formInstance, labelAlign, labelWidth, wrapperWidth, layout]);
126
+ }, [formInstance, labelAlign, labelWidth, wrapperWidth, layout, formLang]);
122
127
 
123
128
  var handleSubmit = function handleSubmit(evt) {
124
129
  evt.preventDefault();
@@ -229,6 +229,7 @@ var FormStore = /*#__PURE__*/(0, _createClass2.default)(function FormStore() {
229
229
  }
230
230
 
231
231
  _this.store = newStore;
232
+ _this.errorMessages = {};
232
233
 
233
234
  _this.notifyObservers(prevStore, null, 'reset');
234
235
  };
@@ -25,11 +25,16 @@ export interface FormInstance<Values = any> {
25
25
  submit: () => void;
26
26
  getInternalHooks: (secret: string) => InternalHooks | null;
27
27
  }
28
+ export interface InnerLocale {
29
+ locale: string;
30
+ requiredMessage: string;
31
+ }
28
32
  export interface InternalFormInstance extends FormInstance {
29
33
  labelWidth?: string | number;
30
34
  labelAlign?: LabelAlign;
31
35
  wrapperWidth?: string | number;
32
36
  vertical?: boolean;
37
+ local?: InnerLocale;
33
38
  getInternalHooks: (key: string) => InternalHooks | null;
34
39
  }
35
40
  export declare type Stores = {
@@ -21,6 +21,7 @@ export interface InputNumberProps extends InputProps {
21
21
  mustInPrecisionScope?: boolean;
22
22
  stepOption?: StepOption;
23
23
  stepperrref?: any;
24
+ formatter?: (value: string | undefined) => string;
24
25
  }
25
26
  declare const InputNumber: React.ForwardRefExoticComponent<InputNumberProps & React.RefAttributes<unknown>>;
26
27
  export default InputNumber;
@@ -84,7 +84,8 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
84
84
  maxMark = inputNumberProps.maxMark,
85
85
  prefix = inputNumberProps.prefix,
86
86
  suffix = inputNumberProps.suffix,
87
- others = __rest(inputNumberProps, ["value", "defaultValue", "mustInScope", "decimalLength", "mustInPrecisionScope", "digitLength", "onChange", "symbol", "zeroShow", "showDecimalTailZero", "code", "roundMethod", "mask", "stepOption", "min", "minMark", "max", "maxMark", "prefix", "suffix"]);
87
+ formatter = inputNumberProps.formatter,
88
+ others = __rest(inputNumberProps, ["value", "defaultValue", "mustInScope", "decimalLength", "mustInPrecisionScope", "digitLength", "onChange", "symbol", "zeroShow", "showDecimalTailZero", "code", "roundMethod", "mask", "stepOption", "min", "minMark", "max", "maxMark", "prefix", "suffix", "formatter"]);
88
89
 
89
90
  var initVal = value === undefined ? defaultValue : value;
90
91
 
@@ -364,7 +365,7 @@ var InternalInputNumber = function InternalInputNumber(props, ref) {
364
365
  });
365
366
  return /*#__PURE__*/_react.default.createElement(_input.default, (0, _extends2.default)({}, others, {
366
367
  ref: inputNumberRef,
367
- value: inputValue,
368
+ value: inputValue ? (formatter === null || formatter === void 0 ? void 0 : formatter(inputValue)) || inputValue : inputValue,
368
369
  prefix: prefix,
369
370
  suffix: suffix,
370
371
  onChange: handleChange,
@@ -84,6 +84,7 @@ declare class LocaleCache {
84
84
  'Filter.and': string;
85
85
  'Filter.settings': string;
86
86
  'Filter.schemeNamePlaceholder': string;
87
+ 'Form.requiredMessage': string;
87
88
  'DatePicker.placeholder': string;
88
89
  'DatePicker.yearPlaceholder': string;
89
90
  'DatePicker.quarterPlaceholder': string;
@@ -58,6 +58,7 @@ declare const locale: {
58
58
  'Filter.and': string;
59
59
  'Filter.settings': string;
60
60
  'Filter.schemeNamePlaceholder': string;
61
+ 'Form.requiredMessage': string;
61
62
  'DatePicker.placeholder': string;
62
63
  'DatePicker.yearPlaceholder': string;
63
64
  'DatePicker.quarterPlaceholder': string;
@@ -72,7 +72,8 @@ var locale = (0, _extends2.default)((0, _extends2.default)({
72
72
  'Filter.query': '查询',
73
73
  'Filter.and': '并且',
74
74
  'Filter.settings': '设置',
75
- 'Filter.schemeNamePlaceholder': '请输入方案名称'
75
+ 'Filter.schemeNamePlaceholder': '请输入方案名称',
76
+ 'Form.requiredMessage': '请输入您的'
76
77
  });
77
78
  var _default = locale;
78
79
  exports.default = _default;
@@ -241,6 +241,11 @@ var SubMenu = function SubMenu(props) {
241
241
 
242
242
  // 保存路径
243
243
  info.keyPath = (0, _concat.default)(_context = info.keyPath).call(_context, [keyValue]);
244
+
245
+ if (triggerSubMenuAction === 'click' && mode === 'vertical') {
246
+ closeSubMenu();
247
+ }
248
+
244
249
  restProps.handleOnClick && restProps.handleOnClick(info);
245
250
  }; // 子菜单展开收缩
246
251
 
@@ -390,8 +395,7 @@ var SubMenu = function SubMenu(props) {
390
395
  return /*#__PURE__*/React.createElement("li", (0, _extends2.default)({
391
396
  ref: subMenuRef,
392
397
  className: (0, _classnames.default)(prefixCls, className, (_classNames2 = {}, (0, _defineProperty2.default)(_classNames2, "".concat(prefixCls, "-collapsed"), collapsed), (0, _defineProperty2.default)(_classNames2, "".concat(prefixCls, "-disabled"), disabled), (0, _defineProperty2.default)(_classNames2, "".concat(prefixCls, "-hover"), !disabled && isVisible), _classNames2)),
393
- key: keyValue,
394
- title: title
398
+ key: keyValue
395
399
  }, mouseEvent, {
396
400
  style: style
397
401
  }), /*#__PURE__*/React.createElement("div", {
@@ -142,7 +142,7 @@
142
142
  .kd-popconfirm.arrow::before {
143
143
  position: absolute;
144
144
  z-index: -2;
145
- background: transparent;
145
+ background: var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff));
146
146
  border-style: solid;
147
147
  border-width: var(--arrowSize);
148
148
  -webkit-transform: rotate(45deg);
@@ -167,7 +167,7 @@
167
167
  top: var(--arrowSpill);
168
168
  -webkit-box-shadow: -2px -2px calc(16px - 1px) rgba(0, 0, 0, 0.1);
169
169
  box-shadow: -2px -2px calc(16px - 1px) rgba(0, 0, 0, 0.1);
170
- border-color: var(--kd-g-color-white, #fff) transparent transparent var(--kd-g-color-white, #fff);
170
+ border-color: var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff)) transparent transparent var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff));
171
171
  }
172
172
  .kd-popconfirm.arrow.topLeft::before,
173
173
  .kd-popconfirm.arrow.top::before,
@@ -176,7 +176,7 @@
176
176
  bottom: var(--arrowSpill);
177
177
  -webkit-box-shadow: 3px 3px calc(16px + 1px) rgba(0, 0, 0, 0.15);
178
178
  box-shadow: 3px 3px calc(16px + 1px) rgba(0, 0, 0, 0.15);
179
- border-color: transparent var(--kd-g-color-white, #fff) var(--kd-g-color-white, #fff) transparent;
179
+ border-color: transparent var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff)) transparent;
180
180
  }
181
181
  .kd-popconfirm.arrow.leftTop::before,
182
182
  .kd-popconfirm.arrow.left::before,
@@ -185,7 +185,7 @@
185
185
  right: var(--arrowSpill);
186
186
  -webkit-box-shadow: 3px 0 16px rgba(0, 0, 0, 0.12), 0 -2px 16px rgba(204, 149, 149, 0.12);
187
187
  box-shadow: 3px 0 16px rgba(0, 0, 0, 0.12), 0 -2px 16px rgba(204, 149, 149, 0.12);
188
- border-color: var(--kd-g-color-white, #fff) var(--kd-g-color-white, #fff) transparent transparent;
188
+ border-color: var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff)) transparent transparent;
189
189
  }
190
190
  .kd-popconfirm.arrow.rightTop::before,
191
191
  .kd-popconfirm.arrow.right::before,
@@ -194,7 +194,7 @@
194
194
  left: var(--arrowSpill);
195
195
  -webkit-box-shadow: 0 3px 16px rgba(0, 0, 0, 0.1), -2px 0 16px rgba(0, 0, 0, 0.1);
196
196
  box-shadow: 0 3px 16px rgba(0, 0, 0, 0.1), -2px 0 16px rgba(0, 0, 0, 0.1);
197
- border-color: transparent transparent var(--kd-g-color-white, #fff) var(--kd-g-color-white, #fff);
197
+ border-color: transparent transparent var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff)) var(--kd-c-popconfirm-color-background, var(--kd-g-color-background, #fff));
198
198
  }
199
199
  .kd-popconfirm-content {
200
200
  -webkit-box-sizing: border-box;
@@ -129,7 +129,9 @@ var InternalRadio = function InternalRadio(props, ref) {
129
129
  }, /*#__PURE__*/React.createElement("input", (0, _extends2.default)({
130
130
  type: "radio",
131
131
  className: "".concat(radioPrefixCls, "-input")
132
- }, radioProps)), children !== undefined ? /*#__PURE__*/React.createElement("span", null, children) : null)
132
+ }, radioProps)), children !== undefined ? /*#__PURE__*/React.createElement("span", {
133
+ className: "".concat(radioPrefixCls, "-text")
134
+ }, children) : null)
133
135
  );
134
136
  };
135
137
 
@@ -115,9 +115,10 @@
115
115
  font-feature-settings: 'tnum';
116
116
  position: relative;
117
117
  display: inline-block;
118
- padding-left: var(--kd-c-radio-square-sizing-width-height, 13px);
118
+ padding-left: var(--kd-c-radio-square-sizing-width-height, 14px);
119
119
  margin-right: var(--kd-c-radio-spacing-margin-right, 8px);
120
120
  white-space: nowrap;
121
+ text-overflow: ellipsis;
121
122
  cursor: pointer;
122
123
  vertical-align: middle;
123
124
  color: var(--kd-c-radio-color-font, var(--kd-g-color-text-primary, #212121));
@@ -127,8 +128,8 @@
127
128
  position: absolute;
128
129
  top: 50%;
129
130
  left: 0;
130
- height: var(--kd-c-radio-square-sizing-width-height, 13px);
131
- width: var(--kd-c-radio-square-sizing-width-height, 13px);
131
+ height: var(--kd-c-radio-square-sizing-width-height, 14px);
132
+ width: var(--kd-c-radio-square-sizing-width-height, 14px);
132
133
  content: '';
133
134
  border-radius: 50%;
134
135
  -webkit-box-sizing: border-box;
@@ -146,8 +147,8 @@
146
147
  position: absolute;
147
148
  top: 50%;
148
149
  left: 2px;
149
- width: calc(var(--kd-c-radio-square-sizing-width-height, 13px) - 4px);
150
- height: calc(var(--kd-c-radio-square-sizing-width-height, 13px) - 4px);
150
+ width: calc(var(--kd-c-radio-square-sizing-width-height, 14px) - 4px);
151
+ height: calc(var(--kd-c-radio-square-sizing-width-height, 14px) - 4px);
151
152
  content: '';
152
153
  border-radius: 50%;
153
154
  background-color: var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3));
@@ -165,7 +166,10 @@
165
166
  opacity: 0;
166
167
  }
167
168
  .kd-radio > span {
168
- padding: 0 6px 0 var(--kd-c-radio-spacing-padding-left, 6px);
169
+ padding: 0 6px 0 var(--kd-c-radio-spacing-padding-left, 4px);
170
+ }
171
+ .kd-radio:hover {
172
+ color: var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3));
169
173
  }
170
174
  .kd-radio:hover::before {
171
175
  border-color: var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3));
@@ -174,15 +178,15 @@
174
178
  border-color: var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3));
175
179
  }
176
180
  .kd-radio-checked:focus-within::before {
177
- -webkit-box-shadow: 0 0 0 3px rgba(var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3)), 10%);
178
- box-shadow: 0 0 0 3px rgba(var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3)), 10%);
181
+ -webkit-box-shadow: 0 0 0 3px rgba(85, 130, 243, 0.1);
182
+ box-shadow: 0 0 0 3px rgba(85, 130, 243, 0.1);
179
183
  }
180
184
  .kd-radio-checked::after {
181
185
  position: absolute;
182
186
  top: 50%;
183
187
  left: 2px;
184
- width: calc(var(--kd-c-radio-square-sizing-width-height, 13px) - 4px);
185
- height: calc(var(--kd-c-radio-square-sizing-width-height, 13px) - 4px);
188
+ width: calc(var(--kd-c-radio-square-sizing-width-height, 14px) - 4px);
189
+ height: calc(var(--kd-c-radio-square-sizing-width-height, 14px) - 4px);
186
190
  content: '';
187
191
  border-radius: 50%;
188
192
  background-color: var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3));
@@ -213,6 +217,13 @@
213
217
  -webkit-animation: none;
214
218
  animation: none;
215
219
  }
220
+ .kd-radio-disabled.kd-radio-checked,
221
+ .kd-radio-disabled:hover.kd-radio-checked {
222
+ color: var(--kd-c-radio-color-font, var(--kd-g-color-text-primary, #212121));
223
+ }
224
+ .kd-radio-text {
225
+ line-height: 1.5;
226
+ }
216
227
  .kd-radio-square {
217
228
  -webkit-box-sizing: border-box;
218
229
  box-sizing: border-box;
@@ -222,15 +233,17 @@
222
233
  list-style: none;
223
234
  -webkit-font-feature-settings: 'tnum';
224
235
  font-feature-settings: 'tnum';
236
+ white-space: nowrap;
237
+ text-overflow: ellipsis;
225
238
  position: relative;
226
239
  display: inline-block;
227
240
  height: var(--kd-c-radio-square-sizing-height, 32px);
228
- padding-top: var(--kd-c-radio-square-spacing-padding-vertical, 0px);
229
- padding-right: var(--kd-c-radio-square-spacing-padding-horizontal, 20px);
230
- padding-bottom: var(--kd-c-radio-square-spacing-padding-vertical, 0px);
231
- padding-left: var(--kd-c-radio-square-spacing-padding-horizontal, 20px);
241
+ padding-top: var(--kd-c-radio-square-spacing-padding-vertical, 6px);
242
+ padding-right: var(--kd-c-radio-square-spacing-padding-horizontal, 12px);
243
+ padding-bottom: var(--kd-c-radio-square-spacing-padding-vertical, 6px);
244
+ padding-left: var(--kd-c-radio-square-spacing-padding-horizontal, 12px);
232
245
  margin-right: var(--kd-c-radio-spacing-margin-right, 8px);
233
- line-height: calc(var(--kd-c-radio-square-sizing-height, 32px) - (var(--kd-c-radio-square-spacing-padding-vertical, 0px) * 2) - (var(--kd-c-radio-radius-border-width, 1px) * 2));
246
+ line-height: calc(var(--kd-c-radio-square-sizing-height, 32px) - (var(--kd-c-radio-square-spacing-padding-vertical, 6px) * 2) - (var(--kd-c-radio-radius-border-width, 1px) * 2));
234
247
  vertical-align: middle;
235
248
  color: var(--kd-c-radio-color-font, var(--kd-g-color-text-primary, #212121));
236
249
  font-size: var(--kd-c-radio-font-size, var(--kd-g-font-size-small, 12px));
@@ -279,8 +292,8 @@
279
292
  border-color: var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3));
280
293
  }
281
294
  .kd-radio-square-checked:focus-within {
282
- -webkit-box-shadow: 0 0 0 3px rgba(var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3)), 10%);
283
- box-shadow: 0 0 0 3px rgba(var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3)), 10%);
295
+ -webkit-box-shadow: 0 0 0 3px rgba(85, 130, 243, 0.1);
296
+ box-shadow: 0 0 0 3px rgba(85, 130, 243, 0.1);
284
297
  }
285
298
  .kd-radio-square-checked::after {
286
299
  position: absolute;
@@ -314,6 +327,13 @@
314
327
  -webkit-animation: none;
315
328
  animation: none;
316
329
  }
330
+ .kd-radio-square-disabled.kd-radio-square-checked,
331
+ .kd-radio-square-disabled:hover.kd-radio-square-checked {
332
+ color: var(--kd-c-radio-color-font, var(--kd-g-color-text-primary, #212121));
333
+ }
334
+ .kd-radio-square-text {
335
+ line-height: 1.5;
336
+ }
317
337
  .kd-radio-button {
318
338
  -webkit-box-sizing: border-box;
319
339
  box-sizing: border-box;
@@ -326,11 +346,11 @@
326
346
  position: relative;
327
347
  display: inline-block;
328
348
  height: var(--kd-c-radio-square-sizing-height, 32px);
329
- padding-top: var(--kd-c-radio-square-spacing-padding-vertical, 0px);
330
- padding-right: var(--kd-c-radio-square-spacing-padding-horizontal, 20px);
331
- padding-bottom: var(--kd-c-radio-square-spacing-padding-vertical, 0px);
332
- padding-left: var(--kd-c-radio-square-spacing-padding-horizontal, 20px);
333
- line-height: calc(var(--kd-c-radio-square-sizing-height, 32px) - (var(--kd-c-radio-square-spacing-padding-vertical, 0px) * 2) - (var(--kd-c-radio-radius-border-width, 1px) * 2));
349
+ padding-top: var(--kd-c-radio-square-spacing-padding-vertical, 6px);
350
+ padding-right: var(--kd-c-radio-square-spacing-padding-horizontal, 12px);
351
+ padding-bottom: var(--kd-c-radio-square-spacing-padding-vertical, 6px);
352
+ padding-left: var(--kd-c-radio-square-spacing-padding-horizontal, 12px);
353
+ line-height: calc(var(--kd-c-radio-square-sizing-height, 32px) - (var(--kd-c-radio-square-spacing-padding-vertical, 6px) * 2) - (var(--kd-c-radio-radius-border-width, 1px) * 2));
334
354
  vertical-align: middle;
335
355
  color: var(--kd-c-radio-color-font, var(--kd-g-color-text-primary, #212121));
336
356
  font-size: var(--kd-c-radio-font-size, var(--kd-g-font-size-small, 12px));
@@ -381,8 +401,8 @@
381
401
  background-color: var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3));
382
402
  }
383
403
  .kd-radio-button-checked:focus-within {
384
- -webkit-box-shadow: 0 0 0 3px rgba(var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3)), 10%);
385
- box-shadow: 0 0 0 3px rgba(var(--kd-c-radio-color-theme, var(--kd-g-color-theme, #5582f3)), 10%);
404
+ -webkit-box-shadow: 0 0 0 3px rgba(85, 130, 243, 0.1);
405
+ box-shadow: 0 0 0 3px rgba(85, 130, 243, 0.1);
386
406
  }
387
407
  .kd-radio-button-checked:hover {
388
408
  color: var(--kd-c-radio-color-background, var(--kd-g-color-white, #fff));
@@ -411,3 +431,10 @@
411
431
  border-color: var(--kd-c-radio-color-border, var(--kd-g-color-border-strong, #d9d9d9));
412
432
  cursor: not-allowed;
413
433
  }
434
+ .kd-radio-button-text {
435
+ white-space: nowrap;
436
+ overflow: hidden;
437
+ text-overflow: ellipsis;
438
+ display: block;
439
+ line-height: 1.5;
440
+ }
@@ -1,10 +1,11 @@
1
1
  @import '../../style/themes/index';
2
2
  @import 'token.less';
3
+ @import '../../style/mixins/index.less';
3
4
  @radio-prefix-cls: ~'@{kd-prefix}-radio';
4
5
  @radio-square-prefix-cls: ~'@{radio-prefix-cls}-square';
5
6
  @radio-button-prefix-cls: ~'@{radio-prefix-cls}-button';
6
7
  @radio-group-prefix-cls: ~'@{radio-prefix-cls}-group';
7
- @radio-focus-shadow: 0 0 0 3px rgba(@radio-color-theme, 10%);
8
+ @radio-focus-shadow: 0 0 0 3px rgba(85, 130, 243, 10%);
8
9
 
9
10
  // 默认类型(单选项)
10
11
  .@{radio-prefix-cls} {
@@ -16,6 +17,7 @@
16
17
  padding-left: @radio-circle-size;
17
18
  margin-right: @radio-margin-right;
18
19
  white-space: nowrap;
20
+ text-overflow: ellipsis;
19
21
  cursor: pointer;
20
22
  vertical-align: middle;
21
23
  color: @radio-font-color;
@@ -64,7 +66,7 @@
64
66
  // 悬停状态
65
67
  &:hover {
66
68
 
67
- // color: @radio-color-theme;
69
+ color: @radio-color-theme;
68
70
  &::before {
69
71
  border-color: @radio-color-theme;
70
72
  }
@@ -113,6 +115,14 @@
113
115
  background-color: @radio-color-disabled;
114
116
  animation: none;
115
117
  }
118
+
119
+ &.@{radio-prefix-cls}-checked {
120
+ color: @radio-font-color;
121
+ }
122
+ }
123
+
124
+ &-text {
125
+ line-height: 1.5;
116
126
  }
117
127
  }
118
128
 
@@ -120,6 +130,8 @@
120
130
  .@{radio-square-prefix-cls} {
121
131
  .reset-component();
122
132
 
133
+ .ellipsis();
134
+
123
135
  // 默认状态
124
136
  position: relative;
125
137
  display: inline-block;
@@ -211,6 +223,14 @@
211
223
  background-color: @radio-color-disabled;
212
224
  animation: none;
213
225
  }
226
+
227
+ &.@{radio-square-prefix-cls}-checked {
228
+ color: @radio-font-color;
229
+ }
230
+ }
231
+
232
+ &-text {
233
+ line-height: 1.5;
214
234
  }
215
235
  }
216
236
 
@@ -324,4 +344,10 @@
324
344
  // background-color: @radio-color-background-disabled;
325
345
  cursor: not-allowed;
326
346
  }
347
+
348
+ &-text {
349
+ .ellipsis();
350
+ display: block;
351
+ line-height: 1.5;
352
+ }
327
353
  }
@@ -20,12 +20,12 @@
20
20
  @radio-border-width: var(~'@{radio-prefix}-radius-border-width',1px);
21
21
 
22
22
  // sizing
23
- @radio-circle-size:var(~'@{radio-prefix}-square-sizing-width-height',13px);//单选图标大小
23
+ @radio-circle-size:var(~'@{radio-prefix}-square-sizing-width-height',14px);//单选图标大小
24
24
  @radio-square-height: var(~'@{radio-prefix}-square-sizing-height',32px);//单选框 高度
25
25
 
26
26
  // spacing
27
27
  @radio-margin-right: var(~'@{radio-prefix}-spacing-margin-right',8px);
28
- @radio-square-padding-vertical: var(~'@{radio-prefix}-square-spacing-padding-vertical',0px); //内间距 纵向
29
- @radio-square-padding-horizontal: var(~'@{radio-prefix}-square-spacing-padding-horizontal',20px);//内间距 横向 /单选框 宽度
30
- @radio-padding-left: var(~'@{radio-prefix}-spacing-padding-left',6px);//图标与文字间距
28
+ @radio-square-padding-vertical: var(~'@{radio-prefix}-square-spacing-padding-vertical',6px); //内间距 纵向
29
+ @radio-square-padding-horizontal: var(~'@{radio-prefix}-square-spacing-padding-horizontal',12px);//内间距 横向 /单选框 宽度
30
+ @radio-padding-left: var(~'@{radio-prefix}-spacing-padding-left',4px);//图标与文字间距
31
31
 
@@ -83,7 +83,7 @@ var InternalOption = function InternalOption(props, ref) {
83
83
 
84
84
  var titleText = (0, _typeof2.default)(children) !== 'object' ? children : null;
85
85
  var checkStyle = {
86
- height: '30px',
86
+ height: '22px',
87
87
  background: 'none'
88
88
  };
89
89
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, /*#__PURE__*/_react.default.createElement("div", {