@lemon-fe/components 1.2.11-alpha.0 → 1.2.11-alpha.2
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/component-configure/index.d.ts +12 -12
- package/es/component-configure/index.js +19 -2
- package/es/data-grid/index.js +7 -8
- package/es/data-grid/typings.d.ts +4 -0
- package/es/filter/index.d.ts +5 -5
- package/es/filter/index.js +8 -11
- package/es/filter/typings.d.ts +1 -1
- package/es/select-view/index.d.ts +2 -8
- package/es/select-view/index.js +28 -32
- package/es/select-view/index.less +0 -6
- package/package.json +3 -3
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { ActionsProps } from '../actions';
|
|
3
|
-
import type {
|
|
3
|
+
import type { DataGridProps } from '../data-grid/typings';
|
|
4
4
|
import type { FilterProps } from '../filter/typings';
|
|
5
|
-
import type {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
DataGrid?:
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
Actions?: Partial<ActionsProps>;
|
|
5
|
+
import type { SelectViewProps } from '../select-view';
|
|
6
|
+
declare type PropsGetter<T> = ((props: T) => T) | Partial<T>;
|
|
7
|
+
export interface ComponentConfigureContextProps {
|
|
8
|
+
DataGrid?: PropsGetter<DataGridProps<unknown>>;
|
|
9
|
+
Filter?: PropsGetter<FilterProps<unknown>>;
|
|
10
|
+
Actions?: PropsGetter<ActionsProps>;
|
|
11
|
+
SelectView?: PropsGetter<SelectViewProps<unknown, unknown>>;
|
|
13
12
|
}
|
|
14
|
-
export declare const ComponentConfigureContext: import("react").Context<
|
|
15
|
-
export declare const ComponentConfigureProvider: import("react").Provider<
|
|
16
|
-
export declare const ComponentConfigureConsumer: import("react").Consumer<
|
|
13
|
+
export declare const ComponentConfigureContext: import("react").Context<ComponentConfigureContextProps>;
|
|
14
|
+
export declare const ComponentConfigureProvider: import("react").Provider<ComponentConfigureContextProps>;
|
|
15
|
+
export declare const ComponentConfigureConsumer: import("react").Consumer<ComponentConfigureContextProps>;
|
|
16
|
+
export declare function useComponentDefaultProps<T>(key: keyof ComponentConfigureContextProps, originalProps: T): T;
|
|
17
17
|
export {};
|
|
@@ -1,4 +1,21 @@
|
|
|
1
|
-
|
|
1
|
+
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); }
|
|
2
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
3
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
4
|
+
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; }
|
|
5
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
|
|
6
|
+
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); }
|
|
7
|
+
import { createContext, useContext } from 'react';
|
|
2
8
|
export var ComponentConfigureContext = /*#__PURE__*/createContext({});
|
|
3
9
|
export var ComponentConfigureProvider = ComponentConfigureContext.Provider;
|
|
4
|
-
export var ComponentConfigureConsumer = ComponentConfigureContext.Consumer;
|
|
10
|
+
export var ComponentConfigureConsumer = ComponentConfigureContext.Consumer;
|
|
11
|
+
export function useComponentDefaultProps(key, originalProps) {
|
|
12
|
+
var defaultProps = useContext(ComponentConfigureContext);
|
|
13
|
+
var componentDefaultProps = defaultProps[key];
|
|
14
|
+
var props = originalProps;
|
|
15
|
+
if (typeof componentDefaultProps === 'function') {
|
|
16
|
+
props = componentDefaultProps(originalProps);
|
|
17
|
+
} else if (componentDefaultProps !== undefined) {
|
|
18
|
+
props = _objectSpread(_objectSpread({}, componentDefaultProps), originalProps);
|
|
19
|
+
}
|
|
20
|
+
return props;
|
|
21
|
+
}
|
package/es/data-grid/index.js
CHANGED
|
@@ -35,8 +35,8 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
|
|
|
35
35
|
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; } }
|
|
36
36
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
37
37
|
import { Spin, Pagination } from 'antd';
|
|
38
|
-
import React, { Component, createRef, forwardRef
|
|
39
|
-
import {
|
|
38
|
+
import React, { Component, createRef, forwardRef } from 'react';
|
|
39
|
+
import { useComponentDefaultProps } from "../component-configure";
|
|
40
40
|
import { useLocaleReceiver } from "../locale-receiver";
|
|
41
41
|
import { parseLocalTemplate } from "../locale/locale";
|
|
42
42
|
import DateEditor from "./cell-editors/date";
|
|
@@ -184,7 +184,7 @@ var InternalDataGrid = /*#__PURE__*/function (_Component) {
|
|
|
184
184
|
toolPanel: CustomColumnPanel,
|
|
185
185
|
toolPanelParams: {
|
|
186
186
|
enableSave: !!_this.props.customColumnPanelStorage,
|
|
187
|
-
enableSummary: _this.isClientMode()
|
|
187
|
+
enableSummary: _this.isClientMode() || _this.props.enableCustomColumnSummary
|
|
188
188
|
}
|
|
189
189
|
}]
|
|
190
190
|
});
|
|
@@ -1681,7 +1681,7 @@ var InternalDataGrid = /*#__PURE__*/function (_Component) {
|
|
|
1681
1681
|
enableCellEditingOnBackspace: true,
|
|
1682
1682
|
maintainColumnOrder: true,
|
|
1683
1683
|
suppressCsvExport: true,
|
|
1684
|
-
|
|
1684
|
+
rowMultiSelectWithClick: gridRowSelection === 'multiple',
|
|
1685
1685
|
noRowsOverlayComponent: this.NoRowsOverlay,
|
|
1686
1686
|
getMainMenuItems: this.getMainMenuItems,
|
|
1687
1687
|
rowBuffer: 20,
|
|
@@ -1715,15 +1715,14 @@ var InternalDataGrid = /*#__PURE__*/function (_Component) {
|
|
|
1715
1715
|
}]);
|
|
1716
1716
|
return InternalDataGrid;
|
|
1717
1717
|
}(Component);
|
|
1718
|
-
var DataGrid = /*#__PURE__*/forwardRef(function (
|
|
1719
|
-
var _useContext = useContext(ComponentConfigureContext),
|
|
1720
|
-
extraProps = _useContext.DataGrid;
|
|
1718
|
+
var DataGrid = /*#__PURE__*/forwardRef(function (originalProps, ref) {
|
|
1721
1719
|
var _useLocaleReceiver3 = useLocaleReceiver('DataGrid'),
|
|
1722
1720
|
_useLocaleReceiver4 = _slicedToArray(_useLocaleReceiver3, 1),
|
|
1723
1721
|
dataGridLocale = _useLocaleReceiver4[0];
|
|
1722
|
+
var props = useComponentDefaultProps('DataGrid', originalProps);
|
|
1724
1723
|
return /*#__PURE__*/React.createElement(InternalDataGrid, _extends({
|
|
1725
1724
|
ref: ref
|
|
1726
|
-
},
|
|
1725
|
+
}, props, {
|
|
1727
1726
|
locale: dataGridLocale
|
|
1728
1727
|
}));
|
|
1729
1728
|
});
|
|
@@ -223,4 +223,8 @@ export interface DataGridProps<TData> extends Omit<AgGridReactProps<TData>, 'row
|
|
|
223
223
|
set: (data: CustomColumnData) => Promise<void> | void;
|
|
224
224
|
get: () => Promise<CustomColumnData | null | undefined> | CustomColumnData | null | undefined;
|
|
225
225
|
};
|
|
226
|
+
/**
|
|
227
|
+
* @descriptioin 列定制启用汇总
|
|
228
|
+
*/
|
|
229
|
+
enableCustomColumnSummary?: boolean;
|
|
226
230
|
}
|
package/es/filter/index.d.ts
CHANGED
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
import type { ComponentOption, FilterProps } from './typings';
|
|
3
|
-
declare function
|
|
4
|
-
declare namespace
|
|
3
|
+
declare function Filter<T extends Record<string, any> = Record<string, any>>(originalProps: FilterProps<T>): JSX.Element;
|
|
4
|
+
declare namespace Filter {
|
|
5
5
|
var setComponents: (items: ComponentOption[]) => void;
|
|
6
6
|
var setStorage: <T extends {
|
|
7
7
|
title: string;
|
|
8
8
|
value: Record<string | number, any>;
|
|
9
9
|
}>(getData: (storageKey: string) => T[] | Promise<T[]>, setData: (storageKey: string, data: T[], action: {
|
|
10
|
-
type: "
|
|
10
|
+
type: "delete" | "set";
|
|
11
11
|
target: T;
|
|
12
12
|
}) => void | Promise<void>) => void;
|
|
13
|
-
var defaultProps: Partial<FilterProps<
|
|
13
|
+
var defaultProps: Partial<FilterProps<unknown>>;
|
|
14
14
|
}
|
|
15
|
-
export default
|
|
15
|
+
export default Filter;
|
package/es/filter/index.js
CHANGED
|
@@ -19,8 +19,8 @@ function _iterableToArrayLimit(r, l) { var t = null == r ? null : "undefined" !=
|
|
|
19
19
|
function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
20
20
|
function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
|
|
21
21
|
import { Button, Checkbox, Form, Input, Popover, Space } from 'antd';
|
|
22
|
-
import React, { useEffect, useMemo, useState
|
|
23
|
-
import {
|
|
22
|
+
import React, { useEffect, useMemo, useState } from 'react';
|
|
23
|
+
import { useComponentDefaultProps } from "../component-configure";
|
|
24
24
|
import Dropdown from "../dropdown";
|
|
25
25
|
import DurationPicker from "../duration-picker";
|
|
26
26
|
import Empty from "../empty";
|
|
@@ -93,7 +93,8 @@ function setStorage(getData, setData) {
|
|
|
93
93
|
setStorageData = setData;
|
|
94
94
|
}
|
|
95
95
|
var defaultData = [];
|
|
96
|
-
function Filter(
|
|
96
|
+
function Filter(originalProps) {
|
|
97
|
+
var props = useComponentDefaultProps('Filter', originalProps);
|
|
97
98
|
var _props$data = props.data,
|
|
98
99
|
data = _props$data === void 0 ? defaultData : _props$data,
|
|
99
100
|
defaultValueProp = props.defaultValue,
|
|
@@ -631,11 +632,7 @@ function Filter(props) {
|
|
|
631
632
|
mask: "url(#filter-down-mask)"
|
|
632
633
|
}))))))))));
|
|
633
634
|
}
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
FilterWrapper.setComponents = setComponents;
|
|
639
|
-
FilterWrapper.setStorage = setStorage;
|
|
640
|
-
FilterWrapper.defaultProps = {};
|
|
641
|
-
export default FilterWrapper;
|
|
635
|
+
Filter.setComponents = setComponents;
|
|
636
|
+
Filter.setStorage = setStorage;
|
|
637
|
+
Filter.defaultProps = {};
|
|
638
|
+
export default Filter;
|
package/es/filter/typings.d.ts
CHANGED
|
@@ -24,7 +24,7 @@ export interface FilterItemType<T = any> {
|
|
|
24
24
|
|
|
25
25
|
export type ActionType = 'submit' | 'reset';
|
|
26
26
|
|
|
27
|
-
export interface FilterProps<T
|
|
27
|
+
export interface FilterProps<T> {
|
|
28
28
|
data?: FilterItemType<T>[];
|
|
29
29
|
defaultValue?: T;
|
|
30
30
|
value?: T;
|
|
@@ -2,7 +2,7 @@ import type { CSSProperties, ReactElement } from 'react';
|
|
|
2
2
|
import type { ColType, CustomColumnData, DataGridProps, PaginationType, SortType } from '../data-grid/typings';
|
|
3
3
|
import type { FilterProps } from '../filter/typings';
|
|
4
4
|
import type { SideBarDef } from '@ag-grid-community/core';
|
|
5
|
-
interface
|
|
5
|
+
export interface SelectViewProps<RecordType, ParamsType> extends Pick<DataGridProps<RecordType>, 'defaultColDef' | 'rowHeight' | 'cellDisplayFlex' | 'isRowSelectable'> {
|
|
6
6
|
value?: RecordType[];
|
|
7
7
|
onChange?: (value: RecordType[], rowDoubleClicked?: boolean) => void;
|
|
8
8
|
/**
|
|
@@ -72,11 +72,5 @@ interface Props<RecordType, ParamsType extends Record<string, any>> extends Pick
|
|
|
72
72
|
set: (data: CustomColumnData) => Promise<void> | void;
|
|
73
73
|
get: () => Promise<CustomColumnData | null | undefined> | CustomColumnData | null | undefined;
|
|
74
74
|
};
|
|
75
|
-
/**
|
|
76
|
-
* @description 表格顶部header区域自定义
|
|
77
|
-
* @default null
|
|
78
|
-
*/
|
|
79
|
-
header?: ReactElement | null;
|
|
80
75
|
}
|
|
81
|
-
export default function SelectView<RecordType extends Record<string | number, any>, ParamsType extends Record<string, any>>(
|
|
82
|
-
export {};
|
|
76
|
+
export default function SelectView<RecordType extends Record<string | number, any>, ParamsType extends Record<string, any>>(originalProps: SelectViewProps<RecordType, ParamsType>): JSX.Element;
|
package/es/select-view/index.js
CHANGED
|
@@ -18,6 +18,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
|
|
|
18
18
|
import { Form, Spin, Tabs } from 'antd';
|
|
19
19
|
import React, { useEffect, useMemo, useRef, useState } from 'react';
|
|
20
20
|
import { Resizable } from 'react-resizable';
|
|
21
|
+
import { useComponentDefaultProps } from "../component-configure";
|
|
21
22
|
import DataGrid from "../data-grid";
|
|
22
23
|
import Filter from "../filter";
|
|
23
24
|
import { useLocaleReceiver } from "../locale-receiver";
|
|
@@ -25,10 +26,11 @@ import { parseLocalTemplate } from "../locale/locale";
|
|
|
25
26
|
import { mergeProp, prefixClassName } from "../utils";
|
|
26
27
|
import classNames from 'classnames';
|
|
27
28
|
import { get } from 'lodash';
|
|
28
|
-
export default function SelectView(
|
|
29
|
+
export default function SelectView(originalProps) {
|
|
29
30
|
var emptyValue = useMemo(function () {
|
|
30
31
|
return [];
|
|
31
32
|
}, []);
|
|
33
|
+
var props = useComponentDefaultProps('SelectView', originalProps);
|
|
32
34
|
var value = props.value,
|
|
33
35
|
onChange = props.onChange,
|
|
34
36
|
_props$pagination = props.pagination,
|
|
@@ -51,9 +53,7 @@ export default function SelectView(props) {
|
|
|
51
53
|
isRowSelectable = props.isRowSelectable,
|
|
52
54
|
checkSearchParams = props.checkSearchParams,
|
|
53
55
|
sideBar = props.sideBar,
|
|
54
|
-
customColumnPanelStorage = props.customColumnPanelStorage
|
|
55
|
-
_props$header = props.header,
|
|
56
|
-
headerProp = _props$header === void 0 ? null : _props$header;
|
|
56
|
+
customColumnPanelStorage = props.customColumnPanelStorage;
|
|
57
57
|
var prefix = prefixClassName("select-view");
|
|
58
58
|
var _useState = useState(value || emptyValue),
|
|
59
59
|
_useState2 = _slicedToArray(_useState, 2),
|
|
@@ -152,32 +152,30 @@ export default function SelectView(props) {
|
|
|
152
152
|
};
|
|
153
153
|
var headerNode = null;
|
|
154
154
|
var siderNode = null;
|
|
155
|
-
if (filter
|
|
156
|
-
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
}
|
|
167
|
-
}
|
|
168
|
-
|
|
169
|
-
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
178
|
-
|
|
179
|
-
}
|
|
180
|
-
});
|
|
155
|
+
if (filter) {
|
|
156
|
+
if (filter.data) {
|
|
157
|
+
headerNode = /*#__PURE__*/React.createElement(Filter, _extends({
|
|
158
|
+
simple: true,
|
|
159
|
+
autoPlaceholder: true,
|
|
160
|
+
form: filterForm
|
|
161
|
+
}, filter, {
|
|
162
|
+
value: cParams,
|
|
163
|
+
onChange: function onChange(val) {
|
|
164
|
+
return handleChangeParams(_objectSpread(_objectSpread({}, cParams), val));
|
|
165
|
+
}
|
|
166
|
+
}));
|
|
167
|
+
}
|
|
168
|
+
if (filter.sider) {
|
|
169
|
+
siderNode = filter.sider({
|
|
170
|
+
/**
|
|
171
|
+
* 原则上这里使用cParams也会有问题,不排除Filter中的条件可能会影响Sider的渲染,但此种情况先忽略,尽可能避免这个情况
|
|
172
|
+
*/
|
|
173
|
+
value: cParams,
|
|
174
|
+
onChange: function onChange(val) {
|
|
175
|
+
handleChangeParams(_objectSpread(_objectSpread(_objectSpread({}, cParams), filterForm.getFieldsValue()), val));
|
|
176
|
+
}
|
|
177
|
+
});
|
|
178
|
+
}
|
|
181
179
|
}
|
|
182
180
|
var dataKeys = useMemo(function () {
|
|
183
181
|
return data.map(getRowKey);
|
|
@@ -238,8 +236,6 @@ export default function SelectView(props) {
|
|
|
238
236
|
handleChangeData([node.id], [node.data], true);
|
|
239
237
|
}
|
|
240
238
|
},
|
|
241
|
-
rowMultiSelectWithClick: true,
|
|
242
|
-
suppressRowClickSelection: false,
|
|
243
239
|
sideBar: sideBar,
|
|
244
240
|
rowHeight: rowHeight,
|
|
245
241
|
defaultColDef: defaultColDef,
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@lemon-fe/components",
|
|
3
|
-
"version": "1.2.11-alpha.
|
|
3
|
+
"version": "1.2.11-alpha.2",
|
|
4
4
|
"description": "> TODO: description",
|
|
5
5
|
"homepage": "",
|
|
6
6
|
"license": "ISC",
|
|
@@ -27,7 +27,7 @@
|
|
|
27
27
|
"@ag-grid-community/react": "29.2.0",
|
|
28
28
|
"@ag-grid-community/styles": "29.2.0",
|
|
29
29
|
"@dnd-kit/core": "^6.0.8",
|
|
30
|
-
"@lemon-fe/hooks": "^1.2.
|
|
30
|
+
"@lemon-fe/hooks": "^1.2.11-alpha.2",
|
|
31
31
|
"@lemon-fe/utils": "^1.1.0",
|
|
32
32
|
"async-validator": "^4.2.5",
|
|
33
33
|
"bignumber.js": ">=9.0.0",
|
|
@@ -67,5 +67,5 @@
|
|
|
67
67
|
"publishConfig": {
|
|
68
68
|
"registry": "https://registry.npmjs.org"
|
|
69
69
|
},
|
|
70
|
-
"gitHead": "
|
|
70
|
+
"gitHead": "ae15ff1f11ac069128da561e6afeb1515c77a36e"
|
|
71
71
|
}
|