dlt-for-react 1.1.15 → 1.1.17

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 (85) hide show
  1. package/README.md +17 -1
  2. package/assets/HqCheckButton/index.less +13 -0
  3. package/assets/HqImage/index.less +11 -0
  4. package/assets/HqInputPicker/index.less +8 -0
  5. package/assets/selector/resultview/index.less +53 -0
  6. package/assets/selector/selectormodal/index.less +15 -0
  7. package/assets/selector/table/index.less +211 -0
  8. package/assets/selector/tree/index.less +138 -0
  9. package/assets/stuSelector/index.less +24 -0
  10. package/assets/teaSelector/index.less +4 -0
  11. package/lib/components/HqCascader/index.js +306 -0
  12. package/lib/components/HqCheckBox/index.js +375 -0
  13. package/lib/components/HqCheckButton/index.js +284 -0
  14. package/lib/components/HqConfirm/index.js +81 -0
  15. package/lib/components/HqFormItem/FormRules.js +27 -0
  16. package/lib/components/HqFormItem/index.js +309 -0
  17. package/lib/components/HqImage/index.js +553 -0
  18. package/lib/components/HqInputPicker/edit-page.js +585 -0
  19. package/lib/components/HqInputPicker/index.js +226 -0
  20. package/lib/components/HqInputPicker/input-const.js +134 -0
  21. package/lib/components/HqInputPicker/render.js +2496 -0
  22. package/lib/components/HqInputPicker/setting-checkbox.js +853 -0
  23. package/lib/components/HqInputPicker/setting-datepicker.js +430 -0
  24. package/lib/components/HqInputPicker/setting-datetimepicker.js +443 -0
  25. package/lib/components/HqInputPicker/setting-input.js +555 -0
  26. package/lib/components/HqInputPicker/setting-inputNumber.js +658 -0
  27. package/lib/components/HqInputPicker/setting-monthpicker.js +434 -0
  28. package/lib/components/HqInputPicker/setting-multiSelect.js +533 -0
  29. package/lib/components/HqInputPicker/setting-nhcascader.js +588 -0
  30. package/lib/components/HqInputPicker/setting-old-upload.js +428 -0
  31. package/lib/components/HqInputPicker/setting-radio.js +468 -0
  32. package/lib/components/HqInputPicker/setting-rangepicker.js +466 -0
  33. package/lib/components/HqInputPicker/setting-select.js +534 -0
  34. package/lib/components/HqInputPicker/setting-stu-selector.js +508 -0
  35. package/lib/components/HqInputPicker/setting-switch.js +274 -0
  36. package/lib/components/HqInputPicker/setting-tea-selector.js +508 -0
  37. package/lib/components/HqInputPicker/setting-textarea.js +619 -0
  38. package/lib/components/HqInputPicker/setting-timepicker.js +437 -0
  39. package/lib/components/HqInputPicker/setting-upload.js +795 -0
  40. package/lib/components/HqMultiSelect/index.js +495 -0
  41. package/lib/components/HqOldUpload/index.js +350 -0
  42. package/lib/components/HqSelect/getSelectName.js +20 -0
  43. package/lib/components/HqSelect/index.js +495 -0
  44. package/lib/components/HqSelector/HqLsrySelector/index.js +269 -267
  45. package/lib/components/HqSelector/HqRySelector/index.js +4 -2
  46. package/lib/components/HqSelector/HqWzSelector/index.js +4 -2
  47. package/lib/components/HqStuSelector/index.js +267 -0
  48. package/lib/components/HqTeaSelector/index.js +221 -0
  49. package/lib/components/KyCollapse/index.js +23 -24
  50. package/lib/components/KyContainerFrame/index.js +2 -2
  51. package/lib/components/KyEditableTable/component.js +38 -38
  52. package/lib/components/KyEditableTable/index.js +203 -181
  53. package/lib/components/KyExcel/index.js +191 -153
  54. package/lib/components/KyModal/index.js +43 -33
  55. package/lib/components/KyTable/AddFieldsModal.js +66 -59
  56. package/lib/components/KyTable/checkButtons.js +3 -13
  57. package/lib/components/KyTable/index.js +2 -2
  58. package/lib/components/KyTableCardList/AddFieldsModal.js +280 -282
  59. package/lib/components/KyTableCardList/index.js +2 -2
  60. package/lib/components/KyTree/index.js +7 -7
  61. package/lib/components/KyUpload/index.js +170 -165
  62. package/lib/components/NHSelector/ListSort/index.js +411 -0
  63. package/lib/components/NHSelector/index.js +636 -0
  64. package/lib/components/NHSelector/resultview/index.js +408 -0
  65. package/lib/components/NHSelector/selectormodal/index.js +303 -0
  66. package/lib/components/NHSelector/table/index.js +784 -0
  67. package/lib/components/NHSelector/tree/index.js +554 -0
  68. package/lib/index.js +155 -36
  69. package/lib/layouts/LeftMenu/index.js +6 -6
  70. package/lib/layouts/Login/index-pre.js +107 -103
  71. package/lib/layouts/Login/index.js +2 -2
  72. package/lib/layouts/Login/login.js +178 -172
  73. package/lib/layouts/NavigationBar/index.js +67 -67
  74. package/lib/layouts/Top/editPassWord.js +84 -64
  75. package/lib/layouts/Top/index.js +117 -117
  76. package/lib/layouts/TopMenu/index.js +53 -53
  77. package/lib/layouts/layout/index.js +115 -118
  78. package/lib/layouts/mixTop/index.js +95 -95
  79. package/lib/layouts/settingDrawer/index.js +96 -96
  80. package/lib/routes/AuthorizedRoute.js +33 -32
  81. package/lib/utils/NHCore.js +65 -65
  82. package/package.json +3 -3
  83. package/lib/utils/createUuid.js +0 -40
  84. package/lib/utils/getLoginUser.js +0 -10
  85. package/lib/utils/getSize.js +0 -27
@@ -0,0 +1,495 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ var _getIterator2 = require("babel-runtime/core-js/get-iterator");
8
+
9
+ var _getIterator3 = _interopRequireDefault(_getIterator2);
10
+
11
+ var _set = require("babel-runtime/core-js/set");
12
+
13
+ var _set2 = _interopRequireDefault(_set);
14
+
15
+ var _toConsumableArray2 = require("babel-runtime/helpers/toConsumableArray");
16
+
17
+ var _toConsumableArray3 = _interopRequireDefault(_toConsumableArray2);
18
+
19
+ var _extends2 = require("babel-runtime/helpers/extends");
20
+
21
+ var _extends3 = _interopRequireDefault(_extends2);
22
+
23
+ var _spin = require("antd/lib/spin");
24
+
25
+ var _spin2 = _interopRequireDefault(_spin);
26
+
27
+ var _getPrototypeOf = require("babel-runtime/core-js/object/get-prototype-of");
28
+
29
+ var _getPrototypeOf2 = _interopRequireDefault(_getPrototypeOf);
30
+
31
+ var _classCallCheck2 = require("babel-runtime/helpers/classCallCheck");
32
+
33
+ var _classCallCheck3 = _interopRequireDefault(_classCallCheck2);
34
+
35
+ var _createClass2 = require("babel-runtime/helpers/createClass");
36
+
37
+ var _createClass3 = _interopRequireDefault(_createClass2);
38
+
39
+ var _possibleConstructorReturn2 = require("babel-runtime/helpers/possibleConstructorReturn");
40
+
41
+ var _possibleConstructorReturn3 = _interopRequireDefault(_possibleConstructorReturn2);
42
+
43
+ var _inherits2 = require("babel-runtime/helpers/inherits");
44
+
45
+ var _inherits3 = _interopRequireDefault(_inherits2);
46
+
47
+ var _select = require("antd/lib/select");
48
+
49
+ var _select2 = _interopRequireDefault(_select);
50
+
51
+ require("antd/lib/spin/style");
52
+
53
+ require("antd/lib/select/style");
54
+
55
+ var _react = require("react");
56
+
57
+ var _react2 = _interopRequireDefault(_react);
58
+
59
+ var _propTypes = require("prop-types");
60
+
61
+ var _propTypes2 = _interopRequireDefault(_propTypes);
62
+
63
+ var _NHFetch = require("../../utils/NHFetch");
64
+
65
+ var _NHFetch2 = _interopRequireDefault(_NHFetch);
66
+
67
+ function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }
68
+
69
+ var Option = _select2.default.Option;
70
+
71
+ /**
72
+ * 多选下拉选择器
73
+ * 1、符合自定义表单组件规范,结合FormItem使用时不会出现警告信息
74
+ * 2、代码结构优化
75
+ * 3、使用sign属性时,后台对应sign标识的sql查询语句列必须以value、label作为别名
76
+ * Author: zengxiangkai@ly-sky.com
77
+ * Created on: 2018-03-13 15:54:13
78
+ * Version: 1.3
79
+ * Modify log:
80
+ * 2018-04-25
81
+ * 1、新增filterData属性,该属性可以过滤(或保留)指定keys值项
82
+ * 2、新增dataSource属性,允许使用固定的数据源构造下拉数据,数据源格式为[{value:'value',label:'label'},{},...]
83
+ * 2018-06-04
84
+ * 1、解决sign为空或空字符串的时候,请求后台数据源报错问题
85
+ */
86
+
87
+ var HqMultiSelect = function (_React$Component) {
88
+ (0, _inherits3.default)(HqMultiSelect, _React$Component);
89
+
90
+ function HqMultiSelect(props) {
91
+ (0, _classCallCheck3.default)(this, HqMultiSelect);
92
+
93
+ var _this = (0, _possibleConstructorReturn3.default)(this, (HqMultiSelect.__proto__ || (0, _getPrototypeOf2.default)(HqMultiSelect)).call(this, props));
94
+
95
+ _initialiseProps.call(_this);
96
+
97
+ var value = _this.props.value || [];
98
+ _this.state = {
99
+ data: [], // 源数据
100
+ realData: [], // 渲染的真实数据
101
+ value: value || [],
102
+ loading: false //是否加载远程数据中
103
+ };
104
+ return _this;
105
+ }
106
+
107
+ (0, _createClass3.default)(HqMultiSelect, [{
108
+ key: "componentDidMount",
109
+ value: function componentDidMount() {
110
+ var _props = this.props,
111
+ sign = _props.sign,
112
+ dataSource = _props.dataSource;
113
+
114
+ //如果是使用数据源标识,则优先加载远程数据
115
+
116
+ if (sign && sign != "") {
117
+ this.loadRemoteData(sign);
118
+ } else {
119
+ //如果没有使用远程数据,则加载本地数据
120
+ this.loadLocalData();
121
+ }
122
+ }
123
+ }, {
124
+ key: "componentWillReceiveProps",
125
+ value: function componentWillReceiveProps(nextProps) {
126
+ var _this2 = this;
127
+
128
+ var sign = this.props.sign;
129
+ // Should be a controlled component.
130
+
131
+ if ("value" in nextProps) {
132
+ var value = nextProps.value;
133
+ this.setState({ value: value });
134
+ }
135
+
136
+ //为了防止在使用本地数据源的时候,在上级组件使用异步请求,导致在componentDidMount阶段未能获取到返回的dataSource
137
+ if ("dataSource" in nextProps && !sign) {
138
+ var dataSource = nextProps.dataSource;
139
+ this.setState({ data: dataSource }, function () {
140
+ _this2.loadLocalData();
141
+ });
142
+ }
143
+
144
+ // 存在级联功能或者过滤条件时,同步更新选项及选中的值
145
+ if ("parentValues" in nextProps || "filterData" in nextProps) {
146
+ var onChange = nextProps.onChange,
147
+ parentValues = nextProps.parentValues,
148
+ filterData = nextProps.filterData;
149
+
150
+
151
+ var realData = this.getOptions({
152
+ data: this.state.data,
153
+ parentValues: parentValues,
154
+ filterData: filterData
155
+ });
156
+ this.setState({
157
+ realData: realData
158
+ }, function () {
159
+ var _state = _this2.state,
160
+ value = _state.value,
161
+ realData = _state.realData;
162
+
163
+ if (value) {
164
+ var nValue = value.filter(function (i) {
165
+ return realData.findIndex(function (item) {
166
+ return item.value === i;
167
+ }) > -1;
168
+ });
169
+ if (value.length !== nValue.length && onChange) {
170
+ // 此时需要重置值,并且通知也上一级(form)
171
+ _this2.handleChange(nValue);
172
+ }
173
+ }
174
+ });
175
+ }
176
+ }
177
+
178
+ //加载远程数据
179
+
180
+
181
+ //加载本地数据
182
+
183
+
184
+ //解析数据
185
+
186
+
187
+ //下拉选项选中时回调
188
+
189
+
190
+ //下拉选择器input value值变化时回调
191
+
192
+
193
+ //取消选中时调用
194
+
195
+
196
+ //提供onChange回调方法给Form表单,表明这是一个自定义表单受控组件
197
+
198
+
199
+ // 字段名转为小写
200
+
201
+ }, {
202
+ key: "render",
203
+ value: function render() {
204
+ var _props2 = this.props,
205
+ style = _props2.style,
206
+ placeholder = _props2.placeholder,
207
+ disabled = _props2.disabled,
208
+ defaultValue = _props2.defaultValue;
209
+ var _state2 = this.state,
210
+ value = _state2.value,
211
+ loading = _state2.loading,
212
+ realData = _state2.realData;
213
+
214
+ var options = realData.map(function (option) {
215
+ return _react2.default.createElement(
216
+ Option,
217
+ { title: option.label, key: option.value, value: option.value },
218
+ option.label
219
+ );
220
+ });
221
+
222
+ return _react2.default.createElement(
223
+ "div",
224
+ null,
225
+ _react2.default.createElement(
226
+ _select2.default,
227
+ (0, _extends3.default)({}, this.props, {
228
+ allowClear: true,
229
+ style: style,
230
+ mode: "multiple",
231
+ defaultValue: defaultValue,
232
+ value: value,
233
+ onSelect: this.handleSelect,
234
+ onChange: this.handleChange,
235
+ onDeselect: this.handleDeselect,
236
+ placeholder: placeholder,
237
+ notFoundContent: loading ? _react2.default.createElement(
238
+ "div",
239
+ { style: { display: "flex", justifyContent: "center" } },
240
+ _react2.default.createElement(_spin2.default, { spinning: true, tip: "加载中" })
241
+ ) : "无数据",
242
+ filterOption: function filterOption(input, option) {
243
+ return option.props.children.toLowerCase().indexOf(input.toLowerCase()) >= 0;
244
+ },
245
+ disabled: disabled
246
+ }),
247
+ options
248
+ )
249
+ );
250
+ }
251
+ }]);
252
+ return HqMultiSelect;
253
+ }(_react2.default.Component);
254
+
255
+ //属性默认值
256
+
257
+
258
+ var _initialiseProps = function _initialiseProps() {
259
+ var _this3 = this;
260
+
261
+ this.loadRemoteData = function (sign) {
262
+ var baseUrl = _this3.props.baseUrl;
263
+ _this3.setState({ loading: true });
264
+ (0, _NHFetch2.default)((baseUrl === undefined ? "" : baseUrl) + "/proData/selectDataList", "GET", { sign: sign, t: new Date().getTime() }).then(function (res) {
265
+ if (res) {
266
+ _this3.parseData(res.data);
267
+ _this3.setState({ loading: false });
268
+ } else {
269
+ _this3.setState({ loading: false });
270
+ }
271
+ });
272
+ };
273
+
274
+ this.loadLocalData = function () {
275
+ var dataSource = _this3.props.dataSource;
276
+
277
+ if (dataSource) {
278
+ var realData = _this3.getOptions({ data: dataSource });
279
+ _this3.setState({
280
+ data: dataSource,
281
+ realData: realData
282
+ });
283
+ }
284
+ };
285
+
286
+ this.parseData = function (data) {
287
+ if (data) {
288
+ var realData = _this3.getOptions({ data: data });
289
+ _this3.setState({
290
+ data: data,
291
+ realData: realData
292
+ });
293
+ } else {
294
+ //如果远程数据为空,则尝试加载本地数据源
295
+ _this3.loadLocalData();
296
+ }
297
+ };
298
+
299
+ this.handleSelect = function (value, option) {
300
+ var label = option.props.children;
301
+
302
+ var onSelect = _this3.props.onSelect;
303
+ if (onSelect) {
304
+ onSelect(value, label, option);
305
+ }
306
+ };
307
+
308
+ this.handleChange = function (value, option) {
309
+ if (!("value" in _this3.props)) {
310
+ _this3.setState({
311
+ value: value
312
+ });
313
+ }
314
+ var text = "";
315
+ var realData = _this3.state.realData;
316
+
317
+ if (value && value.length > 0) {
318
+ var textArry = [];
319
+ value.map(function (item) {
320
+ var filterArry = realData.filter(function (i) {
321
+ return i.value === item;
322
+ });
323
+ if (filterArry.length > 0) {
324
+ textArry.push(filterArry[0].label || "");
325
+ }
326
+ });
327
+ text = textArry.join(",");
328
+ }
329
+ _this3.triggerChange(value, text);
330
+ };
331
+
332
+ this.handleDeselect = function (value) {
333
+ // const values = [...this.state.value];
334
+ var values = _this3.state.value;
335
+ var target = values.filter(function (item) {
336
+ return item != value;
337
+ });
338
+
339
+ if (!("value" in _this3.props)) {
340
+ _this3.setState({
341
+ value: target
342
+ });
343
+ }
344
+
345
+ var onDeselect = _this3.props.onDeselect;
346
+
347
+ if (onDeselect) {
348
+ onDeselect(value);
349
+ }
350
+ };
351
+
352
+ this.triggerChange = function (changedValue, changedText) {
353
+ // Should provide an event to pass value to Form.
354
+ var onChange = _this3.props.onChange;
355
+ if (onChange) {
356
+ onChange(changedValue, changedText);
357
+ }
358
+ };
359
+
360
+ this.dataToLowerCase = function (data) {
361
+ return data.map(function (option) {
362
+ var item = {};
363
+ for (var name in option) {
364
+ item[name.toLocaleLowerCase()] = option[name];
365
+ }
366
+ return item;
367
+ });
368
+ };
369
+
370
+ this.getOptions = function (_ref) {
371
+ var data = _ref.data,
372
+ parentValues = _ref.parentValues,
373
+ filterData = _ref.filterData;
374
+ var _props3 = _this3.props,
375
+ fData = _props3.filterData,
376
+ pValues = _props3.parentValues,
377
+ parentField = _props3.parentField;
378
+
379
+ parentValues = parentValues || pValues; // 级联
380
+ filterData = filterData || fData; // 过滤
381
+ var lowerData = _this3.dataToLowerCase(data);
382
+ var newData = [].concat((0, _toConsumableArray3.default)(lowerData));
383
+ //如果有过滤条件
384
+ if (filterData) {
385
+ var _filterData = filterData,
386
+ type = _filterData.type,
387
+ _filterData$filterkey = _filterData.filterkeys,
388
+ filterkeys = _filterData$filterkey === undefined ? [] : _filterData$filterkey;
389
+
390
+ switch (type) {
391
+ //过滤掉指定key值
392
+ case "remove":
393
+ {
394
+ newData = lowerData.filter(function (item) {
395
+ if (filterkeys.find(function (key) {
396
+ return item.value == key;
397
+ })) {
398
+ return false;
399
+ } else {
400
+ return true;
401
+ }
402
+ });
403
+ break;
404
+ }
405
+ //保留指定key值
406
+ case "save":
407
+ {
408
+ newData = lowerData.filter(function (item) {
409
+ if (filterkeys.find(function (key) {
410
+ return item.value == key;
411
+ })) {
412
+ return true;
413
+ } else {
414
+ return false;
415
+ }
416
+ });
417
+ break;
418
+ }
419
+ //未找到指定过滤类型,则不做过滤
420
+ default:
421
+ {
422
+ break;
423
+ }
424
+ }
425
+ }
426
+
427
+ //如果有级联父级的值
428
+ if (parentValues && parentValues.length > 0) {
429
+ var setlist = new _set2.default();
430
+ newData.forEach(function (item) {
431
+ var _iteratorNormalCompletion = true;
432
+ var _didIteratorError = false;
433
+ var _iteratorError = undefined;
434
+
435
+ try {
436
+ for (var _iterator = (0, _getIterator3.default)(parentValues), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
437
+ var v = _step.value;
438
+
439
+ if (item[parentField.toLocaleLowerCase()] === v) {
440
+ setlist.add(item);
441
+ }
442
+ }
443
+ } catch (err) {
444
+ _didIteratorError = true;
445
+ _iteratorError = err;
446
+ } finally {
447
+ try {
448
+ if (!_iteratorNormalCompletion && _iterator.return) {
449
+ _iterator.return();
450
+ }
451
+ } finally {
452
+ if (_didIteratorError) {
453
+ throw _iteratorError;
454
+ }
455
+ }
456
+ }
457
+ });
458
+ newData = [].concat((0, _toConsumableArray3.default)(setlist));
459
+ }
460
+
461
+ return newData;
462
+ };
463
+ };
464
+
465
+ HqMultiSelect.defaultProps = {
466
+ placeholder: "请选择...",
467
+ disabled: false,
468
+ parentField: "parentValue"
469
+ };
470
+
471
+ //属性检查
472
+ HqMultiSelect.propTypes = {
473
+ sign: _propTypes2.default.string, //数据源标识
474
+ dataSource: _propTypes2.default.arrayOf(_propTypes2.default.shape({
475
+ value: _propTypes2.default.string,
476
+ label: _propTypes2.default.node
477
+ })), //本地数据源
478
+ style: _propTypes2.default.object, //样式
479
+ placeholder: _propTypes2.default.string, //下拉提示
480
+ disabled: _propTypes2.default.bool, //是否禁用
481
+ defaultValue: _propTypes2.default.arrayOf(_propTypes2.default.string), //默认值
482
+ value: _propTypes2.default.arrayOf(_propTypes2.default.string), //初始值
483
+ filterData: _propTypes2.default.shape({
484
+ type: _propTypes2.default.oneOf(["remove", "save"]), //是保留还是过滤掉
485
+ filterkeys: _propTypes2.default.array //保留或过滤的key值
486
+ }), //要过滤掉的Key值
487
+ onSelect: _propTypes2.default.func, //下拉选项选中时回调
488
+ onChange: _propTypes2.default.func, //多选框值变化时回调
489
+ onDeselect: _propTypes2.default.func, //多选框值删除时回调
490
+ baseUrl: _propTypes2.default.string, //请求路径的前缀,可通过改参数控制访问的后端服务,如果不设置,则会去访问当前前端服务对应的后端服务,例如:api/sm-bpm-expansion
491
+ parentValues: _propTypes2.default.arrayOf(_propTypes2.default.string), // 级联功能,父级的值
492
+ parentField: _propTypes2.default.string // 级联功能,关联的字段名
493
+ };
494
+
495
+ exports.default = HqMultiSelect;