@ccs-ui/rc-pro 2.1.3 → 2.1.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.
@@ -19,6 +19,7 @@ function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) r
19
19
  import { useRequest } from 'ahooks';
20
20
  import { Cascader } from 'antd';
21
21
  import { useEffect } from 'react';
22
+ import { useApiCascaderInterceptor } from "../hooks/use-app";
22
23
  import { getDataFromArrayField } from "../select";
23
24
  import { jsx as _jsx } from "react/jsx-runtime";
24
25
  function onIsArray(data) {
@@ -41,23 +42,36 @@ export default function CcsApiCascader(_ref) {
41
42
  var labelField = _toConsumableArray(onIsArray((fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label) || ['data', 'label']));
42
43
  var valueField = _toConsumableArray(onIsArray((fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || ['data', 'value']));
43
44
  var childrenField = _toConsumableArray(onIsArray((fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.children) || ['data', 'children']));
45
+
46
+ // 上下午接口格式化方法
47
+ var _useApiCascaderInterc = useApiCascaderInterceptor(),
48
+ onRequestFormat = _useApiCascaderInterc.onRequestFormat,
49
+ onResponseFormat = _useApiCascaderInterc.onResponseFormat;
44
50
  var _useRequest = useRequest( /*#__PURE__*/function () {
45
51
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(params) {
46
52
  var result, value;
47
53
  return _regeneratorRuntime().wrap(function _callee$(_context) {
48
54
  while (1) switch (_context.prev = _context.next) {
49
55
  case 0:
50
- _context.next = 2;
51
- return onQuery(params);
56
+ if (onQuery) {
57
+ _context.next = 2;
58
+ break;
59
+ }
60
+ return _context.abrupt("return", []);
52
61
  case 2:
53
- result = _context.sent;
54
- case 3:
62
+ _context.t0 = onResponseFormat;
63
+ _context.next = 5;
64
+ return onQuery(onRequestFormat(params));
65
+ case 5:
66
+ _context.t1 = _context.sent;
67
+ result = (0, _context.t0)(_context.t1);
68
+ case 7:
55
69
  if (!(labelField.length > 0 || valueField.length > 0)) {
56
- _context.next = 13;
70
+ _context.next = 17;
57
71
  break;
58
72
  }
59
73
  if (!Array.isArray(result)) {
60
- _context.next = 7;
74
+ _context.next = 11;
61
75
  break;
62
76
  }
63
77
  result.forEach(function (r) {
@@ -65,19 +79,19 @@ export default function CcsApiCascader(_ref) {
65
79
  r.value = getDataFromArrayField(r, valueField);
66
80
  r.children = getDataFromArrayField(r, childrenField);
67
81
  });
68
- return _context.abrupt("break", 13);
69
- case 7:
82
+ return _context.abrupt("break", 17);
83
+ case 11:
70
84
  labelField.shift();
71
85
  childrenField.shift();
72
86
  value = valueField.shift();
73
87
  if (value) {
74
88
  result = result[value];
75
89
  }
76
- _context.next = 3;
90
+ _context.next = 7;
77
91
  break;
78
- case 13:
92
+ case 17:
79
93
  return _context.abrupt("return", result);
80
- case 14:
94
+ case 18:
81
95
  case "end":
82
96
  return _context.stop();
83
97
  }
package/es/config.d.ts CHANGED
@@ -1,5 +1,6 @@
1
1
  import { PropsWithElementChildren } from './ccs';
2
2
  import { CssAppConfigType } from './context';
3
+ export declare function onDefaultFormat(data: any): any;
3
4
  type AppConfigProps = PropsWithElementChildren & CssAppConfigType;
4
5
  export default function CssAppConfig(props: AppConfigProps): import("react/jsx-runtime").JSX.Element;
5
6
  export {};
package/es/config.js CHANGED
@@ -56,6 +56,9 @@ function AppDialog() {
56
56
  children: [contextMsgHolder, contextNotifHolder, contextModalHolder]
57
57
  });
58
58
  }
59
+ export function onDefaultFormat(data) {
60
+ return data;
61
+ }
59
62
 
60
63
  /** 主题设置 */
61
64
  function AppConfig(_ref) {
@@ -64,7 +67,9 @@ function AppConfig(_ref) {
64
67
  theme = _ref$theme === void 0 ? 'light' : _ref$theme,
65
68
  isCompact = _ref.isCompact,
66
69
  watermark = _ref.watermark,
67
- themeConfig = _ref.themeConfig;
70
+ themeConfig = _ref.themeConfig,
71
+ _ref$interceptors = _ref.interceptors,
72
+ interceptors = _ref$interceptors === void 0 ? {} : _ref$interceptors;
68
73
  var holderRef = React.useRef(null);
69
74
  // 主题
70
75
  var appTheme = theme === 'dark' ? darkTheme : defaultTheme;
@@ -92,7 +97,8 @@ function AppConfig(_ref) {
92
97
  value: {
93
98
  theme: theme,
94
99
  themeConfig: themeConfig,
95
- holderRef: holderRef
100
+ holderRef: holderRef,
101
+ interceptors: interceptors
96
102
  },
97
103
  children: [children, /*#__PURE__*/_jsx(AppDialog, {}), /*#__PURE__*/_jsx(ElementsHolder, {
98
104
  ref: holderRef
@@ -48,6 +48,12 @@ type FnContextType<T = Store> = {
48
48
  formInitialValues: T;
49
49
  close: () => void;
50
50
  };
51
+ type RequestType = {
52
+ /** 请求参数格式化 */
53
+ onRequestFormat?: (query: any) => any;
54
+ /** 返回参数格式化 */
55
+ onResponseFormat?: (response: any) => any;
56
+ };
51
57
  type CssAppConfigType = {
52
58
  /** 主题 */
53
59
  theme?: 'dark' | 'light' | 'colorful';
@@ -59,6 +65,17 @@ type CssAppConfigType = {
59
65
  watermark?: WaterMarkProps;
60
66
  /** modal or drawer holder */
61
67
  holderRef?: React.RefObject<ElementsHolderRef>;
68
+ /** 全局拦截接口请 */
69
+ interceptors?: {
70
+ /** table 分页请求 */
71
+ CcsProTable?: RequestType;
72
+ /** 选择接口请求 */
73
+ CcsApiSelect?: RequestType;
74
+ /** 级联接口请求 */
75
+ CcsApiCascader?: RequestType;
76
+ /** 弹框表单请求 */
77
+ CcsDialog?: RequestType;
78
+ };
62
79
  };
63
80
  declare const DrawerAndModalContext: React.Context<FnContextType<any>>;
64
81
  declare const PageContext: React.Context<PageContextType>;
@@ -1,7 +1,7 @@
1
1
  import { FormProps } from 'antd';
2
2
  import { DialogFormRef } from './form';
3
3
  import { CcsDialogModalProps } from './hook';
4
- declare const DialogRequestButton: ({ auth, formRef, extraBtn, formInitialValues, request, onCancel, onRequestBefore, }: Pick<CcsDialogModalProps, "auth" | "onCancel" | "extraBtn" | "request" | "onRequestBefore"> & {
4
+ declare const DialogRequestButton: ({ auth, formRef, extraBtn, formInitialValues, request, onCancel, onRequestBefore, }: Pick<CcsDialogModalProps, "auth" | "request" | "onCancel" | "onRequestBefore" | "extraBtn"> & {
5
5
  formRef: React.RefObject<DialogFormRef>;
6
6
  formInitialValues: FormProps['initialValues'];
7
7
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,9 +1,12 @@
1
1
  function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function _regeneratorRuntime() { "use strict"; /*! regenerator-runtime -- Copyright (c) 2014-present, Facebook, Inc. -- license (MIT): https://github.com/facebook/regenerator/blob/main/LICENSE */ _regeneratorRuntime = function _regeneratorRuntime() { return e; }; var t, e = {}, r = Object.prototype, n = r.hasOwnProperty, o = Object.defineProperty || function (t, e, r) { t[e] = r.value; }, i = "function" == typeof Symbol ? Symbol : {}, a = i.iterator || "@@iterator", c = i.asyncIterator || "@@asyncIterator", u = i.toStringTag || "@@toStringTag"; function define(t, e, r) { return Object.defineProperty(t, e, { value: r, enumerable: !0, configurable: !0, writable: !0 }), t[e]; } try { define({}, ""); } catch (t) { define = function define(t, e, r) { return t[e] = r; }; } function wrap(t, e, r, n) { var i = e && e.prototype instanceof Generator ? e : Generator, a = Object.create(i.prototype), c = new Context(n || []); return o(a, "_invoke", { value: makeInvokeMethod(t, r, c) }), a; } function tryCatch(t, e, r) { try { return { type: "normal", arg: t.call(e, r) }; } catch (t) { return { type: "throw", arg: t }; } } e.wrap = wrap; var h = "suspendedStart", l = "suspendedYield", f = "executing", s = "completed", y = {}; function Generator() {} function GeneratorFunction() {} function GeneratorFunctionPrototype() {} var p = {}; define(p, a, function () { return this; }); var d = Object.getPrototypeOf, v = d && d(d(values([]))); v && v !== r && n.call(v, a) && (p = v); var g = GeneratorFunctionPrototype.prototype = Generator.prototype = Object.create(p); function defineIteratorMethods(t) { ["next", "throw", "return"].forEach(function (e) { define(t, e, function (t) { return this._invoke(e, t); }); }); } function AsyncIterator(t, e) { function invoke(r, o, i, a) { var c = tryCatch(t[r], t, o); if ("throw" !== c.type) { var u = c.arg, h = u.value; return h && "object" == _typeof(h) && n.call(h, "__await") ? e.resolve(h.__await).then(function (t) { invoke("next", t, i, a); }, function (t) { invoke("throw", t, i, a); }) : e.resolve(h).then(function (t) { u.value = t, i(u); }, function (t) { return invoke("throw", t, i, a); }); } a(c.arg); } var r; o(this, "_invoke", { value: function value(t, n) { function callInvokeWithMethodAndArg() { return new e(function (e, r) { invoke(t, n, e, r); }); } return r = r ? r.then(callInvokeWithMethodAndArg, callInvokeWithMethodAndArg) : callInvokeWithMethodAndArg(); } }); } function makeInvokeMethod(e, r, n) { var o = h; return function (i, a) { if (o === f) throw new Error("Generator is already running"); if (o === s) { if ("throw" === i) throw a; return { value: t, done: !0 }; } for (n.method = i, n.arg = a;;) { var c = n.delegate; if (c) { var u = maybeInvokeDelegate(c, n); if (u) { if (u === y) continue; return u; } } if ("next" === n.method) n.sent = n._sent = n.arg;else if ("throw" === n.method) { if (o === h) throw o = s, n.arg; n.dispatchException(n.arg); } else "return" === n.method && n.abrupt("return", n.arg); o = f; var p = tryCatch(e, r, n); if ("normal" === p.type) { if (o = n.done ? s : l, p.arg === y) continue; return { value: p.arg, done: n.done }; } "throw" === p.type && (o = s, n.method = "throw", n.arg = p.arg); } }; } function maybeInvokeDelegate(e, r) { var n = r.method, o = e.iterator[n]; if (o === t) return r.delegate = null, "throw" === n && e.iterator.return && (r.method = "return", r.arg = t, maybeInvokeDelegate(e, r), "throw" === r.method) || "return" !== n && (r.method = "throw", r.arg = new TypeError("The iterator does not provide a '" + n + "' method")), y; var i = tryCatch(o, e.iterator, r.arg); if ("throw" === i.type) return r.method = "throw", r.arg = i.arg, r.delegate = null, y; var a = i.arg; return a ? a.done ? (r[e.resultName] = a.value, r.next = e.nextLoc, "return" !== r.method && (r.method = "next", r.arg = t), r.delegate = null, y) : a : (r.method = "throw", r.arg = new TypeError("iterator result is not an object"), r.delegate = null, y); } function pushTryEntry(t) { var e = { tryLoc: t[0] }; 1 in t && (e.catchLoc = t[1]), 2 in t && (e.finallyLoc = t[2], e.afterLoc = t[3]), this.tryEntries.push(e); } function resetTryEntry(t) { var e = t.completion || {}; e.type = "normal", delete e.arg, t.completion = e; } function Context(t) { this.tryEntries = [{ tryLoc: "root" }], t.forEach(pushTryEntry, this), this.reset(!0); } function values(e) { if (e || "" === e) { var r = e[a]; if (r) return r.call(e); if ("function" == typeof e.next) return e; if (!isNaN(e.length)) { var o = -1, i = function next() { for (; ++o < e.length;) if (n.call(e, o)) return next.value = e[o], next.done = !1, next; return next.value = t, next.done = !0, next; }; return i.next = i; } } throw new TypeError(_typeof(e) + " is not iterable"); } return GeneratorFunction.prototype = GeneratorFunctionPrototype, o(g, "constructor", { value: GeneratorFunctionPrototype, configurable: !0 }), o(GeneratorFunctionPrototype, "constructor", { value: GeneratorFunction, configurable: !0 }), GeneratorFunction.displayName = define(GeneratorFunctionPrototype, u, "GeneratorFunction"), e.isGeneratorFunction = function (t) { var e = "function" == typeof t && t.constructor; return !!e && (e === GeneratorFunction || "GeneratorFunction" === (e.displayName || e.name)); }, e.mark = function (t) { return Object.setPrototypeOf ? Object.setPrototypeOf(t, GeneratorFunctionPrototype) : (t.__proto__ = GeneratorFunctionPrototype, define(t, u, "GeneratorFunction")), t.prototype = Object.create(g), t; }, e.awrap = function (t) { return { __await: t }; }, defineIteratorMethods(AsyncIterator.prototype), define(AsyncIterator.prototype, c, function () { return this; }), e.AsyncIterator = AsyncIterator, e.async = function (t, r, n, o, i) { void 0 === i && (i = Promise); var a = new AsyncIterator(wrap(t, r, n, o), i); return e.isGeneratorFunction(r) ? a : a.next().then(function (t) { return t.done ? t.value : a.next(); }); }, defineIteratorMethods(g), define(g, u, "Generator"), define(g, a, function () { return this; }), define(g, "toString", function () { return "[object Generator]"; }), e.keys = function (t) { var e = Object(t), r = []; for (var n in e) r.push(n); return r.reverse(), function next() { for (; r.length;) { var t = r.pop(); if (t in e) return next.value = t, next.done = !1, next; } return next.done = !0, next; }; }, e.values = values, Context.prototype = { constructor: Context, reset: function reset(e) { if (this.prev = 0, this.next = 0, this.sent = this._sent = t, this.done = !1, this.delegate = null, this.method = "next", this.arg = t, this.tryEntries.forEach(resetTryEntry), !e) for (var r in this) "t" === r.charAt(0) && n.call(this, r) && !isNaN(+r.slice(1)) && (this[r] = t); }, stop: function stop() { this.done = !0; var t = this.tryEntries[0].completion; if ("throw" === t.type) throw t.arg; return this.rval; }, dispatchException: function dispatchException(e) { if (this.done) throw e; var r = this; function handle(n, o) { return a.type = "throw", a.arg = e, r.next = n, o && (r.method = "next", r.arg = t), !!o; } for (var o = this.tryEntries.length - 1; o >= 0; --o) { var i = this.tryEntries[o], a = i.completion; if ("root" === i.tryLoc) return handle("end"); if (i.tryLoc <= this.prev) { var c = n.call(i, "catchLoc"), u = n.call(i, "finallyLoc"); if (c && u) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } else if (c) { if (this.prev < i.catchLoc) return handle(i.catchLoc, !0); } else { if (!u) throw new Error("try statement without catch or finally"); if (this.prev < i.finallyLoc) return handle(i.finallyLoc); } } } }, abrupt: function abrupt(t, e) { for (var r = this.tryEntries.length - 1; r >= 0; --r) { var o = this.tryEntries[r]; if (o.tryLoc <= this.prev && n.call(o, "finallyLoc") && this.prev < o.finallyLoc) { var i = o; break; } } i && ("break" === t || "continue" === t) && i.tryLoc <= e && e <= i.finallyLoc && (i = null); var a = i ? i.completion : {}; return a.type = t, a.arg = e, i ? (this.method = "next", this.next = i.finallyLoc, y) : this.complete(a); }, complete: function complete(t, e) { if ("throw" === t.type) throw t.arg; return "break" === t.type || "continue" === t.type ? this.next = t.arg : "return" === t.type ? (this.rval = this.arg = t.arg, this.method = "return", this.next = "end") : "normal" === t.type && e && (this.next = e), y; }, finish: function finish(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.finallyLoc === t) return this.complete(r.completion, r.afterLoc), resetTryEntry(r), y; } }, catch: function _catch(t) { for (var e = this.tryEntries.length - 1; e >= 0; --e) { var r = this.tryEntries[e]; if (r.tryLoc === t) { var n = r.completion; if ("throw" === n.type) { var o = n.arg; resetTryEntry(r); } return o; } } throw new Error("illegal catch attempt"); }, delegateYield: function delegateYield(e, r, n) { return this.delegate = { iterator: values(e), resultName: r, nextLoc: n }, "next" === this.method && (this.arg = t), y; } }, e; }
2
3
  function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
4
  function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
5
  function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
6
  function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
7
  function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
8
+ function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) { try { var info = gen[key](arg); var value = info.value; } catch (error) { reject(error); return; } if (info.done) { resolve(value); } else { Promise.resolve(value).then(_next, _throw); } }
9
+ function _asyncToGenerator(fn) { return function () { var self = this, args = arguments; return new Promise(function (resolve, reject) { var gen = fn.apply(self, args); function _next(value) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "next", value); } function _throw(err) { asyncGeneratorStep(gen, resolve, reject, _next, _throw, "throw", err); } _next(undefined); }); }; }
7
10
  function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }
8
11
  function _nonIterableRest() { throw new TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
9
12
  function _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === "string") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === "Object" && o.constructor) n = o.constructor.name; if (n === "Map" || n === "Set") return Array.from(o); if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }
@@ -14,6 +17,7 @@ import CcsUtils from '@ccs-ui/utils';
14
17
  import { Button } from 'antd';
15
18
  import { useState } from 'react';
16
19
  import { CcsButton, CcsDialog } from '..';
20
+ import { useDialogInterceptor } from "../hooks/use-app";
17
21
  import { jsx as _jsx } from "react/jsx-runtime";
18
22
  import { Fragment as _Fragment } from "react/jsx-runtime";
19
23
  import { jsxs as _jsxs } from "react/jsx-runtime";
@@ -30,27 +34,47 @@ var DialogRequestButton = function DialogRequestButton(_ref) {
30
34
  _useState2 = _slicedToArray(_useState, 2),
31
35
  loading = _useState2[0],
32
36
  setLoading = _useState2[1];
33
- var onOk = function onOk() {
34
- var _formRef$current;
35
- if (!((_formRef$current = formRef.current) !== null && _formRef$current !== void 0 && _formRef$current.formInstance)) {
36
- CcsUtils.showWarning(false, "\u672A\u5B9A\u4E49form");
37
- return;
38
- }
39
- formRef.current.formInstance.validateFields().then(function (values) {
40
- setLoading(true);
41
- var params = _objectSpread(_objectSpread({}, formInitialValues), onRequestBefore ? onRequestBefore(values) : values);
42
- request(params).then(function (d) {
43
- setLoading(false);
44
- if (d !== null && d !== void 0 && d.success && onCancel) {
45
- onCancel(params);
37
+ var _useDialogInterceptor = useDialogInterceptor(),
38
+ onRequestFormat = _useDialogInterceptor.onRequestFormat,
39
+ onResponseFormat = _useDialogInterceptor.onResponseFormat;
40
+ var onOk = /*#__PURE__*/function () {
41
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
42
+ var _formRef$current;
43
+ return _regeneratorRuntime().wrap(function _callee$(_context) {
44
+ while (1) switch (_context.prev = _context.next) {
45
+ case 0:
46
+ if ((_formRef$current = formRef.current) !== null && _formRef$current !== void 0 && _formRef$current.formInstance) {
47
+ _context.next = 3;
48
+ break;
49
+ }
50
+ CcsUtils.showWarning(false, "\u672A\u5B9A\u4E49form");
51
+ return _context.abrupt("return");
52
+ case 3:
53
+ formRef.current.formInstance.validateFields().then(function (values) {
54
+ setLoading(true);
55
+ var params = _objectSpread(_objectSpread({}, formInitialValues), onRequestBefore ? onRequestBefore(values) : values);
56
+ request(onRequestFormat(params)).then(function (e) {
57
+ var result = onResponseFormat(e);
58
+ setLoading(false);
59
+ if (result !== null && result !== void 0 && result.success && onCancel) {
60
+ onCancel(params);
61
+ }
62
+ CcsDialog.easyMessage(result);
63
+ }).catch(function (err) {
64
+ setLoading(false);
65
+ console.log('e', err);
66
+ });
67
+ });
68
+ case 4:
69
+ case "end":
70
+ return _context.stop();
46
71
  }
47
- CcsDialog.easyMessage(d);
48
- }).catch(function (err) {
49
- setLoading(false);
50
- console.log('e', err);
51
- });
52
- });
53
- };
72
+ }, _callee);
73
+ }));
74
+ return function onOk() {
75
+ return _ref2.apply(this, arguments);
76
+ };
77
+ }();
54
78
  return /*#__PURE__*/_jsxs(_Fragment, {
55
79
  children: [extraBtn, /*#__PURE__*/_jsx(Button, {
56
80
  onClick: onCancel,
@@ -1,7 +1,7 @@
1
1
  import { FormProps } from 'antd';
2
2
  import { DialogFormRef } from './form';
3
3
  import { CcsDialogModalProps } from './hook';
4
- declare const DialogSelfOkButton: ({ auth, formRef, extraBtn, formInitialValues, onCancel, onOk, }: Pick<CcsDialogModalProps, "auth" | "onOk" | "onCancel" | "extraBtn"> & {
4
+ declare const DialogSelfOkButton: ({ auth, formRef, extraBtn, formInitialValues, onCancel, onOk, }: Pick<CcsDialogModalProps, "auth" | "onCancel" | "extraBtn" | "onOk"> & {
5
5
  formRef: React.RefObject<DialogFormRef>;
6
6
  formInitialValues: FormProps['initialValues'];
7
7
  }) => import("react/jsx-runtime").JSX.Element;
@@ -1,6 +1,23 @@
1
+ import { onDefaultFormat } from '../config';
1
2
  /**
2
3
  * app配置
3
4
  * @returns
4
5
  */
5
6
  declare const useAppConfig: () => import("../context").CssAppConfigType;
7
+ export declare const useProTableInterceptor: () => {
8
+ onRequestFormat: typeof onDefaultFormat;
9
+ onResponseFormat: typeof onDefaultFormat;
10
+ };
11
+ export declare const useApiCascaderInterceptor: () => {
12
+ onRequestFormat: typeof onDefaultFormat;
13
+ onResponseFormat: typeof onDefaultFormat;
14
+ };
15
+ export declare const useApiSelectInterceptor: () => {
16
+ onRequestFormat: typeof onDefaultFormat;
17
+ onResponseFormat: typeof onDefaultFormat;
18
+ };
19
+ export declare const useDialogInterceptor: () => {
20
+ onRequestFormat: typeof onDefaultFormat;
21
+ onResponseFormat: typeof onDefaultFormat;
22
+ };
6
23
  export default useAppConfig;
@@ -1,4 +1,11 @@
1
+ function _typeof(o) { "@babel/helpers - typeof"; return _typeof = "function" == typeof Symbol && "symbol" == typeof Symbol.iterator ? function (o) { return typeof o; } : function (o) { return o && "function" == typeof Symbol && o.constructor === Symbol && o !== Symbol.prototype ? "symbol" : typeof o; }, _typeof(o); }
2
+ function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
3
+ function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
4
+ function _defineProperty(obj, key, value) { key = _toPropertyKey(key); if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
5
+ function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == _typeof(i) ? i : String(i); }
6
+ function _toPrimitive(t, r) { if ("object" != _typeof(t) || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != _typeof(i)) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
1
7
  import { useContext } from 'react';
8
+ import { onDefaultFormat } from "../config";
2
9
  import { AppConfigContext } from "../context";
3
10
 
4
11
  /**
@@ -12,4 +19,40 @@ var useAppConfig = function useAppConfig() {
12
19
  }
13
20
  return context;
14
21
  };
22
+ export var useProTableInterceptor = function useProTableInterceptor() {
23
+ var _context$interceptors;
24
+ var context = useContext(AppConfigContext) || {};
25
+ var interceptor = _objectSpread({
26
+ onRequestFormat: onDefaultFormat,
27
+ onResponseFormat: onDefaultFormat
28
+ }, (_context$interceptors = context.interceptors) === null || _context$interceptors === void 0 ? void 0 : _context$interceptors.CcsProTable);
29
+ return interceptor;
30
+ };
31
+ export var useApiCascaderInterceptor = function useApiCascaderInterceptor() {
32
+ var _context$interceptors2;
33
+ var context = useContext(AppConfigContext) || {};
34
+ var interceptor = _objectSpread({
35
+ onRequestFormat: onDefaultFormat,
36
+ onResponseFormat: onDefaultFormat
37
+ }, (_context$interceptors2 = context.interceptors) === null || _context$interceptors2 === void 0 ? void 0 : _context$interceptors2.CcsApiCascader);
38
+ return interceptor;
39
+ };
40
+ export var useApiSelectInterceptor = function useApiSelectInterceptor() {
41
+ var _context$interceptors3;
42
+ var context = useContext(AppConfigContext) || {};
43
+ var interceptor = _objectSpread({
44
+ onRequestFormat: onDefaultFormat,
45
+ onResponseFormat: onDefaultFormat
46
+ }, (_context$interceptors3 = context.interceptors) === null || _context$interceptors3 === void 0 ? void 0 : _context$interceptors3.CcsApiSelect);
47
+ return interceptor;
48
+ };
49
+ export var useDialogInterceptor = function useDialogInterceptor() {
50
+ var _context$interceptors4;
51
+ var context = useContext(AppConfigContext) || {};
52
+ var interceptor = _objectSpread({
53
+ onRequestFormat: onDefaultFormat,
54
+ onResponseFormat: onDefaultFormat
55
+ }, (_context$interceptors4 = context.interceptors) === null || _context$interceptors4 === void 0 ? void 0 : _context$interceptors4.CcsDialog);
56
+ return interceptor;
57
+ };
15
58
  export default useAppConfig;
@@ -20,6 +20,7 @@ import classNames from 'classnames';
20
20
  import React, { useEffect, useImperativeHandle, useMemo, useRef, useState } from 'react';
21
21
  import { useAppConfig } from '..';
22
22
  import { useCcsPage } from "../";
23
+ import { useProTableInterceptor } from "../hooks/use-app";
23
24
  import CcsTable from "../table";
24
25
  import { getAllChildrenId, getDataById, onTableInModalOrDrawer, onTableInTabItem } from "./_utils";
25
26
  import HeadComponent from "./head";
@@ -65,7 +66,7 @@ var InternalProTable = function InternalProTable(props) {
65
66
  onAuth = _useCcsPage.onAuth;
66
67
  var _ref = table || {},
67
68
  pagination = _ref.pagination,
68
- request = _ref.request,
69
+ httpRequest = _ref.request,
69
70
  _ref$requestParam = _ref.requestParam,
70
71
  requestParam = _ref$requestParam === void 0 ? {} : _ref$requestParam,
71
72
  columns = _ref.columns,
@@ -103,9 +104,15 @@ var InternalProTable = function InternalProTable(props) {
103
104
  _useState6 = _slicedToArray(_useState5, 2),
104
105
  tableRowSize = _useState6[0],
105
106
  setTableRowSize = _useState6[1];
106
- // 暗黑模式
107
+ // 上下文配置
107
108
  var _useAppConfig = useAppConfig(),
108
109
  theme = _useAppConfig.theme;
110
+ // 接口格式化方法
111
+ var _useProTableIntercept = useProTableInterceptor(),
112
+ onRequestFormat = _useProTableIntercept.onRequestFormat,
113
+ onResponseFormat = _useProTableIntercept.onResponseFormat;
114
+
115
+ // 暗黑模式
109
116
  var isDark = theme === 'dark';
110
117
 
111
118
  // 权限判断
@@ -142,7 +149,7 @@ var InternalProTable = function InternalProTable(props) {
142
149
  pageNo = _args2.length > 1 && _args2[1] !== undefined ? _args2[1] : 1;
143
150
  pageSize = _args2.length > 2 && _args2[2] !== undefined ? _args2[2] : (pagination ? pagination.defaultPageSize : 10) || 10;
144
151
  record = _args2.length > 3 ? _args2[3] : undefined;
145
- if (!(!isAuth || !request)) {
152
+ if (!(!isAuth || !httpRequest)) {
146
153
  _context2.next = 5;
147
154
  break;
148
155
  }
@@ -199,19 +206,21 @@ var InternalProTable = function InternalProTable(props) {
199
206
  loading: true
200
207
  });
201
208
  });
202
- _context.next = 11;
203
- return request(_objectSpread({}, newParams));
204
- case 11:
205
- requestResult = _context.sent;
209
+ _context.t0 = onResponseFormat;
210
+ _context.next = 12;
211
+ return httpRequest(onRequestFormat(_objectSpread({}, newParams)));
212
+ case 12:
213
+ _context.t1 = _context.sent;
214
+ requestResult = (0, _context.t0)(_context.t1);
206
215
  if (!(requestResult && requestResult.success)) {
207
- _context.next = 22;
216
+ _context.next = 24;
208
217
  break;
209
218
  }
210
219
  // onSearchAfter 处理请求结果
211
220
  newRequestResult = onSearchAfter ? onSearchAfter(requestResult, eventType) : requestResult;
212
221
  _newRequestResult$dat = newRequestResult.data, totalNum = _newRequestResult$dat.totalNum, _size = _newRequestResult$dat.pageSize, no = _newRequestResult$dat.pageNo, result = _newRequestResult$dat.result;
213
222
  if (!(totalNum === undefined || pageSize === undefined || no === undefined || result === undefined)) {
214
- _context.next = 19;
223
+ _context.next = 21;
215
224
  break;
216
225
  }
217
226
  CcsUtils.showLogWarning('分页返回对象,totalNum,pageSize,no,result不能为空');
@@ -219,7 +228,7 @@ var InternalProTable = function InternalProTable(props) {
219
228
  loading: false
220
229
  }));
221
230
  return _context.abrupt("return");
222
- case 19:
231
+ case 21:
223
232
  // 当前页无数据,返回上一页
224
233
  if (!result.length && no !== 1 && no !== undefined) {
225
234
  onRequest('reload', no - 1);
@@ -232,15 +241,15 @@ var InternalProTable = function InternalProTable(props) {
232
241
  totalNum: totalNum || 0
233
242
  });
234
243
  }
235
- _context.next = 23;
244
+ _context.next = 25;
236
245
  break;
237
- case 22:
246
+ case 24:
238
247
  setData(function (d) {
239
248
  return _objectSpread(_objectSpread({}, d), {}, {
240
249
  loading: false
241
250
  });
242
251
  });
243
- case 23:
252
+ case 25:
244
253
  case "end":
245
254
  return _context.stop();
246
255
  }
@@ -298,7 +307,7 @@ var InternalProTable = function InternalProTable(props) {
298
307
 
299
308
  // 初始查询
300
309
  useEffect(function () {
301
- if (init !== false && request) {
310
+ if (init !== false && httpRequest) {
302
311
  onRequest('initSearch');
303
312
  }
304
313
  }, [Object.keys(requestParam || {}).toString(), Object.values(requestParam || {}).toString()]);
@@ -20,6 +20,7 @@ function _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }
20
20
  import CcsUtils from '@ccs-ui/utils';
21
21
  import { useImperativeHandle, useState } from 'react';
22
22
  import { CcsTable } from '..';
23
+ import { useProTableInterceptor } from "../hooks/use-app";
23
24
  import { jsx as _jsx } from "react/jsx-runtime";
24
25
  var TableTree = function TableTree(_ref) {
25
26
  var data = _ref.data,
@@ -43,9 +44,14 @@ var TableTree = function TableTree(_ref) {
43
44
  rowKey = _ref2.rowKey,
44
45
  expandable = _ref2.expandable,
45
46
  columns = _ref2.columns,
46
- request = _ref2.request;
47
+ httpRequest = _ref2.request;
47
48
  var childrenColumnName = (expandable === null || expandable === void 0 ? void 0 : expandable.childrenColumnName) || 'children';
48
49
 
50
+ // 接口格式化方法
51
+ var _useProTableIntercept = useProTableInterceptor(),
52
+ onRequestFormat = _useProTableIntercept.onRequestFormat,
53
+ onResponseFormat = _useProTableIntercept.onResponseFormat;
54
+
49
55
  // 获取数据
50
56
  var _onRequestTree = /*#__PURE__*/function () {
51
57
  var _ref3 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
@@ -74,16 +80,18 @@ var TableTree = function TableTree(_ref) {
74
80
  loading: true
75
81
  });
76
82
  });
77
- _context.t0 = request;
83
+ _context.t0 = httpRequest;
78
84
  if (!_context.t0) {
79
- _context.next = 11;
85
+ _context.next = 13;
80
86
  break;
81
87
  }
82
- _context.next = 10;
83
- return request(_objectSpread({}, newParams));
84
- case 10:
85
- _context.t0 = _context.sent;
88
+ _context.t1 = onResponseFormat;
89
+ _context.next = 11;
90
+ return httpRequest(onRequestFormat(_objectSpread({}, newParams)));
86
91
  case 11:
92
+ _context.t2 = _context.sent;
93
+ _context.t0 = (0, _context.t1)(_context.t2);
94
+ case 13:
87
95
  requestResult = _context.t0;
88
96
  // 请求结果
89
97
  if (requestResult && requestResult.success) {
@@ -113,7 +121,7 @@ var TableTree = function TableTree(_ref) {
113
121
  });
114
122
  });
115
123
  }
116
- case 13:
124
+ case 15:
117
125
  case "end":
118
126
  return _context.stop();
119
127
  }
@@ -19,6 +19,7 @@ function _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len
19
19
  import { useRequest } from 'ahooks';
20
20
  import { Select } from 'antd';
21
21
  import { useEffect } from 'react';
22
+ import { useApiSelectInterceptor } from "../hooks/use-app";
22
23
  import { jsx as _jsx } from "react/jsx-runtime";
23
24
  export function getDataFromArrayField(data, fields) {
24
25
  if (!data || fields.length === 0) return;
@@ -49,41 +50,51 @@ export default function CcsApiSelect(_ref) {
49
50
  restProps = _objectWithoutProperties(_ref, _excluded);
50
51
  var labelField = _toConsumableArray(onIsArray((fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.label) || ['data', 'label']));
51
52
  var valueField = _toConsumableArray(onIsArray((fieldNames === null || fieldNames === void 0 ? void 0 : fieldNames.value) || ['data', 'value']));
53
+ //  接口格式化方法
54
+ var _useApiSelectIntercep = useApiSelectInterceptor(),
55
+ onRequestFormat = _useApiSelectIntercep.onRequestFormat,
56
+ onResponseFormat = _useApiSelectIntercep.onResponseFormat;
52
57
  var _useRequest = useRequest( /*#__PURE__*/function () {
53
58
  var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(params) {
54
59
  var result, value;
55
60
  return _regeneratorRuntime().wrap(function _callee$(_context) {
56
61
  while (1) switch (_context.prev = _context.next) {
57
62
  case 0:
58
- _context.next = 2;
59
- return onQuery(params);
63
+ if (onQuery) {
64
+ _context.next = 2;
65
+ break;
66
+ }
67
+ return _context.abrupt("return", []);
60
68
  case 2:
69
+ _context.next = 4;
70
+ return onResponseFormat(onQuery(onRequestFormat(params)));
71
+ case 4:
61
72
  result = _context.sent;
62
- case 3:
73
+ case 5:
63
74
  if (!(labelField.length > 0 || valueField.length > 0)) {
64
- _context.next = 12;
75
+ _context.next = 14;
65
76
  break;
66
77
  }
67
78
  if (!Array.isArray(result)) {
68
- _context.next = 7;
79
+ _context.next = 9;
69
80
  break;
70
81
  }
71
82
  result.forEach(function (r) {
72
83
  r.label = getDataFromArrayField(r, labelField);
73
84
  r.value = getDataFromArrayField(r, valueField);
74
85
  });
75
- return _context.abrupt("break", 12);
76
- case 7:
86
+ return _context.abrupt("break", 14);
87
+ case 9:
77
88
  labelField.shift();
78
89
  value = valueField.shift();
79
90
  if (value) {
80
91
  result = result[value];
81
92
  }
82
- _context.next = 3;
93
+ _context.next = 5;
83
94
  break;
84
- case 12:
95
+ case 14:
85
96
  return _context.abrupt("return", result);
86
- case 13:
97
+ case 15:
87
98
  case "end":
88
99
  return _context.stop();
89
100
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@ccs-ui/rc-pro",
3
- "version": "2.1.3",
3
+ "version": "2.1.4",
4
4
  "description": "",
5
5
  "license": "MIT",
6
6
  "author": {