@openli1115/lowcode-edit-pro-table 1.0.87 → 1.0.89
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.
- package/build/docs/404.html +3 -3
- package/build/docs/_demos/:uuid +3 -3
- package/build/docs/colorful-button.html +3 -3
- package/build/docs/colorful-input.html +3 -3
- package/build/docs/index.html +3 -3
- package/build/docs/umi.76594a03.js +1 -0
- package/build/docs/~demos/:uuid.html +3 -3
- package/build/docs/~demos/colorful-button-demo.html +3 -3
- package/build/docs/~demos/colorful-input-demo.html +3 -3
- package/build/lowcode/assets-daily.json +13 -13
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +13 -13
- package/build/lowcode/meta.design.js +1 -1
- package/build/lowcode/meta.js +1 -1
- package/build/lowcode/render/default/view.js +2 -2
- package/build/lowcode/view.js +2 -2
- package/dist/BizComps.js +2 -2
- package/dist/BizComps.js.map +1 -1
- package/es/components/ProSearch/index.d.ts +10 -2
- package/es/components/ProSearch/index.js +138 -25
- package/es/style.js +1 -1
- package/lib/components/ProSearch/index.d.ts +10 -2
- package/lib/components/ProSearch/index.js +139 -26
- package/lib/style.js +1 -1
- package/lowcode/pro-search/meta.ts +10 -8
- package/lowcode_es/meta.js +1 -1
- package/lowcode_es/pro-search/meta.js +14 -8
- package/lowcode_lib/meta.js +1 -1
- package/lowcode_lib/pro-search/meta.js +14 -8
- package/package.json +3 -3
- package/build/docs/umi.8b4f868c.js +0 -1
|
@@ -5,6 +5,14 @@ export interface ProSearchField {
|
|
|
5
5
|
techName: string;
|
|
6
6
|
fieldType?: 'text' | 'date' | 'time';
|
|
7
7
|
screenInner?: string;
|
|
8
|
+
/** 3.2 修改配置页中定义的默认查询条件 */
|
|
9
|
+
defaultConditions?: Array<{
|
|
10
|
+
id?: string;
|
|
11
|
+
sign: 'I' | 'E';
|
|
12
|
+
option: '' | 'EQ' | 'NE' | 'BT' | 'LT' | 'LE' | 'GT' | 'GE' | 'CO' | 'NC';
|
|
13
|
+
low: string;
|
|
14
|
+
high: string;
|
|
15
|
+
}>;
|
|
8
16
|
}
|
|
9
17
|
export interface ProSearchProps {
|
|
10
18
|
fields?: ProSearchField[];
|
|
@@ -16,8 +24,8 @@ export interface ProSearchProps {
|
|
|
16
24
|
showHighValue?: boolean;
|
|
17
25
|
multiValue?: boolean;
|
|
18
26
|
showTechName?: boolean;
|
|
19
|
-
descriptionAlign?: 'left' | 'center' | 'right';
|
|
20
|
-
techNameAlign?: 'left' | 'center' | 'right';
|
|
27
|
+
descriptionAlign?: 'left' | 'center' | 'right' | 'justify';
|
|
28
|
+
techNameAlign?: 'left' | 'center' | 'right' | 'justify';
|
|
21
29
|
onSearch?: (data: Record<string, any[]>) => void;
|
|
22
30
|
}
|
|
23
31
|
declare const ProSearch: React.FC<ProSearchProps>;
|
|
@@ -1,10 +1,12 @@
|
|
|
1
|
-
import _Modal from "antd/es/modal";
|
|
2
1
|
import _TimePicker from "antd/es/time-picker";
|
|
3
2
|
import _DatePicker from "antd/es/date-picker";
|
|
3
|
+
import _Modal from "antd/es/modal";
|
|
4
|
+
import _asyncToGenerator from "@babel/runtime/helpers/asyncToGenerator";
|
|
4
5
|
import _Button from "antd/es/button";
|
|
5
6
|
import _Input from "antd/es/input";
|
|
6
7
|
import _Select from "antd/es/select";
|
|
7
8
|
import _extends from "@babel/runtime/helpers/extends";
|
|
9
|
+
import _regeneratorRuntime from "@babel/runtime/regenerator";
|
|
8
10
|
import * as React from 'react';
|
|
9
11
|
import { useState, useEffect } from 'react';
|
|
10
12
|
import { SearchOutlined } from '@ant-design/icons';
|
|
@@ -100,6 +102,13 @@ var ConditionTable = function ConditionTable(_ref) {
|
|
|
100
102
|
onChange: function onChange(v) {
|
|
101
103
|
return update(row.id, 'option', v);
|
|
102
104
|
}
|
|
105
|
+
// 关键:Modal 被挂到 window.top.document.body,但 Select 下拉默认使用当前 iframe 的 document.body,
|
|
106
|
+
// 会导致下拉被渲染到 iframe 内部并被 Modal 蒙层遮挡(显示在弹窗下方)。
|
|
107
|
+
// 将下拉容器固定到触发节点的父元素,保证下拉与 Select 同处 Modal 的 DOM 子树中,避免跨文档渲染被盖住。
|
|
108
|
+
,
|
|
109
|
+
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
110
|
+
return triggerNode && triggerNode.parentElement || document.body;
|
|
111
|
+
}
|
|
103
112
|
}), /*#__PURE__*/React.createElement(_Input, {
|
|
104
113
|
size: "small",
|
|
105
114
|
style: {
|
|
@@ -181,16 +190,30 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
181
190
|
excludeRows = _useState6[0],
|
|
182
191
|
setExcludeRows = _useState6[1];
|
|
183
192
|
|
|
184
|
-
// Sync field values when fields change
|
|
193
|
+
// Sync field values when fields change - 使用默认查询条件初始化
|
|
185
194
|
useEffect(function () {
|
|
186
195
|
setFieldValues(function (prev) {
|
|
187
196
|
var result = {};
|
|
188
197
|
fields.forEach(function (f) {
|
|
189
|
-
|
|
190
|
-
|
|
191
|
-
|
|
192
|
-
|
|
193
|
-
|
|
198
|
+
if (prev[f.id]) {
|
|
199
|
+
result[f.id] = prev[f.id];
|
|
200
|
+
} else {
|
|
201
|
+
// 3.2 应用设计时配置的默认查询条件
|
|
202
|
+
var defaults = (f.defaultConditions || []).map(function (c) {
|
|
203
|
+
return {
|
|
204
|
+
id: c.id || genId(),
|
|
205
|
+
sign: c.sign,
|
|
206
|
+
option: c.option,
|
|
207
|
+
low: c.low || '',
|
|
208
|
+
high: c.high || ''
|
|
209
|
+
};
|
|
210
|
+
});
|
|
211
|
+
result[f.id] = {
|
|
212
|
+
low: '',
|
|
213
|
+
high: '',
|
|
214
|
+
conditions: defaults
|
|
215
|
+
};
|
|
216
|
+
}
|
|
194
217
|
});
|
|
195
218
|
return result;
|
|
196
219
|
});
|
|
@@ -244,9 +267,97 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
244
267
|
});
|
|
245
268
|
setModalVisible(false);
|
|
246
269
|
};
|
|
270
|
+
|
|
271
|
+
// 4.1 "所有条目":清空当前 Tab 的所有条件行(保留一个空行)
|
|
247
272
|
var clearModal = function clearModal() {
|
|
248
273
|
if (modalTab === 'include') setIncludeRows([newCondRow('I')]);else setExcludeRows([newCondRow('E')]);
|
|
249
274
|
};
|
|
275
|
+
|
|
276
|
+
/**
|
|
277
|
+
* 4.1 "粘贴":将剪贴板中复制的列内容粘贴到当前 Tab
|
|
278
|
+
* - 按换行(\r\n / \n / \r)或制表符(\t)拆分为多个值
|
|
279
|
+
* - 每个非空值生成一行:{ sign: 当前Tab符号, option: 'EQ', low: val, high: '' }
|
|
280
|
+
* - 追加到当前 Tab 的现有行之后(若只有一空行则先移除)
|
|
281
|
+
*/
|
|
282
|
+
var pasteFromClipboard = /*#__PURE__*/function () {
|
|
283
|
+
var _ref3 = _asyncToGenerator(/*#__PURE__*/_regeneratorRuntime.mark(function _callee() {
|
|
284
|
+
var text, values, sign, newRows, _t;
|
|
285
|
+
return _regeneratorRuntime.wrap(function (_context) {
|
|
286
|
+
while (1) switch (_context.prev = _context.next) {
|
|
287
|
+
case 0:
|
|
288
|
+
text = '';
|
|
289
|
+
_context.prev = 1;
|
|
290
|
+
if (!(navigator.clipboard && navigator.clipboard.readText)) {
|
|
291
|
+
_context.next = 3;
|
|
292
|
+
break;
|
|
293
|
+
}
|
|
294
|
+
_context.next = 2;
|
|
295
|
+
return navigator.clipboard.readText();
|
|
296
|
+
case 2:
|
|
297
|
+
text = _context.sent;
|
|
298
|
+
case 3:
|
|
299
|
+
_context.next = 5;
|
|
300
|
+
break;
|
|
301
|
+
case 4:
|
|
302
|
+
_context.prev = 4;
|
|
303
|
+
_t = _context["catch"](1);
|
|
304
|
+
case 5:
|
|
305
|
+
if (text) {
|
|
306
|
+
_context.next = 6;
|
|
307
|
+
break;
|
|
308
|
+
}
|
|
309
|
+
_Modal.warning({
|
|
310
|
+
title: '粘贴失败',
|
|
311
|
+
content: '剪贴板为空或无法读取,请确认已复制列内容且浏览器授权剪贴板访问权限。'
|
|
312
|
+
});
|
|
313
|
+
return _context.abrupt("return");
|
|
314
|
+
case 6:
|
|
315
|
+
values = text.split(/[\r\n\t]+/).map(function (v) {
|
|
316
|
+
return v.trim();
|
|
317
|
+
}).filter(function (v) {
|
|
318
|
+
return v.length > 0;
|
|
319
|
+
});
|
|
320
|
+
if (values.length) {
|
|
321
|
+
_context.next = 7;
|
|
322
|
+
break;
|
|
323
|
+
}
|
|
324
|
+
return _context.abrupt("return");
|
|
325
|
+
case 7:
|
|
326
|
+
sign = modalTab === 'include' ? 'I' : 'E';
|
|
327
|
+
newRows = values.map(function (v) {
|
|
328
|
+
return {
|
|
329
|
+
id: genId(),
|
|
330
|
+
sign: sign,
|
|
331
|
+
option: 'EQ',
|
|
332
|
+
low: v,
|
|
333
|
+
high: ''
|
|
334
|
+
};
|
|
335
|
+
});
|
|
336
|
+
if (modalTab === 'include') {
|
|
337
|
+
setIncludeRows(function (prev) {
|
|
338
|
+
var base = prev.filter(function (r) {
|
|
339
|
+
return r.low || r.high || r.option;
|
|
340
|
+
});
|
|
341
|
+
return base.length ? [].concat(base, newRows) : newRows;
|
|
342
|
+
});
|
|
343
|
+
} else {
|
|
344
|
+
setExcludeRows(function (prev) {
|
|
345
|
+
var base = prev.filter(function (r) {
|
|
346
|
+
return r.low || r.high || r.option;
|
|
347
|
+
});
|
|
348
|
+
return base.length ? [].concat(base, newRows) : newRows;
|
|
349
|
+
});
|
|
350
|
+
}
|
|
351
|
+
case 8:
|
|
352
|
+
case "end":
|
|
353
|
+
return _context.stop();
|
|
354
|
+
}
|
|
355
|
+
}, _callee, null, [[1, 4]]);
|
|
356
|
+
}));
|
|
357
|
+
return function pasteFromClipboard() {
|
|
358
|
+
return _ref3.apply(this, arguments);
|
|
359
|
+
};
|
|
360
|
+
}();
|
|
250
361
|
var handleSearch = function handleSearch() {
|
|
251
362
|
var data = {};
|
|
252
363
|
fields.forEach(function (f) {
|
|
@@ -486,17 +597,7 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
486
597
|
fontSize: 12
|
|
487
598
|
}
|
|
488
599
|
}, field.techName));
|
|
489
|
-
}), /*#__PURE__*/React.createElement(
|
|
490
|
-
style: {
|
|
491
|
-
display: 'flex',
|
|
492
|
-
justifyContent: 'center',
|
|
493
|
-
paddingTop: 8
|
|
494
|
-
}
|
|
495
|
-
}, /*#__PURE__*/React.createElement(_Button, {
|
|
496
|
-
type: "primary",
|
|
497
|
-
size: "small",
|
|
498
|
-
onClick: handleSearch
|
|
499
|
-
}, "\u67E5\u8BE2")), /*#__PURE__*/React.createElement(_Modal, {
|
|
600
|
+
}), /*#__PURE__*/React.createElement(_Modal, {
|
|
500
601
|
title: "\u591A\u503C\u8BBE\u7F6E" + (activeField ? ' - ' + activeField.fieldDesc : ''),
|
|
501
602
|
open: modalVisible,
|
|
502
603
|
onCancel: function onCancel() {
|
|
@@ -504,7 +605,17 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
504
605
|
},
|
|
505
606
|
footer: null,
|
|
506
607
|
width: 580,
|
|
507
|
-
destroyOnClose: true
|
|
608
|
+
destroyOnClose: true,
|
|
609
|
+
zIndex: 9999999,
|
|
610
|
+
getContainer: function getContainer() {
|
|
611
|
+
// 脱出画布 iframe,挂到主文档 body,避免被设计器蒙层盖住
|
|
612
|
+
try {
|
|
613
|
+
var topDoc = window.top && window.top.document || document;
|
|
614
|
+
return topDoc.body;
|
|
615
|
+
} catch (e) {
|
|
616
|
+
return document.body;
|
|
617
|
+
}
|
|
618
|
+
}
|
|
508
619
|
}, /*#__PURE__*/React.createElement("div", {
|
|
509
620
|
style: {
|
|
510
621
|
display: 'flex',
|
|
@@ -546,19 +657,21 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
546
657
|
}), /*#__PURE__*/React.createElement("div", {
|
|
547
658
|
style: {
|
|
548
659
|
display: 'flex',
|
|
549
|
-
justifyContent: '
|
|
660
|
+
justifyContent: 'center',
|
|
550
661
|
gap: 8,
|
|
551
662
|
marginTop: 16
|
|
552
663
|
}
|
|
553
664
|
}, /*#__PURE__*/React.createElement(_Button, {
|
|
554
665
|
onClick: clearModal
|
|
555
|
-
}, "\
|
|
666
|
+
}, "\u6240\u6709\u6761\u76EE"), /*#__PURE__*/React.createElement(_Button, {
|
|
667
|
+
onClick: pasteFromClipboard
|
|
668
|
+
}, "\u7C98\u8D34"), /*#__PURE__*/React.createElement(_Button, {
|
|
669
|
+
type: "primary",
|
|
670
|
+
onClick: confirmModal
|
|
671
|
+
}, "\u786E\u5B9A"), /*#__PURE__*/React.createElement(_Button, {
|
|
556
672
|
onClick: function onClick() {
|
|
557
673
|
return setModalVisible(false);
|
|
558
674
|
}
|
|
559
|
-
}, "\u53D6\u6D88")
|
|
560
|
-
type: "primary",
|
|
561
|
-
onClick: confirmModal
|
|
562
|
-
}, "\u786E\u5B9A"))));
|
|
675
|
+
}, "\u53D6\u6D88"))));
|
|
563
676
|
};
|
|
564
677
|
export default ProSearch;
|
package/es/style.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import '@alifd/next/es/button/style';
|
|
2
2
|
import 'antd/es/message/style';
|
|
3
|
-
import 'antd/es/modal/style';
|
|
4
3
|
import 'antd/es/time-picker/style';
|
|
5
4
|
import 'antd/es/date-picker/style';
|
|
5
|
+
import 'antd/es/modal/style';
|
|
6
6
|
import 'antd/es/button/style';
|
|
7
7
|
import 'antd/es/input/style';
|
|
8
8
|
import 'antd/es/select/style';
|
|
@@ -5,6 +5,14 @@ export interface ProSearchField {
|
|
|
5
5
|
techName: string;
|
|
6
6
|
fieldType?: 'text' | 'date' | 'time';
|
|
7
7
|
screenInner?: string;
|
|
8
|
+
/** 3.2 修改配置页中定义的默认查询条件 */
|
|
9
|
+
defaultConditions?: Array<{
|
|
10
|
+
id?: string;
|
|
11
|
+
sign: 'I' | 'E';
|
|
12
|
+
option: '' | 'EQ' | 'NE' | 'BT' | 'LT' | 'LE' | 'GT' | 'GE' | 'CO' | 'NC';
|
|
13
|
+
low: string;
|
|
14
|
+
high: string;
|
|
15
|
+
}>;
|
|
8
16
|
}
|
|
9
17
|
export interface ProSearchProps {
|
|
10
18
|
fields?: ProSearchField[];
|
|
@@ -16,8 +24,8 @@ export interface ProSearchProps {
|
|
|
16
24
|
showHighValue?: boolean;
|
|
17
25
|
multiValue?: boolean;
|
|
18
26
|
showTechName?: boolean;
|
|
19
|
-
descriptionAlign?: 'left' | 'center' | 'right';
|
|
20
|
-
techNameAlign?: 'left' | 'center' | 'right';
|
|
27
|
+
descriptionAlign?: 'left' | 'center' | 'right' | 'justify';
|
|
28
|
+
techNameAlign?: 'left' | 'center' | 'right' | 'justify';
|
|
21
29
|
onSearch?: (data: Record<string, any[]>) => void;
|
|
22
30
|
}
|
|
23
31
|
declare const ProSearch: React.FC<ProSearchProps>;
|
|
@@ -3,9 +3,11 @@
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
exports.__esModule = true;
|
|
5
5
|
exports["default"] = void 0;
|
|
6
|
-
var
|
|
6
|
+
var _regenerator = _interopRequireDefault(require("@babel/runtime/regenerator"));
|
|
7
7
|
var _timePicker = _interopRequireDefault(require("antd/lib/time-picker"));
|
|
8
8
|
var _datePicker = _interopRequireDefault(require("antd/lib/date-picker"));
|
|
9
|
+
var _modal = _interopRequireDefault(require("antd/lib/modal"));
|
|
10
|
+
var _asyncToGenerator2 = _interopRequireDefault(require("@babel/runtime/helpers/asyncToGenerator"));
|
|
9
11
|
var _button = _interopRequireDefault(require("antd/lib/button"));
|
|
10
12
|
var _input = _interopRequireDefault(require("antd/lib/input"));
|
|
11
13
|
var _select = _interopRequireDefault(require("antd/lib/select"));
|
|
@@ -14,7 +16,7 @@ var _react = _interopRequireWildcard(require("react"));
|
|
|
14
16
|
var React = _react;
|
|
15
17
|
var _icons = require("@ant-design/icons");
|
|
16
18
|
var _moment = _interopRequireDefault(require("moment"));
|
|
17
|
-
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var
|
|
19
|
+
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function _interopRequireWildcard(e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, "default": e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (var _t2 in e) "default" !== _t2 && {}.hasOwnProperty.call(e, _t2) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, _t2)) && (i.get || i.set) ? o(f, _t2, i) : f[_t2] = e[_t2]); return f; })(e, t); }
|
|
18
20
|
var OPTION_OPTIONS = [{
|
|
19
21
|
label: '(留空)',
|
|
20
22
|
value: ''
|
|
@@ -106,6 +108,13 @@ var ConditionTable = function ConditionTable(_ref) {
|
|
|
106
108
|
onChange: function onChange(v) {
|
|
107
109
|
return update(row.id, 'option', v);
|
|
108
110
|
}
|
|
111
|
+
// 关键:Modal 被挂到 window.top.document.body,但 Select 下拉默认使用当前 iframe 的 document.body,
|
|
112
|
+
// 会导致下拉被渲染到 iframe 内部并被 Modal 蒙层遮挡(显示在弹窗下方)。
|
|
113
|
+
// 将下拉容器固定到触发节点的父元素,保证下拉与 Select 同处 Modal 的 DOM 子树中,避免跨文档渲染被盖住。
|
|
114
|
+
,
|
|
115
|
+
getPopupContainer: function getPopupContainer(triggerNode) {
|
|
116
|
+
return triggerNode && triggerNode.parentElement || document.body;
|
|
117
|
+
}
|
|
109
118
|
}), /*#__PURE__*/React.createElement(_input["default"], {
|
|
110
119
|
size: "small",
|
|
111
120
|
style: {
|
|
@@ -187,16 +196,30 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
187
196
|
excludeRows = _useState6[0],
|
|
188
197
|
setExcludeRows = _useState6[1];
|
|
189
198
|
|
|
190
|
-
// Sync field values when fields change
|
|
199
|
+
// Sync field values when fields change - 使用默认查询条件初始化
|
|
191
200
|
(0, _react.useEffect)(function () {
|
|
192
201
|
setFieldValues(function (prev) {
|
|
193
202
|
var result = {};
|
|
194
203
|
fields.forEach(function (f) {
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
204
|
+
if (prev[f.id]) {
|
|
205
|
+
result[f.id] = prev[f.id];
|
|
206
|
+
} else {
|
|
207
|
+
// 3.2 应用设计时配置的默认查询条件
|
|
208
|
+
var defaults = (f.defaultConditions || []).map(function (c) {
|
|
209
|
+
return {
|
|
210
|
+
id: c.id || genId(),
|
|
211
|
+
sign: c.sign,
|
|
212
|
+
option: c.option,
|
|
213
|
+
low: c.low || '',
|
|
214
|
+
high: c.high || ''
|
|
215
|
+
};
|
|
216
|
+
});
|
|
217
|
+
result[f.id] = {
|
|
218
|
+
low: '',
|
|
219
|
+
high: '',
|
|
220
|
+
conditions: defaults
|
|
221
|
+
};
|
|
222
|
+
}
|
|
200
223
|
});
|
|
201
224
|
return result;
|
|
202
225
|
});
|
|
@@ -250,9 +273,97 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
250
273
|
});
|
|
251
274
|
setModalVisible(false);
|
|
252
275
|
};
|
|
276
|
+
|
|
277
|
+
// 4.1 "所有条目":清空当前 Tab 的所有条件行(保留一个空行)
|
|
253
278
|
var clearModal = function clearModal() {
|
|
254
279
|
if (modalTab === 'include') setIncludeRows([newCondRow('I')]);else setExcludeRows([newCondRow('E')]);
|
|
255
280
|
};
|
|
281
|
+
|
|
282
|
+
/**
|
|
283
|
+
* 4.1 "粘贴":将剪贴板中复制的列内容粘贴到当前 Tab
|
|
284
|
+
* - 按换行(\r\n / \n / \r)或制表符(\t)拆分为多个值
|
|
285
|
+
* - 每个非空值生成一行:{ sign: 当前Tab符号, option: 'EQ', low: val, high: '' }
|
|
286
|
+
* - 追加到当前 Tab 的现有行之后(若只有一空行则先移除)
|
|
287
|
+
*/
|
|
288
|
+
var pasteFromClipboard = /*#__PURE__*/function () {
|
|
289
|
+
var _ref3 = (0, _asyncToGenerator2["default"])(/*#__PURE__*/_regenerator["default"].mark(function _callee() {
|
|
290
|
+
var text, values, sign, newRows, _t;
|
|
291
|
+
return _regenerator["default"].wrap(function (_context) {
|
|
292
|
+
while (1) switch (_context.prev = _context.next) {
|
|
293
|
+
case 0:
|
|
294
|
+
text = '';
|
|
295
|
+
_context.prev = 1;
|
|
296
|
+
if (!(navigator.clipboard && navigator.clipboard.readText)) {
|
|
297
|
+
_context.next = 3;
|
|
298
|
+
break;
|
|
299
|
+
}
|
|
300
|
+
_context.next = 2;
|
|
301
|
+
return navigator.clipboard.readText();
|
|
302
|
+
case 2:
|
|
303
|
+
text = _context.sent;
|
|
304
|
+
case 3:
|
|
305
|
+
_context.next = 5;
|
|
306
|
+
break;
|
|
307
|
+
case 4:
|
|
308
|
+
_context.prev = 4;
|
|
309
|
+
_t = _context["catch"](1);
|
|
310
|
+
case 5:
|
|
311
|
+
if (text) {
|
|
312
|
+
_context.next = 6;
|
|
313
|
+
break;
|
|
314
|
+
}
|
|
315
|
+
_modal["default"].warning({
|
|
316
|
+
title: '粘贴失败',
|
|
317
|
+
content: '剪贴板为空或无法读取,请确认已复制列内容且浏览器授权剪贴板访问权限。'
|
|
318
|
+
});
|
|
319
|
+
return _context.abrupt("return");
|
|
320
|
+
case 6:
|
|
321
|
+
values = text.split(/[\r\n\t]+/).map(function (v) {
|
|
322
|
+
return v.trim();
|
|
323
|
+
}).filter(function (v) {
|
|
324
|
+
return v.length > 0;
|
|
325
|
+
});
|
|
326
|
+
if (values.length) {
|
|
327
|
+
_context.next = 7;
|
|
328
|
+
break;
|
|
329
|
+
}
|
|
330
|
+
return _context.abrupt("return");
|
|
331
|
+
case 7:
|
|
332
|
+
sign = modalTab === 'include' ? 'I' : 'E';
|
|
333
|
+
newRows = values.map(function (v) {
|
|
334
|
+
return {
|
|
335
|
+
id: genId(),
|
|
336
|
+
sign: sign,
|
|
337
|
+
option: 'EQ',
|
|
338
|
+
low: v,
|
|
339
|
+
high: ''
|
|
340
|
+
};
|
|
341
|
+
});
|
|
342
|
+
if (modalTab === 'include') {
|
|
343
|
+
setIncludeRows(function (prev) {
|
|
344
|
+
var base = prev.filter(function (r) {
|
|
345
|
+
return r.low || r.high || r.option;
|
|
346
|
+
});
|
|
347
|
+
return base.length ? [].concat(base, newRows) : newRows;
|
|
348
|
+
});
|
|
349
|
+
} else {
|
|
350
|
+
setExcludeRows(function (prev) {
|
|
351
|
+
var base = prev.filter(function (r) {
|
|
352
|
+
return r.low || r.high || r.option;
|
|
353
|
+
});
|
|
354
|
+
return base.length ? [].concat(base, newRows) : newRows;
|
|
355
|
+
});
|
|
356
|
+
}
|
|
357
|
+
case 8:
|
|
358
|
+
case "end":
|
|
359
|
+
return _context.stop();
|
|
360
|
+
}
|
|
361
|
+
}, _callee, null, [[1, 4]]);
|
|
362
|
+
}));
|
|
363
|
+
return function pasteFromClipboard() {
|
|
364
|
+
return _ref3.apply(this, arguments);
|
|
365
|
+
};
|
|
366
|
+
}();
|
|
256
367
|
var handleSearch = function handleSearch() {
|
|
257
368
|
var data = {};
|
|
258
369
|
fields.forEach(function (f) {
|
|
@@ -492,17 +603,7 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
492
603
|
fontSize: 12
|
|
493
604
|
}
|
|
494
605
|
}, field.techName));
|
|
495
|
-
}), /*#__PURE__*/React.createElement("
|
|
496
|
-
style: {
|
|
497
|
-
display: 'flex',
|
|
498
|
-
justifyContent: 'center',
|
|
499
|
-
paddingTop: 8
|
|
500
|
-
}
|
|
501
|
-
}, /*#__PURE__*/React.createElement(_button["default"], {
|
|
502
|
-
type: "primary",
|
|
503
|
-
size: "small",
|
|
504
|
-
onClick: handleSearch
|
|
505
|
-
}, "\u67E5\u8BE2")), /*#__PURE__*/React.createElement(_modal["default"], {
|
|
606
|
+
}), /*#__PURE__*/React.createElement(_modal["default"], {
|
|
506
607
|
title: "\u591A\u503C\u8BBE\u7F6E" + (activeField ? ' - ' + activeField.fieldDesc : ''),
|
|
507
608
|
open: modalVisible,
|
|
508
609
|
onCancel: function onCancel() {
|
|
@@ -510,7 +611,17 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
510
611
|
},
|
|
511
612
|
footer: null,
|
|
512
613
|
width: 580,
|
|
513
|
-
destroyOnClose: true
|
|
614
|
+
destroyOnClose: true,
|
|
615
|
+
zIndex: 9999999,
|
|
616
|
+
getContainer: function getContainer() {
|
|
617
|
+
// 脱出画布 iframe,挂到主文档 body,避免被设计器蒙层盖住
|
|
618
|
+
try {
|
|
619
|
+
var topDoc = window.top && window.top.document || document;
|
|
620
|
+
return topDoc.body;
|
|
621
|
+
} catch (e) {
|
|
622
|
+
return document.body;
|
|
623
|
+
}
|
|
624
|
+
}
|
|
514
625
|
}, /*#__PURE__*/React.createElement("div", {
|
|
515
626
|
style: {
|
|
516
627
|
display: 'flex',
|
|
@@ -552,19 +663,21 @@ var ProSearch = function ProSearch(_ref2) {
|
|
|
552
663
|
}), /*#__PURE__*/React.createElement("div", {
|
|
553
664
|
style: {
|
|
554
665
|
display: 'flex',
|
|
555
|
-
justifyContent: '
|
|
666
|
+
justifyContent: 'center',
|
|
556
667
|
gap: 8,
|
|
557
668
|
marginTop: 16
|
|
558
669
|
}
|
|
559
670
|
}, /*#__PURE__*/React.createElement(_button["default"], {
|
|
560
671
|
onClick: clearModal
|
|
561
|
-
}, "\
|
|
672
|
+
}, "\u6240\u6709\u6761\u76EE"), /*#__PURE__*/React.createElement(_button["default"], {
|
|
673
|
+
onClick: pasteFromClipboard
|
|
674
|
+
}, "\u7C98\u8D34"), /*#__PURE__*/React.createElement(_button["default"], {
|
|
675
|
+
type: "primary",
|
|
676
|
+
onClick: confirmModal
|
|
677
|
+
}, "\u786E\u5B9A"), /*#__PURE__*/React.createElement(_button["default"], {
|
|
562
678
|
onClick: function onClick() {
|
|
563
679
|
return setModalVisible(false);
|
|
564
680
|
}
|
|
565
|
-
}, "\u53D6\u6D88")
|
|
566
|
-
type: "primary",
|
|
567
|
-
onClick: confirmModal
|
|
568
|
-
}, "\u786E\u5B9A"))));
|
|
681
|
+
}, "\u53D6\u6D88"))));
|
|
569
682
|
};
|
|
570
683
|
var _default = exports["default"] = ProSearch;
|
package/lib/style.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
require('@alifd/next/lib/button/style');
|
|
2
2
|
require('antd/lib/message/style');
|
|
3
|
-
require('antd/lib/modal/style');
|
|
4
3
|
require('antd/lib/time-picker/style');
|
|
5
4
|
require('antd/lib/date-picker/style');
|
|
5
|
+
require('antd/lib/modal/style');
|
|
6
6
|
require('antd/lib/button/style');
|
|
7
7
|
require('antd/lib/input/style');
|
|
8
8
|
require('antd/lib/select/style');
|
|
@@ -91,14 +91,15 @@ const ProSearchMeta: IPublicTypeComponentMetadata = {
|
|
|
91
91
|
{
|
|
92
92
|
name: 'descriptionAlign',
|
|
93
93
|
title: { label: '字段描述对齐', tip: 'descriptionAlign | 字段描述对齐方式' },
|
|
94
|
-
propType: { type: 'oneOf', value: ['left', 'center', 'right'] },
|
|
94
|
+
propType: { type: 'oneOf', value: ['left', 'center', 'right', 'justify'] },
|
|
95
95
|
setter: {
|
|
96
96
|
componentName: 'RadioGroupSetter',
|
|
97
97
|
props: {
|
|
98
98
|
options: [
|
|
99
|
-
{ title: '
|
|
100
|
-
{ title: '
|
|
101
|
-
{ title: '
|
|
99
|
+
{ title: '左对齐', value: 'left' },
|
|
100
|
+
{ title: '居中对齐', value: 'center' },
|
|
101
|
+
{ title: '右对齐', value: 'right' },
|
|
102
|
+
{ title: '两端对齐', value: 'justify' },
|
|
102
103
|
],
|
|
103
104
|
},
|
|
104
105
|
},
|
|
@@ -128,14 +129,15 @@ const ProSearchMeta: IPublicTypeComponentMetadata = {
|
|
|
128
129
|
{
|
|
129
130
|
name: 'techNameAlign',
|
|
130
131
|
title: { label: '技术名称对齐', tip: 'techNameAlign | 技术名称列对齐方式' },
|
|
131
|
-
propType: { type: 'oneOf', value: ['left', 'center', 'right'] },
|
|
132
|
+
propType: { type: 'oneOf', value: ['left', 'center', 'right', 'justify'] },
|
|
132
133
|
setter: {
|
|
133
134
|
componentName: 'RadioGroupSetter',
|
|
134
135
|
props: {
|
|
135
136
|
options: [
|
|
136
|
-
{ title: '
|
|
137
|
-
{ title: '
|
|
138
|
-
{ title: '
|
|
137
|
+
{ title: '左对齐', value: 'left' },
|
|
138
|
+
{ title: '居中对齐', value: 'center' },
|
|
139
|
+
{ title: '右对齐', value: 'right' },
|
|
140
|
+
{ title: '两端对齐', value: 'justify' },
|
|
139
141
|
],
|
|
140
142
|
},
|
|
141
143
|
},
|
package/lowcode_es/meta.js
CHANGED
|
@@ -102,7 +102,7 @@ function fillRealVersion(meta, packageName, version, basicLibraryVersion) {
|
|
|
102
102
|
packageName = '@openli1115/lowcode-edit-pro-table';
|
|
103
103
|
}
|
|
104
104
|
if (version === void 0) {
|
|
105
|
-
version = '1.0.
|
|
105
|
+
version = '1.0.89';
|
|
106
106
|
}
|
|
107
107
|
if (basicLibraryVersion === void 0) {
|
|
108
108
|
basicLibraryVersion = {
|
|
@@ -120,20 +120,23 @@ var ProSearchMeta = {
|
|
|
120
120
|
},
|
|
121
121
|
propType: {
|
|
122
122
|
type: 'oneOf',
|
|
123
|
-
value: ['left', 'center', 'right']
|
|
123
|
+
value: ['left', 'center', 'right', 'justify']
|
|
124
124
|
},
|
|
125
125
|
setter: {
|
|
126
126
|
componentName: 'RadioGroupSetter',
|
|
127
127
|
props: {
|
|
128
128
|
options: [{
|
|
129
|
-
title: '
|
|
129
|
+
title: '左对齐',
|
|
130
130
|
value: 'left'
|
|
131
131
|
}, {
|
|
132
|
-
title: '
|
|
132
|
+
title: '居中对齐',
|
|
133
133
|
value: 'center'
|
|
134
134
|
}, {
|
|
135
|
-
title: '
|
|
135
|
+
title: '右对齐',
|
|
136
136
|
value: 'right'
|
|
137
|
+
}, {
|
|
138
|
+
title: '两端对齐',
|
|
139
|
+
value: 'justify'
|
|
137
140
|
}]
|
|
138
141
|
}
|
|
139
142
|
},
|
|
@@ -173,20 +176,23 @@ var ProSearchMeta = {
|
|
|
173
176
|
},
|
|
174
177
|
propType: {
|
|
175
178
|
type: 'oneOf',
|
|
176
|
-
value: ['left', 'center', 'right']
|
|
179
|
+
value: ['left', 'center', 'right', 'justify']
|
|
177
180
|
},
|
|
178
181
|
setter: {
|
|
179
182
|
componentName: 'RadioGroupSetter',
|
|
180
183
|
props: {
|
|
181
184
|
options: [{
|
|
182
|
-
title: '
|
|
185
|
+
title: '左对齐',
|
|
183
186
|
value: 'left'
|
|
184
187
|
}, {
|
|
185
|
-
title: '
|
|
188
|
+
title: '居中对齐',
|
|
186
189
|
value: 'center'
|
|
187
190
|
}, {
|
|
188
|
-
title: '
|
|
191
|
+
title: '右对齐',
|
|
189
192
|
value: 'right'
|
|
193
|
+
}, {
|
|
194
|
+
title: '两端对齐',
|
|
195
|
+
value: 'justify'
|
|
190
196
|
}]
|
|
191
197
|
}
|
|
192
198
|
},
|
package/lowcode_lib/meta.js
CHANGED
|
@@ -107,7 +107,7 @@ function fillRealVersion(meta, packageName, version, basicLibraryVersion) {
|
|
|
107
107
|
packageName = '@openli1115/lowcode-edit-pro-table';
|
|
108
108
|
}
|
|
109
109
|
if (version === void 0) {
|
|
110
|
-
version = '1.0.
|
|
110
|
+
version = '1.0.89';
|
|
111
111
|
}
|
|
112
112
|
if (basicLibraryVersion === void 0) {
|
|
113
113
|
basicLibraryVersion = {
|