@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
@@ -22,111 +22,7 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
22
22
  }), mod);
23
23
  var savedReports_exports = {};
24
24
  __export(savedReports_exports, {
25
- useSavedReports: () => useSavedReports
25
+ useSavedReports: () => import_frappe_ui.useSavedReports
26
26
  });
27
27
  module.exports = __toCommonJS(savedReports_exports);
28
- var import_frappe_ui = require("@multiplatform.one/frappe-ui");
29
- var import_react = require("react");
30
- var import_useFrappeApp = require("../shared/useFrappeApp.cjs");
31
- var import_reportViewModel = require("./reportViewModel.cjs");
32
- function useSavedReports(doctype) {
33
- const app = (0, import_useFrappeApp.useFrappeApp)();
34
- const config = (0, import_frappe_ui.useFrappeConfig)();
35
- const fixtureMode = Boolean(config?.fixtures);
36
- const [reports, setReports] = (0, import_react.useState)([]);
37
- const [loading, setLoading] = (0, import_react.useState)(false);
38
- const [generation, setGeneration] = (0, import_react.useState)(0);
39
- const memoryConfigs = (0, import_react.useRef)(/* @__PURE__ */new Map());
40
- (0, import_react.useEffect)(() => {
41
- memoryConfigs.current = /* @__PURE__ */new Map();
42
- setReports([]);
43
- }, [doctype]);
44
- (0, import_react.useEffect)(() => {
45
- if (!app || fixtureMode) return;
46
- let cancelled = false;
47
- setLoading(true);
48
- app.call().get("frappe.client.get_list", {
49
- doctype: "Report",
50
- filters: JSON.stringify([["ref_doctype", "=", doctype], ["report_type", "=", "Report Builder"], ["disabled", "=", 0]]),
51
- fields: JSON.stringify(["name", "report_name", "json"]),
52
- limit_page_length: 0,
53
- order_by: "report_name asc"
54
- }).then(res => {
55
- if (cancelled) return;
56
- const rows = res.payload?.message ?? [];
57
- setReports(rows.map(row => ({
58
- name: row.name,
59
- reportName: row.report_name || row.name,
60
- json: row.json
61
- })));
62
- setLoading(false);
63
- }).catch(() => {
64
- if (cancelled) return;
65
- setReports([]);
66
- setLoading(false);
67
- });
68
- return () => {
69
- cancelled = true;
70
- };
71
- }, [app, fixtureMode, doctype, generation]);
72
- const load = (0, import_react.useCallback)(async name => {
73
- if (fixtureMode) return memoryConfigs.current.get(name);
74
- const summary = reports.find(report => report.name === name);
75
- let json = summary?.json;
76
- if (json === void 0 && app) {
77
- const res = await app.call().get("frappe.client.get_value", {
78
- doctype: "Report",
79
- filters: JSON.stringify({
80
- name
81
- }),
82
- fieldname: JSON.stringify(["json"])
83
- });
84
- json = res.payload?.message?.json;
85
- }
86
- if (!json) return void 0;
87
- try {
88
- return (0, import_reportViewModel.fromDeskReportSettings)(doctype, JSON.parse(json));
89
- } catch {
90
- return void 0;
91
- }
92
- }, [app, fixtureMode, reports, doctype]);
93
- const save = (0, import_react.useCallback)(async (name, viewConfig) => {
94
- const trimmed = name.trim();
95
- if (!trimmed) throw new Error("Report name is required");
96
- if (fixtureMode || !app) {
97
- memoryConfigs.current.set(trimmed, viewConfig);
98
- setReports(previous => [...previous.filter(report => report.name !== trimmed), {
99
- name: trimmed,
100
- reportName: trimmed
101
- }]);
102
- return trimmed;
103
- }
104
- const res = await app.call().post("frappe.desk.reportview.save_report", {
105
- name: trimmed,
106
- doctype,
107
- report_settings: JSON.stringify((0, import_reportViewModel.toDeskReportSettings)(doctype, viewConfig))
108
- });
109
- setGeneration(value => value + 1);
110
- return res.payload?.message ?? trimmed;
111
- }, [app, fixtureMode, doctype]);
112
- const remove = (0, import_react.useCallback)(async name => {
113
- if (fixtureMode || !app) {
114
- memoryConfigs.current.delete(name);
115
- setReports(previous => previous.filter(report => report.name !== name));
116
- return;
117
- }
118
- await app.call().post("frappe.desk.reportview.delete_report", {
119
- name
120
- });
121
- setGeneration(value => value + 1);
122
- }, [app, fixtureMode, doctype]);
123
- const refresh = (0, import_react.useCallback)(() => setGeneration(value => value + 1), []);
124
- return (0, import_react.useMemo)(() => ({
125
- reports,
126
- loading,
127
- load,
128
- save,
129
- remove,
130
- refresh
131
- }), [reports, loading, load, save, remove, refresh]);
132
- }
28
+ var import_frappe_ui = require("@multiplatform.one/frappe-ui");
@@ -24,139 +24,8 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
24
24
  }), mod);
25
25
  var savedReports_exports = {};
26
26
  __export(savedReports_exports, {
27
- useSavedReports: () => useSavedReports
27
+ useSavedReports: () => import_frappe_ui.useSavedReports
28
28
  });
29
29
  module.exports = __toCommonJS(savedReports_exports);
30
30
  var import_frappe_ui = require("@multiplatform.one/frappe-ui");
31
- var import_react = require("react");
32
- var import_useFrappeApp = require("../shared/useFrappeApp.native.js");
33
- var import_reportViewModel = require("./reportViewModel.native.js");
34
- function useSavedReports(doctype) {
35
- var app = (0, import_useFrappeApp.useFrappeApp)();
36
- var config = (0, import_frappe_ui.useFrappeConfig)();
37
- var fixtureMode = Boolean(config === null || config === void 0 ? void 0 : config.fixtures);
38
- var [reports, setReports] = (0, import_react.useState)([]);
39
- var [loading, setLoading] = (0, import_react.useState)(false);
40
- var [generation, setGeneration] = (0, import_react.useState)(0);
41
- var memoryConfigs = (0, import_react.useRef)(/* @__PURE__ */new Map());
42
- (0, import_react.useEffect)(function () {
43
- memoryConfigs.current = /* @__PURE__ */new Map();
44
- setReports([]);
45
- }, [doctype]);
46
- (0, import_react.useEffect)(function () {
47
- if (!app || fixtureMode) return;
48
- var cancelled = false;
49
- setLoading(true);
50
- app.call().get("frappe.client.get_list", {
51
- doctype: "Report",
52
- filters: JSON.stringify([["ref_doctype", "=", doctype], ["report_type", "=", "Report Builder"], ["disabled", "=", 0]]),
53
- fields: JSON.stringify(["name", "report_name", "json"]),
54
- limit_page_length: 0,
55
- order_by: "report_name asc"
56
- }).then(function (res) {
57
- var _ref;
58
- var _res_payload;
59
- if (cancelled) return;
60
- var rows = (_ref = (_res_payload = res.payload) === null || _res_payload === void 0 ? void 0 : _res_payload.message) !== null && _ref !== void 0 ? _ref : [];
61
- setReports(rows.map(function (row) {
62
- return {
63
- name: row.name,
64
- reportName: row.report_name || row.name,
65
- json: row.json
66
- };
67
- }));
68
- setLoading(false);
69
- }).catch(function () {
70
- if (cancelled) return;
71
- setReports([]);
72
- setLoading(false);
73
- });
74
- return function () {
75
- cancelled = true;
76
- };
77
- }, [app, fixtureMode, doctype, generation]);
78
- var load = (0, import_react.useCallback)(async function (name) {
79
- if (fixtureMode) return memoryConfigs.current.get(name);
80
- var summary = reports.find(function (report) {
81
- return report.name === name;
82
- });
83
- var json = summary === null || summary === void 0 ? void 0 : summary.json;
84
- if (json === void 0 && app) {
85
- var _res_payload_message, _res_payload;
86
- var res = await app.call().get("frappe.client.get_value", {
87
- doctype: "Report",
88
- filters: JSON.stringify({
89
- name
90
- }),
91
- fieldname: JSON.stringify(["json"])
92
- });
93
- json = (_res_payload = res.payload) === null || _res_payload === void 0 ? void 0 : (_res_payload_message = _res_payload.message) === null || _res_payload_message === void 0 ? void 0 : _res_payload_message.json;
94
- }
95
- if (!json) return void 0;
96
- try {
97
- return (0, import_reportViewModel.fromDeskReportSettings)(doctype, JSON.parse(json));
98
- } catch (unused) {
99
- return void 0;
100
- }
101
- }, [app, fixtureMode, reports, doctype]);
102
- var save = (0, import_react.useCallback)(async function (name, viewConfig) {
103
- var _ref;
104
- var _res_payload;
105
- var trimmed = name.trim();
106
- if (!trimmed) throw new Error("Report name is required");
107
- if (fixtureMode || !app) {
108
- memoryConfigs.current.set(trimmed, viewConfig);
109
- setReports(function (previous) {
110
- return [...previous.filter(function (report) {
111
- return report.name !== trimmed;
112
- }), {
113
- name: trimmed,
114
- reportName: trimmed
115
- }];
116
- });
117
- return trimmed;
118
- }
119
- var res = await app.call().post("frappe.desk.reportview.save_report", {
120
- name: trimmed,
121
- doctype,
122
- report_settings: JSON.stringify((0, import_reportViewModel.toDeskReportSettings)(doctype, viewConfig))
123
- });
124
- setGeneration(function (value) {
125
- return value + 1;
126
- });
127
- return (_ref = (_res_payload = res.payload) === null || _res_payload === void 0 ? void 0 : _res_payload.message) !== null && _ref !== void 0 ? _ref : trimmed;
128
- }, [app, fixtureMode, doctype]);
129
- var remove = (0, import_react.useCallback)(async function (name) {
130
- if (fixtureMode || !app) {
131
- memoryConfigs.current.delete(name);
132
- setReports(function (previous) {
133
- return previous.filter(function (report) {
134
- return report.name !== name;
135
- });
136
- });
137
- return;
138
- }
139
- await app.call().post("frappe.desk.reportview.delete_report", {
140
- name
141
- });
142
- setGeneration(function (value) {
143
- return value + 1;
144
- });
145
- }, [app, fixtureMode, doctype]);
146
- var refresh = (0, import_react.useCallback)(function () {
147
- return setGeneration(function (value) {
148
- return value + 1;
149
- });
150
- }, []);
151
- return (0, import_react.useMemo)(function () {
152
- return {
153
- reports,
154
- loading,
155
- load,
156
- save,
157
- remove,
158
- refresh
159
- };
160
- }, [reports, loading, load, save, remove, refresh]);
161
- }
162
31
  //# sourceMappingURL=savedReports.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","savedReports_exports","__export","useSavedReports","module","exports","import_frappe_ui","require","import_react","import_useFrappeApp","import_reportViewModel","doctype","app","useFrappeApp","config","useFrappeConfig","fixtureMode","Boolean","fixtures","reports","setReports","useState","loading","setLoading","generation","setGeneration","memoryConfigs","useRef","Map","useEffect","current","cancelled","call","get","filters","JSON","stringify","fields","limit_page_length","order_by","then","res","_ref","_res_payload","rows","payload","message","map","row","name","reportName","report_name","json","catch","load","useCallback","summary","find","report","_res_payload_message","fieldname","fromDeskReportSettings","parse","unused","save","viewConfig","trimmed","trim","Error"],"sources":["../../../src/report/savedReports.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","savedReports_exports","__export","useSavedReports","import_frappe_ui","module","exports"],"sources":["../../../src/report/savedReports.ts"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,GAAA,IAAAC,WAAA,CAAAC,SAAA;EAAAC,KAAA;AAAA,IAAAH,GAAA;AAAA,IAAAI,oBAAA;AAAAC,QAAA,CAAAD,oBAAA;EAAAE,eAAA,EAAAA,CAAA,KAAAC,gBAAA,CAAAD;AAAA;AAEAE,MAAA,CAAAC,OAAA,GAAAV,YAAgC,CAAAK,oBAAA","ignoreList":[]}
@@ -22,224 +22,16 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
22
22
  }), mod);
23
23
  var useQueryReport_exports = {};
24
24
  __export(useQueryReport_exports, {
25
- buildRunFilters: () => import_reportShapes2.buildRunFilters,
26
- compactQueryReportFilters: () => import_reportShapes2.compactQueryReportFilters,
27
- defaultFilterValues: () => import_reportShapes2.defaultFilterValues,
28
- extractScriptFilters: () => import_reportShapes2.extractScriptFilters,
29
- isEmptyFilterValue: () => import_reportShapes2.isEmptyFilterValue,
30
- normalizeQueryReportColumns: () => import_reportShapes2.normalizeQueryReportColumns,
31
- normalizeQueryReportRows: () => import_reportShapes2.normalizeQueryReportRows,
32
- scrubFieldname: () => import_reportShapes2.scrubFieldname,
33
- stripHtml: () => import_reportShapes2.stripHtml,
34
- useQueryReport: () => useQueryReport
25
+ buildRunFilters: () => import_frappe_ui.buildRunFilters,
26
+ compactQueryReportFilters: () => import_frappe_ui.compactQueryReportFilters,
27
+ defaultFilterValues: () => import_frappe_ui.defaultFilterValues,
28
+ extractScriptFilters: () => import_frappe_ui.extractScriptFilters,
29
+ isEmptyFilterValue: () => import_frappe_ui.isEmptyFilterValue,
30
+ normalizeQueryReportColumns: () => import_frappe_ui.normalizeQueryReportColumns,
31
+ normalizeQueryReportRows: () => import_frappe_ui.normalizeQueryReportRows,
32
+ scrubFieldname: () => import_frappe_ui.scrubFieldname,
33
+ stripHtml: () => import_frappe_ui.stripReportHtml,
34
+ useQueryReport: () => import_frappe_ui.useQueryReport
35
35
  });
36
36
  module.exports = __toCommonJS(useQueryReport_exports);
37
- var import_react = require("react");
38
- var import_useFrappeApp = require("../shared/useFrappeApp.cjs");
39
- var import_reportShapes = require("./reportShapes.cjs");
40
- var import_reportShapes2 = require("./reportShapes.cjs");
41
- const RUN_METHOD = "frappe.desk.query_report.run";
42
- const SCRIPT_METHOD = "frappe.desk.query_report.get_script";
43
- async function fetchReportMeta(app, reportName) {
44
- const res = await app.call().get("frappe.client.get", {
45
- doctype: "Report",
46
- name: reportName
47
- });
48
- const doc = res.payload?.message;
49
- if (!doc) throw new Error(`Report "${reportName}" not found`);
50
- return doc;
51
- }
52
- async function fetchReportScript(app, reportName) {
53
- const res = await app.call().get(SCRIPT_METHOD, {
54
- report_name: reportName
55
- });
56
- const script = res.payload?.message?.script;
57
- return typeof script === "string" ? script : void 0;
58
- }
59
- function useQueryReport(reportName, options = {}) {
60
- const {
61
- fixture
62
- } = options;
63
- const app = (0, import_useFrappeApp.useFrappeApp)();
64
- const initialFiltersRef = (0, import_react.useRef)(options.initialFilters);
65
- initialFiltersRef.current = options.initialFilters;
66
- const [meta, setMeta] = (0, import_react.useState)(void 0);
67
- const [script, setScript] = (0, import_react.useState)(void 0);
68
- const [sourcesSettled, setSourcesSettled] = (0, import_react.useState)(false);
69
- const [filters, setFiltersState] = (0, import_react.useState)(() => ({
70
- ...initialFiltersRef.current
71
- }));
72
- const [columns, setColumns] = (0, import_react.useState)([]);
73
- const [rows, setRows] = (0, import_react.useState)([]);
74
- const [loading, setLoading] = (0, import_react.useState)(true);
75
- const [running, setRunning] = (0, import_react.useState)(false);
76
- const [error, setError] = (0, import_react.useState)(void 0);
77
- const [serverMessage, setServerMessage] = (0, import_react.useState)(void 0);
78
- const [executionTime, setExecutionTime] = (0, import_react.useState)(void 0);
79
- const [generation, setGeneration] = (0, import_react.useState)(0);
80
- const seededFor = (0, import_react.useRef)(void 0);
81
- const lastReport = (0, import_react.useRef)(reportName);
82
- (0, import_react.useEffect)(() => {
83
- if (lastReport.current === reportName) return;
84
- lastReport.current = reportName;
85
- setFiltersState({
86
- ...initialFiltersRef.current
87
- });
88
- setMeta(void 0);
89
- setScript(void 0);
90
- setSourcesSettled(false);
91
- setColumns([]);
92
- setRows([]);
93
- setError(void 0);
94
- setServerMessage(void 0);
95
- setExecutionTime(void 0);
96
- setLoading(true);
97
- }, [reportName]);
98
- (0, import_react.useEffect)(() => {
99
- if (fixture) return;
100
- if (!app) {
101
- setSourcesSettled(true);
102
- return;
103
- }
104
- let cancelled = false;
105
- setSourcesSettled(false);
106
- Promise.allSettled([fetchReportMeta(app, reportName), fetchReportScript(app, reportName)]).then(([metaResult, scriptResult]) => {
107
- if (cancelled) return;
108
- const doc = metaResult.status === "fulfilled" ? metaResult.value : void 0;
109
- const scriptText = scriptResult.status === "fulfilled" ? scriptResult.value : void 0;
110
- if (doc) setMeta(doc);
111
- if (scriptText) setScript(scriptText);
112
- if (seededFor.current !== reportName) {
113
- seededFor.current = reportName;
114
- const extraction = (0, import_reportShapes.extractScriptFilters)(scriptText);
115
- const merged = extraction.declared ? extraction.filters : (0, import_reportShapes.normalizeFilterMeta)(doc?.filters);
116
- const defaults = (0, import_reportShapes.defaultFilterValues)(merged);
117
- if (Object.keys(defaults).length > 0) setFiltersState(previous => ({
118
- ...defaults,
119
- ...previous
120
- }));
121
- }
122
- setSourcesSettled(true);
123
- });
124
- return () => {
125
- cancelled = true;
126
- };
127
- }, [app, fixture, reportName]);
128
- const scriptExtraction = (0, import_react.useMemo)(() => (0, import_reportShapes.extractScriptFilters)(fixture ? fixture.script : script), [fixture, script]);
129
- const docFilterMeta = (0, import_react.useMemo)(() => (0, import_reportShapes.normalizeFilterMeta)(fixture ? fixture.meta?.filters : meta?.filters), [fixture, meta]);
130
- const filterMeta = (0, import_react.useMemo)(() => scriptExtraction.declared ? scriptExtraction.filters : docFilterMeta, [scriptExtraction, docFilterMeta]);
131
- const scriptFilterGap = scriptExtraction.declaredCount > scriptExtraction.filters.length;
132
- (0, import_react.useEffect)(() => {
133
- if (!fixture) return;
134
- if (seededFor.current === reportName) return;
135
- seededFor.current = reportName;
136
- const defaults = (0, import_reportShapes.defaultFilterValues)(filterMeta);
137
- if (Object.keys(defaults).length > 0) setFiltersState(previous => ({
138
- ...defaults,
139
- ...previous
140
- }));
141
- }, [fixture, reportName, filterMeta]);
142
- const missingRequired = (0, import_react.useMemo)(() => filterMeta.filter(filter => filter.mandatory === 1 && (0, import_reportShapes.isEmptyFilterValue)(filters[filter.fieldname])), [filterMeta, filters]);
143
- const hasMissingRequired = missingRequired.length > 0;
144
- const metaDisabled = (fixture ? fixture.meta?.disabled : meta?.disabled) === 1;
145
- (0, import_react.useEffect)(() => {
146
- if (fixture) return;
147
- if (!sourcesSettled) return;
148
- if (metaDisabled) {
149
- setLoading(false);
150
- return;
151
- }
152
- if (hasMissingRequired) {
153
- setColumns([]);
154
- setRows([]);
155
- setError(void 0);
156
- setLoading(false);
157
- return;
158
- }
159
- if (!app) {
160
- setError(new Error("No Frappe connection configured"));
161
- setLoading(false);
162
- return;
163
- }
164
- let cancelled = false;
165
- setRunning(true);
166
- app.call().post(RUN_METHOD, {
167
- report_name: reportName,
168
- filters: (0, import_reportShapes.buildRunFilters)(filterMeta, filters),
169
- ignore_prepared_report: 1
170
- }).then(res => {
171
- if (cancelled) return;
172
- const message = res.payload?.message;
173
- const nextColumns = (0, import_reportShapes.normalizeQueryReportColumns)(message?.columns);
174
- setColumns(nextColumns);
175
- setRows((0, import_reportShapes.normalizeQueryReportRows)(message?.result, nextColumns));
176
- setServerMessage(typeof message?.message === "string" ? message.message : void 0);
177
- setExecutionTime(typeof message?.execution_time === "number" ? message.execution_time : void 0);
178
- setError(void 0);
179
- }).catch(err => {
180
- if (cancelled) return;
181
- setColumns([]);
182
- setRows([]);
183
- setError((0, import_reportShapes.humanizeFrappeError)(err));
184
- }).finally(() => {
185
- if (cancelled) return;
186
- setRunning(false);
187
- setLoading(false);
188
- });
189
- return () => {
190
- cancelled = true;
191
- };
192
- }, [app, fixture, reportName, filters, filterMeta, generation, sourcesSettled, metaDisabled, hasMissingRequired]);
193
- const setFilters = (0, import_react.useCallback)(next => {
194
- setFiltersState(next);
195
- }, []);
196
- const reload = (0, import_react.useCallback)(() => {
197
- setGeneration(previous => previous + 1);
198
- }, []);
199
- const fixtureResult = (0, import_react.useMemo)(() => {
200
- if (!fixture) return void 0;
201
- const fixtureColumns = (0, import_reportShapes.normalizeQueryReportColumns)(fixture.columns);
202
- return {
203
- columns: fixtureColumns,
204
- rows: (0, import_reportShapes.normalizeQueryReportRows)(fixture.rows, fixtureColumns),
205
- meta: fixture.meta ? {
206
- name: reportName,
207
- ...fixture.meta
208
- } : void 0
209
- };
210
- }, [fixture, reportName]);
211
- if (fixtureResult) {
212
- return {
213
- meta: fixtureResult.meta,
214
- columns: fixtureResult.columns,
215
- rows: hasMissingRequired ? [] : fixtureResult.rows,
216
- loading: false,
217
- running: false,
218
- error: void 0,
219
- serverMessage: fixture?.message,
220
- executionTime: void 0,
221
- filterMeta,
222
- scriptFilterGap,
223
- missingRequired,
224
- filters,
225
- setFilters,
226
- reload
227
- };
228
- }
229
- return {
230
- meta,
231
- columns,
232
- rows,
233
- loading,
234
- running,
235
- error,
236
- serverMessage,
237
- executionTime,
238
- filterMeta,
239
- scriptFilterGap,
240
- missingRequired,
241
- filters,
242
- setFilters,
243
- reload
244
- };
245
- }
37
+ var import_frappe_ui = require("@multiplatform.one/frappe-ui");