venus-design 1.0.45 → 1.0.46

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.
@@ -1,4 +1,8 @@
1
1
  import React from 'react';
2
+ export interface VenusWorkDetailRef {
3
+ /** 外部唯一需要的方法:校验内部表单 */
4
+ validateBusinessForm: () => Promise<boolean>;
5
+ }
2
6
  /**
3
7
  * 流程查看组件
4
8
  */
@@ -16,5 +20,5 @@ interface VenusWorkDetailType {
16
20
  height?: any;
17
21
  otherProps?: any;
18
22
  }
19
- declare const VenusWorkDetail: (props: VenusWorkDetailType) => React.JSX.Element;
23
+ declare const VenusWorkDetail: React.ForwardRefExoticComponent<VenusWorkDetailType & React.RefAttributes<VenusWorkDetailRef>>;
20
24
  export default VenusWorkDetail;
@@ -16,7 +16,7 @@ function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o =
16
16
  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; }
17
17
  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; } }
18
18
  function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
19
- import React, { useEffect, useRef, useState } from 'react';
19
+ import React, { forwardRef, useEffect, useImperativeHandle, useRef, useState } from 'react';
20
20
  import VenusAdjustDetail from "../VenusAdjustDetail";
21
21
  import { LoadingAdjustData, LoadingWorkFlowData, LoadingWorkFlowTableData } from "./services";
22
22
  import VenusTable from "../VenusTable";
@@ -31,7 +31,7 @@ import { StyleProvider, legacyLogicalPropertiesTransformer } from "@ant-design/c
31
31
  * 流程查看组件
32
32
  */
33
33
 
34
- var VenusWorkDetail = function VenusWorkDetail(props) {
34
+ var VenusWorkDetail = /*#__PURE__*/forwardRef(function (props, ref) {
35
35
  var _useState = useState({}),
36
36
  _useState2 = _slicedToArray(_useState, 2),
37
37
  data = _useState2[0],
@@ -49,6 +49,8 @@ var VenusWorkDetail = function VenusWorkDetail(props) {
49
49
  loader: () => import('@/pages/demo/test/index').then(({ orderRefund }) => orderRefund),
50
50
  loading: true
51
51
  })*/
52
+ /* --------------- 表单实例 --------------- */
53
+ var formRef = useRef(null); // VenusForm / VenusTable /
52
54
  //懒加载组件
53
55
  var LoadableSub = Loadable({
54
56
  loader: props.loader,
@@ -182,6 +184,46 @@ var VenusWorkDetail = function VenusWorkDetail(props) {
182
184
  return _ref3.apply(this, arguments);
183
185
  };
184
186
  }();
187
+
188
+ /* --------------- 把校验能力抛给父级 --------------- */
189
+ // 暴露方法:添加送审
190
+ useImperativeHandle(ref, function () {
191
+ return {
192
+ validateBusinessForm: function () {
193
+ var _validateBusinessForm = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee4() {
194
+ return _regeneratorRuntime().wrap(function _callee4$(_context4) {
195
+ while (1) switch (_context4.prev = _context4.next) {
196
+ case 0:
197
+ if (!(formRef && formRef.current)) {
198
+ _context4.next = 6;
199
+ break;
200
+ }
201
+ _context4.next = 3;
202
+ return formRef.current.validateBusinessForm();
203
+ case 3:
204
+ _context4.t0 = _context4.sent;
205
+ _context4.next = 7;
206
+ break;
207
+ case 6:
208
+ _context4.t0 = true;
209
+ case 7:
210
+ return _context4.abrupt("return", _context4.t0);
211
+ case 8:
212
+ case "end":
213
+ return _context4.stop();
214
+ }
215
+ }, _callee4);
216
+ }));
217
+ function validateBusinessForm() {
218
+ return _validateBusinessForm.apply(this, arguments);
219
+ }
220
+ return validateBusinessForm;
221
+ }(),
222
+ getPageRef: function getPageRef() {
223
+ return formRef;
224
+ }
225
+ };
226
+ });
185
227
  return /*#__PURE__*/React.createElement(StyleProvider, {
186
228
  hashPriority: "high",
187
229
  transformers: [legacyLogicalPropertiesTransformer]
@@ -193,7 +235,9 @@ var VenusWorkDetail = function VenusWorkDetail(props) {
193
235
  }, isNotNullVenus(props.componentUrl) && props.actionId != "adjust" ?
194
236
  /*#__PURE__*/
195
237
  //@ts-ignore
196
- React.createElement(LoadableSub, _extends({}, props, props.otherProps, {
238
+ React.createElement(LoadableSub, _extends({}, props, {
239
+ formRef: formRef
240
+ }, props.otherProps, {
197
241
  innerId: getInnerIdByBusinessKey(props.businessKey)
198
242
  })) : props.actionId == "adjust" ? props.batchFlag == true ? /*#__PURE__*/React.createElement(VenusAdjustBatch, {
199
243
  actionRef: adjustActionRef,
@@ -256,5 +300,5 @@ var VenusWorkDetail = function VenusWorkDetail(props) {
256
300
  ,
257
301
  dataSceneIid: props.dataSceneIid //数据场景标识
258
302
  })));
259
- };
303
+ });
260
304
  export default VenusWorkDetail;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "venus-design",
3
- "version": "1.0.45",
3
+ "version": "1.0.46",
4
4
  "description": "venus all compoments",
5
5
  "module": "dist/index.js",
6
6
  "types": "dist/index.d.ts",