@openli1115/lowcode-edit-pro-table 1.0.53 → 1.0.55
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/docs/404.html +3 -3
- package/build/docs/_demos/:uuid +3 -3
- package/build/docs/colorful-button.html +3 -3
- package/build/docs/colorful-input.html +3 -3
- package/build/docs/index.html +3 -3
- package/build/docs/umi.f54e4184.js +1 -0
- package/build/docs/~demos/:uuid.html +3 -3
- package/build/docs/~demos/colorful-button-demo.html +3 -3
- package/build/docs/~demos/colorful-input-demo.html +3 -3
- package/build/lowcode/assets-daily.json +13 -13
- package/build/lowcode/assets-dev.json +2 -2
- package/build/lowcode/assets-prod.json +13 -13
- package/build/lowcode/meta.design.js +1 -1
- package/build/lowcode/meta.js +1 -1
- package/build/lowcode/render/default/view.js +2 -2
- package/build/lowcode/view.js +2 -2
- package/dist/BizComps.js +7 -7
- package/dist/BizComps.js.map +1 -1
- package/es/components/ProCascaderSelect/index.js +29 -32
- package/es/components/ProCheckbox/index.d.ts +1 -9
- package/es/components/ProCheckbox/index.js +27 -40
- package/es/components/ProDatePicker/index.js +23 -29
- package/es/components/ProInput/index.d.ts +0 -3
- package/es/components/ProInput/index.js +23 -31
- package/es/components/ProRadio/index.d.ts +1 -9
- package/es/components/ProRadio/index.js +26 -40
- package/es/components/ProSelect/index.js +27 -32
- package/es/components/ProTextArea/index.d.ts +2 -2
- package/es/components/ProTextArea/index.js +23 -29
- package/es/components/ProTimePicker/index.js +24 -33
- package/es/components/utils/index.d.ts +15 -1
- package/es/components/utils/index.js +39 -9
- package/es/context/useComponentContext.d.ts +3 -1
- package/es/context/useComponentContext.js +17 -17
- package/es/context/useProBoundValue.d.ts +6 -0
- package/es/context/useProBoundValue.js +34 -0
- package/es/index.d.ts +2 -1
- package/es/index.js +2 -1
- package/lib/components/ProCascaderSelect/index.js +28 -31
- package/lib/components/ProCheckbox/index.d.ts +1 -9
- package/lib/components/ProCheckbox/index.js +26 -39
- package/lib/components/ProDatePicker/index.js +22 -28
- package/lib/components/ProInput/index.d.ts +0 -3
- package/lib/components/ProInput/index.js +22 -30
- package/lib/components/ProRadio/index.d.ts +1 -9
- package/lib/components/ProRadio/index.js +25 -39
- package/lib/components/ProSelect/index.js +26 -31
- package/lib/components/ProTextArea/index.d.ts +2 -2
- package/lib/components/ProTextArea/index.js +22 -28
- package/lib/components/ProTimePicker/index.js +23 -32
- package/lib/components/utils/index.d.ts +15 -1
- package/lib/components/utils/index.js +40 -10
- package/lib/context/useComponentContext.d.ts +3 -1
- package/lib/context/useComponentContext.js +18 -18
- package/lib/context/useProBoundValue.d.ts +6 -0
- package/lib/context/useProBoundValue.js +39 -0
- package/lib/index.d.ts +2 -1
- package/lib/index.js +5 -2
- package/lowcode/pro-cascader-select/meta.ts +0 -5
- package/lowcode/pro-checkbox/meta.ts +0 -5
- package/lowcode/pro-date-picker/meta.ts +0 -5
- package/lowcode/pro-input/meta.ts +0 -5
- package/lowcode/pro-radio-group/meta.ts +0 -5
- package/lowcode/pro-select/meta.ts +0 -5
- package/lowcode/pro-text-area/meta.ts +0 -5
- package/lowcode/pro-time-picker/meta.ts +0 -5
- package/lowcode_es/meta.js +1 -1
- package/lowcode_es/pro-cascader-select/meta.js +0 -4
- package/lowcode_es/pro-checkbox/meta.js +0 -4
- package/lowcode_es/pro-date-picker/meta.d.ts +0 -14
- package/lowcode_es/pro-date-picker/meta.js +0 -4
- package/lowcode_es/pro-input/meta.js +0 -4
- package/lowcode_es/pro-radio-group/meta.js +0 -4
- package/lowcode_es/pro-select/meta.d.ts +0 -11
- package/lowcode_es/pro-select/meta.js +0 -4
- package/lowcode_es/pro-text-area/meta.d.ts +0 -5
- package/lowcode_es/pro-text-area/meta.js +0 -4
- package/lowcode_es/pro-time-picker/meta.js +0 -4
- package/lowcode_lib/meta.js +1 -1
- package/lowcode_lib/pro-cascader-select/meta.js +0 -4
- package/lowcode_lib/pro-checkbox/meta.js +0 -4
- package/lowcode_lib/pro-date-picker/meta.d.ts +0 -14
- package/lowcode_lib/pro-date-picker/meta.js +0 -4
- package/lowcode_lib/pro-input/meta.js +0 -4
- package/lowcode_lib/pro-radio-group/meta.js +0 -4
- package/lowcode_lib/pro-select/meta.d.ts +0 -11
- package/lowcode_lib/pro-select/meta.js +0 -4
- package/lowcode_lib/pro-text-area/meta.d.ts +0 -5
- package/lowcode_lib/pro-text-area/meta.js +0 -4
- package/lowcode_lib/pro-time-picker/meta.js +0 -4
- package/package.json +3 -3
- package/build/docs/umi.bfd70739.js +0 -1
|
@@ -5,26 +5,12 @@ exports.__esModule = true;
|
|
|
5
5
|
exports["default"] = void 0;
|
|
6
6
|
var _radio = _interopRequireDefault(require("@alifd/next/lib/radio"));
|
|
7
7
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
8
|
-
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
9
8
|
var _utils = require("../utils");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var React = window.React;
|
|
13
|
-
var createElement = React.createElement,
|
|
14
|
-
useEffect = React.useEffect,
|
|
15
|
-
useRef = React.useRef,
|
|
16
|
-
useState = React.useState;
|
|
9
|
+
var _useProBoundValue2 = require("../../context/useProBoundValue");
|
|
10
|
+
var createElement = window.React.createElement;
|
|
17
11
|
|
|
18
12
|
/**
|
|
19
|
-
* ProRadio
|
|
20
|
-
* @description 单选按钮组
|
|
21
|
-
* @param {string} defaultValue 默认值(radio.group才有的字段)
|
|
22
|
-
* @param {string} screen_structure_field 屏幕结构字段
|
|
23
|
-
* @param {string} screen_inner_id 屏幕内部id
|
|
24
|
-
* @param {string} screen_structure 屏幕结构
|
|
25
|
-
* @param {string} dataSource 数据源
|
|
26
|
-
* @param {string} checkedValue 选中值
|
|
27
|
-
* @param {string} checked 默认选中
|
|
13
|
+
* ProRadio — 单选按钮组
|
|
28
14
|
*/
|
|
29
15
|
var ProRadio = function ProRadio(props) {
|
|
30
16
|
var dataSource = props.dataSource,
|
|
@@ -32,35 +18,35 @@ var ProRadio = function ProRadio(props) {
|
|
|
32
18
|
screen_structure_field = props.screen_structure_field,
|
|
33
19
|
screen_inner_id = props.screen_inner_id,
|
|
34
20
|
range_inner_table = props.range_inner_table,
|
|
35
|
-
defaultValue = props.defaultValue,
|
|
36
21
|
disableEdit = props.disableEdit,
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
var
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
22
|
+
readOnlyProp = props.readOnly,
|
|
23
|
+
disabledProp = props.disabled,
|
|
24
|
+
_v = props.value,
|
|
25
|
+
schemaOnChange = props.onChange,
|
|
26
|
+
defaultValue = props.defaultValue;
|
|
27
|
+
var _resolveProScreenBind = (0, _utils.resolveProScreenBinding)({
|
|
28
|
+
screen_structure: screen_structure,
|
|
29
|
+
screen_structure_field: screen_structure_field,
|
|
30
|
+
range_inner_table: range_inner_table
|
|
31
|
+
}),
|
|
32
|
+
structureName = _resolveProScreenBind.structureName,
|
|
33
|
+
structureField = _resolveProScreenBind.structureField,
|
|
34
|
+
fieldPath = _resolveProScreenBind.fieldPath;
|
|
35
|
+
var _useProBoundValue = (0, _useProBoundValue2.useProBoundValue)(fieldPath, defaultValue, ''),
|
|
36
|
+
value = _useProBoundValue.value,
|
|
37
|
+
commit = _useProBoundValue.commit;
|
|
48
38
|
var handleChange = function handleChange(newValue) {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
onValueChange(newValue);
|
|
52
|
-
}
|
|
53
|
-
// 触发标准 onChange
|
|
54
|
-
if (props.onChange) {
|
|
55
|
-
props.onChange(newValue, structureName, structureField);
|
|
56
|
-
}
|
|
39
|
+
commit(newValue);
|
|
40
|
+
schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange(newValue, structureName, structureField);
|
|
57
41
|
};
|
|
58
42
|
return /*#__PURE__*/React.createElement("span", {
|
|
59
43
|
className: "field-wrapper " + (disableEdit ? 'disable-edit' : 'enable-edit')
|
|
60
44
|
}, /*#__PURE__*/React.createElement(_radio["default"].Group, (0, _extends2["default"])({}, props, {
|
|
45
|
+
readOnly: disableEdit ? true : readOnlyProp,
|
|
46
|
+
disabled: disabledProp,
|
|
47
|
+
dataSource: dataSource,
|
|
61
48
|
value: value,
|
|
62
|
-
onChange: handleChange
|
|
63
|
-
dataSource: dataSource
|
|
49
|
+
onChange: handleChange
|
|
64
50
|
})));
|
|
65
51
|
};
|
|
66
52
|
var _default = exports["default"] = ProRadio;
|
|
@@ -5,50 +5,45 @@ exports.__esModule = true;
|
|
|
5
5
|
exports["default"] = void 0;
|
|
6
6
|
var _select = _interopRequireDefault(require("@alifd/next/lib/select"));
|
|
7
7
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
8
|
-
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
9
8
|
var _utils = require("../utils");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var React = window.React;
|
|
13
|
-
var createElement = React.createElement,
|
|
14
|
-
useEffect = React.useEffect,
|
|
15
|
-
useRef = React.useRef,
|
|
16
|
-
useState = React.useState;
|
|
9
|
+
var _useProBoundValue2 = require("../../context/useProBoundValue");
|
|
10
|
+
var createElement = window.React.createElement;
|
|
17
11
|
var ProSelect = function ProSelect(props) {
|
|
18
12
|
var dataSource = props.dataSource,
|
|
19
13
|
screen_structure = props.screen_structure,
|
|
20
14
|
screen_structure_field = props.screen_structure_field,
|
|
21
15
|
screen_inner_id = props.screen_inner_id,
|
|
22
16
|
range_inner_table = props.range_inner_table,
|
|
23
|
-
defaultValue = props.defaultValue,
|
|
24
17
|
disableEdit = props.disableEdit,
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
var
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
18
|
+
readOnlyProp = props.readOnly,
|
|
19
|
+
disabledProp = props.disabled,
|
|
20
|
+
_v = props.value,
|
|
21
|
+
schemaOnChange = props.onChange,
|
|
22
|
+
defaultValue = props.defaultValue;
|
|
23
|
+
var _resolveProScreenBind = (0, _utils.resolveProScreenBinding)({
|
|
24
|
+
screen_structure: screen_structure,
|
|
25
|
+
screen_structure_field: screen_structure_field,
|
|
26
|
+
range_inner_table: range_inner_table
|
|
27
|
+
}),
|
|
28
|
+
structureName = _resolveProScreenBind.structureName,
|
|
29
|
+
structureField = _resolveProScreenBind.structureField,
|
|
30
|
+
fieldPath = _resolveProScreenBind.fieldPath;
|
|
31
|
+
var _useProBoundValue = (0, _useProBoundValue2.useProBoundValue)(fieldPath, defaultValue, undefined),
|
|
32
|
+
value = _useProBoundValue.value,
|
|
33
|
+
commit = _useProBoundValue.commit;
|
|
36
34
|
var handleChange = function handleChange(newValue) {
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
onValueChange(newValue);
|
|
40
|
-
}
|
|
41
|
-
// 触发标准 onChange
|
|
42
|
-
if (props.onChange) {
|
|
43
|
-
props.onChange(newValue, structureName, structureField);
|
|
44
|
-
}
|
|
35
|
+
commit(newValue);
|
|
36
|
+
schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange(newValue, structureName, structureField);
|
|
45
37
|
};
|
|
38
|
+
var displayValue = value === '' ? undefined : value;
|
|
46
39
|
return /*#__PURE__*/React.createElement("span", {
|
|
47
40
|
className: "field-wrapper " + (disableEdit ? 'disable-edit' : 'enable-edit')
|
|
48
41
|
}, /*#__PURE__*/React.createElement(_select["default"], (0, _extends2["default"])({}, props, {
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
dataSource: dataSource
|
|
42
|
+
readOnly: disableEdit ? true : readOnlyProp,
|
|
43
|
+
disabled: disabledProp,
|
|
44
|
+
dataSource: dataSource,
|
|
45
|
+
value: displayValue,
|
|
46
|
+
onChange: handleChange
|
|
52
47
|
})));
|
|
53
48
|
};
|
|
54
49
|
var _default = exports["default"] = ProSelect;
|
|
@@ -1,3 +1,3 @@
|
|
|
1
|
-
import { Input as
|
|
2
|
-
declare const ProTextArea: typeof
|
|
1
|
+
import { Input as OriginalInput } from '@alifd/next';
|
|
2
|
+
declare const ProTextArea: typeof OriginalInput;
|
|
3
3
|
export default ProTextArea;
|
|
@@ -5,46 +5,40 @@ exports.__esModule = true;
|
|
|
5
5
|
exports["default"] = void 0;
|
|
6
6
|
var _input = _interopRequireDefault(require("@alifd/next/lib/input"));
|
|
7
7
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
8
|
-
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
9
8
|
var _utils = require("../utils");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var React = window.React;
|
|
13
|
-
var createElement = React.createElement,
|
|
14
|
-
useEffect = React.useEffect,
|
|
15
|
-
useRef = React.useRef,
|
|
16
|
-
useState = React.useState;
|
|
9
|
+
var _useProBoundValue2 = require("../../context/useProBoundValue");
|
|
10
|
+
var createElement = window.React.createElement;
|
|
17
11
|
var ProTextArea = function ProTextArea(props) {
|
|
18
12
|
var screen_structure = props.screen_structure,
|
|
19
13
|
screen_structure_field = props.screen_structure_field,
|
|
20
14
|
screen_inner_id = props.screen_inner_id,
|
|
21
15
|
range_inner_table = props.range_inner_table,
|
|
22
|
-
defaultValue = props.defaultValue,
|
|
23
16
|
disableEdit = props.disableEdit,
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
var
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
17
|
+
readOnlyProp = props.readOnly,
|
|
18
|
+
disabledProp = props.disabled,
|
|
19
|
+
_v = props.value,
|
|
20
|
+
schemaOnChange = props.onChange,
|
|
21
|
+
defaultValue = props.defaultValue;
|
|
22
|
+
var _resolveProScreenBind = (0, _utils.resolveProScreenBinding)({
|
|
23
|
+
screen_structure: screen_structure,
|
|
24
|
+
screen_structure_field: screen_structure_field,
|
|
25
|
+
range_inner_table: range_inner_table
|
|
26
|
+
}),
|
|
27
|
+
structureName = _resolveProScreenBind.structureName,
|
|
28
|
+
structureField = _resolveProScreenBind.structureField,
|
|
29
|
+
fieldPath = _resolveProScreenBind.fieldPath;
|
|
30
|
+
var _useProBoundValue = (0, _useProBoundValue2.useProBoundValue)(fieldPath, defaultValue != null ? String(defaultValue) : '', ''),
|
|
31
|
+
value = _useProBoundValue.value,
|
|
32
|
+
commit = _useProBoundValue.commit;
|
|
35
33
|
var handleChange = function handleChange(newValue) {
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
onValueChange(newValue);
|
|
39
|
-
}
|
|
40
|
-
// 触发标准 onChange
|
|
41
|
-
if (props.onChange) {
|
|
42
|
-
props.onChange(newValue, structureName, structureField);
|
|
43
|
-
}
|
|
34
|
+
commit(newValue);
|
|
35
|
+
schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange(newValue, structureName, structureField);
|
|
44
36
|
};
|
|
45
37
|
return /*#__PURE__*/React.createElement("span", {
|
|
46
38
|
className: "field-wrapper " + (disableEdit ? 'disable-edit' : 'enable-edit')
|
|
47
39
|
}, /*#__PURE__*/React.createElement(_input["default"].TextArea, (0, _extends2["default"])({}, props, {
|
|
40
|
+
readOnly: disableEdit ? true : readOnlyProp,
|
|
41
|
+
disabled: disabledProp,
|
|
48
42
|
value: value,
|
|
49
43
|
onChange: handleChange
|
|
50
44
|
})));
|
|
@@ -5,25 +5,15 @@ exports.__esModule = true;
|
|
|
5
5
|
exports["default"] = void 0;
|
|
6
6
|
var _timePicker = _interopRequireDefault(require("@alifd/next/lib/time-picker"));
|
|
7
7
|
var _extends2 = _interopRequireDefault(require("@babel/runtime/helpers/extends"));
|
|
8
|
-
var _objectWithoutPropertiesLoose2 = _interopRequireDefault(require("@babel/runtime/helpers/objectWithoutPropertiesLoose"));
|
|
9
8
|
var _utils = require("../utils");
|
|
10
|
-
var
|
|
11
|
-
var
|
|
12
|
-
var React = window.React;
|
|
13
|
-
var createElement = React.createElement,
|
|
14
|
-
useEffect = React.useEffect,
|
|
15
|
-
useRef = React.useRef,
|
|
16
|
-
useState = React.useState;
|
|
9
|
+
var _useProBoundValue2 = require("../../context/useProBoundValue");
|
|
10
|
+
var createElement = window.React.createElement;
|
|
17
11
|
var moment = window.moment;
|
|
18
|
-
|
|
19
|
-
// 工具函数:Date 转字符串 "HH:mm:ss"
|
|
20
12
|
function timeDateToString(date) {
|
|
21
13
|
if (!date) return '';
|
|
22
14
|
if (moment) {
|
|
23
|
-
// 使用 moment 格式化
|
|
24
15
|
return moment(date).format('HH:mm:ss');
|
|
25
16
|
}
|
|
26
|
-
// 降级方案
|
|
27
17
|
var d = new Date(date);
|
|
28
18
|
var h = String(d.getHours()).padStart(2, '0');
|
|
29
19
|
var m = String(d.getMinutes()).padStart(2, '0');
|
|
@@ -35,32 +25,33 @@ var ProTimePicker = function ProTimePicker(props) {
|
|
|
35
25
|
screen_structure_field = props.screen_structure_field,
|
|
36
26
|
screen_inner_id = props.screen_inner_id,
|
|
37
27
|
range_inner_table = props.range_inner_table,
|
|
38
|
-
defaultValue = props.defaultValue,
|
|
39
28
|
disableEdit = props.disableEdit,
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
var
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
29
|
+
readOnlyProp = props.readOnly,
|
|
30
|
+
disabledProp = props.disabled,
|
|
31
|
+
_v = props.value,
|
|
32
|
+
schemaOnChange = props.onChange,
|
|
33
|
+
defaultValue = props.defaultValue;
|
|
34
|
+
var _resolveProScreenBind = (0, _utils.resolveProScreenBinding)({
|
|
35
|
+
screen_structure: screen_structure,
|
|
36
|
+
screen_structure_field: screen_structure_field,
|
|
37
|
+
range_inner_table: range_inner_table
|
|
38
|
+
}),
|
|
39
|
+
structureName = _resolveProScreenBind.structureName,
|
|
40
|
+
structureField = _resolveProScreenBind.structureField,
|
|
41
|
+
fieldPath = _resolveProScreenBind.fieldPath;
|
|
42
|
+
var _useProBoundValue = (0, _useProBoundValue2.useProBoundValue)(fieldPath, defaultValue, ''),
|
|
43
|
+
value = _useProBoundValue.value,
|
|
44
|
+
commit = _useProBoundValue.commit;
|
|
51
45
|
var handleChange = function handleChange(newValue) {
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
}
|
|
56
|
-
// 触发标准 onChange
|
|
57
|
-
if (props.onChange) {
|
|
58
|
-
props.onChange(timeDateToString(newValue), structureName, structureField);
|
|
59
|
-
}
|
|
46
|
+
var str = timeDateToString(newValue);
|
|
47
|
+
commit(str);
|
|
48
|
+
schemaOnChange === null || schemaOnChange === void 0 ? void 0 : schemaOnChange(str, structureName, structureField);
|
|
60
49
|
};
|
|
61
50
|
return /*#__PURE__*/React.createElement("span", {
|
|
62
51
|
className: "field-wrapper " + (disableEdit ? 'disable-edit' : 'enable-edit')
|
|
63
52
|
}, /*#__PURE__*/React.createElement(_timePicker["default"], (0, _extends2["default"])({}, props, {
|
|
53
|
+
readOnly: disableEdit ? true : readOnlyProp,
|
|
54
|
+
disabled: disabledProp,
|
|
64
55
|
value: value,
|
|
65
56
|
onChange: handleChange
|
|
66
57
|
})));
|
|
@@ -3,9 +3,23 @@ export declare const getStructureFieldName: (screen_structure: string, screen_st
|
|
|
3
3
|
structureName: string;
|
|
4
4
|
structureField: string;
|
|
5
5
|
};
|
|
6
|
-
/**
|
|
6
|
+
/**
|
|
7
|
+
* 屏幕结构:screen_structure + screen_structure_field。
|
|
8
|
+
* 范围内表:仅 range_inner_table;未选结构字段时默认绑定 low(内表行值)。
|
|
9
|
+
*/
|
|
7
10
|
export declare const getFormBindingPath: (screen_structure?: string, screen_structure_field?: string, range_inner_table?: string) => {
|
|
8
11
|
structureName: string;
|
|
9
12
|
structureField: string;
|
|
10
13
|
};
|
|
14
|
+
/** 合法表单路径;缺省时为空串,避免 lodash path `'.'` 污染数据 */
|
|
15
|
+
export declare const getFormFieldPath: (screen_structure?: string, screen_structure_field?: string, range_inner_table?: string) => string;
|
|
16
|
+
export declare const resolveProScreenBinding: (props: {
|
|
17
|
+
screen_structure?: string;
|
|
18
|
+
screen_structure_field?: string;
|
|
19
|
+
range_inner_table?: string;
|
|
20
|
+
}) => {
|
|
21
|
+
structureName: string;
|
|
22
|
+
structureField: string;
|
|
23
|
+
fieldPath: string;
|
|
24
|
+
};
|
|
11
25
|
export declare const baseUrl: string;
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.updateScreenStructure = exports.getStructureFieldName = exports.getFormBindingPath = exports.baseUrl = void 0;
|
|
4
|
+
exports.updateScreenStructure = exports.resolveProScreenBinding = exports.getStructureFieldName = exports.getFormFieldPath = exports.getFormBindingPath = exports.baseUrl = void 0;
|
|
5
5
|
var updateScreenStructure = exports.updateScreenStructure = function updateScreenStructure(screen_structure, screen_structure_field, value, range_inner_table) {
|
|
6
6
|
console.log('value', value);
|
|
7
7
|
if (!screen_structure_field || typeof window === 'undefined' || !window.screenStructures) return;
|
|
@@ -34,17 +34,47 @@ var getStructureFieldName = exports.getStructureFieldName = function getStructur
|
|
|
34
34
|
};
|
|
35
35
|
};
|
|
36
36
|
|
|
37
|
-
/**
|
|
37
|
+
/**
|
|
38
|
+
* 屏幕结构:screen_structure + screen_structure_field。
|
|
39
|
+
* 范围内表:仅 range_inner_table;未选结构字段时默认绑定 low(内表行值)。
|
|
40
|
+
*/
|
|
38
41
|
var getFormBindingPath = exports.getFormBindingPath = function getFormBindingPath(screen_structure, screen_structure_field, range_inner_table) {
|
|
39
42
|
var rt = range_inner_table && String(range_inner_table).trim();
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
43
|
+
var structureName = '';
|
|
44
|
+
var structureField = '';
|
|
45
|
+
if (rt) {
|
|
46
|
+
structureName = String(range_inner_table).split('__')[1] || '';
|
|
47
|
+
structureField = screen_structure_field ? String(screen_structure_field).split('__')[1] || '' : '';
|
|
48
|
+
if (structureName && !structureField) {
|
|
49
|
+
structureField = 'low';
|
|
50
|
+
}
|
|
51
|
+
} else {
|
|
52
|
+
var pair = getStructureFieldName(screen_structure || '', screen_structure_field || '');
|
|
53
|
+
structureName = pair.structureName || '';
|
|
54
|
+
structureField = pair.structureField || '';
|
|
47
55
|
}
|
|
48
|
-
return
|
|
56
|
+
return {
|
|
57
|
+
structureName: structureName,
|
|
58
|
+
structureField: structureField
|
|
59
|
+
};
|
|
60
|
+
};
|
|
61
|
+
|
|
62
|
+
/** 合法表单路径;缺省时为空串,避免 lodash path `'.'` 污染数据 */
|
|
63
|
+
var getFormFieldPath = exports.getFormFieldPath = function getFormFieldPath(screen_structure, screen_structure_field, range_inner_table) {
|
|
64
|
+
var _getFormBindingPath = getFormBindingPath(screen_structure, screen_structure_field, range_inner_table),
|
|
65
|
+
structureName = _getFormBindingPath.structureName,
|
|
66
|
+
structureField = _getFormBindingPath.structureField;
|
|
67
|
+
return structureName && structureField ? structureName + "." + structureField : '';
|
|
68
|
+
};
|
|
69
|
+
var resolveProScreenBinding = exports.resolveProScreenBinding = function resolveProScreenBinding(props) {
|
|
70
|
+
var _getFormBindingPath2 = getFormBindingPath(props.screen_structure, props.screen_structure_field, props.range_inner_table),
|
|
71
|
+
structureName = _getFormBindingPath2.structureName,
|
|
72
|
+
structureField = _getFormBindingPath2.structureField;
|
|
73
|
+
var fieldPath = structureName && structureField ? structureName + "." + structureField : '';
|
|
74
|
+
return {
|
|
75
|
+
structureName: structureName,
|
|
76
|
+
structureField: structureField,
|
|
77
|
+
fieldPath: fieldPath
|
|
78
|
+
};
|
|
49
79
|
};
|
|
50
80
|
var baseUrl = exports.baseUrl = "https://" + window.location.hostname + ":18080/prod-api";
|
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
/** 级联等组件用稳定空数组,避免 deps 抖动 */
|
|
2
|
+
export declare const FORM_EMPTY_ARRAY: never[];
|
|
3
|
+
export declare const useComponentContext: (path: string, whenNull?: any) => {
|
|
2
4
|
value: any;
|
|
3
5
|
onValueChange: (newValue: any) => void;
|
|
4
6
|
};
|
|
@@ -1,34 +1,34 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
exports.__esModule = true;
|
|
4
|
-
exports.useComponentContext = void 0;
|
|
4
|
+
exports.useComponentContext = exports.FORM_EMPTY_ARRAY = void 0;
|
|
5
5
|
var _react = require("react");
|
|
6
6
|
var _lodash = require("lodash");
|
|
7
7
|
var _FormProvider = require("./FormProvider");
|
|
8
8
|
// useComponentContext.ts
|
|
9
9
|
|
|
10
10
|
var FormContext = (0, _FormProvider.getFormContext)();
|
|
11
|
-
var useComponentContext = exports.useComponentContext = function useComponentContext(path) {
|
|
12
|
-
var formContext = (0, _react.useContext)(FormContext);
|
|
13
11
|
|
|
14
|
-
|
|
12
|
+
/** 级联等组件用稳定空数组,避免 deps 抖动 */
|
|
13
|
+
var FORM_EMPTY_ARRAY = exports.FORM_EMPTY_ARRAY = [];
|
|
14
|
+
var useComponentContext = exports.useComponentContext = function useComponentContext(path, whenNull) {
|
|
15
|
+
if (whenNull === void 0) {
|
|
16
|
+
whenNull = '';
|
|
17
|
+
}
|
|
18
|
+
var formContext = (0, _react.useContext)(FormContext);
|
|
19
|
+
var safePath = path && path !== '.' ? path : '';
|
|
15
20
|
var value = (0, _react.useMemo)(function () {
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
if (
|
|
19
|
-
return
|
|
20
|
-
}, [formContext,
|
|
21
|
-
|
|
22
|
-
// 使用 useCallback 缓存 onValueChange
|
|
21
|
+
if (!safePath || !(formContext !== null && formContext !== void 0 && formContext.initialized)) return whenNull;
|
|
22
|
+
var v = (0, _lodash.get)(formContext.values, safePath);
|
|
23
|
+
if (v === undefined || v === null) return whenNull;
|
|
24
|
+
return v;
|
|
25
|
+
}, [formContext, safePath, whenNull]);
|
|
23
26
|
var onValueChange = (0, _react.useCallback)(function (newValue) {
|
|
24
|
-
if (!(formContext !== null && formContext !== void 0 && formContext.setFieldValue)) return;
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
// 检查值是否实际变化
|
|
28
|
-
var currentValue = (0, _lodash.get)(formContext.values, path);
|
|
27
|
+
if (!safePath || !(formContext !== null && formContext !== void 0 && formContext.setFieldValue)) return;
|
|
28
|
+
var currentValue = (0, _lodash.get)(formContext.values, safePath);
|
|
29
29
|
if (currentValue === newValue) return;
|
|
30
|
-
formContext.setFieldValue(
|
|
31
|
-
}, [formContext,
|
|
30
|
+
formContext.setFieldValue(safePath, newValue);
|
|
31
|
+
}, [formContext, safePath]);
|
|
32
32
|
return {
|
|
33
33
|
value: value,
|
|
34
34
|
onValueChange: onValueChange
|
|
@@ -0,0 +1,39 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
exports.__esModule = true;
|
|
4
|
+
exports.useProBoundValue = useProBoundValue;
|
|
5
|
+
var _useComponentContext2 = require("./useComponentContext");
|
|
6
|
+
// 表单上下文绑定 + 无路径时本地状态(与 ProInput 等行为一致)
|
|
7
|
+
|
|
8
|
+
var React = window.React;
|
|
9
|
+
var useCallback = React.useCallback,
|
|
10
|
+
useState = React.useState;
|
|
11
|
+
|
|
12
|
+
/** contextWhenNull:绑定路径下值为 null/undefined 时的展示值(级联用 FORM_EMPTY_ARRAY,选择器用 undefined) */
|
|
13
|
+
function useProBoundValue(fieldPath, unboundInitial, contextWhenNull) {
|
|
14
|
+
if (contextWhenNull === void 0) {
|
|
15
|
+
contextWhenNull = '';
|
|
16
|
+
}
|
|
17
|
+
var _useComponentContext = (0, _useComponentContext2.useComponentContext)(fieldPath, contextWhenNull),
|
|
18
|
+
ctxValue = _useComponentContext.value,
|
|
19
|
+
onValueChange = _useComponentContext.onValueChange;
|
|
20
|
+
var bound = Boolean(fieldPath);
|
|
21
|
+
var _useState = useState(function () {
|
|
22
|
+
return unboundInitial;
|
|
23
|
+
}),
|
|
24
|
+
localValue = _useState[0],
|
|
25
|
+
setLocalValue = _useState[1];
|
|
26
|
+
var value = bound ? ctxValue : localValue;
|
|
27
|
+
var commit = useCallback(function (next) {
|
|
28
|
+
if (bound) {
|
|
29
|
+
onValueChange === null || onValueChange === void 0 ? void 0 : onValueChange(next);
|
|
30
|
+
} else {
|
|
31
|
+
setLocalValue(next);
|
|
32
|
+
}
|
|
33
|
+
}, [bound, onValueChange]);
|
|
34
|
+
return {
|
|
35
|
+
value: value,
|
|
36
|
+
commit: commit,
|
|
37
|
+
bound: bound
|
|
38
|
+
};
|
|
39
|
+
}
|
package/lib/index.d.ts
CHANGED
|
@@ -14,4 +14,5 @@ export { default as ProRadio } from './components/ProRadio';
|
|
|
14
14
|
export { default as ProCascaderSelect } from './components/ProCascaderSelect';
|
|
15
15
|
export { DatePicker, TimePicker } from 'antd';
|
|
16
16
|
export { getFormContext, initializeFormContext, FormProvider } from './context/FormProvider';
|
|
17
|
-
export { useComponentContext } from './context/useComponentContext';
|
|
17
|
+
export { useComponentContext, FORM_EMPTY_ARRAY } from './context/useComponentContext';
|
|
18
|
+
export { useProBoundValue } from './context/useProBoundValue';
|
package/lib/index.js
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault");
|
|
4
4
|
exports.__esModule = true;
|
|
5
|
-
exports.useComponentContext = exports.initializeFormContext = exports.getFormContext = exports.TimePicker = exports.ProTimePicker = exports.ProTextArea = exports.ProTable = exports.ProSelect = exports.ProRadio = exports.ProNextText = exports.ProInput = exports.ProDatePicker = exports.ProCheckbox = exports.ProCascaderSelect = exports.PrintButton = exports.FormProvider = exports.EditProTable = exports.DatePicker = void 0;
|
|
5
|
+
exports.useProBoundValue = exports.useComponentContext = exports.initializeFormContext = exports.getFormContext = exports.TimePicker = exports.ProTimePicker = exports.ProTextArea = exports.ProTable = exports.ProSelect = exports.ProRadio = exports.ProNextText = exports.ProInput = exports.ProDatePicker = exports.ProCheckbox = exports.ProCascaderSelect = exports.PrintButton = exports.FormProvider = exports.FORM_EMPTY_ARRAY = exports.EditProTable = exports.DatePicker = void 0;
|
|
6
6
|
var _PrintButton = _interopRequireDefault(require("./components/PrintButton"));
|
|
7
7
|
exports.PrintButton = _PrintButton["default"];
|
|
8
8
|
var _editProTable = _interopRequireDefault(require("./components/edit-pro-table"));
|
|
@@ -35,4 +35,7 @@ exports.getFormContext = _FormProvider.getFormContext;
|
|
|
35
35
|
exports.initializeFormContext = _FormProvider.initializeFormContext;
|
|
36
36
|
exports.FormProvider = _FormProvider.FormProvider;
|
|
37
37
|
var _useComponentContext = require("./context/useComponentContext");
|
|
38
|
-
exports.useComponentContext = _useComponentContext.useComponentContext;
|
|
38
|
+
exports.useComponentContext = _useComponentContext.useComponentContext;
|
|
39
|
+
exports.FORM_EMPTY_ARRAY = _useComponentContext.FORM_EMPTY_ARRAY;
|
|
40
|
+
var _useProBoundValue = require("./context/useProBoundValue");
|
|
41
|
+
exports.useProBoundValue = _useProBoundValue.useProBoundValue;
|