ronds-metadata 1.1.22 → 1.1.25

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.
@@ -0,0 +1,5 @@
1
+ import React from 'react';
2
+ import { EditableCellProps } from '../interface';
3
+ declare function Index(props: EditableCellProps): JSX.Element;
4
+ declare const _default: React.MemoExoticComponent<typeof Index>;
5
+ export default _default;
@@ -0,0 +1,55 @@
1
+ import "antd/es/form/style";
2
+ import _Form from "antd/es/form";
3
+ import "antd/es/input/style";
4
+ import _Input from "antd/es/input";
5
+
6
+ /*
7
+ * @Author: wangxian
8
+ * @Date: 2022-03-04 14:53:50
9
+ * @LastEditTime: 2022-07-06 14:32:00
10
+ */
11
+ import React from 'react';
12
+ import { EditableContext } from '../interface';
13
+
14
+ function Index(props) {
15
+ var dataIndex = props.dataIndex,
16
+ rowIndex = props.rowIndex,
17
+ disabled = props.disabled;
18
+
19
+ var _ref = React.useContext(EditableContext) || undefined,
20
+ editConfig = _ref.editConfig;
21
+
22
+ var inputRef = React.useRef();
23
+ var firstLoadRef = React.useRef(true);
24
+ React.useEffect(function () {
25
+ var _editConfig$editCellK, _editConfig$editCellK2;
26
+
27
+ if (!inputRef.current) return;
28
+
29
+ if (((_editConfig$editCellK = editConfig.editCellKey) === null || _editConfig$editCellK === void 0 ? void 0 : _editConfig$editCellK.dataIndex) === dataIndex && ((_editConfig$editCellK2 = editConfig.editCellKey) === null || _editConfig$editCellK2 === void 0 ? void 0 : _editConfig$editCellK2.rowIndex) === rowIndex) {
30
+ if (firstLoadRef.current) {
31
+ var _inputRef$current$sta, _inputRef$current$sta2;
32
+
33
+ // 选中内容
34
+ inputRef.current.input.setSelectionRange(0, ((_inputRef$current$sta = inputRef.current.state) === null || _inputRef$current$sta === void 0 ? void 0 : (_inputRef$current$sta2 = _inputRef$current$sta.value) === null || _inputRef$current$sta2 === void 0 ? void 0 : _inputRef$current$sta2.length) || 0);
35
+ firstLoadRef.current = false;
36
+ } // 设置焦点
37
+
38
+
39
+ inputRef.current.focus();
40
+ }
41
+ }, [editConfig]);
42
+ return /*#__PURE__*/React.createElement(_Form.Item, {
43
+ name: dataIndex,
44
+ style: {
45
+ margin: 0
46
+ }
47
+ }, /*#__PURE__*/React.createElement(_Input, {
48
+ ref: inputRef,
49
+ type: "color",
50
+ size: "small",
51
+ disabled: editConfig.type === 'edit' ? disabled : false
52
+ }));
53
+ }
54
+
55
+ export default /*#__PURE__*/React.memo(Index);
@@ -50,9 +50,9 @@ var EditableHeardCell = function EditableHeardCell(props) {
50
50
  var myStyle = React.useMemo(function () {
51
51
  var res = {};
52
52
 
53
- if (style) {
53
+ if (style === null || style === void 0 ? void 0 : style.right) {
54
54
  res = _objectSpread(_objectSpread({}, style), {}, {
55
- right: style.right - 6
55
+ right: (style === null || style === void 0 ? void 0 : style.right) - 6
56
56
  });
57
57
  }
58
58
 
@@ -1,18 +1,20 @@
1
1
  /*
2
2
  * @Author: wangxian
3
3
  * @Date: 2022-03-04 14:59:04
4
- * @LastEditTime: 2022-03-09 10:42:38
4
+ * @LastEditTime: 2022-07-06 14:27:13
5
5
  */
6
6
  import React from 'react';
7
7
  import Input from './DataCell/Input';
8
8
  import Number from './DataCell/Number';
9
9
  import Select from './DataCell/Select';
10
10
  import Switch from './DataCell/Switch';
11
+ import ColorPicker from './DataCell/ColorPicker';
11
12
  var DataCellMap = {
12
13
  text: Input,
13
14
  number: Number,
14
15
  enum: Select,
15
- bool: Switch
16
+ bool: Switch,
17
+ colorPicker: ColorPicker
16
18
  };
17
19
  export function getDataCell(item) {
18
20
  if (item.type && DataCellMap[item.type]) {
@@ -14,7 +14,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
14
14
  /*
15
15
  * @Author:wangxian
16
16
  * @Date: 2021-09-18 14:15:04
17
- * @LastEditTime: 2022-05-23 16:51:06
17
+ * @LastEditTime: 2022-07-04 15:54:53
18
18
  */
19
19
  import React from 'react';
20
20
  import { MetadataFormContext, MetadataRefContext } from '../interface';
@@ -221,6 +221,10 @@ function Index(props) {
221
221
  disabled: (_extraInfo$disabled = extraInfo === null || extraInfo === void 0 ? void 0 : extraInfo.disabled) !== null && _extraInfo$disabled !== void 0 ? _extraInfo$disabled : disabled,
222
222
  placeholder: extraInfo === null || extraInfo === void 0 ? void 0 : extraInfo.placeholder,
223
223
  options: httpOptions && httpOptions.length > 0 ? httpOptions : options,
224
+ showSearch: true,
225
+ filterOption: function filterOption(input, option) {
226
+ return (option === null || option === void 0 ? void 0 : option.label.indexOf(input)) >= 0;
227
+ },
224
228
  getPopupContainer: function getPopupContainer(triggerNode) {
225
229
  return triggerNode.parentNode;
226
230
  },
@@ -13,6 +13,7 @@ import Editable from '../../../../comps/Editable';
13
13
  import useObservable from '../../../../framework/rxjs-hooks/useObservable';
14
14
  import { MetadataFormContext } from '../../interface';
15
15
  import { getLabelByProps } from '../../utils';
16
+ import { deepClone } from '../../../../utils';
16
17
 
17
18
  var TableArray = function TableArray(props) {
18
19
  var initValue = props.initValue,
@@ -124,24 +125,56 @@ var TableArray = function TableArray(props) {
124
125
  firstLoadRef.current = false;
125
126
  }
126
127
  }, [initValue, form]);
128
+ var processEnumData = React.useCallback(function (data, _extraInfo) {
129
+ var _extraInfo$enum;
130
+
131
+ var _options = [];
132
+
133
+ var _enum = deepClone(data.enum || []); // 扩展规则的value
134
+
135
+
136
+ if (_extraInfo === null || _extraInfo === void 0 ? void 0 : (_extraInfo$enum = _extraInfo.enum) === null || _extraInfo$enum === void 0 ? void 0 : _extraInfo$enum.value) {
137
+ var _extraInfo$enum2;
138
+
139
+ _enum = deepClone(_extraInfo === null || _extraInfo === void 0 ? void 0 : (_extraInfo$enum2 = _extraInfo.enum) === null || _extraInfo$enum2 === void 0 ? void 0 : _extraInfo$enum2.value);
140
+ }
141
+
142
+ _enum.forEach(function (it) {
143
+ var obj = {
144
+ label: it.value,
145
+ value: (it === null || it === void 0 ? void 0 : it.key) || (it === null || it === void 0 ? void 0 : it.value)
146
+ };
147
+
148
+ _options.push(obj);
149
+ });
150
+
151
+ return _options;
152
+ }, []);
153
+ var processColumnType = React.useCallback(function (data, _extraInfo) {
154
+ var _extraInfo$text;
155
+
156
+ if (data.type === 'text' && ((_extraInfo$text = _extraInfo.text) === null || _extraInfo$text === void 0 ? void 0 : _extraInfo$text.type)) {
157
+ var _extraInfo$text2;
158
+
159
+ return (_extraInfo$text2 = _extraInfo.text) === null || _extraInfo$text2 === void 0 ? void 0 : _extraInfo$text2.type;
160
+ }
161
+
162
+ return data.type;
163
+ }, []);
127
164
  var processSchemaToColumns = React.useCallback(function (_properties) {
128
165
  var _columns = [];
129
166
 
130
167
  for (var i = 0; i < _properties.length; i++) {
131
168
  var it = _properties[i];
169
+ var extraInfo = refFieldsRef.current.get(it.id);
132
170
  var obj = {
133
171
  title: getLabelByProps(it),
134
172
  key: it.id,
135
173
  dataIndex: it.id,
136
174
  width: 100,
137
175
  editable: true,
138
- type: it.type,
139
- enum: it.type === 'enum' ? it.enum.map(function (v) {
140
- return {
141
- label: v.value,
142
- value: v.value
143
- };
144
- }) : undefined
176
+ type: processColumnType(it, extraInfo),
177
+ enum: it.type === 'enum' ? processEnumData(it, extraInfo) : undefined
145
178
  };
146
179
 
147
180
  _columns.push(obj);
@@ -5,10 +5,7 @@ import _slicedToArray from "@babel/runtime/helpers/esm/slicedToArray";
5
5
  /*
6
6
  * @Author: your name
7
7
  * @Date: 2021-09-18 14:15:04
8
- * @LastEditTime: 2022-05-21 08:51:08
9
- * @LastEditors: Please set LastEditors
10
- * @Description: 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
11
- * @FilePath: \ronds.metadata\src\comps\MetadataForm\hooks\index.tsx
8
+ * @LastEditTime: 2022-07-06 14:02:17
12
9
  */
13
10
  import { getLocale } from '../../../framework/locale';
14
11
  import moment from 'moment';
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "public": true,
3
3
  "name": "ronds-metadata",
4
- "version": "1.1.22",
4
+ "version": "1.1.25",
5
5
  "scripts": {
6
6
  "start": "dumi dev",
7
7
  "docs:build": "dumi build",