@arim-aisdc/public-components 2.3.43 → 2.3.44

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,13 +1,13 @@
1
1
  import { TableMaxColumnType } from "../../type";
2
- export declare const numberSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
3
- export declare const stringSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
4
- export declare const numberOrStringSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
5
- export declare const timeSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
2
+ export declare const numberSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
3
+ export declare const stringSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
4
+ export declare const numberOrStringSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
5
+ export declare const timeSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
6
6
  declare const customSortFns: {
7
- numberSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
8
- stringSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
9
- timeSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
10
- numberOrStringSortFn: (rowA: any, rowB: any, columnId: string) => 1 | 0 | -1;
7
+ numberSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
8
+ stringSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
9
+ timeSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
10
+ numberOrStringSortFn: (rowA: any, rowB: any, columnId: string) => 0 | 1 | -1;
11
11
  };
12
12
  export default customSortFns;
13
13
  export type SortFnType = keyof typeof customSortFns | undefined;
@@ -4,8 +4,6 @@ export interface ExportOptions {
4
4
  fileName?: string;
5
5
  /**导出sheet名称 */
6
6
  sheetName?: string;
7
- /**自定义cell显示 */
8
- applyCellLogic?: (value: any, columnId: string, originalRow: any, column: TableMaxColumnType) => any;
9
7
  /**是否导出合计行 */
10
8
  isIncludeTotalRow?: boolean;
11
9
  /**根据接口获取导出数据,函数返回值是需要导出的数据 */
@@ -1,4 +1,8 @@
1
1
  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
+ function _toConsumableArray(arr) { return _arrayWithoutHoles(arr) || _iterableToArray(arr) || _unsupportedIterableToArray(arr) || _nonIterableSpread(); }
3
+ function _nonIterableSpread() { throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method."); }
4
+ function _iterableToArray(iter) { if (typeof Symbol !== "undefined" && iter[Symbol.iterator] != null || iter["@@iterator"] != null) return Array.from(iter); }
5
+ function _arrayWithoutHoles(arr) { if (Array.isArray(arr)) return _arrayLikeToArray(arr); }
2
6
  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); } }
3
7
  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); }); }; }
4
8
  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; }
@@ -24,7 +28,11 @@ import { ColumnType } from "../../TableMax";
24
28
  var defaultApplyCellLogic = function defaultApplyCellLogic(value, columnId, originalRow, column) {
25
29
  var cell = column.cell,
26
30
  accessorKey = column.accessorKey,
27
- id = column.id;
31
+ id = column.id,
32
+ exportValueFormat = column.exportValueFormat;
33
+ if (exportValueFormat) {
34
+ return exportValueFormat(originalRow);
35
+ }
28
36
 
29
37
  // 如果有自定义的cell渲染函数,需要执行它来获取显示值
30
38
  if (cell) {
@@ -44,22 +52,16 @@ var defaultApplyCellLogic = function defaultApplyCellLogic(value, columnId, orig
44
52
  if (cellResult === null || cellResult === undefined) {
45
53
  return '';
46
54
  }
47
- if (cellResult && _typeof(cellResult) === 'object') {
48
- console.log(cellResult, 'cellResult');
49
- // 如果是 BadgeComponent,提取 label 属性
50
- // if (cellResult.type && (cellResult.type.name === 'BadgeComponent' || cellResult.type.displayName === 'BadgeComponent')) {
51
- // return cellResult.props.label || value;
52
- // }
53
-
54
- // // 如果是带有className的span元素,返回原始数值
55
- // if (cellResult.props.className && (cellResult.props.className.includes('hasAlarm') || cellResult.props.className.includes('hasWarning'))) {
56
- // return value;
57
- // }
55
+ if (cellResult && _typeof(cellResult) === 'object' && cellResult !== null && cellResult !== void 0 && cellResult.props) {
56
+ var _cellResult$props;
57
+ // 处理 BadgeComponent
58
+ if ((_cellResult$props = cellResult.props) !== null && _cellResult$props !== void 0 && _cellResult$props.label) {
59
+ var _cellResult$props2;
60
+ return (_cellResult$props2 = cellResult.props) === null || _cellResult$props2 === void 0 ? void 0 : _cellResult$props2.label;
61
+ }
58
62
 
59
- // // 如果是其他React元素,尝试获取children
60
- // if (cellResult.props.children !== undefined) {
61
- // return cellResult.props.children;
62
- // }
63
+ // console.log(value, cellResult, 'cellResult')
64
+ return value;
63
65
  }
64
66
  return cellResult !== null && cellResult !== void 0 ? cellResult : '';
65
67
  } catch (error) {
@@ -88,12 +90,14 @@ export var useTableExport = function useTableExport(columns, hasTotalRow, totalD
88
90
  /**
89
91
  * 根据列配置处理数据
90
92
  */
91
- var processDataWithColumns = useCallback(function (data, includeTotal, applyCellLogic) {
93
+ var processDataWithColumns = useCallback(function (data, includeTotal) {
92
94
  if (!data || !Array.isArray(data)) return [];
93
95
  return data.map(function (item, dataIndex) {
94
96
  var processedItem = {};
95
97
  var isTotalData = dataIndex === (data === null || data === void 0 ? void 0 : data.length) - 1 && includeTotal;
96
- console.log(isTotalData, dataIndex, (data === null || data === void 0 ? void 0 : data.length) - 1, includeTotal, '555555');
98
+
99
+ // console.log(isTotalData, dataIndex, data?.length - 1, includeTotal, '555555')
100
+
97
101
  columns.filter(function (col) {
98
102
  return !EnableExportColumnTypeList.includes(col === null || col === void 0 ? void 0 : col.id) && !(col !== null && col !== void 0 && col.disabledExport);
99
103
  }).forEach(function (column, index) {
@@ -110,7 +114,6 @@ export var useTableExport = function useTableExport(columns, hasTotalRow, totalD
110
114
  var _item$accessorKey;
111
115
  value = value = (_item$accessorKey = item[accessorKey]) !== null && _item$accessorKey !== void 0 ? _item$accessorKey : item[id];
112
116
  } else {
113
- var _value;
114
117
  if (accessorFn) {
115
118
  value = accessorFn(item, index);
116
119
  }
@@ -123,8 +126,8 @@ export var useTableExport = function useTableExport(columns, hasTotalRow, totalD
123
126
  value = item[id];
124
127
  }
125
128
  // 4. 应用单元格渲染逻辑(转换为文本)
126
- // const finalApplyCellLogic = applyCellLogic || defaultApplyCellLogic;
127
- value = applyCellLogic ? applyCellLogic(value, id, item, column) : (_value = value) !== null && _value !== void 0 ? _value : '';
129
+ var finalApplyCellLogic = defaultApplyCellLogic;
130
+ value = finalApplyCellLogic(value, id, item, column);
128
131
  }
129
132
  processedItem[typeof header === "string" ? header : accessorKey !== null && accessorKey !== void 0 ? accessorKey : id] = value;
130
133
  });
@@ -184,11 +187,11 @@ export var useTableExport = function useTableExport(columns, hasTotalRow, totalD
184
187
  exportData = _context.sent;
185
188
  case 10:
186
189
  if (isIncludeTotalRow && hasTotalRow) {
187
- exportData.push(totalDatas);
190
+ exportData = [].concat(_toConsumableArray(exportData), [totalDatas]);
188
191
  }
189
192
  try {
190
193
  finalOptions = _objectSpread({}, customOptions); // 处理数据
191
- processedData = processDataWithColumns(exportData, isIncludeTotalRow && hasTotalRow, customOptions === null || customOptions === void 0 ? void 0 : customOptions.applyCellLogic);
194
+ processedData = processDataWithColumns(exportData, isIncludeTotalRow && hasTotalRow);
192
195
  console.log(processedData, 'processedData');
193
196
 
194
197
  // 创建工作簿
@@ -224,20 +227,4 @@ export var useTableExport = function useTableExport(columns, hasTotalRow, totalD
224
227
  exporting: exporting,
225
228
  exportTableData: exportTableData
226
229
  };
227
- };
228
-
229
- // /**
230
- // * 应用单元格逻辑转换为导出文本
231
- // */
232
- // const applyCellLogic = (value: any, columnId: string, originalRow: any, column: TableColumnType) => {
233
- // switch (columnId) {
234
- // case 'status':
235
- // // 状态列:将状态码转换为文本
236
- // const statusValue = originalRow.status as keyof typeof statusMap;
237
- // return statusMap[statusValue]?.label || value;
238
-
239
- // default:
240
- // // 其他列:直接返回值或空字符串
241
- // return value ?? '';
242
- // }
243
- // };
230
+ };
@@ -421,6 +421,8 @@ export interface TableMaxColumnType {
421
421
  openMemo?: boolean;
422
422
  /**禁止导出 */
423
423
  disabledExport?: boolean;
424
+ /**导出格式化函数*/
425
+ exportValueFormat?: (val: any) => any;
424
426
  }
425
427
  export type FormatFilterType = {
426
428
  field: string;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@arim-aisdc/public-components",
3
- "version": "2.3.43",
3
+ "version": "2.3.44",
4
4
  "description": "前端组件库",
5
5
  "license": "MIT",
6
6
  "main": "dist/index.js",