@pisell/materials 3.0.2 → 3.0.4
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/lowcode/assets-daily.json +11 -11
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +11 -11
- package/build/lowcode/index.js +1 -1
- package/build/lowcode/meta.js +2 -2
- package/build/lowcode/preview.js +7 -7
- package/build/lowcode/render/default/view.css +1 -1
- package/build/lowcode/render/default/view.js +18 -18
- package/build/lowcode/view.css +1 -1
- package/build/lowcode/view.js +16 -16
- package/es/components/auto-complete-number/index.d.ts +10 -0
- package/es/components/auto-complete-number/index.js +28 -0
- package/es/components/table/Gallery/index.js +6 -2
- package/es/components/table/Gallery/types.d.ts +2 -1
- package/es/components/table/Table/fields/search/Edit/index.js +1 -0
- package/es/components/table/Table/index.js +6 -2
- package/es/components/table/Table/index.less +1 -0
- package/es/components/table/View/index.js +7 -4
- package/es/components/table/index.js +4 -3
- package/es/components/table/types.d.ts +9 -0
- package/es/index.d.ts +1 -0
- package/es/index.js +2 -1
- package/lib/components/auto-complete-number/index.d.ts +10 -0
- package/lib/components/auto-complete-number/index.js +48 -0
- package/lib/components/table/Gallery/index.js +4 -1
- package/lib/components/table/Gallery/types.d.ts +2 -1
- package/lib/components/table/Table/fields/search/Edit/index.js +1 -0
- package/lib/components/table/Table/index.js +4 -1
- package/lib/components/table/Table/index.less +1 -0
- package/lib/components/table/View/index.js +12 -2
- package/lib/components/table/index.js +3 -2
- package/lib/components/table/types.d.ts +9 -0
- package/lib/index.d.ts +1 -0
- package/lib/index.js +3 -0
- package/lowcode/auto-complete/meta.ts +5 -0
- package/lowcode/auto-complete-number/__screenshots__/auto-complete-1.png +0 -0
- package/lowcode/auto-complete-number/meta.ts +75 -0
- package/lowcode/auto-complete-number/snippets.ts +26 -0
- package/lowcode/table/meta.ts +13 -0
- package/package.json +3 -3
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { AutoCompleteProps, InputNumberProps } from "antd";
|
|
3
|
+
interface AutoCompleteNumberProps {
|
|
4
|
+
autoCompleteProps: AutoCompleteProps;
|
|
5
|
+
inputNumberProps: InputNumberProps;
|
|
6
|
+
value?: any;
|
|
7
|
+
onChange?: any;
|
|
8
|
+
}
|
|
9
|
+
declare const AutoCompleteNumber: (props: AutoCompleteNumberProps) => React.JSX.Element;
|
|
10
|
+
export default AutoCompleteNumber;
|
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
var _excluded = ["autoCompleteProps", "inputNumberProps"];
|
|
2
|
+
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; }
|
|
3
|
+
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; }
|
|
4
|
+
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); }
|
|
5
|
+
import React, { forwardRef } from "react";
|
|
6
|
+
import { AutoComplete, InputNumber as AntdInputNumber } from "antd";
|
|
7
|
+
var InputNumber = /*#__PURE__*/forwardRef(function (props, ref) {
|
|
8
|
+
var onChange = function onChange(e) {
|
|
9
|
+
// 转换格式, AutoComplete缺陷, 只识别 e.target.value的值
|
|
10
|
+
var _val = e === null || e === undefined ? "" : e + "";
|
|
11
|
+
props.onChange && props.onChange({
|
|
12
|
+
target: {
|
|
13
|
+
value: _val
|
|
14
|
+
}
|
|
15
|
+
});
|
|
16
|
+
};
|
|
17
|
+
return /*#__PURE__*/React.createElement(AntdInputNumber, _extends({}, props, {
|
|
18
|
+
onChange: onChange,
|
|
19
|
+
ref: ref
|
|
20
|
+
}));
|
|
21
|
+
});
|
|
22
|
+
var AutoCompleteNumber = function AutoCompleteNumber(props) {
|
|
23
|
+
var autoCompleteProps = props.autoCompleteProps,
|
|
24
|
+
inputNumberProps = props.inputNumberProps,
|
|
25
|
+
resetProps = _objectWithoutProperties(props, _excluded);
|
|
26
|
+
return /*#__PURE__*/React.createElement(AutoComplete, _extends({}, resetProps, autoCompleteProps), /*#__PURE__*/React.createElement(InputNumber, inputNumberProps));
|
|
27
|
+
};
|
|
28
|
+
export default AutoCompleteNumber;
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React, { memo, useCallback, useMemo } from "react";
|
|
1
|
+
import React, { memo, useCallback, useEffect, useMemo } from "react";
|
|
2
2
|
import { Form, Spin } from "antd";
|
|
3
3
|
import { isFunction } from "@pisell/utils";
|
|
4
4
|
import useTransDataSource from "../hooks/useTransDataSource";
|
|
@@ -14,7 +14,8 @@ var Gallery = function Gallery(props) {
|
|
|
14
14
|
filter = props.filter,
|
|
15
15
|
pagination = props.pagination,
|
|
16
16
|
rowKey = props.rowKey,
|
|
17
|
-
loading = props.loading
|
|
17
|
+
loading = props.loading,
|
|
18
|
+
onDataSourceChange = props.onDataSourceChange;
|
|
18
19
|
var _ref = gallery || {},
|
|
19
20
|
horizontalGutter = _ref.horizontalGutter,
|
|
20
21
|
verticalGutter = _ref.verticalGutter,
|
|
@@ -47,6 +48,9 @@ var Gallery = function Gallery(props) {
|
|
|
47
48
|
rowKey: rowKey,
|
|
48
49
|
filter: filter
|
|
49
50
|
});
|
|
51
|
+
useEffect(function () {
|
|
52
|
+
onDataSourceChange === null || onDataSourceChange === void 0 ? void 0 : onDataSourceChange(dataSource);
|
|
53
|
+
}, [JSON.stringify(dataSource)]);
|
|
50
54
|
var columnsMap = useMemo(function () {
|
|
51
55
|
return new Map(originColumns.map(function (item) {
|
|
52
56
|
return [item.key, item];
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GallerySettingType } from "../types";
|
|
1
|
+
import { GallerySettingType, GridViewProps } from "../types";
|
|
2
2
|
import { FilterType } from "../../filter/types";
|
|
3
3
|
export declare type GalleryProps = {
|
|
4
4
|
gallery: GallerySettingType;
|
|
@@ -6,4 +6,5 @@ export declare type GalleryProps = {
|
|
|
6
6
|
pagination: any;
|
|
7
7
|
rowKey: ((record: Record<string, any>) => string) | string;
|
|
8
8
|
loading: boolean;
|
|
9
|
+
onDataSourceChange: GridViewProps['onDataSourceChange'];
|
|
9
10
|
};
|
|
@@ -17,6 +17,7 @@ var Edit = function Edit(props, ref) {
|
|
|
17
17
|
trigger = _props$trigger === void 0 ? ["onPressEnter"] : _props$trigger,
|
|
18
18
|
others = _objectWithoutProperties(props, _excluded);
|
|
19
19
|
return /*#__PURE__*/React.createElement(Input, _extends({}, others, {
|
|
20
|
+
value: value,
|
|
20
21
|
style: style,
|
|
21
22
|
prefix: /*#__PURE__*/React.createElement(SearchOutlined, null),
|
|
22
23
|
onChange: function onChange(e) {
|
|
@@ -11,7 +11,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
|
|
|
11
11
|
function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
|
|
12
12
|
function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
|
|
13
13
|
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; }
|
|
14
|
-
import React, { memo, useCallback, useMemo, useRef } from "react";
|
|
14
|
+
import React, { memo, useCallback, useEffect, useMemo, useRef } from "react";
|
|
15
15
|
import { Form } from "antd";
|
|
16
16
|
// import { Access } from '@umijs/max';
|
|
17
17
|
import { useMemoizedFn, useSize } from "ahooks";
|
|
@@ -31,7 +31,8 @@ var GridViewTable = function GridViewTable(_ref) {
|
|
|
31
31
|
var _tableProps$paginatio, _tableProps$paginatio2;
|
|
32
32
|
var tableProps = _ref.tableProps,
|
|
33
33
|
filter = _ref.filter,
|
|
34
|
-
setTableSetting = _ref.setTableSetting
|
|
34
|
+
setTableSetting = _ref.setTableSetting,
|
|
35
|
+
onDataSourceChange = _ref.onDataSourceChange;
|
|
35
36
|
var responsive = useResponsive();
|
|
36
37
|
var _useSharedState = useSharedState(Context),
|
|
37
38
|
state = _useSharedState.state,
|
|
@@ -85,6 +86,9 @@ var GridViewTable = function GridViewTable(_ref) {
|
|
|
85
86
|
rowKey: tableProps.rowKey,
|
|
86
87
|
filter: filter
|
|
87
88
|
});
|
|
89
|
+
useEffect(function () {
|
|
90
|
+
onDataSourceChange === null || onDataSourceChange === void 0 ? void 0 : onDataSourceChange(dataSource);
|
|
91
|
+
}, [JSON.stringify(dataSource)]);
|
|
88
92
|
var components = useGenTableComponents({
|
|
89
93
|
form: form
|
|
90
94
|
});
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
var _excluded = ["dataSource", "columns", "dispatch", "style", "filter", "sort", "buttons", "actionButtons", "title", "summary", "onValuesChange", "columnSetting", "dataSourceGroup", "view", "gallery", "setTableSetting"];
|
|
1
|
+
var _excluded = ["dataSource", "columns", "dispatch", "style", "filter", "sort", "buttons", "actionButtons", "title", "summary", "onValuesChange", "columnSetting", "dataSourceGroup", "view", "gallery", "setTableSetting", "onDataSourceChange"];
|
|
2
2
|
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; }
|
|
3
3
|
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; }
|
|
4
4
|
import React from "react";
|
|
5
|
-
import { Form } from
|
|
5
|
+
import { Form } from "antd";
|
|
6
6
|
import GridViewTable from "../Table";
|
|
7
7
|
import Gallery from "../Gallery";
|
|
8
8
|
var View = function View(props) {
|
|
@@ -22,6 +22,7 @@ var View = function View(props) {
|
|
|
22
22
|
view = props.view,
|
|
23
23
|
gallery = props.gallery,
|
|
24
24
|
setTableSetting = props.setTableSetting,
|
|
25
|
+
onDataSourceChange = props.onDataSourceChange,
|
|
25
26
|
other = _objectWithoutProperties(props, _excluded);
|
|
26
27
|
var form = Form.useFormInstance();
|
|
27
28
|
var viewMode = Form.useWatch("view_mode", {
|
|
@@ -31,13 +32,15 @@ var View = function View(props) {
|
|
|
31
32
|
return /*#__PURE__*/React.createElement(React.Fragment, null, viewMode === "grid" && /*#__PURE__*/React.createElement(GridViewTable, {
|
|
32
33
|
tableProps: other,
|
|
33
34
|
filter: filter,
|
|
34
|
-
setTableSetting: setTableSetting
|
|
35
|
+
setTableSetting: setTableSetting,
|
|
36
|
+
onDataSourceChange: onDataSourceChange
|
|
35
37
|
}), viewMode === "gallery" && /*#__PURE__*/React.createElement(Gallery, {
|
|
36
38
|
loading: other === null || other === void 0 ? void 0 : other.loading,
|
|
37
39
|
gallery: gallery,
|
|
38
40
|
pagination: other.pagination,
|
|
39
41
|
filter: filter,
|
|
40
|
-
rowKey: other.rowKey
|
|
42
|
+
rowKey: other.rowKey,
|
|
43
|
+
onDataSourceChange: onDataSourceChange
|
|
41
44
|
}));
|
|
42
45
|
};
|
|
43
46
|
export default View;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
function _typeof(obj) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (obj) { return typeof obj; } : function (obj) { return obj && "function" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? "symbol" : typeof obj; }, _typeof(obj); }
|
|
2
|
-
var _excluded = ["dataSource", "columns", "dispatch", "style", "filter", "sort", "buttons", "actionButtons", "title", "summary", "onValuesChange", "columnSetting", "dataSourceGroup", "view", "gallery"];
|
|
2
|
+
var _excluded = ["dataSource", "columns", "dispatch", "style", "filter", "sort", "buttons", "actionButtons", "title", "summary", "onValuesChange", "columnSetting", "dataSourceGroup", "view", "gallery", "currentSettingKey"];
|
|
3
3
|
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); }
|
|
4
4
|
function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
|
|
5
5
|
function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
|
|
@@ -53,6 +53,7 @@ var GridView = Provider( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
53
53
|
_props$view = props.view,
|
|
54
54
|
view = _props$view === void 0 ? defaultView : _props$view,
|
|
55
55
|
gallery = props.gallery,
|
|
56
|
+
currentSettingKey = props.currentSettingKey,
|
|
56
57
|
other = _objectWithoutProperties(props, _excluded);
|
|
57
58
|
var modal = useSharedState(Context);
|
|
58
59
|
var _Form$useForm = Form.useForm(),
|
|
@@ -102,8 +103,8 @@ var GridView = Provider( /*#__PURE__*/forwardRef(function (props, ref) {
|
|
|
102
103
|
return viewMode || defaultViewMode;
|
|
103
104
|
}, [viewMode, defaultViewMode, multiple]);
|
|
104
105
|
var currentSettingHash = useMemo(function () {
|
|
105
|
-
return getHash(columns) || "";
|
|
106
|
-
}, [JSON.stringify(columns)]);
|
|
106
|
+
return currentSettingKey || getHash(columns) || "";
|
|
107
|
+
}, [currentSettingKey, JSON.stringify(columns)]);
|
|
107
108
|
useEffect(function () {
|
|
108
109
|
var setting = getTableSettingFromLocalStorage(tableId);
|
|
109
110
|
if (setting.currentSettingHash !== currentSettingHash) {
|
|
@@ -188,5 +188,14 @@ export declare type GridViewProps = {
|
|
|
188
188
|
onSortChange?: (detail: SortDetail) => boolean;
|
|
189
189
|
__id?: string;
|
|
190
190
|
__designMode?: "design";
|
|
191
|
+
/**
|
|
192
|
+
* 当前本地配置的key 用此hash是否改变用来判断是否清空本地配置 不填默认使用columns数据生成hash
|
|
193
|
+
*/
|
|
194
|
+
currentSettingKey?: "";
|
|
195
|
+
/**
|
|
196
|
+
* 当前表格中数据发生变化事件 包含本地筛选和外部传入数据变化
|
|
197
|
+
* @param currentDataSource
|
|
198
|
+
*/
|
|
199
|
+
onDataSourceChange?: (currentDataSource: Record<string, any>[]) => void;
|
|
191
200
|
};
|
|
192
201
|
export {};
|
package/es/index.d.ts
CHANGED
|
@@ -73,3 +73,4 @@ export { default as Sort } from "./components/sort";
|
|
|
73
73
|
export { default as InputNumberRange } from "./components/input-number-range";
|
|
74
74
|
export { default as LowCodePage } from "./components/lowCodePage";
|
|
75
75
|
export { default as Segmented } from "./components/segmented";
|
|
76
|
+
export { default as AutoCompleteNumber } from "./components/auto-complete-number";
|
package/es/index.js
CHANGED
|
@@ -92,4 +92,5 @@ export { default as List } from "./components/list";
|
|
|
92
92
|
export { default as Sort } from "./components/sort";
|
|
93
93
|
export { default as InputNumberRange } from "./components/input-number-range";
|
|
94
94
|
export { default as LowCodePage } from "./components/lowCodePage";
|
|
95
|
-
export { default as Segmented } from "./components/segmented";
|
|
95
|
+
export { default as Segmented } from "./components/segmented";
|
|
96
|
+
export { default as AutoCompleteNumber } from "./components/auto-complete-number";
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
import React from "react";
|
|
2
|
+
import { AutoCompleteProps, InputNumberProps } from "antd";
|
|
3
|
+
interface AutoCompleteNumberProps {
|
|
4
|
+
autoCompleteProps: AutoCompleteProps;
|
|
5
|
+
inputNumberProps: InputNumberProps;
|
|
6
|
+
value?: any;
|
|
7
|
+
onChange?: any;
|
|
8
|
+
}
|
|
9
|
+
declare const AutoCompleteNumber: (props: AutoCompleteNumberProps) => React.JSX.Element;
|
|
10
|
+
export default AutoCompleteNumber;
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
var __create = Object.create;
|
|
2
|
+
var __defProp = Object.defineProperty;
|
|
3
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
4
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
5
|
+
var __getProtoOf = Object.getPrototypeOf;
|
|
6
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
7
|
+
var __export = (target, all) => {
|
|
8
|
+
for (var name in all)
|
|
9
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
10
|
+
};
|
|
11
|
+
var __copyProps = (to, from, except, desc) => {
|
|
12
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
13
|
+
for (let key of __getOwnPropNames(from))
|
|
14
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
15
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
16
|
+
}
|
|
17
|
+
return to;
|
|
18
|
+
};
|
|
19
|
+
var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
|
|
20
|
+
// If the importer is in node compatibility mode or this is not an ESM
|
|
21
|
+
// file that has been converted to a CommonJS file using a Babel-
|
|
22
|
+
// compatible transform (i.e. "__esModule" has not been set), then set
|
|
23
|
+
// "default" to the CommonJS "module.exports" for node compatibility.
|
|
24
|
+
isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
|
|
25
|
+
mod
|
|
26
|
+
));
|
|
27
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
28
|
+
|
|
29
|
+
// src/components/auto-complete-number/index.tsx
|
|
30
|
+
var auto_complete_number_exports = {};
|
|
31
|
+
__export(auto_complete_number_exports, {
|
|
32
|
+
default: () => auto_complete_number_default
|
|
33
|
+
});
|
|
34
|
+
module.exports = __toCommonJS(auto_complete_number_exports);
|
|
35
|
+
var import_react = __toESM(require("react"));
|
|
36
|
+
var import_antd = require("antd");
|
|
37
|
+
var InputNumber = (0, import_react.forwardRef)((props, ref) => {
|
|
38
|
+
const onChange = (e) => {
|
|
39
|
+
let _val = e === null || e === void 0 ? "" : e + "";
|
|
40
|
+
props.onChange && props.onChange({ target: { value: _val } });
|
|
41
|
+
};
|
|
42
|
+
return /* @__PURE__ */ import_react.default.createElement(import_antd.InputNumber, { ...props, onChange, ref });
|
|
43
|
+
});
|
|
44
|
+
var AutoCompleteNumber = (props) => {
|
|
45
|
+
const { autoCompleteProps, inputNumberProps, ...resetProps } = props;
|
|
46
|
+
return /* @__PURE__ */ import_react.default.createElement(import_antd.AutoComplete, { ...resetProps, ...autoCompleteProps }, /* @__PURE__ */ import_react.default.createElement(InputNumber, { ...inputNumberProps }));
|
|
47
|
+
};
|
|
48
|
+
var auto_complete_number_default = AutoCompleteNumber;
|
|
@@ -44,7 +44,7 @@ var import_constant = require("./constant");
|
|
|
44
44
|
var import_index = require("./index.less");
|
|
45
45
|
var prefix = "pisell-lowcode-";
|
|
46
46
|
var Gallery = (props) => {
|
|
47
|
-
const { gallery, filter, pagination, rowKey, loading } = props;
|
|
47
|
+
const { gallery, filter, pagination, rowKey, loading, onDataSourceChange } = props;
|
|
48
48
|
const {
|
|
49
49
|
horizontalGutter,
|
|
50
50
|
verticalGutter,
|
|
@@ -73,6 +73,9 @@ var Gallery = (props) => {
|
|
|
73
73
|
rowKey,
|
|
74
74
|
filter
|
|
75
75
|
});
|
|
76
|
+
(0, import_react.useEffect)(() => {
|
|
77
|
+
onDataSourceChange == null ? void 0 : onDataSourceChange(dataSource);
|
|
78
|
+
}, [JSON.stringify(dataSource)]);
|
|
76
79
|
const columnsMap = (0, import_react.useMemo)(() => {
|
|
77
80
|
return new Map(originColumns.map((item) => [item.key, item]));
|
|
78
81
|
}, [originColumns]);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { GallerySettingType } from "../types";
|
|
1
|
+
import { GallerySettingType, GridViewProps } from "../types";
|
|
2
2
|
import { FilterType } from "../../filter/types";
|
|
3
3
|
export declare type GalleryProps = {
|
|
4
4
|
gallery: GallerySettingType;
|
|
@@ -6,4 +6,5 @@ export declare type GalleryProps = {
|
|
|
6
6
|
pagination: any;
|
|
7
7
|
rowKey: ((record: Record<string, any>) => string) | string;
|
|
8
8
|
loading: boolean;
|
|
9
|
+
onDataSourceChange: GridViewProps['onDataSourceChange'];
|
|
9
10
|
};
|
|
@@ -46,7 +46,7 @@ var import_useGenTableComponents = __toESM(require("../hooks/useGenTableComponen
|
|
|
46
46
|
var import_useGenScroll = __toESM(require("../hooks/useGenScroll"));
|
|
47
47
|
var import_hooks = require("../../../hooks");
|
|
48
48
|
var import_index = require("./index.less");
|
|
49
|
-
var GridViewTable = ({ tableProps, filter, setTableSetting }) => {
|
|
49
|
+
var GridViewTable = ({ tableProps, filter, setTableSetting, onDataSourceChange }) => {
|
|
50
50
|
var _a, _b;
|
|
51
51
|
const responsive = (0, import_hooks.useResponsive)();
|
|
52
52
|
const { state, dispatch } = (0, import_hooks.useSharedState)(import_model.Context);
|
|
@@ -92,6 +92,9 @@ var GridViewTable = ({ tableProps, filter, setTableSetting }) => {
|
|
|
92
92
|
rowKey: tableProps.rowKey,
|
|
93
93
|
filter
|
|
94
94
|
});
|
|
95
|
+
(0, import_react.useEffect)(() => {
|
|
96
|
+
onDataSourceChange == null ? void 0 : onDataSourceChange(dataSource);
|
|
97
|
+
}, [JSON.stringify(dataSource)]);
|
|
95
98
|
const components = (0, import_useGenTableComponents.default)({
|
|
96
99
|
form
|
|
97
100
|
});
|
|
@@ -54,6 +54,7 @@ var View = (props) => {
|
|
|
54
54
|
view,
|
|
55
55
|
gallery,
|
|
56
56
|
setTableSetting,
|
|
57
|
+
onDataSourceChange,
|
|
57
58
|
...other
|
|
58
59
|
} = props;
|
|
59
60
|
const form = import_antd.Form.useFormInstance();
|
|
@@ -61,14 +62,23 @@ var View = (props) => {
|
|
|
61
62
|
form,
|
|
62
63
|
preserve: true
|
|
63
64
|
});
|
|
64
|
-
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, viewMode === "grid" && /* @__PURE__ */ import_react.default.createElement(
|
|
65
|
+
return /* @__PURE__ */ import_react.default.createElement(import_react.default.Fragment, null, viewMode === "grid" && /* @__PURE__ */ import_react.default.createElement(
|
|
66
|
+
import_Table.default,
|
|
67
|
+
{
|
|
68
|
+
tableProps: other,
|
|
69
|
+
filter,
|
|
70
|
+
setTableSetting,
|
|
71
|
+
onDataSourceChange
|
|
72
|
+
}
|
|
73
|
+
), viewMode === "gallery" && /* @__PURE__ */ import_react.default.createElement(
|
|
65
74
|
import_Gallery.default,
|
|
66
75
|
{
|
|
67
76
|
loading: other == null ? void 0 : other.loading,
|
|
68
77
|
gallery,
|
|
69
78
|
pagination: other.pagination,
|
|
70
79
|
filter,
|
|
71
|
-
rowKey: other.rowKey
|
|
80
|
+
rowKey: other.rowKey,
|
|
81
|
+
onDataSourceChange
|
|
72
82
|
}
|
|
73
83
|
));
|
|
74
84
|
};
|
|
@@ -72,6 +72,7 @@ var GridView = (0, import_model.Provider)(
|
|
|
72
72
|
dataSourceGroup: propsDataSourceGroup,
|
|
73
73
|
view = defaultView,
|
|
74
74
|
gallery,
|
|
75
|
+
currentSettingKey,
|
|
75
76
|
// pagination,
|
|
76
77
|
...other
|
|
77
78
|
} = props;
|
|
@@ -117,8 +118,8 @@ var GridView = (0, import_model.Provider)(
|
|
|
117
118
|
return viewMode || defaultViewMode;
|
|
118
119
|
}, [viewMode, defaultViewMode, multiple]);
|
|
119
120
|
const currentSettingHash = (0, import_react.useMemo)(() => {
|
|
120
|
-
return (0, import_utils.getHash)(columns) || "";
|
|
121
|
-
}, [JSON.stringify(columns)]);
|
|
121
|
+
return currentSettingKey || (0, import_utils.getHash)(columns) || "";
|
|
122
|
+
}, [currentSettingKey, JSON.stringify(columns)]);
|
|
122
123
|
(0, import_react.useEffect)(() => {
|
|
123
124
|
const setting = (0, import_utils.getTableSettingFromLocalStorage)(tableId);
|
|
124
125
|
if (setting.currentSettingHash !== currentSettingHash) {
|
|
@@ -188,5 +188,14 @@ export declare type GridViewProps = {
|
|
|
188
188
|
onSortChange?: (detail: SortDetail) => boolean;
|
|
189
189
|
__id?: string;
|
|
190
190
|
__designMode?: "design";
|
|
191
|
+
/**
|
|
192
|
+
* 当前本地配置的key 用此hash是否改变用来判断是否清空本地配置 不填默认使用columns数据生成hash
|
|
193
|
+
*/
|
|
194
|
+
currentSettingKey?: "";
|
|
195
|
+
/**
|
|
196
|
+
* 当前表格中数据发生变化事件 包含本地筛选和外部传入数据变化
|
|
197
|
+
* @param currentDataSource
|
|
198
|
+
*/
|
|
199
|
+
onDataSourceChange?: (currentDataSource: Record<string, any>[]) => void;
|
|
191
200
|
};
|
|
192
201
|
export {};
|
package/lib/index.d.ts
CHANGED
|
@@ -73,3 +73,4 @@ export { default as Sort } from "./components/sort";
|
|
|
73
73
|
export { default as InputNumberRange } from "./components/input-number-range";
|
|
74
74
|
export { default as LowCodePage } from "./components/lowCodePage";
|
|
75
75
|
export { default as Segmented } from "./components/segmented";
|
|
76
|
+
export { default as AutoCompleteNumber } from "./components/auto-complete-number";
|
package/lib/index.js
CHANGED
|
@@ -33,6 +33,7 @@ __export(src_exports, {
|
|
|
33
33
|
Alert: () => import_antd3.Alert,
|
|
34
34
|
Anchor: () => import_antd2.Anchor,
|
|
35
35
|
AutoComplete: () => import_auto_complete.default,
|
|
36
|
+
AutoCompleteNumber: () => import_auto_complete_number.default,
|
|
36
37
|
Avatar: () => import_antd4.Avatar,
|
|
37
38
|
Badge: () => import_antd5.Badge,
|
|
38
39
|
Breadcrumb: () => import_antd6.Breadcrumb,
|
|
@@ -181,12 +182,14 @@ var import_sort = __toESM(require("./components/sort"));
|
|
|
181
182
|
var import_input_number_range = __toESM(require("./components/input-number-range"));
|
|
182
183
|
var import_lowCodePage = __toESM(require("./components/lowCodePage"));
|
|
183
184
|
var import_segmented = __toESM(require("./components/segmented"));
|
|
185
|
+
var import_auto_complete_number = __toESM(require("./components/auto-complete-number"));
|
|
184
186
|
// Annotate the CommonJS export names for ESM import in node:
|
|
185
187
|
0 && (module.exports = {
|
|
186
188
|
Affix,
|
|
187
189
|
Alert,
|
|
188
190
|
Anchor,
|
|
189
191
|
AutoComplete,
|
|
192
|
+
AutoCompleteNumber,
|
|
190
193
|
Avatar,
|
|
191
194
|
Badge,
|
|
192
195
|
Breadcrumb,
|
|
@@ -157,6 +157,11 @@ export default {
|
|
|
157
157
|
title: { label: "无数据展示", tip: "当下拉列表为空时显示的内容" },
|
|
158
158
|
setter: "PisellI18nSetter",
|
|
159
159
|
},
|
|
160
|
+
{
|
|
161
|
+
name: "children",
|
|
162
|
+
title: { label: "自定义输入框", tip: "自定义输入框" },
|
|
163
|
+
setter: ['SlotSetter']
|
|
164
|
+
},
|
|
160
165
|
],
|
|
161
166
|
configure: {
|
|
162
167
|
/*props: [
|
|
Binary file
|
|
@@ -0,0 +1,75 @@
|
|
|
1
|
+
import { uuid } from "../_utils/utils";
|
|
2
|
+
|
|
3
|
+
import snippets from "./snippets";
|
|
4
|
+
|
|
5
|
+
export default {
|
|
6
|
+
snippets,
|
|
7
|
+
componentName: "AutoCompleteNumber",
|
|
8
|
+
title: "辅助提示数字框",
|
|
9
|
+
category: "表单",
|
|
10
|
+
docUrl: "",
|
|
11
|
+
screenshot: "",
|
|
12
|
+
devMode: "proCode",
|
|
13
|
+
npm: {
|
|
14
|
+
package: "@pisell/materials",
|
|
15
|
+
version: "1.0.1",
|
|
16
|
+
exportName: "AutoCompleteNumber",
|
|
17
|
+
main: "src/index.tsx",
|
|
18
|
+
destructuring: true,
|
|
19
|
+
subName: "",
|
|
20
|
+
},
|
|
21
|
+
props: [
|
|
22
|
+
{
|
|
23
|
+
name: "value",
|
|
24
|
+
title: { label: "当前值", tip: "当前选中值" },
|
|
25
|
+
setter: "StringSetter",
|
|
26
|
+
},
|
|
27
|
+
{
|
|
28
|
+
name: "autoCompleteProps",
|
|
29
|
+
title: { label: "辅助提示数字框Props" },
|
|
30
|
+
setter: ["JsonSetter", "VariableSetter"],
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
name: "inputNumberProps",
|
|
34
|
+
title: { label: "数字框Props" },
|
|
35
|
+
setter: ["JsonSetter", "VariableSetter"],
|
|
36
|
+
},
|
|
37
|
+
],
|
|
38
|
+
configure: {
|
|
39
|
+
supports: {
|
|
40
|
+
style: true,
|
|
41
|
+
events: [
|
|
42
|
+
{
|
|
43
|
+
name: "onBlur",
|
|
44
|
+
template:
|
|
45
|
+
"onBlur(${extParams}){\n// 失去焦点时的回调\nconsole.log('onBlur');}",
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
name: "onChange",
|
|
49
|
+
template:
|
|
50
|
+
"onChange(value,${extParams}){\n// 选中 option,或 input 的 value 变化时,调用此函数\nconsole.log('onChange', value);}",
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
name: "onFocus",
|
|
54
|
+
template:
|
|
55
|
+
"onFocus(${extParams}){\n// 选中 option,或 input 的 value 变化时,调用此函数\nconsole.log('onFocus')}",
|
|
56
|
+
},
|
|
57
|
+
{
|
|
58
|
+
name: "onSearch",
|
|
59
|
+
template:
|
|
60
|
+
"onSearch(value,${extParams}){\n// 搜索补全项的时候调用\nconsole.log('onSearch',value);}",
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: "onSelect",
|
|
64
|
+
template:
|
|
65
|
+
"onSelect(value,option,${extParams}){\n// 被选中时调用\nconsole.log('onSelect', value, option);}",
|
|
66
|
+
},
|
|
67
|
+
{
|
|
68
|
+
name: "onDropdownVisibleChange",
|
|
69
|
+
template:
|
|
70
|
+
"onDropdownVisibleChange(open,${extParams}){\n// 展开下拉菜单的回调\nconsole.log('onDropdownVisibleChange', open);}",
|
|
71
|
+
},
|
|
72
|
+
],
|
|
73
|
+
},
|
|
74
|
+
},
|
|
75
|
+
};
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
export default [
|
|
2
|
+
{
|
|
3
|
+
title: '辅助提示数字框',
|
|
4
|
+
screenshot: 'https://alifd.alicdn.com/fusion-cool/icons/icon-antd/auto-complete-1.png',
|
|
5
|
+
schema: {
|
|
6
|
+
componentName: 'AutoCompleteNumber',
|
|
7
|
+
props: {
|
|
8
|
+
placeholder: '请输入',
|
|
9
|
+
options: [
|
|
10
|
+
{
|
|
11
|
+
label: '测试1',
|
|
12
|
+
value: 'aaa',
|
|
13
|
+
},
|
|
14
|
+
{
|
|
15
|
+
label: '测试2',
|
|
16
|
+
value: 'bbb',
|
|
17
|
+
},
|
|
18
|
+
],
|
|
19
|
+
filterOption: true,
|
|
20
|
+
style: {
|
|
21
|
+
width: '200px',
|
|
22
|
+
},
|
|
23
|
+
},
|
|
24
|
+
},
|
|
25
|
+
},
|
|
26
|
+
];
|
package/lowcode/table/meta.ts
CHANGED
|
@@ -73,6 +73,15 @@ export default {
|
|
|
73
73
|
],
|
|
74
74
|
defaultValue: "id",
|
|
75
75
|
},
|
|
76
|
+
{
|
|
77
|
+
name: "currentSettingKey",
|
|
78
|
+
title: {
|
|
79
|
+
label: "currentSettingKey",
|
|
80
|
+
tip: "currentSettingKey | 当前本地配置的key 用此hash是否改变用来判断是否清空本地配置 不填默认使用columns数据生成hash",
|
|
81
|
+
},
|
|
82
|
+
propType: "string",
|
|
83
|
+
setter: "StringSetter",
|
|
84
|
+
}
|
|
76
85
|
],
|
|
77
86
|
},
|
|
78
87
|
{
|
|
@@ -2146,6 +2155,10 @@ export default {
|
|
|
2146
2155
|
name: "onValuesChange",
|
|
2147
2156
|
template: "onValuesChange(changedValues, values){}",
|
|
2148
2157
|
},
|
|
2158
|
+
{
|
|
2159
|
+
name: "onDataSourceChange",
|
|
2160
|
+
template: "onDataSourceChange(currentDataSource) {}"
|
|
2161
|
+
},
|
|
2149
2162
|
{
|
|
2150
2163
|
name: "rowSelection.onChange",
|
|
2151
2164
|
template:
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@pisell/materials",
|
|
3
|
-
"version": "3.0.
|
|
3
|
+
"version": "3.0.4",
|
|
4
4
|
"main": "./lib/index.js",
|
|
5
5
|
"module": "./es/index.js",
|
|
6
6
|
"types": "./lib/index.d.ts",
|
|
@@ -61,9 +61,9 @@
|
|
|
61
61
|
"react-window": "^1.8.10",
|
|
62
62
|
"react-virtualized-auto-sizer": "^1.0.20",
|
|
63
63
|
"crypto-js": "^4.2.0",
|
|
64
|
-
"@pisell/utils": "1.0.23",
|
|
65
64
|
"@pisell/icon": "0.0.8",
|
|
66
|
-
"@pisell/
|
|
65
|
+
"@pisell/utils": "1.0.24",
|
|
66
|
+
"@pisell/date-picker": "1.0.69"
|
|
67
67
|
},
|
|
68
68
|
"peerDependencies": {
|
|
69
69
|
"react": "^18.0.0",
|