tntd 3.0.0-beta.10 → 3.0.0-beta.11
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/es/modal/style/confirm.less +6 -6
- package/es/query-form/Field/Checkbox.js +1 -1
- package/es/query-form/Field/Checkbox.js.map +1 -1
- package/es/query-form/Field/Composition/FieldPopover.js +53 -34
- package/es/query-form/Field/Composition/FieldPopover.js.map +1 -1
- package/es/query-form/Field/Composition/Select.js +17 -14
- package/es/query-form/Field/Composition/Select.js.map +1 -1
- package/es/query-form/Field/Composition/index.js +16 -105
- package/es/query-form/Field/Composition/index.js.map +1 -1
- package/es/query-form/Field/Composition/index.less +0 -1
- package/es/query-form/Field/Composition/utils.js +107 -0
- package/es/query-form/Field/Composition/utils.js.map +1 -1
- package/es/query-form/index.js +145 -319
- package/es/query-form/index.js.map +1 -1
- package/es/query-form/index.less +16 -56
- package/es/query-form2/Field/Checkbox.js +23 -0
- package/es/query-form2/Field/Checkbox.js.map +1 -0
- package/es/query-form2/Field/Composition/FieldPopover.js +308 -0
- package/es/query-form2/Field/Composition/FieldPopover.js.map +1 -0
- package/es/query-form2/Field/Composition/FieldPopover.less +35 -0
- package/es/query-form2/Field/Composition/Select.js +104 -0
- package/es/query-form2/Field/Composition/Select.js.map +1 -0
- package/es/query-form2/Field/Composition/index.js +299 -0
- package/es/query-form2/Field/Composition/index.js.map +1 -0
- package/es/query-form2/Field/Composition/index.less +114 -0
- package/es/query-form2/Field/Composition/utils.js +19 -0
- package/es/query-form2/Field/Composition/utils.js.map +1 -0
- package/es/query-form2/Field/Select.js +59 -0
- package/es/query-form2/Field/Select.js.map +1 -0
- package/es/query-form2/Field/SelectInput.js +87 -0
- package/es/query-form2/Field/SelectInput.js.map +1 -0
- package/es/query-form2/Field/fieldsMap.js +28 -0
- package/es/query-form2/Field/fieldsMap.js.map +1 -0
- package/es/query-form2/Field/index.js +117 -0
- package/es/query-form2/Field/index.js.map +1 -0
- package/es/query-form2/createActions.js +47 -0
- package/es/query-form2/createActions.js.map +1 -0
- package/es/query-form2/index.js +345 -0
- package/es/query-form2/index.js.map +1 -0
- package/es/query-form2/index.less +136 -0
- package/es/query-form2/useForm.js +6 -0
- package/es/query-form2/useForm.js.map +1 -0
- package/es/query-list-scene/QueryForm.js +1 -3
- package/es/query-list-scene/QueryForm.js.map +1 -1
- package/es/select/select.less +1 -0
- package/es/tag/color.less +28 -18
- package/es/tag/tag.less +42 -6
- package/lib/modal/style/confirm.less +6 -6
- package/lib/query-form/Field/Checkbox.js +1 -1
- package/lib/query-form/Field/Checkbox.js.map +1 -1
- package/lib/query-form/Field/Composition/FieldPopover.js +83 -65
- package/lib/query-form/Field/Composition/FieldPopover.js.map +1 -1
- package/lib/query-form/Field/Composition/Select.d.ts.map +1 -1
- package/lib/query-form/Field/Composition/Select.js +18 -15
- package/lib/query-form/Field/Composition/Select.js.map +1 -1
- package/lib/query-form/Field/Composition/index.d.ts +0 -4
- package/lib/query-form/Field/Composition/index.js +29 -121
- package/lib/query-form/Field/Composition/index.js.map +1 -1
- package/lib/query-form/Field/Composition/index.less +0 -1
- package/lib/query-form/Field/Composition/utils.d.ts +16 -0
- package/lib/query-form/Field/Composition/utils.d.ts.map +1 -1
- package/lib/query-form/Field/Composition/utils.js +114 -0
- package/lib/query-form/Field/Composition/utils.js.map +1 -1
- package/lib/query-form/index.d.ts +15 -24
- package/lib/query-form/index.d.ts.map +1 -1
- package/lib/query-form/index.js +164 -344
- package/lib/query-form/index.js.map +1 -1
- package/lib/query-form/index.less +16 -56
- package/lib/query-form2/Field/Checkbox.d.ts +8 -0
- package/lib/query-form2/Field/Checkbox.d.ts.map +1 -0
- package/lib/query-form2/Field/Checkbox.js +28 -0
- package/lib/query-form2/Field/Checkbox.js.map +1 -0
- package/lib/query-form2/Field/Composition/FieldPopover.d.ts +19 -0
- package/lib/query-form2/Field/Composition/FieldPopover.d.ts.map +1 -0
- package/lib/query-form2/Field/Composition/FieldPopover.js +347 -0
- package/lib/query-form2/Field/Composition/FieldPopover.js.map +1 -0
- package/lib/query-form2/Field/Composition/FieldPopover.less +35 -0
- package/lib/query-form2/Field/Composition/Select.d.ts +4 -0
- package/lib/query-form2/Field/Composition/Select.d.ts.map +1 -0
- package/lib/query-form2/Field/Composition/Select.js +128 -0
- package/lib/query-form2/Field/Composition/Select.js.map +1 -0
- package/lib/query-form2/Field/Composition/index.d.ts +14 -0
- package/lib/query-form2/Field/Composition/index.d.ts.map +1 -0
- package/lib/query-form2/Field/Composition/index.js +349 -0
- package/lib/query-form2/Field/Composition/index.js.map +1 -0
- package/lib/query-form2/Field/Composition/index.less +114 -0
- package/lib/query-form2/Field/Composition/utils.d.ts +6 -0
- package/lib/query-form2/Field/Composition/utils.d.ts.map +1 -0
- package/lib/query-form2/Field/Composition/utils.js +27 -0
- package/lib/query-form2/Field/Composition/utils.js.map +1 -0
- package/lib/query-form2/Field/Select.d.ts +4 -0
- package/lib/query-form2/Field/Select.d.ts.map +1 -0
- package/lib/query-form2/Field/Select.js +80 -0
- package/lib/query-form2/Field/Select.js.map +1 -0
- package/lib/query-form2/Field/SelectInput.d.ts +4 -0
- package/lib/query-form2/Field/SelectInput.d.ts.map +1 -0
- package/lib/query-form2/Field/SelectInput.js +100 -0
- package/lib/query-form2/Field/SelectInput.js.map +1 -0
- package/lib/query-form2/Field/fieldsMap.d.ts +27 -0
- package/lib/query-form2/Field/fieldsMap.d.ts.map +1 -0
- package/lib/query-form2/Field/fieldsMap.js +35 -0
- package/lib/query-form2/Field/fieldsMap.js.map +1 -0
- package/lib/query-form2/Field/index.d.ts +14 -0
- package/lib/query-form2/Field/index.d.ts.map +1 -0
- package/lib/query-form2/Field/index.js +147 -0
- package/lib/query-form2/Field/index.js.map +1 -0
- package/lib/query-form2/createActions.d.ts +14 -0
- package/lib/query-form2/createActions.d.ts.map +1 -0
- package/lib/query-form2/createActions.js +54 -0
- package/lib/query-form2/createActions.js.map +1 -0
- package/lib/query-form2/index.d.ts +36 -0
- package/lib/query-form2/index.d.ts.map +1 -0
- package/lib/query-form2/index.js +385 -0
- package/lib/query-form2/index.js.map +1 -0
- package/lib/query-form2/index.less +136 -0
- package/lib/query-form2/useForm.d.ts +13 -0
- package/lib/query-form2/useForm.d.ts.map +1 -0
- package/lib/query-form2/useForm.js +13 -0
- package/lib/query-form2/useForm.js.map +1 -0
- package/lib/query-list-scene/QueryForm.js +2 -3
- package/lib/query-list-scene/QueryForm.js.map +1 -1
- package/lib/select/select.less +1 -0
- package/lib/tag/color.less +28 -18
- package/lib/tag/tag.less +42 -6
- package/package.json +1 -1
|
@@ -0,0 +1,128 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
Object.defineProperty(exports, "__esModule", {
|
|
4
|
+
value: true
|
|
5
|
+
});
|
|
6
|
+
exports["default"] = void 0;
|
|
7
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
8
|
+
var _classnames = _interopRequireDefault(require("classnames"));
|
|
9
|
+
var _icon = _interopRequireDefault(require("../../../icon"));
|
|
10
|
+
var _utils = require("./utils");
|
|
11
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
12
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
13
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
14
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
15
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
16
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
17
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
18
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
19
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
20
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
21
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
22
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
23
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
24
|
+
var __rest = void 0 && (void 0).__rest || function (s, e) {
|
|
25
|
+
var t = {};
|
|
26
|
+
for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];
|
|
27
|
+
if (s != null && typeof Object.getOwnPropertySymbols === "function") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {
|
|
28
|
+
if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];
|
|
29
|
+
}
|
|
30
|
+
return t;
|
|
31
|
+
};
|
|
32
|
+
var _default = exports["default"] = function _default(props) {
|
|
33
|
+
var options = props.options,
|
|
34
|
+
params = props.params,
|
|
35
|
+
_props$queryKey = props.queryKey,
|
|
36
|
+
queryKey = _props$queryKey === void 0 ? 'name' : _props$queryKey,
|
|
37
|
+
_props$fieldNames = props.fieldNames,
|
|
38
|
+
fieldNames = _props$fieldNames === void 0 ? {
|
|
39
|
+
label: 'label',
|
|
40
|
+
value: 'value'
|
|
41
|
+
} : _props$fieldNames,
|
|
42
|
+
loadData = props.loadData,
|
|
43
|
+
onChange = props.onChange,
|
|
44
|
+
_value = props.value,
|
|
45
|
+
mode = props.mode,
|
|
46
|
+
propItem = props.propItem,
|
|
47
|
+
searchText = props.searchText,
|
|
48
|
+
rest = __rest(props, ["options", "params", "queryKey", "fieldNames", "loadData", "onChange", "value", "mode", "propItem", "searchText"]);
|
|
49
|
+
var _useState = (0, _react.useState)(options || []),
|
|
50
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
51
|
+
items = _useState2[0],
|
|
52
|
+
setItems = _useState2[1];
|
|
53
|
+
(0, _react.useEffect)(function () {
|
|
54
|
+
if (loadData) {
|
|
55
|
+
loadData(Object.assign(_defineProperty({}, queryKey, searchText), params || {})).then(function (items) {
|
|
56
|
+
setItems(items);
|
|
57
|
+
});
|
|
58
|
+
}
|
|
59
|
+
}, [params, searchText]);
|
|
60
|
+
(0, _react.useEffect)(function () {
|
|
61
|
+
setItems(options || []);
|
|
62
|
+
}, [options]);
|
|
63
|
+
var onValueChange = function onValueChange(item) {
|
|
64
|
+
onChange(item, mode === 'multiple' || mode === 'tags');
|
|
65
|
+
};
|
|
66
|
+
return _react["default"].createElement("ul", {
|
|
67
|
+
className: "ant-select-dropdown-menu"
|
|
68
|
+
}, items.map(function (item) {
|
|
69
|
+
var labelKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label) || 'label';
|
|
70
|
+
var valueKey = (fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || 'value';
|
|
71
|
+
var value = item instanceof Object ? item[valueKey] : item;
|
|
72
|
+
var label = item instanceof Object ? item[labelKey] : item + '';
|
|
73
|
+
var optionProps = item instanceof Object ? item : {};
|
|
74
|
+
var isSelected = _typeof(_value) === 'object' ? (_value === null || _value === void 0 ? void 0 : _value.indexOf(value)) > -1 : value === _value;
|
|
75
|
+
if (searchText) {
|
|
76
|
+
if ((label === null || label === void 0 ? void 0 : label.indexOf(searchText)) > -1) {
|
|
77
|
+
return _react["default"].createElement("li", {
|
|
78
|
+
className: (0, _classnames["default"])({
|
|
79
|
+
'ant-select-dropdown-menu-item': true,
|
|
80
|
+
'ant-select-dropdown-menu-item-selected': isSelected
|
|
81
|
+
}),
|
|
82
|
+
key: value,
|
|
83
|
+
value: value,
|
|
84
|
+
onMouseDown: function onMouseDown(e) {
|
|
85
|
+
return e.preventDefault();
|
|
86
|
+
},
|
|
87
|
+
onClick: function onClick() {
|
|
88
|
+
onValueChange({
|
|
89
|
+
value: value,
|
|
90
|
+
label: label,
|
|
91
|
+
optionProps: optionProps,
|
|
92
|
+
propItem: propItem
|
|
93
|
+
});
|
|
94
|
+
}
|
|
95
|
+
}, _react["default"].createElement("span", null, (propItem === null || propItem === void 0 ? void 0 : propItem.propsTitle) || (propItem === null || propItem === void 0 ? void 0 : propItem.name), ": "), _react["default"].createElement("span", {
|
|
96
|
+
dangerouslySetInnerHTML: {
|
|
97
|
+
__html: (0, _utils.highlightSubstring)(label, searchText)
|
|
98
|
+
}
|
|
99
|
+
}), isSelected && _react["default"].createElement(_icon["default"], {
|
|
100
|
+
type: "check",
|
|
101
|
+
className: "ant-select-selected-icon"
|
|
102
|
+
}));
|
|
103
|
+
}
|
|
104
|
+
return null;
|
|
105
|
+
}
|
|
106
|
+
return _react["default"].createElement("li", {
|
|
107
|
+
className: (0, _classnames["default"])({
|
|
108
|
+
'ant-select-dropdown-menu-item': true,
|
|
109
|
+
'ant-select-dropdown-menu-item-selected': isSelected
|
|
110
|
+
}),
|
|
111
|
+
key: value,
|
|
112
|
+
value: value,
|
|
113
|
+
onMouseDown: function onMouseDown(e) {
|
|
114
|
+
return e.preventDefault();
|
|
115
|
+
},
|
|
116
|
+
onClick: function onClick() {
|
|
117
|
+
onValueChange({
|
|
118
|
+
value: value,
|
|
119
|
+
label: label,
|
|
120
|
+
optionProps: optionProps
|
|
121
|
+
});
|
|
122
|
+
}
|
|
123
|
+
}, label, isSelected && _react["default"].createElement(_icon["default"], {
|
|
124
|
+
type: "check",
|
|
125
|
+
className: "ant-select-selected-icon"
|
|
126
|
+
}));
|
|
127
|
+
}));
|
|
128
|
+
};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"Select.js","sourceRoot":"","sources":["../../../../src/query-form2/Field/Composition/Select.js"],"names":[],"mappings":"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","sourcesContent":["import React, { useState, useEffect } from 'react'\n\nimport classNames from 'classnames'\nimport Icon from '../../../icon'\nimport { highlightSubstring } from './utils'\n\nexport default (props) => {\n const {\n options,\n params,\n queryKey = 'name',\n fieldNames = {\n label: 'label',\n value: 'value',\n },\n loadData,\n onChange,\n value: _value,\n mode,\n propItem,\n searchText,\n ...rest\n } = props\n const [items, setItems] = useState(options || [])\n\n useEffect(() => {\n if (loadData) {\n loadData({\n [queryKey]: searchText,\n ...(params || {}),\n }).then((items) => {\n setItems(items)\n })\n }\n }, [params, searchText])\n\n useEffect(() => {\n setItems(options || [])\n }, [options])\n\n const onValueChange = (item) => {\n onChange(item, mode === 'multiple' || mode === 'tags')\n }\n \n return (\n <ul className=\"ant-select-dropdown-menu\">\n {items.map((item) => {\n const labelKey = fieldNames?.label || 'label'\n const valueKey = fieldNames?.value || 'value'\n const value = item instanceof Object ? item[valueKey] : item\n const label = item instanceof Object ? item[labelKey] : item + ''\n const optionProps = item instanceof Object ? item : {}\n\n const isSelected = typeof _value === 'object' ? _value?.indexOf(value) > -1 : value === _value\n if (searchText) {\n if (label?.indexOf(searchText) > -1) {\n return (\n <li\n className={classNames({\n 'ant-select-dropdown-menu-item': true,\n 'ant-select-dropdown-menu-item-selected': isSelected,\n })}\n key={value}\n value={value}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n onValueChange({ value, label, optionProps, propItem })\n }}\n >\n <span>{propItem?.propsTitle || propItem?.name}: </span>\n <span\n dangerouslySetInnerHTML={{\n __html: highlightSubstring(label, searchText),\n }}\n ></span>\n {isSelected && <Icon type=\"check\" className=\"ant-select-selected-icon\" />}\n </li>\n )\n }\n return null\n }\n return (\n <li\n className={classNames({\n 'ant-select-dropdown-menu-item': true,\n 'ant-select-dropdown-menu-item-selected': isSelected,\n })}\n key={value}\n value={value}\n onMouseDown={(e) => e.preventDefault()}\n onClick={() => {\n onValueChange({ value, label, optionProps })\n }}\n >\n {label}\n {isSelected && <Icon type=\"check\" className=\"ant-select-selected-icon\" />}\n </li>\n )\n })}\n </ul>\n )\n}\n"]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
declare var _default: React.ForwardRefExoticComponent<{
|
|
2
|
+
value: any;
|
|
3
|
+
fieldItems: any;
|
|
4
|
+
initialValues: any;
|
|
5
|
+
onChange: any;
|
|
6
|
+
placeholder: any;
|
|
7
|
+
disabled: any;
|
|
8
|
+
form: any;
|
|
9
|
+
style: any;
|
|
10
|
+
clsPrefix: any;
|
|
11
|
+
} & React.RefAttributes<any>>;
|
|
12
|
+
export default _default;
|
|
13
|
+
import React from "react";
|
|
14
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/query-form2/Field/Composition/index.js"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,349 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
|
|
4
|
+
Object.defineProperty(exports, "__esModule", {
|
|
5
|
+
value: true
|
|
6
|
+
});
|
|
7
|
+
exports["default"] = void 0;
|
|
8
|
+
var _react = _interopRequireWildcard(require("react"));
|
|
9
|
+
var _LocaleReceiver = _interopRequireDefault(require("antd/lib/locale-provider/LocaleReceiver"));
|
|
10
|
+
var _icon = _interopRequireDefault(require("../../../icon"));
|
|
11
|
+
var _tag = _interopRequireDefault(require("../../../tag"));
|
|
12
|
+
var _input = _interopRequireDefault(require("../../../input"));
|
|
13
|
+
var _FieldPopover = _interopRequireDefault(require("./FieldPopover"));
|
|
14
|
+
require("./index.less");
|
|
15
|
+
function _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { "default": obj }; }
|
|
16
|
+
function _getRequireWildcardCache(e) { if ("function" != typeof WeakMap) return null; var r = new WeakMap(), t = new WeakMap(); return (_getRequireWildcardCache = function _getRequireWildcardCache(e) { return e ? t : r; })(e); }
|
|
17
|
+
function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e; if (null === e || "object" != _typeof(e) && "function" != typeof e) return { "default": e }; var t = _getRequireWildcardCache(r); if (t && t.has(e)) return t.get(e); var n = { __proto__: null }, a = Object.defineProperty && Object.getOwnPropertyDescriptor; for (var u in e) if ("default" !== u && {}.hasOwnProperty.call(e, u)) { var i = a ? Object.getOwnPropertyDescriptor(e, u) : null; i && (i.get || i.set) ? Object.defineProperty(n, u, i) : n[u] = e[u]; } return n["default"] = e, t && t.set(e, n), n; }
|
|
18
|
+
function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
|
|
19
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : i + ""; }
|
|
20
|
+
function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
21
|
+
function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
|
|
22
|
+
function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
23
|
+
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
24
|
+
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
25
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
26
|
+
function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
|
|
27
|
+
function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
|
|
28
|
+
function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) arr2[i] = arr[i]; return arr2; }
|
|
29
|
+
function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" != typeof Symbol && r[Symbol.iterator] || r["@@iterator"]; if (null != t) { var e, n, i, u, a = [], f = !0, o = !1; try { if (i = (t = t.call(r)).next, 0 === l) { if (Object(t) !== t) return; f = !1; } else for (; !(f = (e = i.call(t)).done) && (a.push(e.value), a.length !== l); f = !0); } catch (r) { o = !0, n = r; } finally { try { if (!f && null != t["return"] && (u = t["return"](), Object(u) !== u)) return; } finally { if (o) throw n; } } return a; } }
|
|
30
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
31
|
+
var parseObjectToArray = function parseObjectToArray(value, data) {
|
|
32
|
+
var _a, _b;
|
|
33
|
+
return (_b = (_a = Object.keys(value)) === null || _a === void 0 ? void 0 : _a.map(function (key) {
|
|
34
|
+
var _a, _b, _c;
|
|
35
|
+
var target = data === null || data === void 0 ? void 0 : data.find(function (item) {
|
|
36
|
+
var _a;
|
|
37
|
+
return ((_a = item.props) === null || _a === void 0 ? void 0 : _a.name) === key;
|
|
38
|
+
});
|
|
39
|
+
if (!target) return null;
|
|
40
|
+
var dataItem = (target === null || target === void 0 ? void 0 : target.props) || {};
|
|
41
|
+
var _ref = dataItem || {},
|
|
42
|
+
type = _ref.type,
|
|
43
|
+
component = _ref.component,
|
|
44
|
+
setLabel = _ref.setLabel,
|
|
45
|
+
fieldProps = _ref.props,
|
|
46
|
+
propsTitle = _ref.propsTitle,
|
|
47
|
+
title = _ref.title,
|
|
48
|
+
name = _ref.name;
|
|
49
|
+
var _propsTitle = propsTitle || title || name;
|
|
50
|
+
var _ref2 = fieldProps || {},
|
|
51
|
+
options = _ref2.options;
|
|
52
|
+
var fieldNames = ((_a = dataItem === null || dataItem === void 0 ? void 0 : dataItem.props) === null || _a === void 0 ? void 0 : _a.fieldNames) || {
|
|
53
|
+
label: 'label',
|
|
54
|
+
value: 'value'
|
|
55
|
+
};
|
|
56
|
+
var labelValue = value[key];
|
|
57
|
+
if (!type && component) {
|
|
58
|
+
if (!setLabel) {
|
|
59
|
+
console.error('自定义组件需要传入setLabel()方法');
|
|
60
|
+
}
|
|
61
|
+
} else if (options) {
|
|
62
|
+
if (type === 'selectInput') {
|
|
63
|
+
var selectKey = (_b = Object.keys(labelValue)) === null || _b === void 0 ? void 0 : _b[0];
|
|
64
|
+
var inputValue = labelValue[selectKey];
|
|
65
|
+
var selectLabel = (_c = options === null || options === void 0 ? void 0 : options.find(function (v) {
|
|
66
|
+
return v.value === selectKey;
|
|
67
|
+
})) === null || _c === void 0 ? void 0 : _c.label;
|
|
68
|
+
return {
|
|
69
|
+
key: key,
|
|
70
|
+
value: value[key],
|
|
71
|
+
closable: true,
|
|
72
|
+
label: selectLabel + ':' + inputValue
|
|
73
|
+
};
|
|
74
|
+
}
|
|
75
|
+
var _target = options === null || options === void 0 ? void 0 : options.find(function (item) {
|
|
76
|
+
var valueKey = fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value;
|
|
77
|
+
var itemValue = item instanceof Object ? item[valueKey] : item;
|
|
78
|
+
return itemValue === value[key];
|
|
79
|
+
});
|
|
80
|
+
labelValue = _target instanceof Object ? _target === null || _target === void 0 ? void 0 : _target[fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label] : _target;
|
|
81
|
+
}
|
|
82
|
+
// setLabel: 对于自定义组件,无法控制label的显示,可以通过setLabel方法控制
|
|
83
|
+
return {
|
|
84
|
+
key: key,
|
|
85
|
+
value: value[key],
|
|
86
|
+
closable: true,
|
|
87
|
+
label: setLabel ? setLabel(labelValue) : _propsTitle + ':' + labelValue
|
|
88
|
+
};
|
|
89
|
+
})) === null || _b === void 0 ? void 0 : _b.filter(function (item) {
|
|
90
|
+
return !!item;
|
|
91
|
+
});
|
|
92
|
+
};
|
|
93
|
+
var parseArrayToObject = function parseArrayToObject(value) {
|
|
94
|
+
return value === null || value === void 0 ? void 0 : value.reduce(function (acc, v) {
|
|
95
|
+
acc[v.key] = v.value;
|
|
96
|
+
return acc;
|
|
97
|
+
}, {});
|
|
98
|
+
};
|
|
99
|
+
/**
|
|
100
|
+
* @param value: [{
|
|
101
|
+
key: 'key1',
|
|
102
|
+
value: 'value1',
|
|
103
|
+
label: 'key1:value1'
|
|
104
|
+
}, {
|
|
105
|
+
key: 'key2',
|
|
106
|
+
value: ['value2', 'value3'],
|
|
107
|
+
label: 'key1:value2|value3'
|
|
108
|
+
}]
|
|
109
|
+
* @param {*} ref
|
|
110
|
+
* @returns
|
|
111
|
+
*/
|
|
112
|
+
var regex = /^.+:.*$/;
|
|
113
|
+
var CompositionInput = function CompositionInput(_ref3, ref) {
|
|
114
|
+
var _value = _ref3.value,
|
|
115
|
+
fieldItems = _ref3.fieldItems,
|
|
116
|
+
initialValues = _ref3.initialValues,
|
|
117
|
+
onChange = _ref3.onChange,
|
|
118
|
+
placeholder = _ref3.placeholder,
|
|
119
|
+
disabled = _ref3.disabled,
|
|
120
|
+
form = _ref3.form,
|
|
121
|
+
style = _ref3.style,
|
|
122
|
+
clsPrefix = _ref3.clsPrefix;
|
|
123
|
+
var prefix = "".concat(clsPrefix, "-composition-input");
|
|
124
|
+
var _useState = (0, _react.useState)([]),
|
|
125
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
126
|
+
value = _useState2[0],
|
|
127
|
+
setValue = _useState2[1];
|
|
128
|
+
var _useState3 = (0, _react.useState)(),
|
|
129
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
130
|
+
tempItem = _useState4[0],
|
|
131
|
+
setTempItem = _useState4[1];
|
|
132
|
+
var _useState5 = (0, _react.useState)(''),
|
|
133
|
+
_useState6 = _slicedToArray(_useState5, 2),
|
|
134
|
+
searchText = _useState6[0],
|
|
135
|
+
setSearchText = _useState6[1];
|
|
136
|
+
var _useState7 = (0, _react.useState)(false),
|
|
137
|
+
_useState8 = _slicedToArray(_useState7, 2),
|
|
138
|
+
visible = _useState8[0],
|
|
139
|
+
setVisible = _useState8[1];
|
|
140
|
+
var _useState9 = (0, _react.useState)(undefined),
|
|
141
|
+
_useState10 = _slicedToArray(_useState9, 2),
|
|
142
|
+
fieldItem = _useState10[0],
|
|
143
|
+
setFieldItem = _useState10[1];
|
|
144
|
+
var _ref4 = fieldItem || {},
|
|
145
|
+
props = _ref4.props;
|
|
146
|
+
var inputRef = (0, _react.useRef)(null);
|
|
147
|
+
var widthRef = (0, _react.useRef)(null);
|
|
148
|
+
var fieldRef = (0, _react.useRef)(null);
|
|
149
|
+
var handleFocus = function handleFocus(e) {
|
|
150
|
+
var _a;
|
|
151
|
+
e.preventDefault();
|
|
152
|
+
(_a = inputRef === null || inputRef === void 0 ? void 0 : inputRef.current) === null || _a === void 0 ? void 0 : _a.focus();
|
|
153
|
+
if (!visible && !regex.test(searchText)) {
|
|
154
|
+
setVisible(true);
|
|
155
|
+
}
|
|
156
|
+
};
|
|
157
|
+
(0, _react.useImperativeHandle)(ref, function () {
|
|
158
|
+
return {
|
|
159
|
+
changeVal: function changeVal() {
|
|
160
|
+
return value;
|
|
161
|
+
}
|
|
162
|
+
};
|
|
163
|
+
});
|
|
164
|
+
(0, _react.useEffect)(function () {
|
|
165
|
+
var values = form.getValues();
|
|
166
|
+
if (values) {
|
|
167
|
+
setValue(parseObjectToArray(values, fieldItems));
|
|
168
|
+
}
|
|
169
|
+
}, [fieldItems, form]);
|
|
170
|
+
// useEffect(() => {
|
|
171
|
+
// if (!visible) {
|
|
172
|
+
// const newValues = value?.filter((v) => !!v?.value)
|
|
173
|
+
// if (newValues.length !== value?.length) {
|
|
174
|
+
// setValue(newValues)
|
|
175
|
+
// }
|
|
176
|
+
// }
|
|
177
|
+
// }, [visible, value])
|
|
178
|
+
(0, _react.useLayoutEffect)(function () {
|
|
179
|
+
var target = document.querySelector(".".concat(prefix, " .inputClass"));
|
|
180
|
+
if (!target) return;
|
|
181
|
+
if (searchText && widthRef.current.clientWidth > 50) {
|
|
182
|
+
target.style.width = widthRef.current.clientWidth + 10 + 'px';
|
|
183
|
+
} else if (!(value === null || value === void 0 ? void 0 : value.length)) {
|
|
184
|
+
target.style.width = '300px';
|
|
185
|
+
} else {
|
|
186
|
+
target.style.width = '100px';
|
|
187
|
+
}
|
|
188
|
+
}, [searchText, value]);
|
|
189
|
+
var onFormChange = function onFormChange(formData) {
|
|
190
|
+
setValue(parseObjectToArray(formData, data));
|
|
191
|
+
};
|
|
192
|
+
var onClear = function onClear(e) {
|
|
193
|
+
e.stopPropagation();
|
|
194
|
+
var deleteKeys = value === null || value === void 0 ? void 0 : value.map(function (_ref5) {
|
|
195
|
+
var key = _ref5.key;
|
|
196
|
+
return key;
|
|
197
|
+
});
|
|
198
|
+
setValue([]);
|
|
199
|
+
onChange([], deleteKeys);
|
|
200
|
+
};
|
|
201
|
+
var onDelete = function onDelete(key, e) {
|
|
202
|
+
e.preventDefault();
|
|
203
|
+
if (value.length > 0) {
|
|
204
|
+
var newValue = value.filter(function (v) {
|
|
205
|
+
return v.key !== key;
|
|
206
|
+
});
|
|
207
|
+
setValue(newValue);
|
|
208
|
+
var deleteKeys = [key];
|
|
209
|
+
onChange(parseArrayToObject(newValue), deleteKeys);
|
|
210
|
+
}
|
|
211
|
+
};
|
|
212
|
+
var handleFieldChange = function handleFieldChange(value, isInput, hasValue) {
|
|
213
|
+
if (isInput) {
|
|
214
|
+
setSearchText(value === null || value === void 0 ? void 0 : value.label);
|
|
215
|
+
setTempItem(value);
|
|
216
|
+
return;
|
|
217
|
+
}
|
|
218
|
+
setValue(value);
|
|
219
|
+
setSearchText('');
|
|
220
|
+
setTempItem();
|
|
221
|
+
if (hasValue) onChange(parseArrayToObject(value));
|
|
222
|
+
};
|
|
223
|
+
// 输入框事件方法
|
|
224
|
+
var onInputChange = function onInputChange(e) {
|
|
225
|
+
var value = e.target.value;
|
|
226
|
+
if (tempItem) {
|
|
227
|
+
if (regex.test(value)) {
|
|
228
|
+
// 有输入值
|
|
229
|
+
setSearchText(value);
|
|
230
|
+
} else {
|
|
231
|
+
// 没有输入值, 清空选择的属性类型重新显示属性列表
|
|
232
|
+
setSearchText('');
|
|
233
|
+
setTempItem();
|
|
234
|
+
}
|
|
235
|
+
} else {
|
|
236
|
+
setSearchText(value);
|
|
237
|
+
}
|
|
238
|
+
};
|
|
239
|
+
var onPressEnter = function onPressEnter(e) {
|
|
240
|
+
var _a;
|
|
241
|
+
var inputValue = ((_a = searchText === null || searchText === void 0 ? void 0 : searchText.match(/[^:]+:(.*)/)) === null || _a === void 0 ? void 0 : _a[1]) || null;
|
|
242
|
+
if (tempItem && inputValue) {
|
|
243
|
+
setVisible(false);
|
|
244
|
+
tempItem.label = searchText;
|
|
245
|
+
tempItem.closable = true;
|
|
246
|
+
tempItem.value = inputValue; // 得到输入值
|
|
247
|
+
if (!(value === null || value === void 0 ? void 0 : value.find(function (v) {
|
|
248
|
+
return v.key === tempItem.key;
|
|
249
|
+
}))) {
|
|
250
|
+
var newValue = [].concat(_toConsumableArray(value), [tempItem]);
|
|
251
|
+
setValue(newValue);
|
|
252
|
+
onChange(parseArrayToObject(newValue));
|
|
253
|
+
} else {
|
|
254
|
+
var _newValue = value.map(function (v) {
|
|
255
|
+
return v.key === tempItem.key ? tempItem : v;
|
|
256
|
+
});
|
|
257
|
+
setValue(_newValue);
|
|
258
|
+
onChange(parseArrayToObject(_newValue));
|
|
259
|
+
}
|
|
260
|
+
e.target.value = inputValue;
|
|
261
|
+
form.emit('search', _defineProperty(_defineProperty({}, tempItem.key, inputValue), "current", 1));
|
|
262
|
+
(props === null || props === void 0 ? void 0 : props.onPressEnter) && props.onPressEnter(e);
|
|
263
|
+
}
|
|
264
|
+
setTempItem();
|
|
265
|
+
setSearchText('');
|
|
266
|
+
};
|
|
267
|
+
var handleTag = function handleTag(obj) {
|
|
268
|
+
var curItem = undefined;
|
|
269
|
+
for (var index = 0; index < fieldItems.length; index++) {
|
|
270
|
+
var item = fieldItems[index];
|
|
271
|
+
if (item.props.name === obj.key) {
|
|
272
|
+
curItem = item;
|
|
273
|
+
break;
|
|
274
|
+
}
|
|
275
|
+
}
|
|
276
|
+
// setSearchText(obj.label)
|
|
277
|
+
fieldRef.current.onPropsClick(curItem.props);
|
|
278
|
+
};
|
|
279
|
+
return _react["default"].createElement(_LocaleReceiver["default"], {
|
|
280
|
+
componentName: "QueryForm"
|
|
281
|
+
}, function (locale) {
|
|
282
|
+
return _react["default"].createElement("div", {
|
|
283
|
+
className: prefix,
|
|
284
|
+
style: style,
|
|
285
|
+
onClick: handleFocus
|
|
286
|
+
}, _react["default"].createElement("span", {
|
|
287
|
+
className: "".concat(prefix, "-width"),
|
|
288
|
+
ref: widthRef
|
|
289
|
+
}, searchText), _react["default"].createElement("ul", {
|
|
290
|
+
className: "".concat(prefix, "-items")
|
|
291
|
+
}, value && value.map(function (item, index) {
|
|
292
|
+
return _react["default"].createElement("li", {
|
|
293
|
+
key: index,
|
|
294
|
+
className: "".concat(prefix, "-items-item")
|
|
295
|
+
}, _react["default"].createElement(_tag["default"], {
|
|
296
|
+
closable: !disabled && item.closable,
|
|
297
|
+
onClick: function onClick(e) {
|
|
298
|
+
e.preventDefault();
|
|
299
|
+
e.stopPropagation();
|
|
300
|
+
handleTag(item);
|
|
301
|
+
},
|
|
302
|
+
onClose: function onClose(e) {
|
|
303
|
+
return onDelete(item.key, e);
|
|
304
|
+
},
|
|
305
|
+
ellipsisOptions: {
|
|
306
|
+
widthLimit: "140px"
|
|
307
|
+
}
|
|
308
|
+
}, item === null || item === void 0 ? void 0 : item.label));
|
|
309
|
+
}), _react["default"].createElement("li", {
|
|
310
|
+
className: "".concat(prefix, "-items-input")
|
|
311
|
+
}, _react["default"].createElement(_FieldPopover["default"], {
|
|
312
|
+
ref: fieldRef,
|
|
313
|
+
onChange: handleFieldChange,
|
|
314
|
+
clsPrefix: clsPrefix,
|
|
315
|
+
fieldItems: fieldItems,
|
|
316
|
+
propItem: fieldItem,
|
|
317
|
+
setFieldItem: setFieldItem,
|
|
318
|
+
form: form,
|
|
319
|
+
regex: regex,
|
|
320
|
+
visible: visible,
|
|
321
|
+
value: value,
|
|
322
|
+
setVisible: setVisible,
|
|
323
|
+
searchText: searchText,
|
|
324
|
+
locale: locale
|
|
325
|
+
}, _react["default"].createElement(_input["default"], Object.assign({
|
|
326
|
+
ref: inputRef,
|
|
327
|
+
value: searchText,
|
|
328
|
+
className: "inputClass",
|
|
329
|
+
placeholder: !(value === null || value === void 0 ? void 0 : value.length) ? placeholder || locale.placeholder : undefined,
|
|
330
|
+
disabled: disabled
|
|
331
|
+
}, props, {
|
|
332
|
+
onPressEnter: onPressEnter,
|
|
333
|
+
onChange: function onChange(e) {
|
|
334
|
+
onInputChange(e);
|
|
335
|
+
}
|
|
336
|
+
}))))), _react["default"].createElement("div", {
|
|
337
|
+
className: "".concat(prefix, "-prefix")
|
|
338
|
+
}, _react["default"].createElement(_icon["default"], {
|
|
339
|
+
type: "filter"
|
|
340
|
+
})), _react["default"].createElement("div", {
|
|
341
|
+
className: "".concat(prefix, "-clear")
|
|
342
|
+
}, _react["default"].createElement(_icon["default"], {
|
|
343
|
+
onClick: onClear,
|
|
344
|
+
type: "close-circle",
|
|
345
|
+
theme: "filled"
|
|
346
|
+
})));
|
|
347
|
+
});
|
|
348
|
+
};
|
|
349
|
+
var _default = exports["default"] = (0, _react.forwardRef)(CompositionInput);
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../../../src/query-form2/Field/Composition/index.js"],"names":[],"mappings":"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","sourcesContent":["import React, {\n useEffect,\n useLayoutEffect,\n useState,\n useRef,\n useImperativeHandle,\n forwardRef,\n} from 'react'\nimport LocaleReceiver from 'antd/lib/locale-provider/LocaleReceiver'\nimport Icon from '../../../icon'\n\nimport Tag from '../../../tag'\nimport Input from '../../../input'\nimport FieldPopover from './FieldPopover'\nimport './index.less'\n\nconst parseObjectToArray = (value, data) => {\n return Object.keys(value)\n ?.map((key) => {\n const target = data?.find((item) => item.props?.name === key)\n if (!target) return null\n const dataItem = target?.props || {}\n const {\n type,\n component,\n setLabel,\n props: fieldProps,\n propsTitle,\n title,\n name,\n } = dataItem || {}\n const _propsTitle = propsTitle || title || name\n const { options } = fieldProps || {}\n const fieldNames = dataItem?.props?.fieldNames || {\n label: 'label',\n value: 'value',\n }\n let labelValue = value[key]\n if (!type && component) {\n if (!setLabel) {\n console.error('自定义组件需要传入setLabel()方法')\n }\n } else if (options) {\n if (type === 'selectInput') {\n const selectKey = Object.keys(labelValue)?.[0]\n const inputValue = labelValue[selectKey]\n const selectLabel = options?.find((v) => v.value === selectKey)?.label\n return {\n key,\n value: value[key],\n closable: true,\n label: selectLabel + ':' + inputValue,\n }\n }\n const target = options?.find((item) => {\n const valueKey = fieldNames?.value\n const itemValue = item instanceof Object ? item[valueKey] : item\n return itemValue === value[key]\n })\n labelValue = target instanceof Object ? target?.[fieldNames?.label] : target\n }\n // setLabel: 对于自定义组件,无法控制label的显示,可以通过setLabel方法控制\n return {\n key,\n value: value[key],\n closable: true,\n label: setLabel ? setLabel(labelValue) : _propsTitle + ':' + labelValue,\n }\n })\n ?.filter((item) => !!item)\n}\n\nconst parseArrayToObject = (value) =>\n value?.reduce((acc, v) => {\n acc[v.key] = v.value\n return acc\n }, {})\n\n/**\n * @param value: [{\n key: 'key1',\n value: 'value1',\n label: 'key1:value1'\n }, {\n key: 'key2',\n value: ['value2', 'value3'],\n label: 'key1:value2|value3'\n }]\n * @param {*} ref \n * @returns \n */\nconst regex = /^.+:.*$/\n\nconst CompositionInput = (\n { value: _value, fieldItems, initialValues, onChange, placeholder, disabled, form, style, clsPrefix },\n ref\n) => {\n const prefix = `${clsPrefix}-composition-input`;\n const [value, setValue] = useState([])\n const [tempItem, setTempItem] = useState()\n const [searchText, setSearchText] = useState('')\n const [visible, setVisible] = useState(false)\n const [fieldItem, setFieldItem] = useState(undefined)\n const { props } = fieldItem || {}\n\n const inputRef = useRef(null)\n const widthRef = useRef(null)\n const fieldRef = useRef(null)\n\n const handleFocus = (e) => {\n e.preventDefault()\n inputRef?.current?.focus()\n if (!visible && !regex.test(searchText)) {\n setVisible(true)\n }\n }\n useImperativeHandle(ref, () => ({\n changeVal: () => {\n return value\n },\n }))\n\n useEffect(() => {\n let values = form.getValues();\n if (values) {\n setValue(parseObjectToArray(values, fieldItems))\n }\n }, [fieldItems, form])\n\n // useEffect(() => {\n // if (!visible) {\n // const newValues = value?.filter((v) => !!v?.value)\n // if (newValues.length !== value?.length) {\n // setValue(newValues)\n // }\n // }\n // }, [visible, value])\n\n useLayoutEffect(() => {\n const target = document.querySelector(`.${prefix} .inputClass`)\n\n if (!target) return\n if (searchText && widthRef.current.clientWidth > 50) {\n target.style.width = widthRef.current.clientWidth + 10 + 'px'\n } else if (!value?.length) {\n target.style.width = '300px'\n } else {\n target.style.width = '100px'\n }\n }, [searchText, value])\n\n\n const onFormChange = (formData) => {\n setValue(parseObjectToArray(formData, data))\n }\n\n const onClear = (e) => {\n e.stopPropagation()\n const deleteKeys = value?.map(({ key }) => key)\n setValue([])\n onChange([], deleteKeys)\n }\n const onDelete = (key, e) => {\n e.preventDefault()\n if (value.length > 0) {\n const newValue = value.filter((v) => v.key !== key)\n setValue(newValue)\n const deleteKeys = [key]\n onChange(parseArrayToObject(newValue), deleteKeys)\n }\n }\n const handleFieldChange = (value, isInput, hasValue) => {\n if (isInput) {\n setSearchText(value?.label)\n setTempItem(value)\n return\n }\n setValue(value)\n setSearchText('')\n setTempItem()\n if (hasValue) onChange(parseArrayToObject(value))\n }\n\n // 输入框事件方法\n const onInputChange = (e) => {\n const value = e.target.value\n if (tempItem) {\n if (regex.test(value)) {\n // 有输入值\n setSearchText(value)\n } else {\n // 没有输入值, 清空选择的属性类型重新显示属性列表\n setSearchText('')\n setTempItem()\n }\n } else {\n setSearchText(value)\n }\n }\n\n const onPressEnter = (e) => {\n const inputValue = searchText?.match(/[^:]+:(.*)/)?.[1] || null\n if (tempItem && inputValue) {\n setVisible(false)\n tempItem.label = searchText\n tempItem.closable = true\n tempItem.value = inputValue // 得到输入值\n if (!value?.find((v) => v.key === tempItem.key)) {\n const newValue = [...value, tempItem]\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n } else {\n const newValue = value.map((v) => (v.key === tempItem.key ? tempItem : v))\n setValue(newValue)\n onChange(parseArrayToObject(newValue))\n }\n e.target.value = inputValue\n form.emit('search', { [tempItem.key]: inputValue, current: 1 })\n props?.onPressEnter && props.onPressEnter(e)\n }\n setTempItem()\n setSearchText('')\n }\n\n const handleTag = (obj) => {\n let curItem = undefined\n for (let index = 0; index < fieldItems.length; index++) {\n const item = fieldItems[index];\n if (item.props.name === obj.key) {\n curItem = item\n break;\n }\n }\n // setSearchText(obj.label)\n fieldRef.current.onPropsClick(curItem.props)\n }\n return (\n <LocaleReceiver componentName=\"QueryForm\">\n {(locale) => {\n return (\n <div className={prefix} style={style} onClick={handleFocus}>\n <span className={`${prefix}-width`} ref={widthRef}>\n {searchText}\n </span>\n <ul className={`${prefix}-items`}>\n {value &&\n value.map((item, index) => (\n <li key={index} className={`${prefix}-items-item`}>\n <Tag closable={!disabled && item.closable} onClick={(e) => {\n e.preventDefault()\n e.stopPropagation()\n handleTag(item)\n }} onClose={(e) => onDelete(item.key, e)} ellipsisOptions={{widthLimit:\"140px\"}}>\n {item?.label}\n </Tag>\n </li>\n ))}\n <li className={`${prefix}-items-input`}>\n <FieldPopover\n ref={fieldRef}\n onChange={handleFieldChange}\n clsPrefix={clsPrefix}\n fieldItems={fieldItems}\n propItem={fieldItem}\n setFieldItem={setFieldItem}\n form={form}\n regex={regex}\n visible={visible}\n value={value}\n setVisible={setVisible}\n searchText={searchText}\n locale={locale}\n >\n <Input\n ref={inputRef}\n value={searchText}\n className=\"inputClass\"\n placeholder={!value?.length ? placeholder || locale.placeholder : undefined}\n disabled={disabled}\n {...props}\n onPressEnter={onPressEnter}\n onChange={(e) => {\n onInputChange(e)\n }}\n />\n </FieldPopover>\n </li>\n </ul>\n <div className={`${prefix}-prefix`}>\n <Icon type=\"filter\" />\n </div>\n <div className={`${prefix}-clear`}>\n <Icon\n onClick={onClear}\n type=\"close-circle\"\n theme=\"filled\"\n />\n </div>\n </div>\n )\n }}\n </LocaleReceiver>\n )\n}\nexport default forwardRef(CompositionInput)\n"]}
|