openxiangda 1.0.250 → 1.0.251

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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openxiangda",
3
- "version": "1.0.250",
3
+ "version": "1.0.251",
4
4
  "description": "OpenXiangda CLI, workspace build tools, runtime SDK, and form components.",
5
5
  "private": false,
6
6
  "bin": {
@@ -44395,6 +44395,19 @@ var queryFingerprint = (query, sourceKey) => JSON.stringify({
44395
44395
  fixedFilters: query.fixedFilters,
44396
44396
  sorts: query.sorts
44397
44397
  });
44398
+ var positiveInteger = (value, fallback) => {
44399
+ const numberValue = Number(value);
44400
+ return Number.isFinite(numberValue) && numberValue > 0 ? Math.floor(numberValue) : fallback;
44401
+ };
44402
+ var reconcileResultTotal = (result, query, rows) => {
44403
+ const reportedTotal = Number(result.total);
44404
+ const normalizedReportedTotal = Number.isFinite(reportedTotal) ? Math.max(0, reportedTotal) : 0;
44405
+ if (!rows.length) return normalizedReportedTotal;
44406
+ const currentPage = positiveInteger(result.currentPage, query.currentPage);
44407
+ const pageSize = positiveInteger(result.pageSize, query.pageSize);
44408
+ const visibleRowsLowerBound = (currentPage - 1) * pageSize + rows.length;
44409
+ return Math.max(normalizedReportedTotal, visibleRowsLowerBound);
44410
+ };
44398
44411
  var getRowKey = (rowKey, row) => {
44399
44412
  if (typeof rowKey === "function") return rowKey(row);
44400
44413
  return row[rowKey];
@@ -44711,8 +44724,9 @@ function AdminList(props) {
44711
44724
  try {
44712
44725
  const result = await requestedDataSource.query(query);
44713
44726
  if (!isCurrentRequest()) return;
44714
- setRows(result.rows || []);
44715
- setTotal(Math.max(0, Number(result.total || 0)));
44727
+ const resultRows = Array.isArray(result.rows) ? result.rows : [];
44728
+ setRows(resultRows);
44729
+ setTotal(reconcileResultTotal(result, query, resultRows));
44716
44730
  setAllowedColumnKeys(result.allowedColumnKeys);
44717
44731
  setHiddenFieldsCount(Math.max(0, Number(result.hiddenFieldsCount || 0)));
44718
44732
  } catch (requestError) {