@arim-aisdc/public-components 2.1.10 → 2.1.12
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/dist/components/CustomForm/CustomForm.js +8 -0
- package/dist/components/CustomForm/RemoteCascader/index.d.ts +7 -0
- package/dist/components/CustomForm/RemoteCascader/index.js +72 -0
- package/dist/components/CustomForm/type.d.ts +10 -0
- package/dist/components/CustomForm/type.js +1 -0
- package/dist/components/TableMax/components/ColumnFilter/SingleSelect/index.less +3 -0
- package/package.json +1 -1
|
@@ -19,6 +19,7 @@ import { debounce } from 'lodash';
|
|
|
19
19
|
import React, { forwardRef, useEffect, useMemo, useState } from 'react';
|
|
20
20
|
import ColorSelector from "../ColorSelector";
|
|
21
21
|
import ConditionExpression from "../ConditionExpression";
|
|
22
|
+
import RemoteCascader from "./RemoteCascader";
|
|
22
23
|
import RemoteSelect from "./RemoteSelectCom";
|
|
23
24
|
import CustomFormItemInputNumber from "./customFormItemInputNumber";
|
|
24
25
|
import "./index.less";
|
|
@@ -387,6 +388,13 @@ var CustomForm = function CustomForm(_ref, ref) {
|
|
|
387
388
|
disabled: item.disabled
|
|
388
389
|
});
|
|
389
390
|
break;
|
|
391
|
+
case CustomFormItemType.RemoteCascader:
|
|
392
|
+
element = /*#__PURE__*/_jsx(RemoteCascader, _objectSpread(_objectSpread({}, item), {}, {
|
|
393
|
+
onChange: function onChange(e) {
|
|
394
|
+
return commonChange(e, item);
|
|
395
|
+
}
|
|
396
|
+
}));
|
|
397
|
+
break;
|
|
390
398
|
case CustomFormItemType.DateTime:
|
|
391
399
|
element = /*#__PURE__*/_jsx(DatePicker, {
|
|
392
400
|
showTime: true,
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import { CustomSearchFieldType } from '../type';
|
|
2
|
+
interface IProps extends CustomSearchFieldType {
|
|
3
|
+
value?: any;
|
|
4
|
+
onChange?: ((value: any[], selectOptions: any[]) => void) | ((value: any[][], selectOptions: any[]) => void);
|
|
5
|
+
}
|
|
6
|
+
declare const RemoteCascader: ({ value, onChange, getOptionsFn, ...item }: IProps) => import("react/jsx-runtime").JSX.Element;
|
|
7
|
+
export default RemoteCascader;
|
|
@@ -0,0 +1,72 @@
|
|
|
1
|
+
var _excluded = ["value", "onChange", "getOptionsFn"];
|
|
2
|
+
function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
|
|
3
|
+
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."); }
|
|
4
|
+
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); }
|
|
5
|
+
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; }
|
|
6
|
+
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; } }
|
|
7
|
+
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
8
|
+
function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
|
|
9
|
+
function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
|
|
10
|
+
import { Cascader, Spin } from 'antd';
|
|
11
|
+
import { debounce } from 'lodash';
|
|
12
|
+
import { useEffect, useMemo, useRef, useState } from 'react';
|
|
13
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
14
|
+
var RemoteCascader = function RemoteCascader(_ref) {
|
|
15
|
+
var _item$expandTrigger, _item$changeOnSelect;
|
|
16
|
+
var value = _ref.value,
|
|
17
|
+
onChange = _ref.onChange,
|
|
18
|
+
getOptionsFn = _ref.getOptionsFn,
|
|
19
|
+
item = _objectWithoutProperties(_ref, _excluded);
|
|
20
|
+
var _useState = useState(false),
|
|
21
|
+
_useState2 = _slicedToArray(_useState, 2),
|
|
22
|
+
fetching = _useState2[0],
|
|
23
|
+
setFetching = _useState2[1];
|
|
24
|
+
var _useState3 = useState([]),
|
|
25
|
+
_useState4 = _slicedToArray(_useState3, 2),
|
|
26
|
+
options = _useState4[0],
|
|
27
|
+
setOptions = _useState4[1];
|
|
28
|
+
var fetchRef = useRef(0);
|
|
29
|
+
var debounceFetcher = useMemo(function () {
|
|
30
|
+
var loadOptions = function loadOptions(value) {
|
|
31
|
+
fetchRef.current += 1;
|
|
32
|
+
var fetchId = fetchRef.current;
|
|
33
|
+
if (!getOptionsFn) return;
|
|
34
|
+
setOptions([]);
|
|
35
|
+
setFetching(true);
|
|
36
|
+
getOptionsFn(value).then(function (newOptions) {
|
|
37
|
+
if (fetchId !== fetchRef.current) {
|
|
38
|
+
// for fetch callback order
|
|
39
|
+
return;
|
|
40
|
+
}
|
|
41
|
+
// console.log('newOptions', newOptions);
|
|
42
|
+
setOptions(newOptions);
|
|
43
|
+
setFetching(false);
|
|
44
|
+
});
|
|
45
|
+
};
|
|
46
|
+
return debounce(loadOptions, 500);
|
|
47
|
+
}, [getOptionsFn]);
|
|
48
|
+
useEffect(function () {
|
|
49
|
+
debounceFetcher();
|
|
50
|
+
}, []);
|
|
51
|
+
return /*#__PURE__*/_jsx(Cascader, {
|
|
52
|
+
className: "customForm-remoteCascader",
|
|
53
|
+
expandTrigger: (_item$expandTrigger = item.expandTrigger) !== null && _item$expandTrigger !== void 0 ? _item$expandTrigger : 'hover',
|
|
54
|
+
changeOnSelect: (_item$changeOnSelect = item.changeOnSelect) !== null && _item$changeOnSelect !== void 0 ? _item$changeOnSelect : true,
|
|
55
|
+
displayRender: item.displayRender,
|
|
56
|
+
showSearch: item.showSearch,
|
|
57
|
+
placeholder: item.inputTips,
|
|
58
|
+
allowClear: item.allowClear,
|
|
59
|
+
disabled: item.disabled,
|
|
60
|
+
multiple: item.multiple,
|
|
61
|
+
value: value,
|
|
62
|
+
maxTagCount: item.maxTagCount,
|
|
63
|
+
options: options,
|
|
64
|
+
onSearch: debounceFetcher,
|
|
65
|
+
onChange: onChange,
|
|
66
|
+
notFoundContent: fetching ? /*#__PURE__*/_jsx(Spin, {
|
|
67
|
+
size: "small"
|
|
68
|
+
}) : null,
|
|
69
|
+
fieldNames: item.fieldNames
|
|
70
|
+
});
|
|
71
|
+
};
|
|
72
|
+
export default RemoteCascader;
|
|
@@ -28,6 +28,7 @@ export declare enum CustomFormItemType {
|
|
|
28
28
|
Switch = "switch",
|
|
29
29
|
Select = "select",
|
|
30
30
|
Cascader = "cascader",
|
|
31
|
+
RemoteCascader = "remoteCascader",
|
|
31
32
|
DateTime = "datetime",
|
|
32
33
|
DateRang = "daterang",
|
|
33
34
|
Interval = "interval",
|
|
@@ -105,7 +106,16 @@ export type CustomSearchFieldType = {
|
|
|
105
106
|
value?: string;
|
|
106
107
|
options?: string;
|
|
107
108
|
groupLabel?: string;
|
|
109
|
+
children?: any;
|
|
108
110
|
};
|
|
111
|
+
/**级联选择器何时展开 */
|
|
112
|
+
expandTrigger?: 'click' | 'hover';
|
|
113
|
+
/**级联选择器选中就改值 */
|
|
114
|
+
changeOnSelect?: boolean;
|
|
115
|
+
/**级联选择器展示的内容 */
|
|
116
|
+
displayRender?: (labels: string[]) => string;
|
|
117
|
+
/**级联选择器是否多选 */
|
|
118
|
+
multiple?: boolean;
|
|
109
119
|
};
|
|
110
120
|
export interface CustomFormProps {
|
|
111
121
|
data: CustomSearchFieldType[];
|
|
@@ -5,6 +5,7 @@ export var CustomFormItemType = /*#__PURE__*/function (CustomFormItemType) {
|
|
|
5
5
|
CustomFormItemType["Switch"] = "switch";
|
|
6
6
|
CustomFormItemType["Select"] = "select";
|
|
7
7
|
CustomFormItemType["Cascader"] = "cascader";
|
|
8
|
+
CustomFormItemType["RemoteCascader"] = "remoteCascader";
|
|
8
9
|
CustomFormItemType["DateTime"] = "datetime";
|
|
9
10
|
CustomFormItemType["DateRang"] = "daterang";
|
|
10
11
|
CustomFormItemType["Interval"] = "interval";
|