@kdcloudjs/kdesign 1.7.39 → 1.7.41

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 (103) hide show
  1. package/CHANGELOG.md +35 -0
  2. package/dist/kdesign-complete.less +182 -14
  3. package/dist/kdesign.css +249 -3
  4. package/dist/kdesign.css.map +1 -1
  5. package/dist/kdesign.js +1664 -129
  6. package/dist/kdesign.js.map +1 -1
  7. package/dist/kdesign.min.css +3 -3
  8. package/dist/kdesign.min.js +14 -9
  9. package/dist/kdesign.min.js.map +1 -1
  10. package/es/alert/style/index.css +4 -2
  11. package/es/alert/style/index.less +3 -1
  12. package/es/button/index.d.ts +2 -1
  13. package/es/carousel/index.d.ts +2 -2
  14. package/es/city-picker/index.d.ts +2 -0
  15. package/es/collapse/index.d.ts +2 -2
  16. package/es/config-provider/compDefaultProps.d.ts +10 -0
  17. package/es/config-provider/compDefaultProps.js +11 -1
  18. package/es/date-picker/context.d.ts +4 -2
  19. package/es/date-picker/date-picker.d.ts +9 -0
  20. package/es/date-picker/date-picker.js +4 -2
  21. package/es/date-picker/panel/month/month.js +14 -9
  22. package/es/date-picker/panel/quarter/quarter.js +12 -4
  23. package/es/date-picker/panel/time/time-column.d.ts +2 -0
  24. package/es/date-picker/panel/time/time-column.js +14 -5
  25. package/es/date-picker/panel/time/time.js +8 -4
  26. package/es/date-picker/panel/week/week.js +20 -10
  27. package/es/date-picker/panel/year/year.js +12 -4
  28. package/es/date-picker/range-picker.js +11 -4
  29. package/es/index.d.ts +1 -0
  30. package/es/index.js +2 -1
  31. package/es/input/TextArea.js +16 -8
  32. package/es/input/style/index.css +3 -0
  33. package/es/input/style/index.less +9 -5
  34. package/es/modal/modal.d.ts +5 -0
  35. package/es/modal/modal.js +242 -15
  36. package/es/modal/style/index.css +86 -0
  37. package/es/modal/style/index.less +95 -9
  38. package/es/notification-base/notice.js +6 -1
  39. package/es/qr-code/index.d.ts +3 -0
  40. package/es/qr-code/index.js +3 -0
  41. package/es/qr-code/qr-code.d.ts +42 -0
  42. package/es/qr-code/qr-code.js +80 -0
  43. package/es/qr-code/style/css.js +2 -0
  44. package/es/qr-code/style/index.css +154 -0
  45. package/es/qr-code/style/index.d.ts +2 -0
  46. package/es/qr-code/style/index.js +2 -0
  47. package/es/qr-code/style/index.less +42 -0
  48. package/es/qr-code/style/mixin.less +6 -0
  49. package/es/qr-code/style/token.less +24 -0
  50. package/es/search/search-panel.d.ts +1 -1
  51. package/es/select/index.d.ts +1 -0
  52. package/es/select/index.js +1 -0
  53. package/es/tree/tree.js +2 -2
  54. package/es/tree/treeHooks.d.ts +1 -1
  55. package/es/tree/treeHooks.js +2 -2
  56. package/lib/alert/style/index.css +4 -2
  57. package/lib/alert/style/index.less +3 -1
  58. package/lib/button/index.d.ts +2 -1
  59. package/lib/carousel/index.d.ts +2 -2
  60. package/lib/city-picker/index.d.ts +2 -0
  61. package/lib/collapse/index.d.ts +2 -2
  62. package/lib/config-provider/compDefaultProps.d.ts +10 -0
  63. package/lib/config-provider/compDefaultProps.js +11 -1
  64. package/lib/date-picker/context.d.ts +4 -2
  65. package/lib/date-picker/date-picker.d.ts +9 -0
  66. package/lib/date-picker/date-picker.js +4 -2
  67. package/lib/date-picker/panel/month/month.js +14 -9
  68. package/lib/date-picker/panel/quarter/quarter.js +12 -4
  69. package/lib/date-picker/panel/time/time-column.d.ts +2 -0
  70. package/lib/date-picker/panel/time/time-column.js +14 -5
  71. package/lib/date-picker/panel/time/time.js +8 -4
  72. package/lib/date-picker/panel/week/week.js +20 -10
  73. package/lib/date-picker/panel/year/year.js +12 -4
  74. package/lib/date-picker/range-picker.js +11 -4
  75. package/lib/index.d.ts +1 -0
  76. package/lib/index.js +7 -0
  77. package/lib/input/TextArea.js +16 -8
  78. package/lib/input/style/index.css +3 -0
  79. package/lib/input/style/index.less +9 -5
  80. package/lib/modal/modal.d.ts +5 -0
  81. package/lib/modal/modal.js +242 -15
  82. package/lib/modal/style/index.css +86 -0
  83. package/lib/modal/style/index.less +95 -9
  84. package/lib/notification-base/notice.js +6 -1
  85. package/lib/qr-code/index.d.ts +3 -0
  86. package/lib/qr-code/index.js +27 -0
  87. package/lib/qr-code/qr-code.d.ts +42 -0
  88. package/lib/qr-code/qr-code.js +96 -0
  89. package/lib/qr-code/style/css.js +4 -0
  90. package/lib/qr-code/style/index.css +154 -0
  91. package/lib/qr-code/style/index.d.ts +2 -0
  92. package/lib/qr-code/style/index.js +4 -0
  93. package/lib/qr-code/style/index.less +42 -0
  94. package/lib/qr-code/style/mixin.less +6 -0
  95. package/lib/qr-code/style/token.less +24 -0
  96. package/lib/search/search-panel.d.ts +1 -1
  97. package/lib/select/index.d.ts +1 -0
  98. package/lib/select/index.js +14 -0
  99. package/lib/style/components.less +1 -0
  100. package/lib/tree/tree.js +2 -2
  101. package/lib/tree/treeHooks.d.ts +1 -1
  102. package/lib/tree/treeHooks.js +2 -2
  103. package/package.json +11 -3
@@ -193,11 +193,13 @@
193
193
  cursor: default;
194
194
  }
195
195
  .kd-alert-leave {
196
- -webkit-transition: min-height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), opacity var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), margin var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), line-height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1);
197
- transition: min-height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), opacity var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), margin var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), line-height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1);
196
+ -webkit-transition: padding var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), opacity var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), margin var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), line-height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1);
197
+ transition: padding var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), opacity var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), margin var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1), line-height var(--kd-g-duration, 0.3s) cubic-bezier(0.32, 0.94, 0.6, 1);
198
198
  display: -webkit-box;
199
199
  display: -ms-flexbox;
200
200
  display: flex;
201
+ padding: 0 var(--kd-c-alert-sizing-padding-horizontal, 20px);
202
+ border-width: 0;
201
203
  min-height: 0;
202
204
  margin: 0 !important;
203
205
  overflow: hidden;
@@ -81,10 +81,12 @@
81
81
  cursor: default;
82
82
  }
83
83
  &-leave {
84
- transition: min-height @duration-promptly @alert-transition-fn, opacity @duration-promptly @alert-transition-fn,
84
+ transition: padding @duration-promptly @alert-transition-fn, opacity @duration-promptly @alert-transition-fn,
85
85
  margin @duration-promptly @alert-transition-fn, height @duration-promptly @alert-transition-fn,
86
86
  line-height @duration-promptly @alert-transition-fn;
87
87
  display: flex;
88
+ padding: 0 @alert-padding-horizontal;
89
+ border-width: 0;
88
90
  min-height: 0;
89
91
  margin: 0 !important;
90
92
  overflow: hidden;
@@ -3,5 +3,6 @@ import Dropdown from './group';
3
3
  declare const Button: import("react").ForwardRefExoticComponent<import("./button").IButtonProps & import("react").RefAttributes<unknown>> & {
4
4
  Dropdown: typeof Dropdown;
5
5
  };
6
- export { ButtonType, IButtonProps } from './button';
6
+ export { ButtonType, IButtonProps, ButtonSize, ButtonShape, ButtonIconPlace, ButtonHTMLType } from './button';
7
+ export { OverlayType, ButtonGroupType } from './group';
7
8
  export default Button;
@@ -1,7 +1,7 @@
1
- import Carousel, { CarouselProps } from './carousel';
1
+ import Carousel, { CarouselProps, DotPositionType, EffectType } from './carousel';
2
2
  import { Slidebar } from './slidebar';
3
3
  import { SlideList } from './slideList';
4
4
  import { FadeList } from './fadeList';
5
5
  export * from './carousel';
6
- export { CarouselProps, Slidebar, FadeList, SlideList };
6
+ export { CarouselProps, DotPositionType, EffectType, Slidebar, FadeList, SlideList };
7
7
  export default Carousel;
@@ -1,3 +1,5 @@
1
1
  import CityPicker from './city-picker';
2
+ import { City, BorderType, Size, Type, CityList, CityPickerProps, ICityPickerOptionProps } from './interface';
3
+ export { City, BorderType, Size, Type, CityList, CityPickerProps, ICityPickerOptionProps };
2
4
  export * from './city-picker';
3
5
  export default CityPicker;
@@ -1,10 +1,10 @@
1
1
  /// <reference types="react" />
2
- import { CollapseProps } from './collapse';
2
+ import { CollapseProps, IconPositionType } from './collapse';
3
3
  import Panel from './panel';
4
4
  export { PanelProps } from './panel';
5
5
  interface CompoundedComponent extends React.ForwardRefExoticComponent<CollapseProps & React.RefAttributes<HTMLElement>> {
6
6
  Panel: typeof Panel;
7
7
  }
8
8
  declare const Collapse: CompoundedComponent;
9
- export { Panel };
9
+ export { Panel, IconPositionType };
10
10
  export default Collapse;
@@ -191,6 +191,8 @@ declare const compDefaultProps: {
191
191
  cancelButtonProps: {};
192
192
  okButtonProps: {};
193
193
  showline: boolean;
194
+ overroll: boolean;
195
+ resizable: boolean;
194
196
  };
195
197
  Menu: {
196
198
  mode: string;
@@ -467,5 +469,13 @@ declare const compDefaultProps: {
467
469
  disabled: boolean;
468
470
  size: string;
469
471
  };
472
+ QRCode: {
473
+ value: string;
474
+ size: number;
475
+ status: string;
476
+ type: string;
477
+ errorLevel: string;
478
+ color: string;
479
+ };
470
480
  };
471
481
  export default compDefaultProps;
@@ -195,7 +195,9 @@ var compDefaultProps = {
195
195
  draggable: true,
196
196
  cancelButtonProps: {},
197
197
  okButtonProps: {},
198
- showline: true
198
+ showline: true,
199
+ overroll: false,
200
+ resizable: false
199
201
  },
200
202
  Menu: {
201
203
  mode: 'vertical',
@@ -484,6 +486,14 @@ var compDefaultProps = {
484
486
  action: 'copy',
485
487
  disabled: false,
486
488
  size: 'middle'
489
+ },
490
+ QRCode: {
491
+ value: 'https://www.kingdee.design/',
492
+ size: 86,
493
+ status: 'active',
494
+ type: 'canvas',
495
+ errorLevel: 'H',
496
+ color: '#000000'
487
497
  }
488
498
  };
489
499
  export default compDefaultProps;
@@ -1,6 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { DateType, InnerLocale, RangeValue, TimeUnit } from './interface';
3
- import { IInnerPicker } from './date-picker';
3
+ import { CellRenderProp, IInnerPicker } from './date-picker';
4
4
  export declare type ContextOperationRefProps = {
5
5
  onKeyDown?: (e: React.KeyboardEvent<HTMLElement>) => boolean;
6
6
  onClose?: () => void;
@@ -13,7 +13,7 @@ export interface SingleContextProps {
13
13
  dateValue?: DateType | null;
14
14
  rangeValue?: RangeValue;
15
15
  hoverRangedValue?: RangeValue;
16
- panelPosition?: string;
16
+ panelPosition?: 'right' | 'left';
17
17
  open?: boolean;
18
18
  originHour?: number;
19
19
  minute?: number;
@@ -28,6 +28,8 @@ export interface SingleContextProps {
28
28
  onDateMouseLeave: (arg?: boolean) => void;
29
29
  innerPicker: IInnerPicker;
30
30
  setInnerPicker: (p: IInnerPicker) => void;
31
+ cellRender?: CellRenderProp;
32
+ range?: 'start' | 'end';
31
33
  }
32
34
  declare const Context: React.Context<SingleContextProps>;
33
35
  export default Context;
@@ -2,6 +2,14 @@ import React from 'react';
2
2
  import { DateType } from './interface';
3
3
  import { PickerPanelBaseProps, PickerPanelDateProps, PickerPanelTimeProps } from './date-panel';
4
4
  import { BorderType, InputSiteType } from '../input/input';
5
+ export declare type CellRenderSubType = 'hour' | 'minute' | 'second' | '12Hours';
6
+ export declare type CellRenderProp = (current: DateType | number, info: {
7
+ originNode: React.ReactElement;
8
+ panelType: 'time' | 'date' | 'week' | 'month' | 'quarter' | 'year';
9
+ date?: DateType;
10
+ range?: 'start' | 'end';
11
+ subType?: CellRenderSubType;
12
+ }) => React.ReactNode;
5
13
  export interface PickerSharedProps extends React.AriaAttributes {
6
14
  dropdownClassName?: string;
7
15
  popupStyle?: React.CSSProperties;
@@ -38,6 +46,7 @@ export interface PickerSharedProps extends React.AriaAttributes {
38
46
  onClick?: React.MouseEventHandler<HTMLDivElement>;
39
47
  onContextMenu?: React.MouseEventHandler<HTMLDivElement>;
40
48
  status?: 'error';
49
+ cellRender?: CellRenderProp;
41
50
  }
42
51
  declare type OmitPanelProps<Props> = Omit<Props, 'onChange' | 'hideHeader' | 'pickerValue' | 'onPickerValueChange'>;
43
52
  export interface PickerBaseProps extends PickerSharedProps, OmitPanelProps<PickerPanelBaseProps> {
@@ -81,7 +81,8 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
81
81
  onContextMenu = datePickerProps.onContextMenu,
82
82
  onClick = datePickerProps.onClick,
83
83
  _onOk = datePickerProps.onOk,
84
- status = datePickerProps.status;
84
+ status = datePickerProps.status,
85
+ cellRender = datePickerProps.cellRender;
85
86
  var inputDivRefDefault = React.useRef(null);
86
87
  var inputDivRef = ref || inputDivRefDefault;
87
88
  var popperRefDefault = React.useRef(null);
@@ -338,7 +339,8 @@ var InternalDatePicker = function InternalDatePicker(props, ref) {
338
339
  onDateMouseEnter: onEnter,
339
340
  onDateMouseLeave: onLeave,
340
341
  innerPicker: innerPicker,
341
- setInnerPicker: setInnerPicker
342
+ setInnerPicker: setInnerPicker,
343
+ cellRender: cellRender
342
344
  }
343
345
  }, panelNode, (extraFooter || rangesNode || todayNode) && innerPicker === undefined ? /*#__PURE__*/React.createElement("div", {
344
346
  className: "".concat(datePickerPrefixCls, "-footer")
@@ -1,7 +1,7 @@
1
1
  import _extends from "@babel/runtime-corejs3/helpers/extends";
2
2
  import _defineProperty from "@babel/runtime-corejs3/helpers/defineProperty";
3
- import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
4
3
  import _mapInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/map";
4
+ import _concatInstanceProperty from "@babel/runtime-corejs3/core-js-stable/instance/concat";
5
5
  import React, { useContext } from 'react';
6
6
  import classnames from 'classnames';
7
7
  import { getMonth, newDate, getYear, setMonth, isAfter, isBefore, isSameMonth, getStartOfMonth, setYearOrMonthOfDate } from '../../utils/date-fns';
@@ -21,7 +21,9 @@ function Month(props) {
21
21
  hoverRangedValue = context.hoverRangedValue,
22
22
  locale = context.locale,
23
23
  innerPicker = context.innerPicker,
24
- setInnerPicker = context.setInnerPicker;
24
+ setInnerPicker = context.setInnerPicker,
25
+ cellRender = context.cellRender,
26
+ range = context.range;
25
27
  var disabledDate = props.disabledDate;
26
28
  var _dateValue;
27
29
  if (panelPosition) {
@@ -88,12 +90,6 @@ function Month(props) {
88
90
  setInnerPicker(undefined);
89
91
  }
90
92
  };
91
- var renderMonthItem = function renderMonthItem(i) {
92
- var _context;
93
- return /*#__PURE__*/React.createElement("span", {
94
- className: getMonthClassNames(i)
95
- }, _concatInstanceProperty(_context = "".concat(i + 1)).call(_context, locale.month));
96
- };
97
93
  var renderMonth = function renderMonth() {
98
94
  var monthLayout = monthsThreeColumns;
99
95
  var monthLineCls = classnames("".concat(prefixCls, "-month-line"));
@@ -102,6 +98,7 @@ function Month(props) {
102
98
  className: monthLineCls,
103
99
  key: i
104
100
  }, _mapInstanceProperty(month).call(month, function (m, j) {
101
+ var _context;
105
102
  var month = setMonth(viewDate, m);
106
103
  var _props = {
107
104
  onClick: function onClick() {
@@ -119,10 +116,18 @@ function Month(props) {
119
116
  }
120
117
  };
121
118
  var monthItemCls = classnames("".concat(prefixCls, "-month-item"), _defineProperty({}, "".concat(prefixCls, "-month-item-disabled"), disabledDate && disabledDate(month)), getRangeCls(month));
119
+ var originNode = /*#__PURE__*/React.createElement("span", {
120
+ className: getMonthClassNames(m)
121
+ }, _concatInstanceProperty(_context = "".concat(m + 1)).call(_context, locale.month));
122
122
  return /*#__PURE__*/React.createElement("div", _extends({
123
123
  className: monthItemCls,
124
124
  key: j
125
- }, _props), renderMonthItem(m));
125
+ }, _props), typeof cellRender === 'function' ? cellRender(m + 1, {
126
+ originNode: originNode,
127
+ panelType: 'month',
128
+ range: range,
129
+ date: month
130
+ }) || originNode : originNode);
126
131
  }));
127
132
  });
128
133
  };
@@ -17,7 +17,9 @@ function Quarter(props) {
17
17
  onDateMouseLeave = context.onDateMouseLeave,
18
18
  rangeValue = context.rangeValue,
19
19
  panelPosition = context.panelPosition,
20
- hoverRangedValue = context.hoverRangedValue;
20
+ hoverRangedValue = context.hoverRangedValue,
21
+ cellRender = context.cellRender,
22
+ range = context.range;
21
23
  var disabledDate = props.disabledDate;
22
24
  var _dateValue;
23
25
  if (panelPosition) {
@@ -96,12 +98,18 @@ function Quarter(props) {
96
98
  }
97
99
  };
98
100
  var quarterCls = classnames("".concat(prefixCls, "-quarter-item"), _defineProperty({}, "".concat(prefixCls, "-quarter-item-disabled"), disabledDate && disabledDate(quarter)), getRangeCls(quarter));
101
+ var originNode = /*#__PURE__*/React.createElement("div", _extends({
102
+ className: getQuarterClassNames(i + 1)
103
+ }, _props), n);
99
104
  return /*#__PURE__*/React.createElement("div", {
100
105
  key: n,
101
106
  className: quarterCls
102
- }, /*#__PURE__*/React.createElement("div", _extends({
103
- className: getQuarterClassNames(i + 1)
104
- }, _props), n));
107
+ }, typeof cellRender === 'function' ? cellRender(i + 1, {
108
+ originNode: originNode,
109
+ panelType: 'quarter',
110
+ range: range,
111
+ date: quarter
112
+ }) || originNode : originNode);
105
113
  });
106
114
  };
107
115
  var quarterCls = classnames("".concat(prefixCls, "-quarter"));
@@ -1,5 +1,6 @@
1
1
  import * as React from 'react';
2
2
  import { DateType } from '../../interface';
3
+ import { CellRenderSubType } from '../../date-picker';
3
4
  export interface Unit {
4
5
  label: React.ReactText;
5
6
  value: number;
@@ -12,6 +13,7 @@ export interface TimeUnitColumnProps {
12
13
  selectValue?: DateType;
13
14
  hideDisabledOptions?: boolean;
14
15
  onSelect?: (value: number) => void;
16
+ subType?: CellRenderSubType;
15
17
  }
16
18
  declare function TimeUnitColumn(props: TimeUnitColumnProps): JSX.Element;
17
19
  export default TimeUnitColumn;
@@ -12,10 +12,13 @@ function TimeUnitColumn(props) {
12
12
  onSelect = props.onSelect,
13
13
  value = props.value,
14
14
  hideDisabledOptions = props.hideDisabledOptions,
15
- selectValue = props.selectValue;
15
+ selectValue = props.selectValue,
16
+ subType = props.subType;
16
17
  var cellPrefixCls = "".concat(prefixCls, "-cell");
17
18
  var _React$useContext = React.useContext(Context),
18
- open = _React$useContext.open;
19
+ open = _React$useContext.open,
20
+ cellRender = _React$useContext.cellRender,
21
+ range = _React$useContext.range;
19
22
  var ulRef = useRef(null);
20
23
  var liRefs = useRef(new _Map());
21
24
  var scrollRef = useRef();
@@ -52,6 +55,9 @@ function TimeUnitColumn(props) {
52
55
  if (hideDisabledOptions && unit.disabled) {
53
56
  return null;
54
57
  }
58
+ var originNode = /*#__PURE__*/React.createElement("div", {
59
+ className: "".concat(cellPrefixCls, "-inner")
60
+ }, unit.label);
55
61
  return /*#__PURE__*/React.createElement("div", {
56
62
  key: unit.value,
57
63
  ref: function ref(element) {
@@ -64,9 +70,12 @@ function TimeUnitColumn(props) {
64
70
  }
65
71
  onSelect(unit.value);
66
72
  }
67
- }, /*#__PURE__*/React.createElement("div", {
68
- className: "".concat(cellPrefixCls, "-inner")
69
- }, unit.label));
73
+ }, typeof cellRender === 'function' ? cellRender(unit.value, {
74
+ originNode: originNode,
75
+ panelType: 'time',
76
+ subType: subType,
77
+ range: range
78
+ }) || originNode : originNode);
70
79
  }));
71
80
  }
72
81
  export default TimeUnitColumn;
@@ -165,7 +165,8 @@ function TimePanel(props) {
165
165
  }
166
166
  }
167
167
  addColumnNode(showHour, /*#__PURE__*/React.createElement(TimeColumn, {
168
- key: "hour"
168
+ key: "hour",
169
+ subType: 'hour'
169
170
  }), hour, hours, function (num) {
170
171
  var time = setTime(isPM, num, minute, second);
171
172
  if (time) {
@@ -173,7 +174,8 @@ function TimePanel(props) {
173
174
  }
174
175
  });
175
176
  addColumnNode(showMinute, /*#__PURE__*/React.createElement(TimeColumn, {
176
- key: "minute"
177
+ key: "minute",
178
+ subType: 'minute'
177
179
  }), minute, minutes, function (num) {
178
180
  var time = setTime(isPM, hour, num, second);
179
181
  if (time) {
@@ -181,7 +183,8 @@ function TimePanel(props) {
181
183
  }
182
184
  });
183
185
  addColumnNode(showSecond, /*#__PURE__*/React.createElement(TimeColumn, {
184
- key: "second"
186
+ key: "second",
187
+ subType: 'second'
185
188
  }), second, seconds, function (num) {
186
189
  var time = setTime(isPM, hour, minute, num);
187
190
  if (time) {
@@ -193,7 +196,8 @@ function TimePanel(props) {
193
196
  PMIndex = isPM ? 1 : 0;
194
197
  }
195
198
  addColumnNode(use12Hours === true, /*#__PURE__*/React.createElement(TimeColumn, {
196
- key: "12hours"
199
+ key: "12hours",
200
+ subType: '12Hours'
197
201
  }), PMIndex, [{
198
202
  label: 'AM',
199
203
  value: 0,
@@ -35,7 +35,9 @@ function Week(props) {
35
35
  disabledTimePanel = context.disabledTimePanel,
36
36
  onSelect = context.onSelect,
37
37
  onDateMouseEnter = context.onDateMouseEnter,
38
- onDateMouseLeave = context.onDateMouseLeave;
38
+ onDateMouseLeave = context.onDateMouseLeave,
39
+ cellRender = context.cellRender,
40
+ range = context.range;
39
41
  var showWeekNumber = props.showWeekNumber,
40
42
  day = props.day,
41
43
  picker = props.picker,
@@ -176,8 +178,6 @@ function Week(props) {
176
178
  } else {
177
179
  now = dateValue || viewDate;
178
180
  }
179
- // if(hours) {
180
- // }
181
181
  var dayTime = setTime(day, {
182
182
  hour: getHours(now),
183
183
  minute: getMinutes(now),
@@ -200,18 +200,28 @@ function Week(props) {
200
200
  }
201
201
  }
202
202
  };
203
- // console.log('disabledDate', disabledDate)
203
+ var originNode = /*#__PURE__*/React.createElement("div", {
204
+ className: getDayClassNames(day)
205
+ }, date);
204
206
  return /*#__PURE__*/React.createElement("div", _extends({
205
207
  key: day.valueOf(),
206
208
  className: classnames("".concat(prefixCls, "-calendar-item"), (_classnames3 = {}, _defineProperty(_classnames3, "".concat(prefixCls, "-calendar-item-disabled"), disabledDate && disabledDate(day)), _defineProperty(_classnames3, "".concat(prefixCls, "-calendar-current"), currentMonth === getMonth(day)), _classnames3), getRangeCls(day))
207
- }, _props), /*#__PURE__*/React.createElement("div", {
208
- className: getDayClassNames(day)
209
- }, date));
209
+ }, _props), typeof cellRender === 'function' ? cellRender(day, {
210
+ originNode: originNode,
211
+ panelType: 'date',
212
+ range: range,
213
+ date: day
214
+ }) || originNode : originNode);
210
215
  }));
211
- var calenderLineCls = classnames((_classnames4 = {}, _defineProperty(_classnames4, "".concat(prefixCls, "-calendar-line"), picker !== 'week'), _defineProperty(_classnames4, "".concat(prefixCls, "-calendar-week-line"), picker === 'week'), _defineProperty(_classnames4, "".concat(prefixCls, "-calendar-week-selected"), picker === 'week' && getWeekSelected(startOfWeek)), _classnames4));
212
- return /*#__PURE__*/React.createElement("div", {
213
- className: calenderLineCls
216
+ var originNode = /*#__PURE__*/React.createElement("div", {
217
+ className: classnames((_classnames4 = {}, _defineProperty(_classnames4, "".concat(prefixCls, "-calendar-line"), picker !== 'week'), _defineProperty(_classnames4, "".concat(prefixCls, "-calendar-week-line"), picker === 'week'), _defineProperty(_classnames4, "".concat(prefixCls, "-calendar-week-selected"), picker === 'week' && getWeekSelected(startOfWeek)), _classnames4))
214
218
  }, week);
219
+ return typeof cellRender === 'function' ? cellRender(weekNumber, {
220
+ originNode: originNode,
221
+ panelType: 'week',
222
+ range: range,
223
+ date: startOfWeek
224
+ }) || originNode : originNode;
215
225
  };
216
226
  return /*#__PURE__*/React.createElement(React.Fragment, null, renderDays());
217
227
  }
@@ -18,7 +18,9 @@ function Year(props) {
18
18
  panelPosition = context.panelPosition,
19
19
  hoverRangedValue = context.hoverRangedValue,
20
20
  innerPicker = context.innerPicker,
21
- setInnerPicker = context.setInnerPicker;
21
+ setInnerPicker = context.setInnerPicker,
22
+ cellRender = context.cellRender,
23
+ range = context.range;
22
24
  var yearItemNumber = props.yearItemNumber,
23
25
  disabledDate = props.disabledDate,
24
26
  _props$picker = props.picker,
@@ -114,12 +116,18 @@ function Year(props) {
114
116
  }
115
117
  }
116
118
  };
119
+ var originNode = /*#__PURE__*/React.createElement("span", {
120
+ className: getYearClassNames(y)
121
+ }, y);
117
122
  yearsList.push( /*#__PURE__*/React.createElement("div", _extends({
118
123
  className: classnames("".concat(prefixCls, "-year-item"), _defineProperty({}, "".concat(prefixCls, "-year-item-disabled"), disabledDate && disabledDate(year)), getRangeCls(year)),
119
124
  key: y
120
- }, _props), /*#__PURE__*/React.createElement("span", {
121
- className: getYearClassNames(y)
122
- }, y)));
125
+ }, _props), typeof cellRender === 'function' ? cellRender(y, {
126
+ originNode: originNode,
127
+ panelType: 'year',
128
+ range: range,
129
+ date: year
130
+ }) || originNode : originNode));
123
131
  };
124
132
  for (var y = startPeriod; y <= endPeriod; y++) {
125
133
  _loop();
@@ -110,7 +110,8 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
110
110
  onBlur = datePickerProps.onBlur,
111
111
  _onOk = datePickerProps.onOk,
112
112
  getPopupContainer = datePickerProps.getPopupContainer,
113
- status = datePickerProps.status;
113
+ status = datePickerProps.status,
114
+ cellRender = datePickerProps.cellRender;
114
115
  var needConfirmButton = picker === 'date' && !!showTime || picker === 'time';
115
116
  var datePickerLang = _extends({}, globalLocale.getCompLangMsg({
116
117
  componentName: 'DatePicker'
@@ -520,7 +521,9 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
520
521
  onDateMouseEnter: onDateMouseEnter,
521
522
  onDateMouseLeave: onDateMouseLeave,
522
523
  innerPicker: innerPicker,
523
- setInnerPicker: setInnerPicker
524
+ setInnerPicker: setInnerPicker,
525
+ cellRender: cellRender,
526
+ range: mergedActivePickerIndex === 0 ? 'start' : 'end'
524
527
  }
525
528
  }, renderPanel());
526
529
  var rightPanel = /*#__PURE__*/React.createElement(Context.Provider, {
@@ -537,7 +540,9 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
537
540
  onDateMouseEnter: onDateMouseEnter,
538
541
  onDateMouseLeave: onDateMouseLeave,
539
542
  innerPicker: innerPicker,
540
- setInnerPicker: setInnerPicker
543
+ setInnerPicker: setInnerPicker,
544
+ cellRender: cellRender,
545
+ range: mergedActivePickerIndex === 0 ? 'start' : 'end'
541
546
  }
542
547
  }, renderPanel());
543
548
  panels = /*#__PURE__*/React.createElement("div", {
@@ -564,7 +569,9 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
564
569
  onDateMouseEnter: onDateMouseEnter,
565
570
  onDateMouseLeave: onDateMouseLeave,
566
571
  innerPicker: innerPicker,
567
- setInnerPicker: setInnerPicker
572
+ setInnerPicker: setInnerPicker,
573
+ cellRender: cellRender,
574
+ range: mergedActivePickerIndex === 0 ? 'start' : 'end'
568
575
  }
569
576
  }, renderPanel());
570
577
  }
package/es/index.d.ts CHANGED
@@ -56,3 +56,4 @@ export { default as Link } from './link';
56
56
  export { default as TreeSelect } from './tree-select';
57
57
  export { default as ColorPicker } from './color-picker';
58
58
  export { default as Clipboard } from './clipboard';
59
+ export { default as QRCode } from './qr-code';
package/es/index.js CHANGED
@@ -55,4 +55,5 @@ export { default as BaseData } from './base-data';
55
55
  export { default as Link } from './link';
56
56
  export { default as TreeSelect } from './tree-select';
57
57
  export { default as ColorPicker } from './color-picker';
58
- export { default as Clipboard } from './clipboard';
58
+ export { default as Clipboard } from './clipboard';
59
+ export { default as QRCode } from './qr-code';
@@ -70,6 +70,10 @@ var InternalTextarea = function InternalTextarea(props, ref) {
70
70
  _useState6 = _slicedToArray(_useState5, 2),
71
71
  showNumberMark = _useState6[0],
72
72
  setShowNumberMark = _useState6[1];
73
+ var _useState7 = useState(false),
74
+ _useState8 = _slicedToArray(_useState7, 2),
75
+ numberMarkError = _useState8[0],
76
+ setNumberMarkError = _useState8[1];
73
77
  var resizeTextarea = useCallback(function () {
74
78
  if (!autoSize || !textareaRef.current) {
75
79
  return;
@@ -117,21 +121,25 @@ var InternalTextarea = function InternalTextarea(props, ref) {
117
121
  onChange && onChange(event);
118
122
  };
119
123
  var renderNumberMark = function renderNumberMark() {
120
- var enteredLength = value ? value.length : 0;
121
- if (enteredLength >= maxLength) {
122
- enteredLength = maxLength;
123
- }
124
- if (count && showNumberMark && !disabled && maxLength !== '' && maxLength >= 0) {
125
- var countClass = classNames("".concat(textAreaPrefixCls, "-textarea-mark"), _defineProperty({}, "".concat(textAreaPrefixCls, "-textarea-mark-inner"), countPosition === 'inner'));
124
+ if (count && (showNumberMark || numberMarkError) && !disabled && maxLength !== '' && maxLength >= 0) {
125
+ var _classNames;
126
+ var countClass = classNames("".concat(textAreaPrefixCls, "-textarea-mark"), (_classNames = {}, _defineProperty(_classNames, "".concat(textAreaPrefixCls, "-textarea-mark-inner"), countPosition === 'inner'), _defineProperty(_classNames, "".concat(textAreaPrefixCls, "-textarea-mark-error"), numberMarkError), _classNames));
126
127
  return /*#__PURE__*/React.createElement("div", {
127
128
  className: countClass
128
- }, enteredLength, "/", maxLength);
129
+ }, value ? value.length : 0, "/", maxLength);
129
130
  }
130
131
  return null;
131
132
  };
132
133
  useEffect(function () {
133
134
  resizeTextarea();
134
135
  }, [value, resizeTextarea]);
136
+ useEffect(function () {
137
+ if (value && maxLength && value.length > maxLength) {
138
+ setNumberMarkError(true);
139
+ } else {
140
+ setNumberMarkError(false);
141
+ }
142
+ }, [value]);
135
143
  useEffect(function () {
136
144
  if (propsValue !== undefined) {
137
145
  setValue(propsValue);
@@ -173,7 +181,7 @@ var InternalTextarea = function InternalTextarea(props, ref) {
173
181
  ref: textareaRef,
174
182
  disabled: disabled,
175
183
  style: _extends({}, textareaStyles, hadCount || !!allowClear ? otherStyles : style),
176
- className: classNames("".concat(prefixCls, "-textarea"), (_classNames2 = {}, _defineProperty(_classNames2, _concatInstanceProperty(_context = "".concat(prefixCls, "-size-")).call(_context, size), size), _defineProperty(_classNames2, "".concat(prefixCls, "-borderless"), borderType === 'none'), _defineProperty(_classNames2, "".concat(prefixCls, "-underline"), borderType === 'underline'), _defineProperty(_classNames2, "".concat(prefixCls, "-no-resize"), canResize !== true), _defineProperty(_classNames2, "".concat(prefixCls, "-allowClear-spacing"), !!allowClear), _defineProperty(_classNames2, "".concat(prefixCls, "-error"), status === 'error'), _defineProperty(_classNames2, "".concat(prefixCls, "-disabled"), disabled), _classNames2), _defineProperty({}, className, className && !allowClear && !hadCount)),
184
+ className: classNames("".concat(prefixCls, "-textarea"), (_classNames2 = {}, _defineProperty(_classNames2, _concatInstanceProperty(_context = "".concat(prefixCls, "-size-")).call(_context, size), size), _defineProperty(_classNames2, "".concat(prefixCls, "-borderless"), borderType === 'none'), _defineProperty(_classNames2, "".concat(prefixCls, "-underline"), borderType === 'underline'), _defineProperty(_classNames2, "".concat(prefixCls, "-no-resize"), canResize !== true), _defineProperty(_classNames2, "".concat(prefixCls, "-allowClear-spacing"), !!allowClear), _defineProperty(_classNames2, "".concat(prefixCls, "-error"), status === 'error' || numberMarkError), _defineProperty(_classNames2, "".concat(prefixCls, "-disabled"), disabled), _classNames2), _defineProperty({}, className, className && !allowClear && !hadCount)),
177
185
  onChange: handleChange,
178
186
  onFocus: !disabled ? handleFocus : undefined,
179
187
  onBlur: !disabled ? handleBlur : undefined,
@@ -215,6 +215,9 @@ textarea {
215
215
  bottom: 5px;
216
216
  right: 8px;
217
217
  }
218
+ .kd-input-textarea-mark-error {
219
+ color: var(--kd-c-input-color-error, var(--kd-g-color-error, #fb2323));
220
+ }
218
221
  .kd-input-no-resize {
219
222
  resize: none;
220
223
  }
@@ -43,12 +43,16 @@ textarea {
43
43
  font-size: @input-small-font-size-inner;
44
44
  line-height: 18px;
45
45
  background-color: #fff;
46
- }
47
46
 
48
- &-mark-inner {
49
- top: auto;
50
- bottom: 5px;
51
- right: 8px;
47
+ &-inner {
48
+ top: auto;
49
+ bottom: 5px;
50
+ right: 8px;
51
+ }
52
+
53
+ &-error {
54
+ color: @input-error-color;
55
+ }
52
56
  }
53
57
  }
54
58
 
@@ -43,6 +43,11 @@ export interface IModalProps {
43
43
  width?: number;
44
44
  showline?: boolean;
45
45
  bounds?: DraggableBounds | string | false;
46
+ overroll?: boolean;
47
+ resizable?: boolean;
48
+ onResizeStart?: (event: MouseEvent) => void;
49
+ onResize?: (event: MouseEvent) => void;
50
+ onResizeStop?: (event: MouseEvent) => void;
46
51
  onDragStart?: DraggableEventHandler;
47
52
  onDrag?: DraggableEventHandler;
48
53
  onDragStop?: DraggableEventHandler;