@kdcloudjs/kdesign 1.7.39 → 1.7.40

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 (81) hide show
  1. package/CHANGELOG.md +16 -0
  2. package/dist/kdesign-complete.less +103 -9
  3. package/dist/kdesign.css +181 -3
  4. package/dist/kdesign.css.map +1 -1
  5. package/dist/kdesign.js +1342 -106
  6. package/dist/kdesign.js.map +1 -1
  7. package/dist/kdesign.min.css +3 -3
  8. package/dist/kdesign.min.js +13 -8
  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/config-provider/compDefaultProps.d.ts +9 -0
  13. package/es/config-provider/compDefaultProps.js +10 -1
  14. package/es/date-picker/context.d.ts +4 -2
  15. package/es/date-picker/date-picker.d.ts +9 -0
  16. package/es/date-picker/date-picker.js +4 -2
  17. package/es/date-picker/panel/month/month.js +14 -9
  18. package/es/date-picker/panel/quarter/quarter.js +12 -4
  19. package/es/date-picker/panel/time/time-column.d.ts +2 -0
  20. package/es/date-picker/panel/time/time-column.js +14 -5
  21. package/es/date-picker/panel/time/time.js +8 -4
  22. package/es/date-picker/panel/week/week.js +20 -10
  23. package/es/date-picker/panel/year/year.js +12 -4
  24. package/es/date-picker/range-picker.js +11 -4
  25. package/es/index.d.ts +1 -0
  26. package/es/index.js +2 -1
  27. package/es/modal/modal.d.ts +1 -0
  28. package/es/modal/modal.js +31 -5
  29. package/es/modal/style/index.css +21 -0
  30. package/es/modal/style/index.less +25 -9
  31. package/es/qr-code/index.d.ts +3 -0
  32. package/es/qr-code/index.js +3 -0
  33. package/es/qr-code/qr-code.d.ts +42 -0
  34. package/es/qr-code/qr-code.js +80 -0
  35. package/es/qr-code/style/css.js +2 -0
  36. package/es/qr-code/style/index.css +154 -0
  37. package/es/qr-code/style/index.d.ts +2 -0
  38. package/es/qr-code/style/index.js +2 -0
  39. package/es/qr-code/style/index.less +42 -0
  40. package/es/qr-code/style/mixin.less +6 -0
  41. package/es/qr-code/style/token.less +24 -0
  42. package/es/tree/tree.js +2 -2
  43. package/es/tree/treeHooks.d.ts +1 -1
  44. package/es/tree/treeHooks.js +2 -2
  45. package/lib/alert/style/index.css +4 -2
  46. package/lib/alert/style/index.less +3 -1
  47. package/lib/config-provider/compDefaultProps.d.ts +9 -0
  48. package/lib/config-provider/compDefaultProps.js +10 -1
  49. package/lib/date-picker/context.d.ts +4 -2
  50. package/lib/date-picker/date-picker.d.ts +9 -0
  51. package/lib/date-picker/date-picker.js +4 -2
  52. package/lib/date-picker/panel/month/month.js +14 -9
  53. package/lib/date-picker/panel/quarter/quarter.js +12 -4
  54. package/lib/date-picker/panel/time/time-column.d.ts +2 -0
  55. package/lib/date-picker/panel/time/time-column.js +14 -5
  56. package/lib/date-picker/panel/time/time.js +8 -4
  57. package/lib/date-picker/panel/week/week.js +20 -10
  58. package/lib/date-picker/panel/year/year.js +12 -4
  59. package/lib/date-picker/range-picker.js +11 -4
  60. package/lib/index.d.ts +1 -0
  61. package/lib/index.js +7 -0
  62. package/lib/modal/modal.d.ts +1 -0
  63. package/lib/modal/modal.js +31 -5
  64. package/lib/modal/style/index.css +21 -0
  65. package/lib/modal/style/index.less +25 -9
  66. package/lib/qr-code/index.d.ts +3 -0
  67. package/lib/qr-code/index.js +27 -0
  68. package/lib/qr-code/qr-code.d.ts +42 -0
  69. package/lib/qr-code/qr-code.js +96 -0
  70. package/lib/qr-code/style/css.js +4 -0
  71. package/lib/qr-code/style/index.css +154 -0
  72. package/lib/qr-code/style/index.d.ts +2 -0
  73. package/lib/qr-code/style/index.js +4 -0
  74. package/lib/qr-code/style/index.less +42 -0
  75. package/lib/qr-code/style/mixin.less +6 -0
  76. package/lib/qr-code/style/token.less +24 -0
  77. package/lib/style/components.less +1 -0
  78. package/lib/tree/tree.js +2 -2
  79. package/lib/tree/treeHooks.d.ts +1 -1
  80. package/lib/tree/treeHooks.js +2 -2
  81. package/package.json +4 -2
@@ -8,8 +8,8 @@ Object.defineProperty(exports, "__esModule", {
8
8
  value: true
9
9
  });
10
10
  exports.default = void 0;
11
- var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
12
11
  var _map = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/map"));
12
+ var _concat = _interopRequireDefault(require("@babel/runtime-corejs3/core-js-stable/instance/concat"));
13
13
  var _extends2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/extends"));
14
14
  var _defineProperty2 = _interopRequireDefault(require("@babel/runtime-corejs3/helpers/defineProperty"));
15
15
  var _react = _interopRequireWildcard(require("react"));
@@ -33,7 +33,9 @@ function Month(props) {
33
33
  hoverRangedValue = context.hoverRangedValue,
34
34
  locale = context.locale,
35
35
  innerPicker = context.innerPicker,
36
- setInnerPicker = context.setInnerPicker;
36
+ setInnerPicker = context.setInnerPicker,
37
+ cellRender = context.cellRender,
38
+ range = context.range;
37
39
  var disabledDate = props.disabledDate;
38
40
  var _dateValue;
39
41
  if (panelPosition) {
@@ -100,12 +102,6 @@ function Month(props) {
100
102
  setInnerPicker(undefined);
101
103
  }
102
104
  };
103
- var renderMonthItem = function renderMonthItem(i) {
104
- var _context;
105
- return /*#__PURE__*/_react.default.createElement("span", {
106
- className: getMonthClassNames(i)
107
- }, (0, _concat.default)(_context = "".concat(i + 1)).call(_context, locale.month));
108
- };
109
105
  var renderMonth = function renderMonth() {
110
106
  var monthLayout = monthsThreeColumns;
111
107
  var monthLineCls = (0, _classnames3.default)("".concat(prefixCls, "-month-line"));
@@ -114,6 +110,7 @@ function Month(props) {
114
110
  className: monthLineCls,
115
111
  key: i
116
112
  }, (0, _map.default)(month).call(month, function (m, j) {
113
+ var _context;
117
114
  var month = (0, _dateFns.setMonth)(viewDate, m);
118
115
  var _props = {
119
116
  onClick: function onClick() {
@@ -131,10 +128,18 @@ function Month(props) {
131
128
  }
132
129
  };
133
130
  var monthItemCls = (0, _classnames3.default)("".concat(prefixCls, "-month-item"), (0, _defineProperty2.default)({}, "".concat(prefixCls, "-month-item-disabled"), disabledDate && disabledDate(month)), getRangeCls(month));
131
+ var originNode = /*#__PURE__*/_react.default.createElement("span", {
132
+ className: getMonthClassNames(m)
133
+ }, (0, _concat.default)(_context = "".concat(m + 1)).call(_context, locale.month));
134
134
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
135
135
  className: monthItemCls,
136
136
  key: j
137
- }, _props), renderMonthItem(m));
137
+ }, _props), typeof cellRender === 'function' ? cellRender(m + 1, {
138
+ originNode: originNode,
139
+ panelType: 'month',
140
+ range: range,
141
+ date: month
142
+ }) || originNode : originNode);
138
143
  }));
139
144
  });
140
145
  };
@@ -29,7 +29,9 @@ function Quarter(props) {
29
29
  onDateMouseLeave = context.onDateMouseLeave,
30
30
  rangeValue = context.rangeValue,
31
31
  panelPosition = context.panelPosition,
32
- hoverRangedValue = context.hoverRangedValue;
32
+ hoverRangedValue = context.hoverRangedValue,
33
+ cellRender = context.cellRender,
34
+ range = context.range;
33
35
  var disabledDate = props.disabledDate;
34
36
  var _dateValue;
35
37
  if (panelPosition) {
@@ -108,12 +110,18 @@ function Quarter(props) {
108
110
  }
109
111
  };
110
112
  var quarterCls = (0, _classnames3.default)("".concat(prefixCls, "-quarter-item"), (0, _defineProperty2.default)({}, "".concat(prefixCls, "-quarter-item-disabled"), disabledDate && disabledDate(quarter)), getRangeCls(quarter));
113
+ var originNode = /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
114
+ className: getQuarterClassNames(i + 1)
115
+ }, _props), n);
111
116
  return /*#__PURE__*/_react.default.createElement("div", {
112
117
  key: n,
113
118
  className: quarterCls
114
- }, /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
115
- className: getQuarterClassNames(i + 1)
116
- }, _props), n));
119
+ }, typeof cellRender === 'function' ? cellRender(i + 1, {
120
+ originNode: originNode,
121
+ panelType: 'quarter',
122
+ range: range,
123
+ date: quarter
124
+ }) || originNode : originNode);
117
125
  });
118
126
  };
119
127
  var quarterCls = (0, _classnames3.default)("".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;
@@ -23,10 +23,13 @@ function TimeUnitColumn(props) {
23
23
  onSelect = props.onSelect,
24
24
  value = props.value,
25
25
  hideDisabledOptions = props.hideDisabledOptions,
26
- selectValue = props.selectValue;
26
+ selectValue = props.selectValue,
27
+ subType = props.subType;
27
28
  var cellPrefixCls = "".concat(prefixCls, "-cell");
28
29
  var _React$useContext = React.useContext(_context.default),
29
- open = _React$useContext.open;
30
+ open = _React$useContext.open,
31
+ cellRender = _React$useContext.cellRender,
32
+ range = _React$useContext.range;
30
33
  var ulRef = (0, React.useRef)(null);
31
34
  var liRefs = (0, React.useRef)(new _map.default());
32
35
  var scrollRef = (0, React.useRef)();
@@ -63,6 +66,9 @@ function TimeUnitColumn(props) {
63
66
  if (hideDisabledOptions && unit.disabled) {
64
67
  return null;
65
68
  }
69
+ var originNode = /*#__PURE__*/React.createElement("div", {
70
+ className: "".concat(cellPrefixCls, "-inner")
71
+ }, unit.label);
66
72
  return /*#__PURE__*/React.createElement("div", {
67
73
  key: unit.value,
68
74
  ref: function ref(element) {
@@ -75,9 +81,12 @@ function TimeUnitColumn(props) {
75
81
  }
76
82
  onSelect(unit.value);
77
83
  }
78
- }, /*#__PURE__*/React.createElement("div", {
79
- className: "".concat(cellPrefixCls, "-inner")
80
- }, unit.label));
84
+ }, typeof cellRender === 'function' ? cellRender(unit.value, {
85
+ originNode: originNode,
86
+ panelType: 'time',
87
+ subType: subType,
88
+ range: range
89
+ }) || originNode : originNode);
81
90
  }));
82
91
  }
83
92
  var _default = TimeUnitColumn;
@@ -177,7 +177,8 @@ function TimePanel(props) {
177
177
  }
178
178
  }
179
179
  addColumnNode(showHour, /*#__PURE__*/React.createElement(_timeColumn.default, {
180
- key: "hour"
180
+ key: "hour",
181
+ subType: 'hour'
181
182
  }), hour, hours, function (num) {
182
183
  var time = setTime(isPM, num, minute, second);
183
184
  if (time) {
@@ -185,7 +186,8 @@ function TimePanel(props) {
185
186
  }
186
187
  });
187
188
  addColumnNode(showMinute, /*#__PURE__*/React.createElement(_timeColumn.default, {
188
- key: "minute"
189
+ key: "minute",
190
+ subType: 'minute'
189
191
  }), minute, minutes, function (num) {
190
192
  var time = setTime(isPM, hour, num, second);
191
193
  if (time) {
@@ -193,7 +195,8 @@ function TimePanel(props) {
193
195
  }
194
196
  });
195
197
  addColumnNode(showSecond, /*#__PURE__*/React.createElement(_timeColumn.default, {
196
- key: "second"
198
+ key: "second",
199
+ subType: 'second'
197
200
  }), second, seconds, function (num) {
198
201
  var time = setTime(isPM, hour, minute, num);
199
202
  if (time) {
@@ -205,7 +208,8 @@ function TimePanel(props) {
205
208
  PMIndex = isPM ? 1 : 0;
206
209
  }
207
210
  addColumnNode(use12Hours === true, /*#__PURE__*/React.createElement(_timeColumn.default, {
208
- key: "12hours"
211
+ key: "12hours",
212
+ subType: '12Hours'
209
213
  }), PMIndex, [{
210
214
  label: 'AM',
211
215
  value: 0,
@@ -47,7 +47,9 @@ function Week(props) {
47
47
  disabledTimePanel = context.disabledTimePanel,
48
48
  onSelect = context.onSelect,
49
49
  onDateMouseEnter = context.onDateMouseEnter,
50
- onDateMouseLeave = context.onDateMouseLeave;
50
+ onDateMouseLeave = context.onDateMouseLeave,
51
+ cellRender = context.cellRender,
52
+ range = context.range;
51
53
  var showWeekNumber = props.showWeekNumber,
52
54
  day = props.day,
53
55
  picker = props.picker,
@@ -188,8 +190,6 @@ function Week(props) {
188
190
  } else {
189
191
  now = dateValue || viewDate;
190
192
  }
191
- // if(hours) {
192
- // }
193
193
  var dayTime = (0, _dateFns.setTime)(day, {
194
194
  hour: (0, _dateFns2.getHours)(now),
195
195
  minute: (0, _dateFns2.getMinutes)(now),
@@ -212,18 +212,28 @@ function Week(props) {
212
212
  }
213
213
  }
214
214
  };
215
- // console.log('disabledDate', disabledDate)
215
+ var originNode = /*#__PURE__*/_react.default.createElement("div", {
216
+ className: getDayClassNames(day)
217
+ }, date);
216
218
  return /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
217
219
  key: day.valueOf(),
218
220
  className: (0, _classnames5.default)("".concat(prefixCls, "-calendar-item"), (_classnames3 = {}, (0, _defineProperty2.default)(_classnames3, "".concat(prefixCls, "-calendar-item-disabled"), disabledDate && disabledDate(day)), (0, _defineProperty2.default)(_classnames3, "".concat(prefixCls, "-calendar-current"), currentMonth === (0, _dateFns.getMonth)(day)), _classnames3), getRangeCls(day))
219
- }, _props), /*#__PURE__*/_react.default.createElement("div", {
220
- className: getDayClassNames(day)
221
- }, date));
221
+ }, _props), typeof cellRender === 'function' ? cellRender(day, {
222
+ originNode: originNode,
223
+ panelType: 'date',
224
+ range: range,
225
+ date: day
226
+ }) || originNode : originNode);
222
227
  }));
223
- var calenderLineCls = (0, _classnames5.default)((_classnames4 = {}, (0, _defineProperty2.default)(_classnames4, "".concat(prefixCls, "-calendar-line"), picker !== 'week'), (0, _defineProperty2.default)(_classnames4, "".concat(prefixCls, "-calendar-week-line"), picker === 'week'), (0, _defineProperty2.default)(_classnames4, "".concat(prefixCls, "-calendar-week-selected"), picker === 'week' && getWeekSelected(startOfWeek)), _classnames4));
224
- return /*#__PURE__*/_react.default.createElement("div", {
225
- className: calenderLineCls
228
+ var originNode = /*#__PURE__*/_react.default.createElement("div", {
229
+ className: (0, _classnames5.default)((_classnames4 = {}, (0, _defineProperty2.default)(_classnames4, "".concat(prefixCls, "-calendar-line"), picker !== 'week'), (0, _defineProperty2.default)(_classnames4, "".concat(prefixCls, "-calendar-week-line"), picker === 'week'), (0, _defineProperty2.default)(_classnames4, "".concat(prefixCls, "-calendar-week-selected"), picker === 'week' && getWeekSelected(startOfWeek)), _classnames4))
226
230
  }, week);
231
+ return typeof cellRender === 'function' ? cellRender(weekNumber, {
232
+ originNode: originNode,
233
+ panelType: 'week',
234
+ range: range,
235
+ date: startOfWeek
236
+ }) || originNode : originNode;
227
237
  };
228
238
  return /*#__PURE__*/_react.default.createElement(_react.default.Fragment, null, renderDays());
229
239
  }
@@ -30,7 +30,9 @@ function Year(props) {
30
30
  panelPosition = context.panelPosition,
31
31
  hoverRangedValue = context.hoverRangedValue,
32
32
  innerPicker = context.innerPicker,
33
- setInnerPicker = context.setInnerPicker;
33
+ setInnerPicker = context.setInnerPicker,
34
+ cellRender = context.cellRender,
35
+ range = context.range;
34
36
  var yearItemNumber = props.yearItemNumber,
35
37
  disabledDate = props.disabledDate,
36
38
  _props$picker = props.picker,
@@ -126,12 +128,18 @@ function Year(props) {
126
128
  }
127
129
  }
128
130
  };
131
+ var originNode = /*#__PURE__*/_react.default.createElement("span", {
132
+ className: getYearClassNames(y)
133
+ }, y);
129
134
  yearsList.push( /*#__PURE__*/_react.default.createElement("div", (0, _extends2.default)({
130
135
  className: (0, _classnames3.default)("".concat(prefixCls, "-year-item"), (0, _defineProperty2.default)({}, "".concat(prefixCls, "-year-item-disabled"), disabledDate && disabledDate(year)), getRangeCls(year)),
131
136
  key: y
132
- }, _props), /*#__PURE__*/_react.default.createElement("span", {
133
- className: getYearClassNames(y)
134
- }, y)));
137
+ }, _props), typeof cellRender === 'function' ? cellRender(y, {
138
+ originNode: originNode,
139
+ panelType: 'year',
140
+ range: range,
141
+ date: year
142
+ }) || originNode : originNode));
135
143
  };
136
144
  for (var y = startPeriod; y <= endPeriod; y++) {
137
145
  _loop();
@@ -122,7 +122,8 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
122
122
  onBlur = datePickerProps.onBlur,
123
123
  _onOk = datePickerProps.onOk,
124
124
  getPopupContainer = datePickerProps.getPopupContainer,
125
- status = datePickerProps.status;
125
+ status = datePickerProps.status,
126
+ cellRender = datePickerProps.cellRender;
126
127
  var needConfirmButton = picker === 'date' && !!showTime || picker === 'time';
127
128
  var datePickerLang = (0, _extends2.default)({}, globalLocale.getCompLangMsg({
128
129
  componentName: 'DatePicker'
@@ -532,7 +533,9 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
532
533
  onDateMouseEnter: onDateMouseEnter,
533
534
  onDateMouseLeave: onDateMouseLeave,
534
535
  innerPicker: innerPicker,
535
- setInnerPicker: setInnerPicker
536
+ setInnerPicker: setInnerPicker,
537
+ cellRender: cellRender,
538
+ range: mergedActivePickerIndex === 0 ? 'start' : 'end'
536
539
  }
537
540
  }, renderPanel());
538
541
  var rightPanel = /*#__PURE__*/_react.default.createElement(_context.default.Provider, {
@@ -549,7 +552,9 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
549
552
  onDateMouseEnter: onDateMouseEnter,
550
553
  onDateMouseLeave: onDateMouseLeave,
551
554
  innerPicker: innerPicker,
552
- setInnerPicker: setInnerPicker
555
+ setInnerPicker: setInnerPicker,
556
+ cellRender: cellRender,
557
+ range: mergedActivePickerIndex === 0 ? 'start' : 'end'
553
558
  }
554
559
  }, renderPanel());
555
560
  panels = /*#__PURE__*/_react.default.createElement("div", {
@@ -576,7 +581,9 @@ var InternalRangePicker = function InternalRangePicker(props, ref) {
576
581
  onDateMouseEnter: onDateMouseEnter,
577
582
  onDateMouseLeave: onDateMouseLeave,
578
583
  innerPicker: innerPicker,
579
- setInnerPicker: setInnerPicker
584
+ setInnerPicker: setInnerPicker,
585
+ cellRender: cellRender,
586
+ range: mergedActivePickerIndex === 0 ? 'start' : 'end'
580
587
  }
581
588
  }, renderPanel());
582
589
  }
package/lib/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/lib/index.js CHANGED
@@ -223,6 +223,12 @@ Object.defineProperty(exports, "Progress", {
223
223
  return _progress.default;
224
224
  }
225
225
  });
226
+ Object.defineProperty(exports, "QRCode", {
227
+ enumerable: true,
228
+ get: function get() {
229
+ return _qrCode.default;
230
+ }
231
+ });
226
232
  Object.defineProperty(exports, "Radio", {
227
233
  enumerable: true,
228
234
  get: function get() {
@@ -437,6 +443,7 @@ var _link = _interopRequireDefault(require("./link"));
437
443
  var _treeSelect = _interopRequireDefault(require("./tree-select"));
438
444
  var _colorPicker = _interopRequireDefault(require("./color-picker"));
439
445
  var _clipboard = _interopRequireDefault(require("./clipboard"));
446
+ var _qrCode = _interopRequireDefault(require("./qr-code"));
440
447
  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); }
441
448
  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; }
442
449
  /* @remove-on-es-build-begin */
@@ -43,6 +43,7 @@ export interface IModalProps {
43
43
  width?: number;
44
44
  showline?: boolean;
45
45
  bounds?: DraggableBounds | string | false;
46
+ overroll?: boolean;
46
47
  onDragStart?: DraggableEventHandler;
47
48
  onDrag?: DraggableEventHandler;
48
49
  onDragStop?: DraggableEventHandler;
@@ -41,7 +41,7 @@ exports.ConfirmModalTypes = ConfirmModalTypes;
41
41
  var ModalTypes = (0, _type.tuple)('confirm', 'warning', 'error', 'normal');
42
42
  exports.ModalTypes = ModalTypes;
43
43
  var InternalModal = function InternalModal(props, ref) {
44
- var _classNames3, _classNames4, _context2, _context3;
44
+ var _classNames3, _classNames4, _context2, _context3, _context4;
45
45
  var _useContext = (0, _react.useContext)(_ConfigContext.default),
46
46
  getPrefixCls = _useContext.getPrefixCls,
47
47
  prefixCls = _useContext.prefixCls,
@@ -84,7 +84,8 @@ var InternalModal = function InternalModal(props, ref) {
84
84
  onDrag = modalProps.onDrag,
85
85
  onDragStop = modalProps.onDragStop,
86
86
  bounds = modalProps.bounds,
87
- others = __rest(modalProps, ["body", "bodyClassName", "bodyStyle", "cancelButtonProps", "cancelText", "className", "closable", "closeIcon", "destroyOnClose", "draggable", "focusTriggerAfterClose", "footer", "footerClassName", "footerStyle", "footerBtnOrder", "getContainer", "height", "keyboard", "mask", "maskClosable", "maskStyle", "maskClassName", "okButtonProps", "okText", "onCancel", "onOk", "prefixCls", "title", "titleIcon", "type", "visible", "width", "showline", "onDragStart", "onDrag", "onDragStop", "bounds"]);
87
+ overroll = modalProps.overroll,
88
+ others = __rest(modalProps, ["body", "bodyClassName", "bodyStyle", "cancelButtonProps", "cancelText", "className", "closable", "closeIcon", "destroyOnClose", "draggable", "focusTriggerAfterClose", "footer", "footerClassName", "footerStyle", "footerBtnOrder", "getContainer", "height", "keyboard", "mask", "maskClosable", "maskStyle", "maskClassName", "okButtonProps", "okText", "onCancel", "onOk", "prefixCls", "title", "titleIcon", "type", "visible", "width", "showline", "onDragStart", "onDrag", "onDragStop", "bounds", "overroll"]);
88
89
  var isForceController = visible !== undefined;
89
90
  var _useState = (0, _react.useState)(isForceController ? visible : true),
90
91
  _useState2 = (0, _slicedToArray2.default)(_useState, 2),
@@ -92,6 +93,7 @@ var InternalModal = function InternalModal(props, ref) {
92
93
  setInnerVisible = _useState2[1]; // 需要根据visible来判断,不能一开始为true再去设置false
93
94
  var previousActiveElement = (0, _react.useRef)(null);
94
95
  var innerRef = (0, _react.useRef)(null);
96
+ var wrapperRef = (0, _react.useRef)(null);
95
97
  var containerRef = ref || innerRef;
96
98
  var modalPrefixCls = getPrefixCls(prefixCls, 'modal', customPrefixcls);
97
99
  (0, _devwarning.default)(ModalTypes.indexOf(type) === -1, 'modal', "cannot found modal type '".concat(type, "'"));
@@ -199,11 +201,16 @@ var InternalModal = function InternalModal(props, ref) {
199
201
  proxyCloseModal(onCancel);
200
202
  }
201
203
  }, [proxyCloseModal, onCancel, maskClosable]);
204
+ var handleWrapperClick = function handleWrapperClick(e) {
205
+ if (wrapperRef.current === e.target) {
206
+ handleMaskClick();
207
+ }
208
+ };
202
209
  var isHidden = !destroyOnClose && !(isForceController ? visible : innerVisible);
203
210
  var modalClasses = (0, _classnames.default)(modalPrefixCls, className, (_classNames3 = {}, (0, _defineProperty2.default)(_classNames3, "".concat(modalPrefixCls, "-container"), true), (0, _defineProperty2.default)(_classNames3, "".concat(modalPrefixCls, "-container-hidden"), isHidden), (0, _defineProperty2.default)(_classNames3, "".concat(modalPrefixCls, "-container-show"), !isHidden), _classNames3));
204
211
  var headerClass = "".concat(modalPrefixCls, "-header");
205
212
  var container = /*#__PURE__*/_react.default.createElement("div", {
206
- className: (0, _classnames.default)((_classNames4 = {}, (0, _defineProperty2.default)(_classNames4, "".concat(modalPrefixCls, "-container-box"), true), (0, _defineProperty2.default)(_classNames4, "".concat(modalPrefixCls, "-has-container-box"), modalContainer), (0, _defineProperty2.default)(_classNames4, "".concat(modalPrefixCls, "-showline"), showline), _classNames4)),
213
+ className: (0, _classnames.default)((_classNames4 = {}, (0, _defineProperty2.default)(_classNames4, "".concat(modalPrefixCls, "-container-box"), true), (0, _defineProperty2.default)(_classNames4, "".concat(modalPrefixCls, "-has-container-box"), modalContainer && !overroll), (0, _defineProperty2.default)(_classNames4, "".concat(modalPrefixCls, "-showline"), showline), _classNames4)),
207
214
  style: {
208
215
  width: width,
209
216
  height: height
@@ -253,8 +260,18 @@ var InternalModal = function InternalModal(props, ref) {
253
260
  onClick: handleMaskClick,
254
261
  className: (0, _classnames.default)(maskClassName, (0, _defineProperty2.default)({}, "".concat(modalPrefixCls, "-mask"), true)),
255
262
  style: maskStyle
256
- }), /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
257
- defaultPosition: defaultPosition,
263
+ }), overroll ? /*#__PURE__*/_react.default.createElement("div", {
264
+ tabIndex: -1,
265
+ className: (0, _classnames.default)((0, _defineProperty2.default)({}, "".concat(modalPrefixCls, "-wrapper"), modalContainer && ((isForceController ? visible : innerVisible) || !destroyOnClose))),
266
+ ref: wrapperRef,
267
+ onClick: handleWrapperClick
268
+ }, /*#__PURE__*/_react.default.createElement("div", {
269
+ className: "".concat(modalPrefixCls, "-dialog")
270
+ }, /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
271
+ defaultPosition: {
272
+ x: 0,
273
+ y: 0
274
+ },
258
275
  handle: ".".concat(headerClass),
259
276
  disabled: !draggable,
260
277
  onStart: handleDragStart,
@@ -262,6 +279,15 @@ var InternalModal = function InternalModal(props, ref) {
262
279
  onStop: onDragStop,
263
280
  bounds: bounds,
264
281
  cancel: (0, _concat.default)(_context3 = ".".concat(modalPrefixCls, "-title-container, .")).call(_context3, modalPrefixCls, "-close-icon")
282
+ }, container))) : /*#__PURE__*/_react.default.createElement(_reactDraggable.default, {
283
+ defaultPosition: defaultPosition,
284
+ handle: ".".concat(headerClass),
285
+ disabled: !draggable,
286
+ onStart: handleDragStart,
287
+ onDrag: onDrag,
288
+ onStop: onDragStop,
289
+ bounds: bounds,
290
+ cancel: (0, _concat.default)(_context4 = ".".concat(modalPrefixCls, "-title-container, .")).call(_context4, modalPrefixCls, "-close-icon")
265
291
  }, container));
266
292
  var renderComp = ((isForceController ? visible : innerVisible) || !destroyOnClose) && comp;
267
293
  if (modalContainer && renderComp) return /*#__PURE__*/_reactDom.default.createPortal(renderComp, modalContainer);
@@ -252,6 +252,27 @@
252
252
  .kd-modal-margin-btn {
253
253
  margin-right: var(--kd-c-modal-footer-button-spacing, 12px);
254
254
  }
255
+ .kd-modal-wrapper {
256
+ position: fixed;
257
+ top: 0;
258
+ right: 0;
259
+ bottom: 0;
260
+ left: 0;
261
+ overflow: auto;
262
+ text-align: center;
263
+ }
264
+ .kd-modal-wrapper::before {
265
+ display: inline-block;
266
+ width: 0;
267
+ height: 100%;
268
+ vertical-align: middle;
269
+ content: '';
270
+ }
271
+ .kd-modal-dialog {
272
+ display: inline-block;
273
+ vertical-align: middle;
274
+ max-width: calc(100vw);
275
+ }
255
276
  .kd-modal-showline .kd-modal-header {
256
277
  border-bottom: var(--kd-c-modal-sizing-border, 1px) solid var(--kd-c-modal-color-border, var(--kd-g-color-border-strong-2, #d9d9d9));
257
278
  }
@@ -29,15 +29,13 @@
29
29
  }
30
30
 
31
31
  &-hidden {
32
- display: none
32
+ display: none;
33
33
  }
34
34
  }
35
35
  &-mask {
36
36
  .overlay(@modal-mask-color-background, 0);
37
37
  }
38
- // &-mask + &-container-box {
39
38
 
40
- // }
41
39
  &-has-container-box {
42
40
  position: fixed;
43
41
  left: 50%;
@@ -116,16 +114,34 @@
116
114
  color: @modal-footer-font-color;
117
115
  flex-shrink: 0;
118
116
  }
119
- // each(@modal-footer-type-set, {
120
- // .@{modal-prefix-cls}-@{key}-footer {
121
- // justify-content: @value;
122
- // }
123
- // });
124
117
  }
125
118
 
126
119
  &-margin-btn {
127
120
  margin-right: @modal-footer-button-spacing;
128
121
  }
122
+
123
+ &-wrapper {
124
+ position: fixed;
125
+ top: 0;
126
+ right: 0;
127
+ bottom: 0;
128
+ left: 0;
129
+ overflow: auto;
130
+ text-align: center;
131
+
132
+ &::before {
133
+ display: inline-block;
134
+ width: 0;
135
+ height: 100%;
136
+ vertical-align: middle;
137
+ content: '';
138
+ }
139
+ }
140
+ &-dialog {
141
+ display: inline-block;
142
+ vertical-align: middle;
143
+ max-width: calc(100vw);
144
+ }
129
145
  }
130
146
 
131
147
  .@{modal-prefix-cls}-showline {
@@ -135,4 +151,4 @@
135
151
  .@{modal-prefix-cls}-footer {
136
152
  border-top: @modal-border-width solid @modal-border-color;
137
153
  }
138
- }
154
+ }
@@ -0,0 +1,3 @@
1
+ import QRCode from './qr-code';
2
+ export * from './qr-code';
3
+ export default QRCode;
@@ -0,0 +1,27 @@
1
+ "use strict";
2
+
3
+ var _typeof = require("@babel/runtime-corejs3/helpers/typeof");
4
+ var _WeakMap = require("@babel/runtime-corejs3/core-js-stable/weak-map");
5
+ var _Object$getOwnPropertyDescriptor = require("@babel/runtime-corejs3/core-js-stable/object/get-own-property-descriptor");
6
+ var _Object$keys = require("@babel/runtime-corejs3/core-js-stable/object/keys");
7
+ Object.defineProperty(exports, "__esModule", {
8
+ value: true
9
+ });
10
+ var _exportNames = {};
11
+ exports.default = void 0;
12
+ var _qrCode = _interopRequireWildcard(require("./qr-code"));
13
+ _Object$keys(_qrCode).forEach(function (key) {
14
+ if (key === "default" || key === "__esModule") return;
15
+ if (Object.prototype.hasOwnProperty.call(_exportNames, key)) return;
16
+ if (key in exports && exports[key] === _qrCode[key]) return;
17
+ Object.defineProperty(exports, key, {
18
+ enumerable: true,
19
+ get: function get() {
20
+ return _qrCode[key];
21
+ }
22
+ });
23
+ });
24
+ 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); }
25
+ 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; }
26
+ var _default = _qrCode.default;
27
+ exports.default = _default;
@@ -0,0 +1,42 @@
1
+ import React, { CSSProperties, FunctionComponentElement } from 'react';
2
+ export declare type QRPropsCanvas = QRProps & React.CanvasHTMLAttributes<HTMLCanvasElement>;
3
+ export declare type QRPropsSvg = QRProps & React.SVGAttributes<SVGSVGElement>;
4
+ export declare const QRCodeTypes: ["canvas", "svg"];
5
+ export declare type QRCodeType = typeof QRCodeTypes[number];
6
+ export declare const QRCodeStatus: ["active", "expired", "loading"];
7
+ export declare type QRCodeStatus = typeof QRCodeStatus[number];
8
+ export declare const QRCodeErrorLevels: ["L", "M", "Q", "H"];
9
+ export declare type QRCodeErrorLevel = typeof QRCodeErrorLevels[number];
10
+ interface ImageSettings {
11
+ src: string;
12
+ height: number;
13
+ width: number;
14
+ excavate: boolean;
15
+ x?: number;
16
+ y?: number;
17
+ }
18
+ export interface QRProps {
19
+ value: string;
20
+ type?: QRCodeType;
21
+ size?: number;
22
+ style?: CSSProperties;
23
+ color?: string;
24
+ bgColor?: string;
25
+ bordered?: boolean;
26
+ imageSettings?: ImageSettings;
27
+ }
28
+ export interface QRCodeProps extends QRProps {
29
+ className?: string;
30
+ prefixCls?: string;
31
+ icon?: string;
32
+ iconSize?: number;
33
+ status?: QRCodeStatus;
34
+ errorLevel?: QRCodeErrorLevel;
35
+ children?: React.ReactNode;
36
+ onRefresh?: () => void;
37
+ }
38
+ declare const QRCode: {
39
+ (props: QRCodeProps): FunctionComponentElement<QRCodeProps>;
40
+ displayName: string;
41
+ };
42
+ export default QRCode;