@multiplatform.one/backoffice 7.28.1 → 7.29.1

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.
Files changed (269) hide show
  1. package/README.md +1 -1
  2. package/dist/cjs/desk/DeskSurface.native.js.map +1 -1
  3. package/dist/cjs/form/DocFormScreen.cjs +167 -224
  4. package/dist/cjs/form/DocFormScreen.native.js +182 -259
  5. package/dist/cjs/form/DocFormScreen.native.js.map +1 -1
  6. package/dist/cjs/i18n/en.cjs +1 -0
  7. package/dist/cjs/i18n/en.native.js +1 -0
  8. package/dist/cjs/i18n/en.native.js.map +1 -1
  9. package/dist/cjs/list/ListBulkActionsBar.cjs +30 -18
  10. package/dist/cjs/list/ListBulkActionsBar.native.js +43 -31
  11. package/dist/cjs/list/ListBulkActionsBar.native.js.map +1 -1
  12. package/dist/cjs/list/sidebar-section.cjs +15 -7
  13. package/dist/cjs/list/sidebar-section.native.js +16 -7
  14. package/dist/cjs/list/sidebar-section.native.js.map +1 -1
  15. package/dist/cjs/report/DoctypeReportView.cjs +20 -374
  16. package/dist/cjs/report/DoctypeReportView.native.js +23 -455
  17. package/dist/cjs/report/DoctypeReportView.native.js.map +1 -1
  18. package/dist/cjs/report/QueryReportScreen.cjs +33 -23
  19. package/dist/cjs/report/QueryReportScreen.native.js +33 -23
  20. package/dist/cjs/report/QueryReportScreen.native.js.map +1 -1
  21. package/dist/cjs/report/queryReportColumns.cjs +3 -105
  22. package/dist/cjs/report/queryReportColumns.native.js +2 -129
  23. package/dist/cjs/report/queryReportColumns.native.js.map +1 -1
  24. package/dist/cjs/report/queryReportFilterBar.cjs +3 -4
  25. package/dist/cjs/report/queryReportFilterBar.native.js +3 -4
  26. package/dist/cjs/report/queryReportFilterBar.native.js.map +1 -1
  27. package/dist/cjs/report/queryReportUrlState.cjs +2 -2
  28. package/dist/cjs/report/queryReportUrlState.native.js +2 -2
  29. package/dist/cjs/report/queryReportUrlState.native.js.map +1 -1
  30. package/dist/cjs/report/report-grid.cjs +2 -426
  31. package/dist/cjs/report/report-grid.native.js +1 -479
  32. package/dist/cjs/report/report-grid.native.js.map +1 -1
  33. package/dist/cjs/report/report-toolbar.cjs +2 -228
  34. package/dist/cjs/report/report-toolbar.native.js +1 -274
  35. package/dist/cjs/report/report-toolbar.native.js.map +1 -1
  36. package/dist/cjs/report/reportShapes.cjs +12 -383
  37. package/dist/cjs/report/reportShapes.native.js +12 -501
  38. package/dist/cjs/report/reportShapes.native.js.map +1 -1
  39. package/dist/cjs/report/reportViewModel.cjs +20 -360
  40. package/dist/cjs/report/reportViewModel.native.js +19 -627
  41. package/dist/cjs/report/reportViewModel.native.js.map +1 -1
  42. package/dist/cjs/report/savedReports.cjs +2 -106
  43. package/dist/cjs/report/savedReports.native.js +1 -132
  44. package/dist/cjs/report/savedReports.native.js.map +1 -1
  45. package/dist/cjs/report/useQueryReport.cjs +11 -219
  46. package/dist/cjs/report/useQueryReport.native.js +11 -244
  47. package/dist/cjs/report/useQueryReport.native.js.map +1 -1
  48. package/dist/cjs/shared/measures.cjs +3 -5
  49. package/dist/cjs/shared/measures.native.js +3 -5
  50. package/dist/cjs/shared/measures.native.js.map +1 -1
  51. package/dist/cjs/views/ReportView.cjs +3 -256
  52. package/dist/cjs/views/ReportView.native.js +3 -382
  53. package/dist/cjs/views/ReportView.native.js.map +1 -1
  54. package/dist/cjs/views/report-controls.cjs +6 -6
  55. package/dist/cjs/views/report-controls.native.js +6 -6
  56. package/dist/cjs/views/report-controls.native.js.map +1 -1
  57. package/dist/esm/desk/DeskSurface.mjs.map +1 -1
  58. package/dist/esm/desk/DeskSurface.native.js.map +1 -1
  59. package/dist/esm/form/DocFormScreen.mjs +169 -226
  60. package/dist/esm/form/DocFormScreen.mjs.map +1 -1
  61. package/dist/esm/form/DocFormScreen.native.js +184 -261
  62. package/dist/esm/form/DocFormScreen.native.js.map +1 -1
  63. package/dist/esm/i18n/en.mjs +1 -0
  64. package/dist/esm/i18n/en.mjs.map +1 -1
  65. package/dist/esm/i18n/en.native.js +1 -0
  66. package/dist/esm/i18n/en.native.js.map +1 -1
  67. package/dist/esm/list/ListBulkActionsBar.mjs +31 -19
  68. package/dist/esm/list/ListBulkActionsBar.mjs.map +1 -1
  69. package/dist/esm/list/ListBulkActionsBar.native.js +37 -25
  70. package/dist/esm/list/ListBulkActionsBar.native.js.map +1 -1
  71. package/dist/esm/list/sidebar-section.mjs +16 -8
  72. package/dist/esm/list/sidebar-section.mjs.map +1 -1
  73. package/dist/esm/list/sidebar-section.native.js +17 -8
  74. package/dist/esm/list/sidebar-section.native.js.map +1 -1
  75. package/dist/esm/report/DoctypeReportView.mjs +21 -375
  76. package/dist/esm/report/DoctypeReportView.mjs.map +1 -1
  77. package/dist/esm/report/DoctypeReportView.native.js +24 -456
  78. package/dist/esm/report/DoctypeReportView.native.js.map +1 -1
  79. package/dist/esm/report/QueryReportScreen.mjs +26 -16
  80. package/dist/esm/report/QueryReportScreen.mjs.map +1 -1
  81. package/dist/esm/report/QueryReportScreen.native.js +26 -16
  82. package/dist/esm/report/QueryReportScreen.native.js.map +1 -1
  83. package/dist/esm/report/queryReportColumns.mjs +1 -103
  84. package/dist/esm/report/queryReportColumns.mjs.map +1 -1
  85. package/dist/esm/report/queryReportColumns.native.js +1 -117
  86. package/dist/esm/report/queryReportColumns.native.js.map +1 -1
  87. package/dist/esm/report/queryReportFilterBar.mjs +1 -2
  88. package/dist/esm/report/queryReportFilterBar.mjs.map +1 -1
  89. package/dist/esm/report/queryReportFilterBar.native.js +1 -2
  90. package/dist/esm/report/queryReportFilterBar.native.js.map +1 -1
  91. package/dist/esm/report/queryReportUrlState.mjs +1 -1
  92. package/dist/esm/report/queryReportUrlState.native.js +1 -1
  93. package/dist/esm/report/report-grid.mjs +1 -425
  94. package/dist/esm/report/report-grid.mjs.map +1 -1
  95. package/dist/esm/report/report-grid.native.js +1 -468
  96. package/dist/esm/report/report-grid.native.js.map +1 -1
  97. package/dist/esm/report/report-toolbar.mjs +2 -228
  98. package/dist/esm/report/report-toolbar.mjs.map +1 -1
  99. package/dist/esm/report/report-toolbar.native.js +2 -264
  100. package/dist/esm/report/report-toolbar.native.js.map +1 -1
  101. package/dist/esm/report/reportShapes.mjs +2 -373
  102. package/dist/esm/report/reportShapes.mjs.map +1 -1
  103. package/dist/esm/report/reportShapes.native.js +2 -491
  104. package/dist/esm/report/reportShapes.native.js.map +1 -1
  105. package/dist/esm/report/reportViewModel.mjs +2 -342
  106. package/dist/esm/report/reportViewModel.mjs.map +1 -1
  107. package/dist/esm/report/reportViewModel.native.js +2 -610
  108. package/dist/esm/report/reportViewModel.native.js.map +1 -1
  109. package/dist/esm/report/savedReports.mjs +1 -105
  110. package/dist/esm/report/savedReports.mjs.map +1 -1
  111. package/dist/esm/report/savedReports.native.js +1 -132
  112. package/dist/esm/report/savedReports.native.js.map +1 -1
  113. package/dist/esm/report/useQueryReport.mjs +2 -210
  114. package/dist/esm/report/useQueryReport.mjs.map +1 -1
  115. package/dist/esm/report/useQueryReport.native.js +2 -235
  116. package/dist/esm/report/useQueryReport.native.js.map +1 -1
  117. package/dist/esm/shared/measures.mjs +1 -3
  118. package/dist/esm/shared/measures.mjs.map +1 -1
  119. package/dist/esm/shared/measures.native.js +1 -3
  120. package/dist/esm/shared/measures.native.js.map +1 -1
  121. package/dist/esm/views/ReportView.mjs +3 -256
  122. package/dist/esm/views/ReportView.mjs.map +1 -1
  123. package/dist/esm/views/ReportView.native.js +3 -382
  124. package/dist/esm/views/ReportView.native.js.map +1 -1
  125. package/dist/esm/views/report-controls.mjs +3 -3
  126. package/dist/esm/views/report-controls.mjs.map +1 -1
  127. package/dist/esm/views/report-controls.native.js +3 -3
  128. package/dist/esm/views/report-controls.native.js.map +1 -1
  129. package/dist/jsx/desk/DeskSurface.mjs.map +1 -1
  130. package/dist/jsx/desk/DeskSurface.native.js.map +1 -1
  131. package/dist/jsx/form/DocFormScreen.mjs +169 -226
  132. package/dist/jsx/form/DocFormScreen.mjs.map +1 -1
  133. package/dist/jsx/form/DocFormScreen.native.js +182 -259
  134. package/dist/jsx/form/DocFormScreen.native.js.map +1 -1
  135. package/dist/jsx/i18n/en.mjs +1 -0
  136. package/dist/jsx/i18n/en.mjs.map +1 -1
  137. package/dist/jsx/i18n/en.native.js +1 -0
  138. package/dist/jsx/i18n/en.native.js.map +1 -1
  139. package/dist/jsx/list/ListBulkActionsBar.mjs +31 -19
  140. package/dist/jsx/list/ListBulkActionsBar.mjs.map +1 -1
  141. package/dist/jsx/list/ListBulkActionsBar.native.js +43 -31
  142. package/dist/jsx/list/ListBulkActionsBar.native.js.map +1 -1
  143. package/dist/jsx/list/sidebar-section.mjs +16 -8
  144. package/dist/jsx/list/sidebar-section.mjs.map +1 -1
  145. package/dist/jsx/list/sidebar-section.native.js +16 -7
  146. package/dist/jsx/list/sidebar-section.native.js.map +1 -1
  147. package/dist/jsx/report/DoctypeReportView.mjs +21 -375
  148. package/dist/jsx/report/DoctypeReportView.mjs.map +1 -1
  149. package/dist/jsx/report/DoctypeReportView.native.js +23 -455
  150. package/dist/jsx/report/DoctypeReportView.native.js.map +1 -1
  151. package/dist/jsx/report/QueryReportScreen.mjs +26 -16
  152. package/dist/jsx/report/QueryReportScreen.mjs.map +1 -1
  153. package/dist/jsx/report/QueryReportScreen.native.js +33 -23
  154. package/dist/jsx/report/QueryReportScreen.native.js.map +1 -1
  155. package/dist/jsx/report/queryReportColumns.mjs +1 -103
  156. package/dist/jsx/report/queryReportColumns.mjs.map +1 -1
  157. package/dist/jsx/report/queryReportColumns.native.js +2 -129
  158. package/dist/jsx/report/queryReportColumns.native.js.map +1 -1
  159. package/dist/jsx/report/queryReportFilterBar.mjs +1 -2
  160. package/dist/jsx/report/queryReportFilterBar.mjs.map +1 -1
  161. package/dist/jsx/report/queryReportFilterBar.native.js +3 -4
  162. package/dist/jsx/report/queryReportFilterBar.native.js.map +1 -1
  163. package/dist/jsx/report/queryReportUrlState.mjs +1 -1
  164. package/dist/jsx/report/queryReportUrlState.native.js +2 -2
  165. package/dist/jsx/report/queryReportUrlState.native.js.map +1 -1
  166. package/dist/jsx/report/report-grid.mjs +1 -425
  167. package/dist/jsx/report/report-grid.mjs.map +1 -1
  168. package/dist/jsx/report/report-grid.native.js +1 -479
  169. package/dist/jsx/report/report-grid.native.js.map +1 -1
  170. package/dist/jsx/report/report-toolbar.mjs +2 -228
  171. package/dist/jsx/report/report-toolbar.mjs.map +1 -1
  172. package/dist/jsx/report/report-toolbar.native.js +1 -274
  173. package/dist/jsx/report/report-toolbar.native.js.map +1 -1
  174. package/dist/jsx/report/reportShapes.mjs +2 -373
  175. package/dist/jsx/report/reportShapes.mjs.map +1 -1
  176. package/dist/jsx/report/reportShapes.native.js +12 -501
  177. package/dist/jsx/report/reportShapes.native.js.map +1 -1
  178. package/dist/jsx/report/reportViewModel.mjs +2 -342
  179. package/dist/jsx/report/reportViewModel.mjs.map +1 -1
  180. package/dist/jsx/report/reportViewModel.native.js +19 -627
  181. package/dist/jsx/report/reportViewModel.native.js.map +1 -1
  182. package/dist/jsx/report/savedReports.mjs +1 -105
  183. package/dist/jsx/report/savedReports.mjs.map +1 -1
  184. package/dist/jsx/report/savedReports.native.js +1 -132
  185. package/dist/jsx/report/savedReports.native.js.map +1 -1
  186. package/dist/jsx/report/useQueryReport.mjs +2 -210
  187. package/dist/jsx/report/useQueryReport.mjs.map +1 -1
  188. package/dist/jsx/report/useQueryReport.native.js +11 -244
  189. package/dist/jsx/report/useQueryReport.native.js.map +1 -1
  190. package/dist/jsx/shared/measures.mjs +1 -3
  191. package/dist/jsx/shared/measures.mjs.map +1 -1
  192. package/dist/jsx/shared/measures.native.js +3 -5
  193. package/dist/jsx/shared/measures.native.js.map +1 -1
  194. package/dist/jsx/views/ReportView.mjs +3 -256
  195. package/dist/jsx/views/ReportView.mjs.map +1 -1
  196. package/dist/jsx/views/ReportView.native.js +3 -382
  197. package/dist/jsx/views/ReportView.native.js.map +1 -1
  198. package/dist/jsx/views/report-controls.mjs +3 -3
  199. package/dist/jsx/views/report-controls.mjs.map +1 -1
  200. package/dist/jsx/views/report-controls.native.js +6 -6
  201. package/dist/jsx/views/report-controls.native.js.map +1 -1
  202. package/package.json +12 -12
  203. package/src/backofficeScreens.designLaw.spec.ts +0 -5
  204. package/src/desk/DeskSurface.tsx +4 -7
  205. package/src/form/DocFormScreen.chrome.spec.ts +77 -0
  206. package/src/form/DocFormScreen.guest.screen.spec.tsx +175 -0
  207. package/src/form/DocFormScreen.rights.spec.tsx +7 -3
  208. package/src/form/DocFormScreen.tsx +214 -315
  209. package/src/i18n/en.ts +1 -0
  210. package/src/list/ListBulkActionsBar.rights.spec.tsx +134 -0
  211. package/src/list/ListBulkActionsBar.screen.spec.tsx +7 -1
  212. package/src/list/ListBulkActionsBar.tsx +76 -57
  213. package/src/list/ListFilterBar.screen.spec.tsx +14 -13
  214. package/src/list/sidebar-section.tsx +11 -3
  215. package/src/report/DoctypeReportView.tsx +28 -550
  216. package/src/report/QueryReportScreen.spec.tsx +75 -1
  217. package/src/report/QueryReportScreen.tsx +38 -22
  218. package/src/report/queryReportColumns.tsx +4 -123
  219. package/src/report/queryReportFilterBar.tsx +3 -5
  220. package/src/report/queryReportUrlState.ts +1 -1
  221. package/src/report/report-grid.tsx +4 -529
  222. package/src/report/report-toolbar.tsx +4 -308
  223. package/src/report/reportShapes.ts +25 -613
  224. package/src/report/reportShim.spec.ts +162 -0
  225. package/src/report/reportViewModel.ts +32 -605
  226. package/src/report/savedReports.ts +4 -161
  227. package/src/report/useQueryReport.ts +9 -347
  228. package/src/shared/measures.ts +3 -11
  229. package/src/views/ReportView.screen.spec.tsx +25 -20
  230. package/src/views/ReportView.tsx +7 -439
  231. package/src/views/report-controls.tsx +12 -20
  232. package/types/desk/DeskSurface.d.ts.map +1 -1
  233. package/types/form/DocFormScreen.d.ts +2 -2
  234. package/types/form/DocFormScreen.d.ts.map +1 -1
  235. package/types/i18n/en.d.ts +1 -0
  236. package/types/i18n/en.d.ts.map +1 -1
  237. package/types/list/ListBulkActionsBar.d.ts.map +1 -1
  238. package/types/list/sidebar-section.d.ts.map +1 -1
  239. package/types/report/DoctypeReportView.d.ts.map +1 -1
  240. package/types/report/QueryReportScreen.d.ts +1 -1
  241. package/types/report/QueryReportScreen.d.ts.map +1 -1
  242. package/types/report/queryReportColumns.d.ts +2 -11
  243. package/types/report/queryReportColumns.d.ts.map +1 -1
  244. package/types/report/queryReportFilterBar.d.ts +1 -1
  245. package/types/report/queryReportFilterBar.d.ts.map +1 -1
  246. package/types/report/queryReportUrlState.d.ts +1 -1
  247. package/types/report/queryReportUrlState.d.ts.map +1 -1
  248. package/types/report/report-grid.d.ts +2 -19
  249. package/types/report/report-grid.d.ts.map +1 -1
  250. package/types/report/report-toolbar.d.ts +2 -29
  251. package/types/report/report-toolbar.d.ts.map +1 -1
  252. package/types/report/reportShapes.d.ts +2 -115
  253. package/types/report/reportShapes.d.ts.map +1 -1
  254. package/types/report/reportViewModel.d.ts +2 -135
  255. package/types/report/reportViewModel.d.ts.map +1 -1
  256. package/types/report/savedReports.d.ts +2 -18
  257. package/types/report/savedReports.d.ts.map +1 -1
  258. package/types/report/useQueryReport.d.ts +2 -35
  259. package/types/report/useQueryReport.d.ts.map +1 -1
  260. package/types/shared/measures.d.ts +1 -2
  261. package/types/shared/measures.d.ts.map +1 -1
  262. package/types/views/ReportView.d.ts +3 -22
  263. package/types/views/ReportView.d.ts.map +1 -1
  264. package/types/views/report-controls.d.ts +2 -5
  265. package/types/views/report-controls.d.ts.map +1 -1
  266. package/src/report/report-grid.spec.tsx +0 -175
  267. package/src/report/report-toolbar.spec.tsx +0 -90
  268. package/src/report/reportShapes.spec.ts +0 -391
  269. package/src/report/reportViewModel.spec.ts +0 -393
@@ -1,79 +1,22 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { EmptyState, ScrollView, YStack, isWeb, notify } from "@multiplatform.one/components";
3
- import { Button } from "@multiplatform.one/forms";
4
- import { Order, useFrappeCollection, useLiveQuery } from "@multiplatform.one/frappe";
5
- import { downloadBlob } from "@multiplatform.one/platform";
6
- import { storage } from "@multiplatform.one/store";
7
- import { DataTablePagination } from "@multiplatform.one/table";
8
- import React, { useCallback, useEffect, useMemo, useState } from "react";
9
- import { useTranslation } from "react-i18next";
1
+ import { jsx as _jsx } from "react/jsx-runtime";
2
+ import { FrappeReportBuilder, parseReportFiltersParam } from "@multiplatform.one/frappe-ui";
3
+ import React, { useCallback, useMemo } from "react";
10
4
  import { useBackofficeLocation, useBackofficeNavigator, useBackofficePaths } from "../config/BackofficeProvider.native.js";
11
- import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.native.js";
12
5
  import { useDeskScope } from "../desk/scope.native.js";
13
- import { useDoctypeMeta } from "../shared/useDoctypeMeta.native.js";
14
- import { useViewConnection } from "../views/connection.native.js";
15
6
  import { ViewError, ViewLoading } from "../views/ViewStates.native.js";
16
- import { ReportGrid } from "./report-grid.native.js";
17
- import { ReportToolbar } from "./report-toolbar.native.js";
18
- import { useSavedReports } from "./savedReports.native.js";
19
- import { DEFAULT_REPORT_PAGE_SIZE, REPORT_PAGE_SIZES, buildGridRows, buildReportCsv, columnFilterTuples, computeTotals, defaultReportFieldnames, orderReportRows, parseReportFiltersParam, reportColumnsFromMeta, resolveSelectedColumns } from "./reportViewModel.native.js";
20
- function _instanceof(left, right) {
21
- "@swc/helpers - instanceof";
22
-
23
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
24
- return !!right[Symbol.hasInstance](left);
25
- } else {
26
- return left instanceof right;
27
- }
28
- }
29
- var EMPTY_FILTERS = [];
30
- var COLUMN_FILTER_DEBOUNCE_MS = 350;
31
- function columnsStorageKey(doctype) {
32
- return `backoffice.report.columns.${doctype}`;
33
- }
34
- async function readStoredColumns(doctype) {
35
- try {
36
- var raw = await Promise.resolve(storage.getItem(columnsStorageKey(doctype)));
37
- if (!raw) return void 0;
38
- var parsed = JSON.parse(raw);
39
- if (Array.isArray(parsed) && parsed.every(function (entry) {
40
- return typeof entry === "string";
41
- })) {
42
- return parsed;
43
- }
44
- } catch (unused) {}
45
- return void 0;
46
- }
47
- function persistStoredColumns(doctype, fieldnames) {
48
- try {
49
- void Promise.resolve(storage.setItem(columnsStorageKey(doctype), JSON.stringify(fieldnames)));
50
- } catch (unused) {}
51
- }
52
7
  function DoctypeReportView(param) {
53
8
  var {
54
9
  doctype,
55
10
  filtersParam,
56
11
  initialFilters
57
12
  } = param;
58
- var _ref, _ref1, _ref2;
59
13
  var _params_report;
60
- var {
61
- t
62
- } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
63
14
  var deskScope = useDeskScope();
64
15
  var navigator = useBackofficeNavigator();
65
16
  var paths = useBackofficePaths();
66
17
  var {
67
18
  params
68
19
  } = useBackofficeLocation();
69
- var connection = useViewConnection();
70
- var fixtureMode = Boolean(connection === null || connection === void 0 ? void 0 : connection.fixtures);
71
- var {
72
- meta,
73
- loading: metaLoading,
74
- error: metaError
75
- } = useDoctypeMeta(doctype);
76
- var savedReports = useSavedReports(doctype);
77
20
  var rawReportParam = typeof params.report === "string" ? params.report : (_params_report = params.report) === null || _params_report === void 0 ? void 0 : _params_report[0];
78
21
  var currentReport = useMemo(function () {
79
22
  if (!rawReportParam) return null;
@@ -83,412 +26,37 @@ function DoctypeReportView(param) {
83
26
  return rawReportParam;
84
27
  }
85
28
  }, [rawReportParam]);
86
- var allColumns = useMemo(function () {
87
- return reportColumnsFromMeta(meta);
88
- }, [meta]);
89
- var defaultFieldnames = useMemo(function () {
90
- return defaultReportFieldnames(meta);
91
- }, [meta]);
92
- var [storedColumns, setStoredColumns] = useState(void 0);
93
- var [selectedOverride, setSelectedOverride] = useState(null);
94
- useEffect(function () {
95
- if (fixtureMode) return;
96
- var cancelled = false;
97
- void readStoredColumns(doctype).then(function (stored) {
98
- if (!cancelled) setStoredColumns(stored);
99
- });
100
- return function () {
101
- cancelled = true;
102
- };
103
- }, [doctype, fixtureMode]);
104
- var selectedFieldnames = (_ref = selectedOverride !== null && selectedOverride !== void 0 ? selectedOverride : storedColumns) !== null && _ref !== void 0 ? _ref : defaultFieldnames;
105
- var selectedColumns = useMemo(function () {
106
- return resolveSelectedColumns(allColumns, selectedFieldnames);
107
- }, [allColumns, selectedFieldnames]);
108
29
  var urlFilters = useMemo(function () {
109
30
  return parseReportFiltersParam(filtersParam);
110
31
  }, [filtersParam]);
111
- var [filtersCleared, setFiltersCleared] = useState(false);
112
- var [reportFilters, setReportFilters] = useState(null);
113
- 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;
114
- var [filterDrafts, setFilterDrafts] = useState({});
115
- var [committedFilters, setCommittedFilters] = useState({});
116
- useEffect(function () {
117
- var handle = setTimeout(function () {
118
- setCommittedFilters(function (previous) {
119
- return JSON.stringify(previous) === JSON.stringify(filterDrafts) ? previous : filterDrafts;
120
- });
121
- }, COLUMN_FILTER_DEBOUNCE_MS);
122
- return function () {
123
- return clearTimeout(handle);
124
- };
125
- }, [filterDrafts]);
126
- var columnTuples = useMemo(function () {
127
- return columnFilterTuples(selectedColumns, committedFilters);
128
- }, [selectedColumns, committedFilters]);
129
- var effectiveFilters = useMemo(function () {
130
- return [...deskScope, ...baseFilters, ...columnTuples];
131
- }, [deskScope, baseFilters, columnTuples]);
132
- var metaSort = useMemo(function () {
133
- return {
134
- field: ((meta === null || meta === void 0 ? void 0 : meta.sort_field) || "modified").split(" ")[0],
135
- order: ((meta === null || meta === void 0 ? void 0 : meta.sort_order) || "DESC").toLowerCase() === "asc" ? "asc" : "desc"
136
- };
137
- }, [meta === null || meta === void 0 ? void 0 : meta.sort_field, meta === null || meta === void 0 ? void 0 : meta.sort_order]);
138
- var [sortOverride, setSortOverride] = useState(null);
139
- var sort = sortOverride !== null && sortOverride !== void 0 ? sortOverride : metaSort;
140
- var [groupBy, setGroupBy] = useState(null);
141
- var [pageSize, setPageSize] = useState(DEFAULT_REPORT_PAGE_SIZE);
142
- var [page, setPage] = useState(0);
143
- useEffect(function () {
144
- setSelectedOverride(null);
145
- setStoredColumns(void 0);
146
- setSortOverride(null);
147
- setGroupBy(null);
148
- setPage(0);
149
- setPageSize(DEFAULT_REPORT_PAGE_SIZE);
150
- setFilterDrafts({});
151
- setCommittedFilters({});
152
- setFiltersCleared(false);
153
- setReportFilters(null);
154
- }, [doctype]);
155
- useEffect(function () {
156
- return setFiltersCleared(false);
157
- }, [filtersParam]);
158
- var filtersKey = useMemo(function () {
159
- return JSON.stringify(effectiveFilters);
160
- }, [effectiveFilters]);
161
- useEffect(function () {
162
- setPage(0);
163
- }, [filtersKey, pageSize, groupBy]);
164
- useEffect(function () {
165
- if (!currentReport) {
166
- setReportFilters(null);
167
- return;
168
- }
169
- var cancelled = false;
170
- void savedReports.load(currentReport).then(function (config) {
171
- var _config_groupBy;
172
- if (cancelled || !config) return;
173
- setSelectedOverride(config.fieldnames.length > 0 ? config.fieldnames : null);
174
- setReportFilters(config.filters);
175
- setFilterDrafts({});
176
- setCommittedFilters({});
177
- setFiltersCleared(false);
178
- if (config.sort) setSortOverride(config.sort);
179
- if (config.pageSize && REPORT_PAGE_SIZES.some(function (size) {
180
- return size === config.pageSize;
181
- })) {
182
- setPageSize(config.pageSize);
183
- }
184
- setGroupBy((_config_groupBy = config.groupBy) !== null && _config_groupBy !== void 0 ? _config_groupBy : null);
185
- });
186
- return function () {
187
- cancelled = true;
188
- };
189
- },
190
- // savedReports.load changes identity with its report list; reloading the
191
- // config on list refreshes would clobber in-progress edits — key on the
192
- // selected report (and doctype via load's closure) only.
193
- // eslint-disable-next-line react-hooks/exhaustive-deps
194
- [currentReport, doctype]);
195
- var handleToggleColumn = useCallback(function (fieldname) {
196
- setSelectedOverride(function (previous) {
197
- var _ref3;
198
- var current = (_ref3 = previous !== null && previous !== void 0 ? previous : storedColumns) !== null && _ref3 !== void 0 ? _ref3 : defaultFieldnames;
199
- var next = current.includes(fieldname) ? current.length === 1 ? current : current.filter(function (entry) {
200
- return entry !== fieldname;
201
- }) : [...current, fieldname];
202
- if (!fixtureMode && !currentReport) persistStoredColumns(doctype, next);
203
- return next;
204
- });
205
- }, [storedColumns, defaultFieldnames, fixtureMode, currentReport, doctype]);
206
- var handleResetColumns = useCallback(function () {
207
- setSelectedOverride(defaultFieldnames);
208
- setStoredColumns(void 0);
209
- if (!fixtureMode) persistStoredColumns(doctype, defaultFieldnames);
210
- }, [defaultFieldnames, fixtureMode, doctype]);
211
- var fetchFields = useMemo(function () {
212
- var fields = /* @__PURE__ */new Set(["name", sort.field]);
213
- var _iteratorNormalCompletion = true,
214
- _didIteratorError = false,
215
- _iteratorError = void 0;
216
- try {
217
- for (var _iterator = selectedColumns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
218
- var column = _step.value;
219
- fields.add(column.fieldname);
220
- }
221
- } catch (err) {
222
- _didIteratorError = true;
223
- _iteratorError = err;
224
- } finally {
225
- try {
226
- if (!_iteratorNormalCompletion && _iterator.return != null) {
227
- _iterator.return();
228
- }
229
- } finally {
230
- if (_didIteratorError) {
231
- throw _iteratorError;
232
- }
233
- }
234
- }
235
- if (groupBy) fields.add(groupBy);
236
- return [...fields];
237
- }, [selectedColumns, sort.field, groupBy]);
238
- var [syncError, setSyncError] = useState(null);
239
- var handleSyncError = useCallback(function (error) {
240
- setSyncError(_instanceof(error, Error) ? error : new Error(String(error)));
241
- }, []);
242
- var [retryGen, setRetryGen] = useState(0);
243
- var collectionConfig = useMemo(function () {
244
- return connection && meta && retryGen >= 0 ? connection : void 0;
245
- }, [connection, meta, retryGen]);
246
- var collection = useFrappeCollection(collectionConfig, doctype, {
247
- fields: fetchFields,
248
- filters: effectiveFilters,
249
- orderBy: {
250
- field: sort.field,
251
- order: sort.order === "asc" ? Order.Asc : Order.Desc
252
- },
253
- onSyncError: handleSyncError
254
- });
255
- useEffect(function () {
256
- return setSyncError(null);
257
- }, [collection]);
258
- var {
259
- data: rowsData,
260
- isLoading: rowsLoading
261
- } = useLiveQuery(function (q) {
262
- return collection ? q.from({
263
- _report: collection
264
- }) : null;
265
- }, [collection]);
266
- var orderedRows = useMemo(function () {
267
- return orderReportRows(rowsData !== null && rowsData !== void 0 ? rowsData : [], sort, groupBy);
268
- }, [rowsData, sort, groupBy]);
269
- var total = orderedRows.length;
270
- var pageCount = Math.max(1, Math.ceil(total / pageSize));
271
- var effectivePage = Math.min(page, pageCount - 1);
272
- var gridRows = useMemo(function () {
273
- return buildGridRows(orderedRows, effectivePage * pageSize, pageSize, groupBy);
274
- }, [orderedRows, effectivePage, pageSize, groupBy]);
275
- var totals = useMemo(function () {
276
- return computeTotals(selectedColumns, orderedRows);
277
- }, [selectedColumns, orderedRows]);
278
- var groupByColumn = groupBy ? allColumns.find(function (column) {
279
- return column.fieldname === groupBy;
280
- }) : void 0;
281
- var handleOpenRow = useCallback(function (name) {
282
- return navigator.navigate(paths.form(doctype, name));
283
- }, [navigator, paths, doctype]);
284
- var handleOpenLink = useCallback(function (targetDoctype, name) {
32
+ var openForm = useCallback(function (targetDoctype, name) {
285
33
  return navigator.navigate(paths.form(targetDoctype, name));
286
34
  }, [navigator, paths]);
287
- var handleSelectReport = useCallback(function (name) {
35
+ var selectReport = useCallback(function (name) {
288
36
  var base = paths.view(doctype, "report");
289
37
  navigator.replace(name ? `${base}?report=${encodeURIComponent(name)}` : base);
290
- if (!name) {
291
- setReportFilters(null);
292
- setSelectedOverride(null);
293
- setSortOverride(null);
294
- setGroupBy(null);
295
- }
296
38
  }, [navigator, paths, doctype]);
297
- var handleClearBaseFilters = useCallback(function () {
298
- setFiltersCleared(true);
299
- if (urlFilters && !reportFilters) navigator.replace(paths.view(doctype, "report"));
300
- }, [urlFilters, reportFilters, navigator, paths, doctype]);
301
- var handleSaveReport = useCallback(function (name) {
302
- void savedReports.save(name, {
303
- fieldnames: [...selectedFieldnames],
304
- filters: effectiveFilters,
305
- sort,
306
- pageSize,
307
- groupBy,
308
- addTotals: totals.length > 0
309
- }).then(function (savedName) {
310
- notify({
311
- severity: "success",
312
- scope: "page",
313
- body: t("report.saveDone", {
314
- defaultValue: "Saved report \u201C{{name}}\u201D",
315
- name: savedName
316
- })
317
- });
318
- if (savedName !== currentReport) handleSelectReport(savedName);
319
- }).catch(function (error) {
320
- notify({
321
- severity: "error",
322
- scope: "page",
323
- body: _instanceof(error, Error) ? error.message : t("report.saveFailed", "Could not save the report")
324
- });
325
- });
326
- }, [savedReports, selectedFieldnames, effectiveFilters, sort, pageSize, groupBy, totals.length, currentReport, handleSelectReport, t]);
327
- var handleDeleteReport = useCallback(function (name) {
328
- void savedReports.remove(name).then(function () {
329
- notify({
330
- severity: "success",
331
- scope: "page",
332
- body: t("report.deleteDone", {
333
- defaultValue: "Deleted report \u201C{{name}}\u201D",
334
- name
335
- })
336
- });
337
- if (name === currentReport) handleSelectReport(null);
338
- }).catch(function (error) {
339
- notify({
340
- severity: "error",
341
- scope: "page",
342
- body: _instanceof(error, Error) ? error.message : t("report.deleteFailed", "Could not delete the report")
343
- });
344
- });
345
- }, [savedReports, currentReport, handleSelectReport, t]);
346
- var handleExport = useCallback(function () {
347
- if (!isWeb) {
348
- notify({
349
- severity: "warning",
350
- scope: "page",
351
- body: t("report.exportUnsupported", "CSV export needs a browser download \u2014 not available on this platform yet")
39
+ var clearUrlFilters = useCallback(function () {
40
+ if (urlFilters) navigator.replace(paths.view(doctype, "report"));
41
+ }, [urlFilters, navigator, paths, doctype]);
42
+ return /* @__PURE__ */_jsx(FrappeReportBuilder, {
43
+ doctype,
44
+ filters: urlFilters !== null && urlFilters !== void 0 ? urlFilters : initialFilters,
45
+ scopeFilters: deskScope,
46
+ onClearFilters: clearUrlFilters,
47
+ report: currentReport,
48
+ onReportChange: selectReport,
49
+ onOpenRow: function onOpenRow(name) {
50
+ return openForm(doctype, name);
51
+ },
52
+ onOpenLink: openForm,
53
+ loading: /* @__PURE__ */_jsx(ViewLoading, {}),
54
+ error: function error(error) {
55
+ return /* @__PURE__ */_jsx(ViewError, {
56
+ doctype,
57
+ error
352
58
  });
353
- return;
354
59
  }
355
- downloadBlob(new Blob([buildReportCsv(selectedColumns, orderedRows)], {
356
- type: "text/csv;charset=utf-8;"
357
- }), `${doctype}_report.csv`);
358
- notify({
359
- severity: "success",
360
- scope: "page",
361
- body: t("report.exportDone", {
362
- count: orderedRows.length,
363
- defaultValue_one: "Exported {{count}} row to CSV",
364
- defaultValue_other: "Exported {{count}} rows to CSV"
365
- })
366
- });
367
- }, [selectedColumns, orderedRows, doctype, t]);
368
- var handleColumnFilterChange = useCallback(function (fieldname, value) {
369
- setFilterDrafts(function (previous) {
370
- if (value === "") {
371
- if (!(fieldname in previous)) return previous;
372
- var {
373
- [fieldname]: _dropped,
374
- ...rest
375
- } = previous;
376
- return rest;
377
- }
378
- return {
379
- ...previous,
380
- [fieldname]: value
381
- };
382
- });
383
- }, []);
384
- var handleClearColumnFilters = useCallback(function () {
385
- setFilterDrafts({});
386
- setCommittedFilters({});
387
- }, []);
388
- var activeColumnFilterCount = columnTuples.length;
389
- if (metaLoading && !meta) return /* @__PURE__ */_jsx(ViewLoading, {});
390
- if (metaError && !meta) return /* @__PURE__ */_jsx(ViewError, {
391
- doctype,
392
- error: metaError
393
- });
394
- var body;
395
- if (syncError) {
396
- body = /* @__PURE__ */_jsx(EmptyState, {
397
- intent: "error",
398
- title: t("report.loadFailed", "Couldn't load report rows"),
399
- description: syncError.message,
400
- action: /* @__PURE__ */_jsx(Button, {
401
- size: "$3",
402
- onPress: function onPress() {
403
- setSyncError(null);
404
- setRetryGen(function (generation) {
405
- return generation + 1;
406
- });
407
- },
408
- children: t("report.retry", "Retry")
409
- })
410
- });
411
- } else if (rowsLoading && total === 0) {
412
- body = /* @__PURE__ */_jsx(ViewLoading, {});
413
- } else if (total === 0) {
414
- var hasFilters = effectiveFilters.length > 0;
415
- body = /* @__PURE__ */_jsx(EmptyState, {
416
- title: t("report.emptyTitle", "No results"),
417
- description: hasFilters ? t("report.emptyFiltered", "No rows match the current filters") : t("report.emptyDescription", {
418
- defaultValue: "There are no {{doctype}} records yet",
419
- doctype
420
- }),
421
- action: hasFilters ? /* @__PURE__ */_jsx(Button, {
422
- size: "$3",
423
- onPress: function onPress() {
424
- handleClearColumnFilters();
425
- handleClearBaseFilters();
426
- },
427
- children: t("report.clearAllFilters", "Clear all filters")
428
- }) : void 0
429
- });
430
- } else {
431
- body = /* @__PURE__ */_jsx(ReportGrid, {
432
- columns: selectedColumns,
433
- rows: gridRows,
434
- sort,
435
- onSortChange: setSortOverride,
436
- columnFilters: filterDrafts,
437
- onColumnFilterChange: handleColumnFilterChange,
438
- onOpenRow: handleOpenRow,
439
- onOpenLink: handleOpenLink,
440
- totals,
441
- groupByColumn
442
- });
443
- }
444
- var content = /* @__PURE__ */_jsxs(YStack, {
445
- flex: 1,
446
- minWidth: 0,
447
- children: [/* @__PURE__ */_jsx(ReportToolbar, {
448
- columns: allColumns,
449
- selected: selectedFieldnames,
450
- onToggleColumn: handleToggleColumn,
451
- onResetColumns: handleResetColumns,
452
- groupBy,
453
- onGroupByChange: setGroupBy,
454
- baseFilters,
455
- onClearBaseFilters: baseFilters.length > 0 ? handleClearBaseFilters : void 0,
456
- columnFilterCount: activeColumnFilterCount,
457
- onClearColumnFilters: handleClearColumnFilters,
458
- savedReports: savedReports.reports,
459
- currentReport,
460
- onSelectReport: handleSelectReport,
461
- onSaveReport: handleSaveReport,
462
- onDeleteReport: handleDeleteReport,
463
- onExport: handleExport,
464
- exportDisabled: total === 0
465
- }), /* @__PURE__ */_jsx(YStack, {
466
- flex: 1,
467
- minWidth: 0,
468
- paddingHorizontal: "$3",
469
- children: body
470
- }), total > 0 && !syncError && /* @__PURE__ */_jsx(YStack, {
471
- paddingHorizontal: "$3",
472
- paddingVertical: "$2",
473
- children: /* @__PURE__ */_jsx(DataTablePagination, {
474
- pagination: {
475
- pageIndex: effectivePage,
476
- pageSize,
477
- totalCount: total,
478
- totalPages: pageCount
479
- },
480
- onPaginationChange: function onPaginationChange(next) {
481
- setPage(next.pageIndex);
482
- setPageSize(next.pageSize);
483
- },
484
- pageSizeOptions: [...REPORT_PAGE_SIZES],
485
- compact: true
486
- })
487
- })]
488
- });
489
- return isWeb ? content : /* @__PURE__ */_jsx(ScrollView, {
490
- flex: 1,
491
- children: content
492
60
  });
493
61
  }
494
62
  export { DoctypeReportView };
@@ -1 +1 @@
1
- {"version":3,"names":["jsx","_jsx","jsxs","_jsxs","EmptyState","ScrollView","YStack","isWeb","notify","Button","Order","useFrappeCollection","useLiveQuery","downloadBlob","storage","DataTablePagination","React","useCallback","useEffect","useMemo","useState","useTranslation","useBackofficeLocation","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","useDeskScope","useDoctypeMeta","useViewConnection","ViewError","ViewLoading","ReportGrid","ReportToolbar","useSavedReports","DEFAULT_REPORT_PAGE_SIZE","REPORT_PAGE_SIZES","buildGridRows","buildReportCsv","columnFilterTuples","computeTotals","defaultReportFieldnames","orderReportRows","parseReportFiltersParam","reportColumnsFromMeta","resolveSelectedColumns","_instanceof","left","right","Symbol","hasInstance","EMPTY_FILTERS","COLUMN_FILTER_DEBOUNCE_MS","columnsStorageKey","doctype","readStoredColumns","raw","Promise","resolve","getItem","parsed","JSON","parse","Array","isArray","every","entry","unused","persistStoredColumns","fieldnames","setItem","stringify","DoctypeReportView","param","filtersParam","initialFilters","_ref","_ref1","_ref2","_params_report","t","deskScope","navigator","paths","params","connection","fixtureMode","Boolean","fixtures","meta","loading","metaLoading","error","metaError","savedReports","rawReportParam","report","currentReport","decodeURIComponent","allColumns","defaultFieldnames","storedColumns","setStoredColumns","selectedOverride","setSelectedOverride","cancelled","then","stored","selectedFieldnames","selectedColumns","urlFilters","filtersCleared","setFiltersCleared","reportFilters","setReportFilters","baseFilters","filterDrafts","setFilterDrafts","committedFilters","setCommittedFilters","handle","setTimeout","previous","clearTimeout","columnTuples","effectiveFilters","metaSort","field","sort_field","split","order","sort_order","toLowerCase","sortOverride","setSortOverride","sort","groupBy","setGroupBy","pageSize","setPageSize","page","setPage","filtersKey","load","config","_config_groupBy","length","filters","some","size","handleToggleColumn","fieldname","_ref3","current","next","includes","filter","handleResetColumns","fetchFields","fields","Set","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","done","column","value","add","err","return","syncError","setSyncError","handleSyncError","Error","String","retryGen","setRetryGen","collectionConfig","collection","orderBy","Asc","Desc","onSyncError","data","rowsData","isLoading","rowsLoading","q","from","_report","orderedRows","total","pageCount","Math","max","ceil","effectivePage","min","gridRows","totals","groupByColumn","find","handleOpenRow","name","navigate","form","handleOpenLink","targetDoctype","handleSelectReport","base","view","replace","encodeURIComponent","handleClearBaseFilters","handleSaveReport","save","addTotals","savedName","severity","scope","body","defaultValue","catch","message","handleDeleteReport","remove","handleExport","Blob","type","count","defaultValue_one","defaultValue_other"],"sources":["../../../src/report/DoctypeReportView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["jsx","_jsx","FrappeReportBuilder","parseReportFiltersParam","React","useCallback","useMemo","useBackofficeLocation","useBackofficeNavigator","useBackofficePaths","useDeskScope","ViewError","ViewLoading","DoctypeReportView","param","doctype","filtersParam","initialFilters","_params_report","deskScope","navigator","paths","params","rawReportParam","report","currentReport","decodeURIComponent","unused","urlFilters","openForm","targetDoctype","name","navigate","form","selectReport","base","view","replace","encodeURIComponent","clearUrlFilters","filters","scopeFilters","onClearFilters","onReportChange","onOpenRow"],"sources":["../../../src/report/DoctypeReportView.tsx"],"sourcesContent":[null],"mappings":"AAKA,SAASA,GAAA,IAAAC,IAAA,2BAAqB;AAC9B,SAAgBC,mBAAa,EAAAC,uBAAe;AAC5C,OAAAC,KAAA,IAAAC,WAAA,EAAAC,OAAA;AAAA,SACEC,qBAAA,EAAAC,sBAAA,EAAAC,kBAAA;AAAA,SACAC,YAAA;AAAA,SACAC,SAAA,EAAAC,WAAA;AAAA,SACKC,kBAAAC,KAAA;EACP;IAAAC,OAAS;IAAAC,YAAoB;IAAAC;EAAA,IAAAH,KAAA;EAE7B,IAAAI,cAAoB;EA+DL,IAAAC,SAAA,GAAAT,YAAA;EAhDR,IAAAU,SAAS,GAAAZ,sBAAkB;EAChC,IAAAa,KAAA,GAAAZ,kBAAA;EACA;IAAAa;EAAA,IAAAf,qBAAA;EACA,IAAAgB,cAAA,UAAAD,MAAA,CAAAE,MAAA,gBAAAF,MAAA,CAAAE,MAAA,IAAAN,cAAA,GAAAI,MAAA,CAAAE,MAAA,cAAAN,cAAA,uBAAAA,cAAA;EACF,IAA2BO,aAAA,GAAAnB,OAAA;IACzB,IAAM,CAAAiB,cAAY,aAAa;IAC/B,IAAM;MACN,OAAMG,kBAAQ,CAAAH,cAAmB;IACjC,SAAQI,MAAO,EAAI;MAInB,OAAMJ,cAAiB;IACvB;EACE,IACAA,cAAI,CACF;EAAwC,IAC1CK,UAAQ,GAAAtB,OAAA;IACN,OAAAH,uBAAO,CAAAa,YAAA;EAAA,GACT,CACFA,YAAI,CACJ;EAEA,IAAAa,QAAM,GAAAxB,WAAW,WAAAyB,aAAA,EAAAC,IAAA;IACf,OAACX,SAAuB,CAAAY,QAAiB,CAAAX,KAAA,CAAAY,IAAU,CAAAH,aAAe,EAAAC,IAAK;EAAoB,GAC1F,CACHX,SAAA,EACAC,KAAM,CAAe,CACnB;EACE,IAAAa,YAAM,GAAO7B,WAAW,WAAS0B,IAAA,EAAQ;IACzC,IAAAI,IAAA,GAAAd,KAAU,CAAAe,IAAQ,CAAArB,OAAO,EAAG,QAAI;IAClCK,SAAA,CAAAiB,OAAA,CAAAN,IAAA,MAAAI,IAAA,WAAAG,kBAAA,CAAAP,IAAA,MAAAI,IAAA;EAAA,GACC,CACHf,SAAA,EACAC,KAAM,EACJN,OAAI,CACN;EAEA,IAAAwB,eACE,GAAAlC,WAAA;IAAC,IAAAuB,UAAA,EAAAR,SAAA,CAAAiB,OAAA,CAAAhB,KAAA,CAAAe,IAAA,CAAArB,OAAA;EAAA,IAAAa,UACC,EAAAR,SACA,EAAuBC,KACvB,EAAcN,OACd,CAAgB;EACR,OACR,eAAgBd,IAAA,CAAAC,mBAAA;IAAAa,OAChB;IAA2CyB,OAC3C,EAAAZ,UAAY,aAAAA,UAAA,cAAAA,UAAA,GAAAX,cAAA;IAAAwB,YACH,EAAAtB,SAAA;IAAauB,cACd,EAAAH,eAAU;IAA2Cf,MAAA,EAAAC,aAAA;IAC/DkB,cAAA,EAAAT,YAAA;IAEJU,SAAA,WAAAA,UAAAb,IAAA","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 { defaultFilterValues, isEmptyFilterValue, scrubFieldname, stripHtml, useQueryReport } from "./useQueryReport.mjs";
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__ */jsx(Button, {
222
- size: "$2",
223
- chromeless: true,
224
- onPress: report.reload,
225
- disabled: report.loading,
226
- children: t("queryReport.refresh", "Refresh")
227
- }), /* @__PURE__ */jsx(Button, {
228
- size: "$2",
229
- chromeless: true,
230
- icon: DownloadSimpleIcon,
231
- onPress: handleExport,
232
- disabled: report.loading || report.rows.length === 0,
233
- children: t("queryReport.exportCsv", "Export CSV")
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, {