@multiplatform.one/backoffice 7.28.1 → 7.29.0
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/README.md +1 -1
- package/dist/cjs/desk/DeskSurface.native.js.map +1 -1
- package/dist/cjs/form/DocFormScreen.cjs +167 -224
- package/dist/cjs/form/DocFormScreen.native.js +182 -259
- package/dist/cjs/form/DocFormScreen.native.js.map +1 -1
- package/dist/cjs/i18n/en.cjs +1 -0
- package/dist/cjs/i18n/en.native.js +1 -0
- package/dist/cjs/i18n/en.native.js.map +1 -1
- package/dist/cjs/list/ListBulkActionsBar.cjs +30 -18
- package/dist/cjs/list/ListBulkActionsBar.native.js +43 -31
- package/dist/cjs/list/ListBulkActionsBar.native.js.map +1 -1
- package/dist/cjs/list/sidebar-section.cjs +15 -7
- package/dist/cjs/list/sidebar-section.native.js +16 -7
- package/dist/cjs/list/sidebar-section.native.js.map +1 -1
- package/dist/cjs/report/DoctypeReportView.cjs +20 -374
- package/dist/cjs/report/DoctypeReportView.native.js +23 -455
- package/dist/cjs/report/DoctypeReportView.native.js.map +1 -1
- package/dist/cjs/report/QueryReportScreen.cjs +33 -23
- package/dist/cjs/report/QueryReportScreen.native.js +33 -23
- package/dist/cjs/report/QueryReportScreen.native.js.map +1 -1
- package/dist/cjs/report/queryReportColumns.cjs +3 -105
- package/dist/cjs/report/queryReportColumns.native.js +2 -129
- package/dist/cjs/report/queryReportColumns.native.js.map +1 -1
- package/dist/cjs/report/queryReportFilterBar.cjs +3 -4
- package/dist/cjs/report/queryReportFilterBar.native.js +3 -4
- package/dist/cjs/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/cjs/report/queryReportUrlState.cjs +2 -2
- package/dist/cjs/report/queryReportUrlState.native.js +2 -2
- package/dist/cjs/report/queryReportUrlState.native.js.map +1 -1
- package/dist/cjs/report/report-grid.cjs +2 -426
- package/dist/cjs/report/report-grid.native.js +1 -479
- package/dist/cjs/report/report-grid.native.js.map +1 -1
- package/dist/cjs/report/report-toolbar.cjs +2 -228
- package/dist/cjs/report/report-toolbar.native.js +1 -274
- package/dist/cjs/report/report-toolbar.native.js.map +1 -1
- package/dist/cjs/report/reportShapes.cjs +12 -383
- package/dist/cjs/report/reportShapes.native.js +12 -501
- package/dist/cjs/report/reportShapes.native.js.map +1 -1
- package/dist/cjs/report/reportViewModel.cjs +20 -360
- package/dist/cjs/report/reportViewModel.native.js +19 -627
- package/dist/cjs/report/reportViewModel.native.js.map +1 -1
- package/dist/cjs/report/savedReports.cjs +2 -106
- package/dist/cjs/report/savedReports.native.js +1 -132
- package/dist/cjs/report/savedReports.native.js.map +1 -1
- package/dist/cjs/report/useQueryReport.cjs +11 -219
- package/dist/cjs/report/useQueryReport.native.js +11 -244
- package/dist/cjs/report/useQueryReport.native.js.map +1 -1
- package/dist/cjs/shared/measures.cjs +3 -5
- package/dist/cjs/shared/measures.native.js +3 -5
- package/dist/cjs/shared/measures.native.js.map +1 -1
- package/dist/cjs/views/ReportView.cjs +3 -256
- package/dist/cjs/views/ReportView.native.js +3 -382
- package/dist/cjs/views/ReportView.native.js.map +1 -1
- package/dist/cjs/views/report-controls.cjs +6 -6
- package/dist/cjs/views/report-controls.native.js +6 -6
- package/dist/cjs/views/report-controls.native.js.map +1 -1
- package/dist/esm/desk/DeskSurface.mjs.map +1 -1
- package/dist/esm/desk/DeskSurface.native.js.map +1 -1
- package/dist/esm/form/DocFormScreen.mjs +169 -226
- package/dist/esm/form/DocFormScreen.mjs.map +1 -1
- package/dist/esm/form/DocFormScreen.native.js +184 -261
- package/dist/esm/form/DocFormScreen.native.js.map +1 -1
- package/dist/esm/i18n/en.mjs +1 -0
- package/dist/esm/i18n/en.mjs.map +1 -1
- package/dist/esm/i18n/en.native.js +1 -0
- package/dist/esm/i18n/en.native.js.map +1 -1
- package/dist/esm/list/ListBulkActionsBar.mjs +31 -19
- package/dist/esm/list/ListBulkActionsBar.mjs.map +1 -1
- package/dist/esm/list/ListBulkActionsBar.native.js +37 -25
- package/dist/esm/list/ListBulkActionsBar.native.js.map +1 -1
- package/dist/esm/list/sidebar-section.mjs +16 -8
- package/dist/esm/list/sidebar-section.mjs.map +1 -1
- package/dist/esm/list/sidebar-section.native.js +17 -8
- package/dist/esm/list/sidebar-section.native.js.map +1 -1
- package/dist/esm/report/DoctypeReportView.mjs +21 -375
- package/dist/esm/report/DoctypeReportView.mjs.map +1 -1
- package/dist/esm/report/DoctypeReportView.native.js +24 -456
- package/dist/esm/report/DoctypeReportView.native.js.map +1 -1
- package/dist/esm/report/QueryReportScreen.mjs +26 -16
- package/dist/esm/report/QueryReportScreen.mjs.map +1 -1
- package/dist/esm/report/QueryReportScreen.native.js +26 -16
- package/dist/esm/report/QueryReportScreen.native.js.map +1 -1
- package/dist/esm/report/queryReportColumns.mjs +1 -103
- package/dist/esm/report/queryReportColumns.mjs.map +1 -1
- package/dist/esm/report/queryReportColumns.native.js +1 -117
- package/dist/esm/report/queryReportColumns.native.js.map +1 -1
- package/dist/esm/report/queryReportFilterBar.mjs +1 -2
- package/dist/esm/report/queryReportFilterBar.mjs.map +1 -1
- package/dist/esm/report/queryReportFilterBar.native.js +1 -2
- package/dist/esm/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/esm/report/queryReportUrlState.mjs +1 -1
- package/dist/esm/report/queryReportUrlState.native.js +1 -1
- package/dist/esm/report/report-grid.mjs +1 -425
- package/dist/esm/report/report-grid.mjs.map +1 -1
- package/dist/esm/report/report-grid.native.js +1 -468
- package/dist/esm/report/report-grid.native.js.map +1 -1
- package/dist/esm/report/report-toolbar.mjs +2 -228
- package/dist/esm/report/report-toolbar.mjs.map +1 -1
- package/dist/esm/report/report-toolbar.native.js +2 -264
- package/dist/esm/report/report-toolbar.native.js.map +1 -1
- package/dist/esm/report/reportShapes.mjs +2 -373
- package/dist/esm/report/reportShapes.mjs.map +1 -1
- package/dist/esm/report/reportShapes.native.js +2 -491
- package/dist/esm/report/reportShapes.native.js.map +1 -1
- package/dist/esm/report/reportViewModel.mjs +2 -342
- package/dist/esm/report/reportViewModel.mjs.map +1 -1
- package/dist/esm/report/reportViewModel.native.js +2 -610
- package/dist/esm/report/reportViewModel.native.js.map +1 -1
- package/dist/esm/report/savedReports.mjs +1 -105
- package/dist/esm/report/savedReports.mjs.map +1 -1
- package/dist/esm/report/savedReports.native.js +1 -132
- package/dist/esm/report/savedReports.native.js.map +1 -1
- package/dist/esm/report/useQueryReport.mjs +2 -210
- package/dist/esm/report/useQueryReport.mjs.map +1 -1
- package/dist/esm/report/useQueryReport.native.js +2 -235
- package/dist/esm/report/useQueryReport.native.js.map +1 -1
- package/dist/esm/shared/measures.mjs +1 -3
- package/dist/esm/shared/measures.mjs.map +1 -1
- package/dist/esm/shared/measures.native.js +1 -3
- package/dist/esm/shared/measures.native.js.map +1 -1
- package/dist/esm/views/ReportView.mjs +3 -256
- package/dist/esm/views/ReportView.mjs.map +1 -1
- package/dist/esm/views/ReportView.native.js +3 -382
- package/dist/esm/views/ReportView.native.js.map +1 -1
- package/dist/esm/views/report-controls.mjs +3 -3
- package/dist/esm/views/report-controls.mjs.map +1 -1
- package/dist/esm/views/report-controls.native.js +3 -3
- package/dist/esm/views/report-controls.native.js.map +1 -1
- package/dist/jsx/desk/DeskSurface.mjs.map +1 -1
- package/dist/jsx/desk/DeskSurface.native.js.map +1 -1
- package/dist/jsx/form/DocFormScreen.mjs +169 -226
- package/dist/jsx/form/DocFormScreen.mjs.map +1 -1
- package/dist/jsx/form/DocFormScreen.native.js +182 -259
- package/dist/jsx/form/DocFormScreen.native.js.map +1 -1
- package/dist/jsx/i18n/en.mjs +1 -0
- package/dist/jsx/i18n/en.mjs.map +1 -1
- package/dist/jsx/i18n/en.native.js +1 -0
- package/dist/jsx/i18n/en.native.js.map +1 -1
- package/dist/jsx/list/ListBulkActionsBar.mjs +31 -19
- package/dist/jsx/list/ListBulkActionsBar.mjs.map +1 -1
- package/dist/jsx/list/ListBulkActionsBar.native.js +43 -31
- package/dist/jsx/list/ListBulkActionsBar.native.js.map +1 -1
- package/dist/jsx/list/sidebar-section.mjs +16 -8
- package/dist/jsx/list/sidebar-section.mjs.map +1 -1
- package/dist/jsx/list/sidebar-section.native.js +16 -7
- package/dist/jsx/list/sidebar-section.native.js.map +1 -1
- package/dist/jsx/report/DoctypeReportView.mjs +21 -375
- package/dist/jsx/report/DoctypeReportView.mjs.map +1 -1
- package/dist/jsx/report/DoctypeReportView.native.js +23 -455
- package/dist/jsx/report/DoctypeReportView.native.js.map +1 -1
- package/dist/jsx/report/QueryReportScreen.mjs +26 -16
- package/dist/jsx/report/QueryReportScreen.mjs.map +1 -1
- package/dist/jsx/report/QueryReportScreen.native.js +33 -23
- package/dist/jsx/report/QueryReportScreen.native.js.map +1 -1
- package/dist/jsx/report/queryReportColumns.mjs +1 -103
- package/dist/jsx/report/queryReportColumns.mjs.map +1 -1
- package/dist/jsx/report/queryReportColumns.native.js +2 -129
- package/dist/jsx/report/queryReportColumns.native.js.map +1 -1
- package/dist/jsx/report/queryReportFilterBar.mjs +1 -2
- package/dist/jsx/report/queryReportFilterBar.mjs.map +1 -1
- package/dist/jsx/report/queryReportFilterBar.native.js +3 -4
- package/dist/jsx/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/jsx/report/queryReportUrlState.mjs +1 -1
- package/dist/jsx/report/queryReportUrlState.native.js +2 -2
- package/dist/jsx/report/queryReportUrlState.native.js.map +1 -1
- package/dist/jsx/report/report-grid.mjs +1 -425
- package/dist/jsx/report/report-grid.mjs.map +1 -1
- package/dist/jsx/report/report-grid.native.js +1 -479
- package/dist/jsx/report/report-grid.native.js.map +1 -1
- package/dist/jsx/report/report-toolbar.mjs +2 -228
- package/dist/jsx/report/report-toolbar.mjs.map +1 -1
- package/dist/jsx/report/report-toolbar.native.js +1 -274
- package/dist/jsx/report/report-toolbar.native.js.map +1 -1
- package/dist/jsx/report/reportShapes.mjs +2 -373
- package/dist/jsx/report/reportShapes.mjs.map +1 -1
- package/dist/jsx/report/reportShapes.native.js +12 -501
- package/dist/jsx/report/reportShapes.native.js.map +1 -1
- package/dist/jsx/report/reportViewModel.mjs +2 -342
- package/dist/jsx/report/reportViewModel.mjs.map +1 -1
- package/dist/jsx/report/reportViewModel.native.js +19 -627
- package/dist/jsx/report/reportViewModel.native.js.map +1 -1
- package/dist/jsx/report/savedReports.mjs +1 -105
- package/dist/jsx/report/savedReports.mjs.map +1 -1
- package/dist/jsx/report/savedReports.native.js +1 -132
- package/dist/jsx/report/savedReports.native.js.map +1 -1
- package/dist/jsx/report/useQueryReport.mjs +2 -210
- package/dist/jsx/report/useQueryReport.mjs.map +1 -1
- package/dist/jsx/report/useQueryReport.native.js +11 -244
- package/dist/jsx/report/useQueryReport.native.js.map +1 -1
- package/dist/jsx/shared/measures.mjs +1 -3
- package/dist/jsx/shared/measures.mjs.map +1 -1
- package/dist/jsx/shared/measures.native.js +3 -5
- package/dist/jsx/shared/measures.native.js.map +1 -1
- package/dist/jsx/views/ReportView.mjs +3 -256
- package/dist/jsx/views/ReportView.mjs.map +1 -1
- package/dist/jsx/views/ReportView.native.js +3 -382
- package/dist/jsx/views/ReportView.native.js.map +1 -1
- package/dist/jsx/views/report-controls.mjs +3 -3
- package/dist/jsx/views/report-controls.mjs.map +1 -1
- package/dist/jsx/views/report-controls.native.js +6 -6
- package/dist/jsx/views/report-controls.native.js.map +1 -1
- package/package.json +12 -12
- package/src/backofficeScreens.designLaw.spec.ts +0 -5
- package/src/desk/DeskSurface.tsx +4 -7
- package/src/form/DocFormScreen.chrome.spec.ts +77 -0
- package/src/form/DocFormScreen.guest.screen.spec.tsx +175 -0
- package/src/form/DocFormScreen.rights.spec.tsx +7 -3
- package/src/form/DocFormScreen.tsx +214 -315
- package/src/i18n/en.ts +1 -0
- package/src/list/ListBulkActionsBar.rights.spec.tsx +134 -0
- package/src/list/ListBulkActionsBar.screen.spec.tsx +7 -1
- package/src/list/ListBulkActionsBar.tsx +76 -57
- package/src/list/ListFilterBar.screen.spec.tsx +14 -13
- package/src/list/sidebar-section.tsx +11 -3
- package/src/report/DoctypeReportView.tsx +28 -550
- package/src/report/QueryReportScreen.spec.tsx +75 -1
- package/src/report/QueryReportScreen.tsx +38 -22
- package/src/report/queryReportColumns.tsx +4 -123
- package/src/report/queryReportFilterBar.tsx +3 -5
- package/src/report/queryReportUrlState.ts +1 -1
- package/src/report/report-grid.tsx +4 -529
- package/src/report/report-toolbar.tsx +4 -308
- package/src/report/reportShapes.ts +25 -613
- package/src/report/reportShim.spec.ts +162 -0
- package/src/report/reportViewModel.ts +32 -605
- package/src/report/savedReports.ts +4 -161
- package/src/report/useQueryReport.ts +9 -347
- package/src/shared/measures.ts +3 -11
- package/src/views/ReportView.screen.spec.tsx +25 -20
- package/src/views/ReportView.tsx +7 -439
- package/src/views/report-controls.tsx +12 -20
- package/types/desk/DeskSurface.d.ts.map +1 -1
- package/types/form/DocFormScreen.d.ts +2 -2
- package/types/form/DocFormScreen.d.ts.map +1 -1
- package/types/i18n/en.d.ts +1 -0
- package/types/i18n/en.d.ts.map +1 -1
- package/types/list/ListBulkActionsBar.d.ts.map +1 -1
- package/types/list/sidebar-section.d.ts.map +1 -1
- package/types/report/DoctypeReportView.d.ts.map +1 -1
- package/types/report/QueryReportScreen.d.ts +1 -1
- package/types/report/QueryReportScreen.d.ts.map +1 -1
- package/types/report/queryReportColumns.d.ts +2 -11
- package/types/report/queryReportColumns.d.ts.map +1 -1
- package/types/report/queryReportFilterBar.d.ts +1 -1
- package/types/report/queryReportFilterBar.d.ts.map +1 -1
- package/types/report/queryReportUrlState.d.ts +1 -1
- package/types/report/queryReportUrlState.d.ts.map +1 -1
- package/types/report/report-grid.d.ts +2 -19
- package/types/report/report-grid.d.ts.map +1 -1
- package/types/report/report-toolbar.d.ts +2 -29
- package/types/report/report-toolbar.d.ts.map +1 -1
- package/types/report/reportShapes.d.ts +2 -115
- package/types/report/reportShapes.d.ts.map +1 -1
- package/types/report/reportViewModel.d.ts +2 -135
- package/types/report/reportViewModel.d.ts.map +1 -1
- package/types/report/savedReports.d.ts +2 -18
- package/types/report/savedReports.d.ts.map +1 -1
- package/types/report/useQueryReport.d.ts +2 -35
- package/types/report/useQueryReport.d.ts.map +1 -1
- package/types/shared/measures.d.ts +1 -2
- package/types/shared/measures.d.ts.map +1 -1
- package/types/views/ReportView.d.ts +3 -22
- package/types/views/ReportView.d.ts.map +1 -1
- package/types/views/report-controls.d.ts +2 -5
- package/types/views/report-controls.d.ts.map +1 -1
- package/src/report/report-grid.spec.tsx +0 -175
- package/src/report/report-toolbar.spec.tsx +0 -90
- package/src/report/reportShapes.spec.ts +0 -391
- package/src/report/reportViewModel.spec.ts +0 -393
|
@@ -39,81 +39,24 @@ __export(DoctypeReportView_exports, {
|
|
|
39
39
|
});
|
|
40
40
|
module.exports = __toCommonJS(DoctypeReportView_exports);
|
|
41
41
|
var import_jsx_runtime = require("react/jsx-runtime");
|
|
42
|
-
var
|
|
43
|
-
var import_forms = require("@multiplatform.one/forms");
|
|
44
|
-
var import_frappe = require("@multiplatform.one/frappe");
|
|
45
|
-
var import_platform = require("@multiplatform.one/platform");
|
|
46
|
-
var import_store = require("@multiplatform.one/store");
|
|
47
|
-
var import_table = require("@multiplatform.one/table");
|
|
42
|
+
var import_frappe_ui = require("@multiplatform.one/frappe-ui");
|
|
48
43
|
var import_react = __toESM(require("react"));
|
|
49
|
-
var import_react_i18next = require("react-i18next");
|
|
50
44
|
var import_BackofficeProvider = require("../config/BackofficeProvider.native.js");
|
|
51
|
-
var import_i18n = require("../i18n/index.native.js");
|
|
52
45
|
var import_scope = require("../desk/scope.native.js");
|
|
53
|
-
var import_useDoctypeMeta = require("../shared/useDoctypeMeta.native.js");
|
|
54
|
-
var import_connection = require("../views/connection.native.js");
|
|
55
46
|
var import_ViewStates = require("../views/ViewStates.native.js");
|
|
56
|
-
var import_report_grid = require("./report-grid.native.js");
|
|
57
|
-
var import_report_toolbar = require("./report-toolbar.native.js");
|
|
58
|
-
var import_savedReports = require("./savedReports.native.js");
|
|
59
|
-
var import_reportViewModel = require("./reportViewModel.native.js");
|
|
60
|
-
function _instanceof(left, right) {
|
|
61
|
-
"@swc/helpers - instanceof";
|
|
62
|
-
|
|
63
|
-
if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
|
|
64
|
-
return !!right[Symbol.hasInstance](left);
|
|
65
|
-
} else {
|
|
66
|
-
return left instanceof right;
|
|
67
|
-
}
|
|
68
|
-
}
|
|
69
|
-
var EMPTY_FILTERS = [];
|
|
70
|
-
var COLUMN_FILTER_DEBOUNCE_MS = 350;
|
|
71
|
-
function columnsStorageKey(doctype) {
|
|
72
|
-
return `backoffice.report.columns.${doctype}`;
|
|
73
|
-
}
|
|
74
|
-
async function readStoredColumns(doctype) {
|
|
75
|
-
try {
|
|
76
|
-
var raw = await Promise.resolve(import_store.storage.getItem(columnsStorageKey(doctype)));
|
|
77
|
-
if (!raw) return void 0;
|
|
78
|
-
var parsed = JSON.parse(raw);
|
|
79
|
-
if (Array.isArray(parsed) && parsed.every(function (entry) {
|
|
80
|
-
return typeof entry === "string";
|
|
81
|
-
})) {
|
|
82
|
-
return parsed;
|
|
83
|
-
}
|
|
84
|
-
} catch (unused) {}
|
|
85
|
-
return void 0;
|
|
86
|
-
}
|
|
87
|
-
function persistStoredColumns(doctype, fieldnames) {
|
|
88
|
-
try {
|
|
89
|
-
void Promise.resolve(import_store.storage.setItem(columnsStorageKey(doctype), JSON.stringify(fieldnames)));
|
|
90
|
-
} catch (unused) {}
|
|
91
|
-
}
|
|
92
47
|
function DoctypeReportView(param) {
|
|
93
48
|
var {
|
|
94
49
|
doctype,
|
|
95
50
|
filtersParam,
|
|
96
51
|
initialFilters
|
|
97
52
|
} = param;
|
|
98
|
-
var _ref, _ref1, _ref2;
|
|
99
53
|
var _params_report;
|
|
100
|
-
var {
|
|
101
|
-
t
|
|
102
|
-
} = (0, import_react_i18next.useTranslation)(import_i18n.BACKOFFICE_I18N_NAMESPACE);
|
|
103
54
|
var deskScope = (0, import_scope.useDeskScope)();
|
|
104
55
|
var navigator = (0, import_BackofficeProvider.useBackofficeNavigator)();
|
|
105
56
|
var paths = (0, import_BackofficeProvider.useBackofficePaths)();
|
|
106
57
|
var {
|
|
107
58
|
params
|
|
108
59
|
} = (0, import_BackofficeProvider.useBackofficeLocation)();
|
|
109
|
-
var connection = (0, import_connection.useViewConnection)();
|
|
110
|
-
var fixtureMode = Boolean(connection === null || connection === void 0 ? void 0 : connection.fixtures);
|
|
111
|
-
var {
|
|
112
|
-
meta,
|
|
113
|
-
loading: metaLoading,
|
|
114
|
-
error: metaError
|
|
115
|
-
} = (0, import_useDoctypeMeta.useDoctypeMeta)(doctype);
|
|
116
|
-
var savedReports = (0, import_savedReports.useSavedReports)(doctype);
|
|
117
60
|
var rawReportParam = typeof params.report === "string" ? params.report : (_params_report = params.report) === null || _params_report === void 0 ? void 0 : _params_report[0];
|
|
118
61
|
var currentReport = (0, import_react.useMemo)(function () {
|
|
119
62
|
if (!rawReportParam) return null;
|
|
@@ -123,412 +66,37 @@ function DoctypeReportView(param) {
|
|
|
123
66
|
return rawReportParam;
|
|
124
67
|
}
|
|
125
68
|
}, [rawReportParam]);
|
|
126
|
-
var allColumns = (0, import_react.useMemo)(function () {
|
|
127
|
-
return (0, import_reportViewModel.reportColumnsFromMeta)(meta);
|
|
128
|
-
}, [meta]);
|
|
129
|
-
var defaultFieldnames = (0, import_react.useMemo)(function () {
|
|
130
|
-
return (0, import_reportViewModel.defaultReportFieldnames)(meta);
|
|
131
|
-
}, [meta]);
|
|
132
|
-
var [storedColumns, setStoredColumns] = (0, import_react.useState)(void 0);
|
|
133
|
-
var [selectedOverride, setSelectedOverride] = (0, import_react.useState)(null);
|
|
134
|
-
(0, import_react.useEffect)(function () {
|
|
135
|
-
if (fixtureMode) return;
|
|
136
|
-
var cancelled = false;
|
|
137
|
-
void readStoredColumns(doctype).then(function (stored) {
|
|
138
|
-
if (!cancelled) setStoredColumns(stored);
|
|
139
|
-
});
|
|
140
|
-
return function () {
|
|
141
|
-
cancelled = true;
|
|
142
|
-
};
|
|
143
|
-
}, [doctype, fixtureMode]);
|
|
144
|
-
var selectedFieldnames = (_ref = selectedOverride !== null && selectedOverride !== void 0 ? selectedOverride : storedColumns) !== null && _ref !== void 0 ? _ref : defaultFieldnames;
|
|
145
|
-
var selectedColumns = (0, import_react.useMemo)(function () {
|
|
146
|
-
return (0, import_reportViewModel.resolveSelectedColumns)(allColumns, selectedFieldnames);
|
|
147
|
-
}, [allColumns, selectedFieldnames]);
|
|
148
69
|
var urlFilters = (0, import_react.useMemo)(function () {
|
|
149
|
-
return (0,
|
|
70
|
+
return (0, import_frappe_ui.parseReportFiltersParam)(filtersParam);
|
|
150
71
|
}, [filtersParam]);
|
|
151
|
-
var
|
|
152
|
-
var [reportFilters, setReportFilters] = (0, import_react.useState)(null);
|
|
153
|
-
var baseFilters = filtersCleared ? EMPTY_FILTERS : (_ref1 = (_ref2 = reportFilters !== null && reportFilters !== void 0 ? reportFilters : urlFilters) !== null && _ref2 !== void 0 ? _ref2 : initialFilters) !== null && _ref1 !== void 0 ? _ref1 : EMPTY_FILTERS;
|
|
154
|
-
var [filterDrafts, setFilterDrafts] = (0, import_react.useState)({});
|
|
155
|
-
var [committedFilters, setCommittedFilters] = (0, import_react.useState)({});
|
|
156
|
-
(0, import_react.useEffect)(function () {
|
|
157
|
-
var handle = setTimeout(function () {
|
|
158
|
-
setCommittedFilters(function (previous) {
|
|
159
|
-
return JSON.stringify(previous) === JSON.stringify(filterDrafts) ? previous : filterDrafts;
|
|
160
|
-
});
|
|
161
|
-
}, COLUMN_FILTER_DEBOUNCE_MS);
|
|
162
|
-
return function () {
|
|
163
|
-
return clearTimeout(handle);
|
|
164
|
-
};
|
|
165
|
-
}, [filterDrafts]);
|
|
166
|
-
var columnTuples = (0, import_react.useMemo)(function () {
|
|
167
|
-
return (0, import_reportViewModel.columnFilterTuples)(selectedColumns, committedFilters);
|
|
168
|
-
}, [selectedColumns, committedFilters]);
|
|
169
|
-
var effectiveFilters = (0, import_react.useMemo)(function () {
|
|
170
|
-
return [...deskScope, ...baseFilters, ...columnTuples];
|
|
171
|
-
}, [deskScope, baseFilters, columnTuples]);
|
|
172
|
-
var metaSort = (0, import_react.useMemo)(function () {
|
|
173
|
-
return {
|
|
174
|
-
field: ((meta === null || meta === void 0 ? void 0 : meta.sort_field) || "modified").split(" ")[0],
|
|
175
|
-
order: ((meta === null || meta === void 0 ? void 0 : meta.sort_order) || "DESC").toLowerCase() === "asc" ? "asc" : "desc"
|
|
176
|
-
};
|
|
177
|
-
}, [meta === null || meta === void 0 ? void 0 : meta.sort_field, meta === null || meta === void 0 ? void 0 : meta.sort_order]);
|
|
178
|
-
var [sortOverride, setSortOverride] = (0, import_react.useState)(null);
|
|
179
|
-
var sort = sortOverride !== null && sortOverride !== void 0 ? sortOverride : metaSort;
|
|
180
|
-
var [groupBy, setGroupBy] = (0, import_react.useState)(null);
|
|
181
|
-
var [pageSize, setPageSize] = (0, import_react.useState)(import_reportViewModel.DEFAULT_REPORT_PAGE_SIZE);
|
|
182
|
-
var [page, setPage] = (0, import_react.useState)(0);
|
|
183
|
-
(0, import_react.useEffect)(function () {
|
|
184
|
-
setSelectedOverride(null);
|
|
185
|
-
setStoredColumns(void 0);
|
|
186
|
-
setSortOverride(null);
|
|
187
|
-
setGroupBy(null);
|
|
188
|
-
setPage(0);
|
|
189
|
-
setPageSize(import_reportViewModel.DEFAULT_REPORT_PAGE_SIZE);
|
|
190
|
-
setFilterDrafts({});
|
|
191
|
-
setCommittedFilters({});
|
|
192
|
-
setFiltersCleared(false);
|
|
193
|
-
setReportFilters(null);
|
|
194
|
-
}, [doctype]);
|
|
195
|
-
(0, import_react.useEffect)(function () {
|
|
196
|
-
return setFiltersCleared(false);
|
|
197
|
-
}, [filtersParam]);
|
|
198
|
-
var filtersKey = (0, import_react.useMemo)(function () {
|
|
199
|
-
return JSON.stringify(effectiveFilters);
|
|
200
|
-
}, [effectiveFilters]);
|
|
201
|
-
(0, import_react.useEffect)(function () {
|
|
202
|
-
setPage(0);
|
|
203
|
-
}, [filtersKey, pageSize, groupBy]);
|
|
204
|
-
(0, import_react.useEffect)(function () {
|
|
205
|
-
if (!currentReport) {
|
|
206
|
-
setReportFilters(null);
|
|
207
|
-
return;
|
|
208
|
-
}
|
|
209
|
-
var cancelled = false;
|
|
210
|
-
void savedReports.load(currentReport).then(function (config) {
|
|
211
|
-
var _config_groupBy;
|
|
212
|
-
if (cancelled || !config) return;
|
|
213
|
-
setSelectedOverride(config.fieldnames.length > 0 ? config.fieldnames : null);
|
|
214
|
-
setReportFilters(config.filters);
|
|
215
|
-
setFilterDrafts({});
|
|
216
|
-
setCommittedFilters({});
|
|
217
|
-
setFiltersCleared(false);
|
|
218
|
-
if (config.sort) setSortOverride(config.sort);
|
|
219
|
-
if (config.pageSize && import_reportViewModel.REPORT_PAGE_SIZES.some(function (size) {
|
|
220
|
-
return size === config.pageSize;
|
|
221
|
-
})) {
|
|
222
|
-
setPageSize(config.pageSize);
|
|
223
|
-
}
|
|
224
|
-
setGroupBy((_config_groupBy = config.groupBy) !== null && _config_groupBy !== void 0 ? _config_groupBy : null);
|
|
225
|
-
});
|
|
226
|
-
return function () {
|
|
227
|
-
cancelled = true;
|
|
228
|
-
};
|
|
229
|
-
},
|
|
230
|
-
// savedReports.load changes identity with its report list; reloading the
|
|
231
|
-
// config on list refreshes would clobber in-progress edits — key on the
|
|
232
|
-
// selected report (and doctype via load's closure) only.
|
|
233
|
-
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
234
|
-
[currentReport, doctype]);
|
|
235
|
-
var handleToggleColumn = (0, import_react.useCallback)(function (fieldname) {
|
|
236
|
-
setSelectedOverride(function (previous) {
|
|
237
|
-
var _ref3;
|
|
238
|
-
var current = (_ref3 = previous !== null && previous !== void 0 ? previous : storedColumns) !== null && _ref3 !== void 0 ? _ref3 : defaultFieldnames;
|
|
239
|
-
var next = current.includes(fieldname) ? current.length === 1 ? current : current.filter(function (entry) {
|
|
240
|
-
return entry !== fieldname;
|
|
241
|
-
}) : [...current, fieldname];
|
|
242
|
-
if (!fixtureMode && !currentReport) persistStoredColumns(doctype, next);
|
|
243
|
-
return next;
|
|
244
|
-
});
|
|
245
|
-
}, [storedColumns, defaultFieldnames, fixtureMode, currentReport, doctype]);
|
|
246
|
-
var handleResetColumns = (0, import_react.useCallback)(function () {
|
|
247
|
-
setSelectedOverride(defaultFieldnames);
|
|
248
|
-
setStoredColumns(void 0);
|
|
249
|
-
if (!fixtureMode) persistStoredColumns(doctype, defaultFieldnames);
|
|
250
|
-
}, [defaultFieldnames, fixtureMode, doctype]);
|
|
251
|
-
var fetchFields = (0, import_react.useMemo)(function () {
|
|
252
|
-
var fields = /* @__PURE__ */new Set(["name", sort.field]);
|
|
253
|
-
var _iteratorNormalCompletion = true,
|
|
254
|
-
_didIteratorError = false,
|
|
255
|
-
_iteratorError = void 0;
|
|
256
|
-
try {
|
|
257
|
-
for (var _iterator = selectedColumns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
258
|
-
var column = _step.value;
|
|
259
|
-
fields.add(column.fieldname);
|
|
260
|
-
}
|
|
261
|
-
} catch (err) {
|
|
262
|
-
_didIteratorError = true;
|
|
263
|
-
_iteratorError = err;
|
|
264
|
-
} finally {
|
|
265
|
-
try {
|
|
266
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
267
|
-
_iterator.return();
|
|
268
|
-
}
|
|
269
|
-
} finally {
|
|
270
|
-
if (_didIteratorError) {
|
|
271
|
-
throw _iteratorError;
|
|
272
|
-
}
|
|
273
|
-
}
|
|
274
|
-
}
|
|
275
|
-
if (groupBy) fields.add(groupBy);
|
|
276
|
-
return [...fields];
|
|
277
|
-
}, [selectedColumns, sort.field, groupBy]);
|
|
278
|
-
var [syncError, setSyncError] = (0, import_react.useState)(null);
|
|
279
|
-
var handleSyncError = (0, import_react.useCallback)(function (error) {
|
|
280
|
-
setSyncError(_instanceof(error, Error) ? error : new Error(String(error)));
|
|
281
|
-
}, []);
|
|
282
|
-
var [retryGen, setRetryGen] = (0, import_react.useState)(0);
|
|
283
|
-
var collectionConfig = (0, import_react.useMemo)(function () {
|
|
284
|
-
return connection && meta && retryGen >= 0 ? connection : void 0;
|
|
285
|
-
}, [connection, meta, retryGen]);
|
|
286
|
-
var collection = (0, import_frappe.useFrappeCollection)(collectionConfig, doctype, {
|
|
287
|
-
fields: fetchFields,
|
|
288
|
-
filters: effectiveFilters,
|
|
289
|
-
orderBy: {
|
|
290
|
-
field: sort.field,
|
|
291
|
-
order: sort.order === "asc" ? import_frappe.Order.Asc : import_frappe.Order.Desc
|
|
292
|
-
},
|
|
293
|
-
onSyncError: handleSyncError
|
|
294
|
-
});
|
|
295
|
-
(0, import_react.useEffect)(function () {
|
|
296
|
-
return setSyncError(null);
|
|
297
|
-
}, [collection]);
|
|
298
|
-
var {
|
|
299
|
-
data: rowsData,
|
|
300
|
-
isLoading: rowsLoading
|
|
301
|
-
} = (0, import_frappe.useLiveQuery)(function (q) {
|
|
302
|
-
return collection ? q.from({
|
|
303
|
-
_report: collection
|
|
304
|
-
}) : null;
|
|
305
|
-
}, [collection]);
|
|
306
|
-
var orderedRows = (0, import_react.useMemo)(function () {
|
|
307
|
-
return (0, import_reportViewModel.orderReportRows)(rowsData !== null && rowsData !== void 0 ? rowsData : [], sort, groupBy);
|
|
308
|
-
}, [rowsData, sort, groupBy]);
|
|
309
|
-
var total = orderedRows.length;
|
|
310
|
-
var pageCount = Math.max(1, Math.ceil(total / pageSize));
|
|
311
|
-
var effectivePage = Math.min(page, pageCount - 1);
|
|
312
|
-
var gridRows = (0, import_react.useMemo)(function () {
|
|
313
|
-
return (0, import_reportViewModel.buildGridRows)(orderedRows, effectivePage * pageSize, pageSize, groupBy);
|
|
314
|
-
}, [orderedRows, effectivePage, pageSize, groupBy]);
|
|
315
|
-
var totals = (0, import_react.useMemo)(function () {
|
|
316
|
-
return (0, import_reportViewModel.computeTotals)(selectedColumns, orderedRows);
|
|
317
|
-
}, [selectedColumns, orderedRows]);
|
|
318
|
-
var groupByColumn = groupBy ? allColumns.find(function (column) {
|
|
319
|
-
return column.fieldname === groupBy;
|
|
320
|
-
}) : void 0;
|
|
321
|
-
var handleOpenRow = (0, import_react.useCallback)(function (name) {
|
|
322
|
-
return navigator.navigate(paths.form(doctype, name));
|
|
323
|
-
}, [navigator, paths, doctype]);
|
|
324
|
-
var handleOpenLink = (0, import_react.useCallback)(function (targetDoctype, name) {
|
|
72
|
+
var openForm = (0, import_react.useCallback)(function (targetDoctype, name) {
|
|
325
73
|
return navigator.navigate(paths.form(targetDoctype, name));
|
|
326
74
|
}, [navigator, paths]);
|
|
327
|
-
var
|
|
75
|
+
var selectReport = (0, import_react.useCallback)(function (name) {
|
|
328
76
|
var base = paths.view(doctype, "report");
|
|
329
77
|
navigator.replace(name ? `${base}?report=${encodeURIComponent(name)}` : base);
|
|
330
|
-
if (!name) {
|
|
331
|
-
setReportFilters(null);
|
|
332
|
-
setSelectedOverride(null);
|
|
333
|
-
setSortOverride(null);
|
|
334
|
-
setGroupBy(null);
|
|
335
|
-
}
|
|
336
78
|
}, [navigator, paths, doctype]);
|
|
337
|
-
var
|
|
338
|
-
|
|
339
|
-
|
|
340
|
-
|
|
341
|
-
|
|
342
|
-
void
|
|
343
|
-
|
|
344
|
-
|
|
345
|
-
|
|
346
|
-
|
|
347
|
-
|
|
348
|
-
|
|
349
|
-
}
|
|
350
|
-
|
|
351
|
-
|
|
352
|
-
|
|
353
|
-
|
|
354
|
-
|
|
355
|
-
|
|
356
|
-
})
|
|
357
|
-
});
|
|
358
|
-
if (savedName !== currentReport) handleSelectReport(savedName);
|
|
359
|
-
}).catch(function (error) {
|
|
360
|
-
(0, import_components.notify)({
|
|
361
|
-
severity: "error",
|
|
362
|
-
scope: "page",
|
|
363
|
-
body: _instanceof(error, Error) ? error.message : t("report.saveFailed", "Could not save the report")
|
|
364
|
-
});
|
|
365
|
-
});
|
|
366
|
-
}, [savedReports, selectedFieldnames, effectiveFilters, sort, pageSize, groupBy, totals.length, currentReport, handleSelectReport, t]);
|
|
367
|
-
var handleDeleteReport = (0, import_react.useCallback)(function (name) {
|
|
368
|
-
void savedReports.remove(name).then(function () {
|
|
369
|
-
(0, import_components.notify)({
|
|
370
|
-
severity: "success",
|
|
371
|
-
scope: "page",
|
|
372
|
-
body: t("report.deleteDone", {
|
|
373
|
-
defaultValue: "Deleted report \u201C{{name}}\u201D",
|
|
374
|
-
name
|
|
375
|
-
})
|
|
376
|
-
});
|
|
377
|
-
if (name === currentReport) handleSelectReport(null);
|
|
378
|
-
}).catch(function (error) {
|
|
379
|
-
(0, import_components.notify)({
|
|
380
|
-
severity: "error",
|
|
381
|
-
scope: "page",
|
|
382
|
-
body: _instanceof(error, Error) ? error.message : t("report.deleteFailed", "Could not delete the report")
|
|
383
|
-
});
|
|
384
|
-
});
|
|
385
|
-
}, [savedReports, currentReport, handleSelectReport, t]);
|
|
386
|
-
var handleExport = (0, import_react.useCallback)(function () {
|
|
387
|
-
if (!import_components.isWeb) {
|
|
388
|
-
(0, import_components.notify)({
|
|
389
|
-
severity: "warning",
|
|
390
|
-
scope: "page",
|
|
391
|
-
body: t("report.exportUnsupported", "CSV export needs a browser download \u2014 not available on this platform yet")
|
|
79
|
+
var clearUrlFilters = (0, import_react.useCallback)(function () {
|
|
80
|
+
if (urlFilters) navigator.replace(paths.view(doctype, "report"));
|
|
81
|
+
}, [urlFilters, navigator, paths, doctype]);
|
|
82
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_frappe_ui.FrappeReportBuilder, {
|
|
83
|
+
doctype,
|
|
84
|
+
filters: urlFilters !== null && urlFilters !== void 0 ? urlFilters : initialFilters,
|
|
85
|
+
scopeFilters: deskScope,
|
|
86
|
+
onClearFilters: clearUrlFilters,
|
|
87
|
+
report: currentReport,
|
|
88
|
+
onReportChange: selectReport,
|
|
89
|
+
onOpenRow: function onOpenRow(name) {
|
|
90
|
+
return openForm(doctype, name);
|
|
91
|
+
},
|
|
92
|
+
onOpenLink: openForm,
|
|
93
|
+
loading: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ViewStates.ViewLoading, {}),
|
|
94
|
+
error: function error(error) {
|
|
95
|
+
return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ViewStates.ViewError, {
|
|
96
|
+
doctype,
|
|
97
|
+
error
|
|
392
98
|
});
|
|
393
|
-
return;
|
|
394
99
|
}
|
|
395
|
-
(0, import_platform.downloadBlob)(new Blob([(0, import_reportViewModel.buildReportCsv)(selectedColumns, orderedRows)], {
|
|
396
|
-
type: "text/csv;charset=utf-8;"
|
|
397
|
-
}), `${doctype}_report.csv`);
|
|
398
|
-
(0, import_components.notify)({
|
|
399
|
-
severity: "success",
|
|
400
|
-
scope: "page",
|
|
401
|
-
body: t("report.exportDone", {
|
|
402
|
-
count: orderedRows.length,
|
|
403
|
-
defaultValue_one: "Exported {{count}} row to CSV",
|
|
404
|
-
defaultValue_other: "Exported {{count}} rows to CSV"
|
|
405
|
-
})
|
|
406
|
-
});
|
|
407
|
-
}, [selectedColumns, orderedRows, doctype, t]);
|
|
408
|
-
var handleColumnFilterChange = (0, import_react.useCallback)(function (fieldname, value) {
|
|
409
|
-
setFilterDrafts(function (previous) {
|
|
410
|
-
if (value === "") {
|
|
411
|
-
if (!(fieldname in previous)) return previous;
|
|
412
|
-
var {
|
|
413
|
-
[fieldname]: _dropped,
|
|
414
|
-
...rest
|
|
415
|
-
} = previous;
|
|
416
|
-
return rest;
|
|
417
|
-
}
|
|
418
|
-
return {
|
|
419
|
-
...previous,
|
|
420
|
-
[fieldname]: value
|
|
421
|
-
};
|
|
422
|
-
});
|
|
423
|
-
}, []);
|
|
424
|
-
var handleClearColumnFilters = (0, import_react.useCallback)(function () {
|
|
425
|
-
setFilterDrafts({});
|
|
426
|
-
setCommittedFilters({});
|
|
427
|
-
}, []);
|
|
428
|
-
var activeColumnFilterCount = columnTuples.length;
|
|
429
|
-
if (metaLoading && !meta) return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ViewStates.ViewLoading, {});
|
|
430
|
-
if (metaError && !meta) return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ViewStates.ViewError, {
|
|
431
|
-
doctype,
|
|
432
|
-
error: metaError
|
|
433
|
-
});
|
|
434
|
-
var body;
|
|
435
|
-
if (syncError) {
|
|
436
|
-
body = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.EmptyState, {
|
|
437
|
-
intent: "error",
|
|
438
|
-
title: t("report.loadFailed", "Couldn't load report rows"),
|
|
439
|
-
description: syncError.message,
|
|
440
|
-
action: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
441
|
-
size: "$3",
|
|
442
|
-
onPress: function onPress() {
|
|
443
|
-
setSyncError(null);
|
|
444
|
-
setRetryGen(function (generation) {
|
|
445
|
-
return generation + 1;
|
|
446
|
-
});
|
|
447
|
-
},
|
|
448
|
-
children: t("report.retry", "Retry")
|
|
449
|
-
})
|
|
450
|
-
});
|
|
451
|
-
} else if (rowsLoading && total === 0) {
|
|
452
|
-
body = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_ViewStates.ViewLoading, {});
|
|
453
|
-
} else if (total === 0) {
|
|
454
|
-
var hasFilters = effectiveFilters.length > 0;
|
|
455
|
-
body = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.EmptyState, {
|
|
456
|
-
title: t("report.emptyTitle", "No results"),
|
|
457
|
-
description: hasFilters ? t("report.emptyFiltered", "No rows match the current filters") : t("report.emptyDescription", {
|
|
458
|
-
defaultValue: "There are no {{doctype}} records yet",
|
|
459
|
-
doctype
|
|
460
|
-
}),
|
|
461
|
-
action: hasFilters ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
|
|
462
|
-
size: "$3",
|
|
463
|
-
onPress: function onPress() {
|
|
464
|
-
handleClearColumnFilters();
|
|
465
|
-
handleClearBaseFilters();
|
|
466
|
-
},
|
|
467
|
-
children: t("report.clearAllFilters", "Clear all filters")
|
|
468
|
-
}) : void 0
|
|
469
|
-
});
|
|
470
|
-
} else {
|
|
471
|
-
body = /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_report_grid.ReportGrid, {
|
|
472
|
-
columns: selectedColumns,
|
|
473
|
-
rows: gridRows,
|
|
474
|
-
sort,
|
|
475
|
-
onSortChange: setSortOverride,
|
|
476
|
-
columnFilters: filterDrafts,
|
|
477
|
-
onColumnFilterChange: handleColumnFilterChange,
|
|
478
|
-
onOpenRow: handleOpenRow,
|
|
479
|
-
onOpenLink: handleOpenLink,
|
|
480
|
-
totals,
|
|
481
|
-
groupByColumn
|
|
482
|
-
});
|
|
483
|
-
}
|
|
484
|
-
var content = /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.YStack, {
|
|
485
|
-
flex: 1,
|
|
486
|
-
minWidth: 0,
|
|
487
|
-
children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_report_toolbar.ReportToolbar, {
|
|
488
|
-
columns: allColumns,
|
|
489
|
-
selected: selectedFieldnames,
|
|
490
|
-
onToggleColumn: handleToggleColumn,
|
|
491
|
-
onResetColumns: handleResetColumns,
|
|
492
|
-
groupBy,
|
|
493
|
-
onGroupByChange: setGroupBy,
|
|
494
|
-
baseFilters,
|
|
495
|
-
onClearBaseFilters: baseFilters.length > 0 ? handleClearBaseFilters : void 0,
|
|
496
|
-
columnFilterCount: activeColumnFilterCount,
|
|
497
|
-
onClearColumnFilters: handleClearColumnFilters,
|
|
498
|
-
savedReports: savedReports.reports,
|
|
499
|
-
currentReport,
|
|
500
|
-
onSelectReport: handleSelectReport,
|
|
501
|
-
onSaveReport: handleSaveReport,
|
|
502
|
-
onDeleteReport: handleDeleteReport,
|
|
503
|
-
onExport: handleExport,
|
|
504
|
-
exportDisabled: total === 0
|
|
505
|
-
}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.YStack, {
|
|
506
|
-
flex: 1,
|
|
507
|
-
minWidth: 0,
|
|
508
|
-
paddingHorizontal: "$3",
|
|
509
|
-
children: body
|
|
510
|
-
}), total > 0 && !syncError && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.YStack, {
|
|
511
|
-
paddingHorizontal: "$3",
|
|
512
|
-
paddingVertical: "$2",
|
|
513
|
-
children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table.DataTablePagination, {
|
|
514
|
-
pagination: {
|
|
515
|
-
pageIndex: effectivePage,
|
|
516
|
-
pageSize,
|
|
517
|
-
totalCount: total,
|
|
518
|
-
totalPages: pageCount
|
|
519
|
-
},
|
|
520
|
-
onPaginationChange: function onPaginationChange(next) {
|
|
521
|
-
setPage(next.pageIndex);
|
|
522
|
-
setPageSize(next.pageSize);
|
|
523
|
-
},
|
|
524
|
-
pageSizeOptions: [...import_reportViewModel.REPORT_PAGE_SIZES],
|
|
525
|
-
compact: true
|
|
526
|
-
})
|
|
527
|
-
})]
|
|
528
|
-
});
|
|
529
|
-
return import_components.isWeb ? content : /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.ScrollView, {
|
|
530
|
-
flex: 1,
|
|
531
|
-
children: content
|
|
532
100
|
});
|
|
533
101
|
}
|
|
534
102
|
//# sourceMappingURL=DoctypeReportView.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","DoctypeReportView_exports","DoctypeReportView","module","exports","import_jsx_runtime","require","import_components","import_forms","import_frappe","import_platform","import_store","import_table","import_react","import_react_i18next","import_BackofficeProvider","import_i18n","import_scope","import_useDoctypeMeta","import_connection","import_ViewStates","import_report_grid","import_report_toolbar","import_savedReports","import_reportViewModel","_instanceof","left","right","Symbol","hasInstance","EMPTY_FILTERS","COLUMN_FILTER_DEBOUNCE_MS","columnsStorageKey","doctype","readStoredColumns","raw","Promise","resolve","storage","getItem","parsed","JSON","parse","Array","isArray","every","entry","unused","persistStoredColumns","fieldnames","setItem","stringify","param","filtersParam","initialFilters","_ref","_ref1","_ref2","_params_report","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","deskScope","useDeskScope","navigator","useBackofficeNavigator","paths","useBackofficePaths","params","useBackofficeLocation","connection","useViewConnection","fixtureMode","Boolean","fixtures","meta","loading","metaLoading","error","metaError","useDoctypeMeta","savedReports","useSavedReports","rawReportParam","report","currentReport","useMemo","decodeURIComponent","allColumns","reportColumnsFromMeta","defaultFieldnames","defaultReportFieldnames","storedColumns","setStoredColumns","useState","selectedOverride","setSelectedOverride","useEffect","cancelled","then","stored","selectedFieldnames","selectedColumns","resolveSelectedColumns","urlFilters","parseReportFiltersParam","filtersCleared","setFiltersCleared","reportFilters","setReportFilters","baseFilters","filterDrafts","setFilterDrafts","committedFilters","setCommittedFilters","handle","setTimeout","previous","clearTimeout","columnTuples","columnFilterTuples","effectiveFilters","metaSort","field","sort_field","split","order","sort_order","toLowerCase","sortOverride","setSortOverride","sort","groupBy","setGroupBy","pageSize","setPageSize","DEFAULT_REPORT_PAGE_SIZE","page","setPage","filtersKey","load","config","_config_groupBy","length","filters","REPORT_PAGE_SIZES","some","size","handleToggleColumn","useCallback","fieldname","_ref3","current","next","includes","filter","handleResetColumns","fetchFields","fields","Set","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","done","column","add","err","return","syncError","setSyncError","handleSyncError","Error","String","retryGen","setRetryGen","collectionConfig","collection","useFrappeCollection","orderBy","Order","Asc","Desc","onSyncError","data","rowsData","isLoading","rowsLoading","useLiveQuery","q","_report","orderedRows","orderReportRows","total","pageCount","Math","max","ceil","effectivePage","min","gridRows","buildGridRows","totals","computeTotals","groupByColumn","find","handleOpenRow","navigate","form","handleOpenLink","targetDoctype","handleSelectReport","base","view","replace","encodeURIComponent","handleClearBaseFilters","handleSaveReport","save","addTotals","savedName","notify","severity","scope","body","defaultValue","catch","message","handleDeleteReport","remove"],"sources":["../../../src/report/DoctypeReportView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","DoctypeReportView_exports","DoctypeReportView","module","exports","import_jsx_runtime","require","import_frappe_ui","import_react","import_BackofficeProvider","import_scope","import_ViewStates","param","doctype","filtersParam","initialFilters","_params_report","deskScope","useDeskScope","navigator","useBackofficeNavigator","paths","useBackofficePaths","params","useBackofficeLocation","rawReportParam","report","currentReport","useMemo","decodeURIComponent","unused","urlFilters","parseReportFiltersParam"],"sources":["../../../src/report/DoctypeReportView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -6,12 +6,11 @@ import { DownloadSimpleIcon } from "@phosphor-icons/react";
|
|
|
6
6
|
import { useCallback, useEffect, useMemo, useRef } from "react";
|
|
7
7
|
import { useTranslation } from "react-i18next";
|
|
8
8
|
import { useBackofficeLocation, useBackofficeNavigator, useBackofficePaths } from "../config/BackofficeProvider.mjs";
|
|
9
|
+
import { buildQueryReportColumns, buildQueryReportCsv, defaultFilterValues, isEmptyFilterValue, scrubFieldname, stripReportHtml as stripHtml, useQueryReport } from "@multiplatform.one/frappe-ui";
|
|
9
10
|
import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.mjs";
|
|
10
|
-
import { buildQueryReportColumns, buildQueryReportCsv } from "./queryReportColumns.mjs";
|
|
11
11
|
import { QueryReportFilterBar, queryReportFilterLabel } from "./queryReportFilterBar.mjs";
|
|
12
12
|
import { parseQueryReportFiltersParam, serializeQueryReportFiltersParam } from "./queryReportUrlState.mjs";
|
|
13
|
-
import {
|
|
14
|
-
import { jsx, jsxs } from "react/jsx-runtime";
|
|
13
|
+
import { Fragment, jsx, jsxs } from "react/jsx-runtime";
|
|
15
14
|
const PAGE_SIZES = [20, 100, 500];
|
|
16
15
|
function QueryReportScreen({
|
|
17
16
|
reportName,
|
|
@@ -139,6 +138,15 @@ function QueryReportScreen({
|
|
|
139
138
|
}),
|
|
140
139
|
description: t("queryReport.disabledDescription", "Enable the report from its Report document to run it")
|
|
141
140
|
});
|
|
141
|
+
} else if (report.error && report.refused) {
|
|
142
|
+
body = /* @__PURE__ */jsx(EmptyState, {
|
|
143
|
+
testID: "frappe-report-not-permitted",
|
|
144
|
+
title: t("queryReport.notPermitted", {
|
|
145
|
+
defaultValue: `You can't run "{{report}}"`,
|
|
146
|
+
report: title
|
|
147
|
+
}),
|
|
148
|
+
description: report.error.message
|
|
149
|
+
});
|
|
142
150
|
} else if (report.error) {
|
|
143
151
|
body = /* @__PURE__ */jsxs(YStack, {
|
|
144
152
|
flex: 1,
|
|
@@ -218,19 +226,21 @@ function QueryReportScreen({
|
|
|
218
226
|
alignItems: "center",
|
|
219
227
|
children: [report.running && !report.loading ? /* @__PURE__ */jsx(Spinner, {
|
|
220
228
|
size: "small"
|
|
221
|
-
}) : null, /* @__PURE__ */
|
|
222
|
-
|
|
223
|
-
|
|
224
|
-
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
|
|
229
|
-
|
|
230
|
-
|
|
231
|
-
|
|
232
|
-
|
|
233
|
-
|
|
229
|
+
}) : null, report.refused ? null : /* @__PURE__ */jsxs(Fragment, {
|
|
230
|
+
children: [/* @__PURE__ */jsx(Button, {
|
|
231
|
+
size: "$2",
|
|
232
|
+
chromeless: true,
|
|
233
|
+
onPress: report.reload,
|
|
234
|
+
disabled: report.loading,
|
|
235
|
+
children: t("queryReport.refresh", "Refresh")
|
|
236
|
+
}), /* @__PURE__ */jsx(Button, {
|
|
237
|
+
size: "$2",
|
|
238
|
+
chromeless: true,
|
|
239
|
+
icon: DownloadSimpleIcon,
|
|
240
|
+
onPress: handleExport,
|
|
241
|
+
disabled: report.loading || report.rows.length === 0,
|
|
242
|
+
children: t("queryReport.exportCsv", "Export CSV")
|
|
243
|
+
})]
|
|
234
244
|
})]
|
|
235
245
|
})
|
|
236
246
|
}), report.serverMessage ? /* @__PURE__ */jsx(Text, {
|