venus-design 1.0.47 → 1.0.49

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,15 @@
1
+ import React from 'react';
2
+ export interface LoadableStepRef {
3
+ validateBusinessForm: () => Promise<boolean>;
4
+ getPageRef: () => any;
5
+ }
6
+ interface LoadableStepProps {
7
+ loader: () => Promise<any>;
8
+ [key: string]: any;
9
+ }
10
+ /**
11
+ * 让 react-loadable 支持 ref 转发
12
+ * 把 ref 转成普通 prop forwardedRef 再往下塞
13
+ */
14
+ declare const LoadableStep: React.ForwardRefExoticComponent<Omit<LoadableStepProps, "ref"> & React.RefAttributes<LoadableStepRef>>;
15
+ export default LoadableStep;
@@ -0,0 +1,35 @@
1
+ var _excluded = ["loader"];
2
+ 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); }
3
+ 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; }
4
+ 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; }
5
+ import React, { forwardRef, useImperativeHandle, useRef } from 'react';
6
+ import Loadable from 'react-loadable';
7
+ import { BISpin } from "./..";
8
+ /**
9
+ * 让 react-loadable 支持 ref 转发
10
+ * 把 ref 转成普通 prop forwardedRef 再往下塞
11
+ */
12
+ var LoadableStep = /*#__PURE__*/forwardRef(function (_ref, ref) {
13
+ var loader = _ref.loader,
14
+ rest = _objectWithoutProperties(_ref, _excluded);
15
+ // ① 用 Loadable 动态加载真实组件
16
+ var LazyComp = Loadable({
17
+ loader: loader,
18
+ loading: function loading() {
19
+ return /*#__PURE__*/React.createElement(BISpin, null);
20
+ }
21
+ });
22
+
23
+ // ② 等 LazyComp 加载完成后,里层组件实例会挂到 innerRef
24
+ var innerRef = useRef();
25
+ useImperativeHandle(ref, function () {
26
+ return innerRef.current;
27
+ }, []);
28
+
29
+ // ③ 把 ref 变成普通 prop 向下转发
30
+ //@ts-ignore
31
+ return /*#__PURE__*/React.createElement(LazyComp, _extends({}, rest, {
32
+ forwardedRef: innerRef
33
+ }));
34
+ });
35
+ export default LoadableStep;
@@ -21,10 +21,10 @@ import VenusAdjustDetail from "../VenusAdjustDetail";
21
21
  import { LoadingAdjustData, LoadingWorkFlowData, LoadingWorkFlowTableData } from "./services";
22
22
  import VenusTable from "../VenusTable";
23
23
  import VenusForm from "../VenusForm";
24
- import { BISpin, isNotNullVenus } from "./..";
24
+ import { isNotNullVenus, LoadableStep } from "./..";
25
25
  import VenusAdjustBatch from "../VenusAdjustBatch";
26
26
  import { getInnerIdByBusinessKey } from "./utils";
27
- import Loadable from 'react-loadable';
27
+ //import Loadable from 'react-loadable';
28
28
  import { StyleProvider, legacyLogicalPropertiesTransformer } from "@ant-design/cssinjs";
29
29
 
30
30
  /**
@@ -52,12 +52,10 @@ var VenusWorkDetail = /*#__PURE__*/forwardRef(function (props, ref) {
52
52
  /* --------------- 表单实例 --------------- */
53
53
  var formRef = useRef(null); // VenusForm / VenusTable /
54
54
  //懒加载组件
55
- var LoadableSub = Loadable({
56
- loader: props.loader,
57
- loading: function loading() {
58
- return /*#__PURE__*/React.createElement(BISpin, null);
59
- }
60
- });
55
+ /*const LoadableSub = Loadable({
56
+ loader:props.loader,
57
+ loading: () => <BISpin />,
58
+ });*/
61
59
  var _Form$useForm = _Form.useForm(),
62
60
  _Form$useForm2 = _slicedToArray(_Form$useForm, 1),
63
61
  form = _Form$useForm2[0];
@@ -220,8 +218,38 @@ var VenusWorkDetail = /*#__PURE__*/forwardRef(function (props, ref) {
220
218
  return validateBusinessForm;
221
219
  }(),
222
220
  getPageRef: function getPageRef() {
223
- return formRef;
224
- }
221
+ return formRef.current.getPageRef();
222
+ },
223
+ validateSubmitSuccess: function () {
224
+ var _validateSubmitSuccess = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee5() {
225
+ return _regeneratorRuntime().wrap(function _callee5$(_context5) {
226
+ while (1) switch (_context5.prev = _context5.next) {
227
+ case 0:
228
+ if (!(formRef && formRef.current)) {
229
+ _context5.next = 6;
230
+ break;
231
+ }
232
+ _context5.next = 3;
233
+ return formRef.current.validateSubmitSuccess();
234
+ case 3:
235
+ _context5.t0 = _context5.sent;
236
+ _context5.next = 7;
237
+ break;
238
+ case 6:
239
+ _context5.t0 = true;
240
+ case 7:
241
+ return _context5.abrupt("return", _context5.t0);
242
+ case 8:
243
+ case "end":
244
+ return _context5.stop();
245
+ }
246
+ }, _callee5);
247
+ }));
248
+ function validateSubmitSuccess() {
249
+ return _validateSubmitSuccess.apply(this, arguments);
250
+ }
251
+ return validateSubmitSuccess;
252
+ }()
225
253
  };
226
254
  });
227
255
  return /*#__PURE__*/React.createElement(StyleProvider, {
@@ -235,8 +263,10 @@ var VenusWorkDetail = /*#__PURE__*/forwardRef(function (props, ref) {
235
263
  }, isNotNullVenus(props.componentUrl) && props.actionId != "adjust" ?
236
264
  /*#__PURE__*/
237
265
  //@ts-ignore
238
- React.createElement(LoadableSub, _extends({}, props, {
239
- ref: formRef
266
+ React.createElement(LoadableStep, _extends({
267
+ loader: props.loader // 保持动态!
268
+ ,
269
+ ref: formRef // 现在能真正落到底层组件
240
270
  }, props.otherProps, {
241
271
  innerId: getInnerIdByBusinessKey(props.businessKey)
242
272
  })) : props.actionId == "adjust" ? props.batchFlag == true ? /*#__PURE__*/React.createElement(VenusAdjustBatch, {
package/dist/index.d.ts CHANGED
@@ -34,6 +34,7 @@ export { default as RenderRouter } from './RenderRouter';
34
34
  export { default as VenusFormInterface, VenusFormGroupInterface, VenusFormItemInterface, VenusFormDataVo, VenusFormRadioType, VenusFormType } from './VenusForm/interface';
35
35
  export { handleFormItems, radioEnumData, zeroAndOneToTrueOrFalse, haveQt, validatorListToValidator, setVenusFormFormate, getVenusFormFormate } from './VenusForm/handleVenusFormFunctions';
36
36
  export { VENUS_FORM_ITEM_VALUE, VENUS_FORM_EDIT_ITEM_VALUE, handleDatePickerData, handleNameAndIdSplit, VENUS_FORM_ITEM_TYPE, isNotEditScene, getUserFormate, setUserFormate, addFormCustomCom, VENUS_FORM_CUSTOMCOM_TYPE, getColumnByFieldName } from './VenusForm/staticAttr';
37
+ export { default as LoadableStep } from './LoadableStep';
37
38
  export { dataToEnum, requestEnumDataCallback, requestRadioDataCallback, requestCheckboxDataCallback, requestDataOptionsCallback, requestSeclevelEnumCallback, requestSeclevelDataCallback, requestFormCallback, requestDefineCallback, requestCostumColumnsDataCallback } from './Config/useCallback';
38
39
  export { default as SelectKYSeclevel } from './SelectCompoments/SelectKYSeclevel';
39
40
  export { default as SelectUserBySecLevelId } from './SelectCompoments/SelectUserBySecLevelId';
package/dist/index.js CHANGED
@@ -34,6 +34,7 @@ export { default as RenderRouter } from "./RenderRouter";
34
34
  export { default as VenusFormInterface, VenusFormGroupInterface, VenusFormItemInterface, VenusFormDataVo, VenusFormRadioType, VenusFormType } from "./VenusForm/interface";
35
35
  export { handleFormItems, radioEnumData, zeroAndOneToTrueOrFalse, haveQt, validatorListToValidator, setVenusFormFormate, getVenusFormFormate } from "./VenusForm/handleVenusFormFunctions";
36
36
  export { VENUS_FORM_ITEM_VALUE, VENUS_FORM_EDIT_ITEM_VALUE, handleDatePickerData, handleNameAndIdSplit, VENUS_FORM_ITEM_TYPE, isNotEditScene, getUserFormate, setUserFormate, addFormCustomCom, VENUS_FORM_CUSTOMCOM_TYPE, getColumnByFieldName } from "./VenusForm/staticAttr";
37
+ export { default as LoadableStep } from "./LoadableStep";
37
38
  export { dataToEnum, requestEnumDataCallback, requestRadioDataCallback, requestCheckboxDataCallback, requestDataOptionsCallback, requestSeclevelEnumCallback, requestSeclevelDataCallback, requestFormCallback, requestDefineCallback, requestCostumColumnsDataCallback } from "./Config/useCallback";
38
39
  export { default as SelectKYSeclevel } from "./SelectCompoments/SelectKYSeclevel";
39
40
  export { default as SelectUserBySecLevelId } from "./SelectCompoments/SelectUserBySecLevelId";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "venus-design",
3
- "version": "1.0.47",
3
+ "version": "1.0.49",
4
4
  "description": "venus all compoments",
5
5
  "module": "dist/index.js",
6
6
  "types": "dist/index.d.ts",