@multiplatform.one/frappe-ui 7.28.0 → 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.
Files changed (618) hide show
  1. package/dist/cjs/ChartCard.native.js.map +1 -1
  2. package/dist/cjs/FileBrowser/AttachLibrary.native.js.map +1 -1
  3. package/dist/cjs/FileBrowser/folderTree.native.js.map +1 -1
  4. package/dist/cjs/FileBrowser/index.cjs +20 -3
  5. package/dist/cjs/FileBrowser/index.native.js +20 -3
  6. package/dist/cjs/FileBrowser/index.native.js.map +1 -1
  7. package/dist/cjs/FileBrowser/types.native.js.map +1 -1
  8. package/dist/cjs/FileBrowser/viewPersistence.native.js.map +1 -1
  9. package/dist/cjs/FormSidebar.native.js.map +1 -1
  10. package/dist/cjs/FrappeAssignment.native.js.map +1 -1
  11. package/dist/cjs/FrappeCalendar.cjs +3 -2
  12. package/dist/cjs/FrappeCalendar.native.js +3 -2
  13. package/dist/cjs/FrappeCalendar.native.js.map +1 -1
  14. package/dist/cjs/FrappeChartCard.native.js.map +1 -1
  15. package/dist/cjs/FrappeConnectionIndicator.native.js.map +1 -1
  16. package/dist/cjs/FrappeDashboard.native.js.map +1 -1
  17. package/dist/cjs/FrappeForm.cjs +148 -464
  18. package/dist/cjs/FrappeForm.native.js +153 -634
  19. package/dist/cjs/FrappeForm.native.js.map +1 -1
  20. package/dist/cjs/FrappeFormActions.native.js.map +1 -1
  21. package/dist/cjs/FrappeFormConnections.native.js.map +1 -1
  22. package/dist/cjs/FrappeGantt.native.js.map +1 -1
  23. package/dist/cjs/FrappeImageView.native.js.map +1 -1
  24. package/dist/cjs/FrappeInsights.native.js.map +1 -1
  25. package/dist/cjs/FrappeKPICard.native.js.map +1 -1
  26. package/dist/cjs/FrappeKanban.native.js.map +1 -1
  27. package/dist/cjs/FrappeLikedBy.native.js.map +1 -1
  28. package/dist/cjs/FrappeList.native.js.map +1 -1
  29. package/dist/cjs/FrappeListView.cjs +5 -27
  30. package/dist/cjs/FrappeListView.native.js +11 -32
  31. package/dist/cjs/FrappeListView.native.js.map +1 -1
  32. package/dist/cjs/FrappeNotConfigured.native.js.map +1 -1
  33. package/dist/cjs/FrappeProvider.native.js.map +1 -1
  34. package/dist/cjs/FrappeReconnectIndicator.native.js.map +1 -1
  35. package/dist/cjs/FrappeRecordView.native.js.map +1 -1
  36. package/dist/cjs/FrappeReportBuilder.cjs +523 -309
  37. package/dist/cjs/FrappeReportBuilder.native.js +658 -353
  38. package/dist/cjs/FrappeReportBuilder.native.js.map +1 -1
  39. package/dist/cjs/FrappeReportView.cjs +35 -234
  40. package/dist/cjs/FrappeReportView.native.js +42 -286
  41. package/dist/cjs/FrappeReportView.native.js.map +1 -1
  42. package/dist/cjs/FrappeRowsReader.native.js.map +1 -1
  43. package/dist/cjs/FrappeTable.native.js.map +1 -1
  44. package/dist/cjs/FrappeTreeView.native.js.map +1 -1
  45. package/dist/cjs/SyncErrorNotice.native.js.map +1 -1
  46. package/dist/cjs/commentActions.native.js.map +1 -1
  47. package/dist/cjs/components/attachments.native.js.map +1 -1
  48. package/dist/cjs/components/tags.native.js.map +1 -1
  49. package/dist/cjs/components/timeline.native.js.map +1 -1
  50. package/dist/cjs/dependsOn.cjs +2 -2
  51. package/dist/cjs/dependsOn.native.js +1 -2
  52. package/dist/cjs/dependsOn.native.js.map +1 -1
  53. package/dist/cjs/desk/DeskFormPage.native.js.map +1 -1
  54. package/dist/cjs/desk/DeskFormSidebar.native.js.map +1 -1
  55. package/dist/cjs/desk/DeskListPage.native.js.map +1 -1
  56. package/dist/cjs/desk/DeskShell.native.js.map +1 -1
  57. package/dist/cjs/desk/DeskSidebar.native.js.map +1 -1
  58. package/dist/cjs/desk/awesomebar.native.js.map +1 -1
  59. package/dist/cjs/fieldOverrides.native.js.map +1 -1
  60. package/dist/cjs/fieldRegistry.native.js +31 -31
  61. package/dist/cjs/fieldRegistry.native.js.map +1 -1
  62. package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
  63. package/dist/cjs/fields/Check/index.native.js.map +1 -1
  64. package/dist/cjs/fields/CodeEditor/index.native.js.map +1 -1
  65. package/dist/cjs/fields/Color/index.native.js.map +1 -1
  66. package/dist/cjs/fields/Data/index.native.js.map +1 -1
  67. package/dist/cjs/fields/Date/sheetKeyboard.native.js.map +1 -1
  68. package/dist/cjs/fields/Date/types.native.js.map +1 -1
  69. package/dist/cjs/fields/Date/wire.native.js.map +1 -1
  70. package/dist/cjs/fields/DateRange/index.native.js.map +1 -1
  71. package/dist/cjs/fields/Duration/index.native.js.map +1 -1
  72. package/dist/cjs/fields/DynamicLink.native.js.map +1 -1
  73. package/dist/cjs/fields/FileUpload.native.js.map +1 -1
  74. package/dist/cjs/fields/FileUploadField/index.native.js.map +1 -1
  75. package/dist/cjs/fields/Geolocation/index.native.js.map +1 -1
  76. package/dist/cjs/fields/HTML/index.native.js.map +1 -1
  77. package/dist/cjs/fields/Heading/index.native.js.map +1 -1
  78. package/dist/cjs/fields/Icon/index.native.js.map +1 -1
  79. package/dist/cjs/fields/Link.native.js.map +1 -1
  80. package/dist/cjs/fields/LinkTree.native.js.map +1 -1
  81. package/dist/cjs/fields/LongText/index.native.js.map +1 -1
  82. package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
  83. package/dist/cjs/fields/Numeric/index.native.js.map +1 -1
  84. package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
  85. package/dist/cjs/fields/Password/index.native.js.map +1 -1
  86. package/dist/cjs/fields/Phone/index.native.js.map +1 -1
  87. package/dist/cjs/fields/Progress/index.native.js.map +1 -1
  88. package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
  89. package/dist/cjs/fields/Rating/index.native.js.map +1 -1
  90. package/dist/cjs/fields/ReadOnly/index.native.js.map +1 -1
  91. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  92. package/dist/cjs/fields/Signature/index.native.js.map +1 -1
  93. package/dist/cjs/fields/Slider/index.native.js.map +1 -1
  94. package/dist/cjs/fields/SmallText/index.native.js.map +1 -1
  95. package/dist/cjs/fields/Switch/index.native.js.map +1 -1
  96. package/dist/cjs/fields/TableMultiSelect.native.js.map +1 -1
  97. package/dist/cjs/fields/TextEditor/types.native.js.map +1 -1
  98. package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
  99. package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
  100. package/dist/cjs/fields/shared/EditorPreviewPanes.cjs +2 -2
  101. package/dist/cjs/fields/shared/EditorPreviewPanes.native.js +2 -2
  102. package/dist/cjs/fields/shared/EditorPreviewPanes.native.js.map +1 -1
  103. package/dist/cjs/filterFields.native.js.map +1 -1
  104. package/dist/cjs/formEngine/createPrefill.native.js.map +1 -1
  105. package/dist/cjs/formEngine/dirtyTracking.native.js.map +1 -1
  106. package/dist/cjs/formEngine/docLifecycle.native.js.map +1 -1
  107. package/dist/cjs/formEngine/docPermissions.cjs +20 -0
  108. package/dist/cjs/formEngine/docPermissions.native.js +69 -0
  109. package/dist/cjs/formEngine/docPermissions.native.js.map +1 -1
  110. package/dist/cjs/formEngine/doctypeMeta.native.js.map +1 -1
  111. package/dist/cjs/formEngine/fetchFrom.native.js.map +1 -1
  112. package/dist/cjs/formEngine/fieldPermissions.native.js.map +1 -1
  113. package/dist/cjs/formEngine/formActions.native.js.map +1 -1
  114. package/dist/cjs/formEngine/formLayout.native.js.map +1 -1
  115. package/dist/cjs/formEngine/index.cjs +2 -0
  116. package/dist/cjs/formEngine/index.native.js +2 -0
  117. package/dist/cjs/formEngine/index.native.js.map +1 -1
  118. package/dist/cjs/formEngine/useAmendedAs.native.js.map +1 -1
  119. package/dist/cjs/formEngine/useDocRights.native.js.map +1 -1
  120. package/dist/cjs/formEngine/useFormEngine.native.js.map +1 -1
  121. package/dist/cjs/formEngine/useSessionRoles.native.js.map +1 -1
  122. package/dist/cjs/frappeConnections.native.js.map +1 -1
  123. package/dist/cjs/frappeEventColor.native.js.map +1 -1
  124. package/dist/cjs/frappeNavigation.native.js.map +1 -1
  125. package/dist/cjs/frappeStoryTarget.native.js.map +1 -1
  126. package/dist/cjs/frappeUsers.native.js.map +1 -1
  127. package/dist/cjs/index.cjs +67 -7
  128. package/dist/cjs/index.native.js +101 -41
  129. package/dist/cjs/index.native.js.map +1 -1
  130. package/dist/cjs/insights/InsightsFacetTags.native.js.map +1 -1
  131. package/dist/cjs/insights/InsightsKpiBand.native.js.map +1 -1
  132. package/dist/cjs/insights/InsightsLeaders.native.js.map +1 -1
  133. package/dist/cjs/insights/InsightsRecords.native.js.map +1 -1
  134. package/dist/cjs/insights/InsightsTable.native.js.map +1 -1
  135. package/dist/cjs/insights/insightsData.native.js.map +1 -1
  136. package/dist/cjs/insights/insightsRecord.native.js.map +1 -1
  137. package/dist/cjs/list/FacetBadge.native.js.map +1 -1
  138. package/dist/cjs/list/FacetRail.native.js.map +1 -1
  139. package/dist/cjs/list/ImageWell.native.js.map +1 -1
  140. package/dist/cjs/list/ListControls.native.js.map +1 -1
  141. package/dist/cjs/list/ListToastHost.native.js.map +1 -1
  142. package/dist/cjs/list/RangeFilter.native.js.map +1 -1
  143. package/dist/cjs/list/ShufflePanel.native.js.map +1 -1
  144. package/dist/cjs/list/facetReading.native.js.map +1 -1
  145. package/dist/cjs/list/favorites.native.js.map +1 -1
  146. package/dist/cjs/list/listColumns.native.js.map +1 -1
  147. package/dist/cjs/list/listFields.native.js.map +1 -1
  148. package/dist/cjs/list/listFormat.native.js.map +1 -1
  149. package/dist/cjs/list/listState.native.js.map +1 -1
  150. package/dist/cjs/list/recordLook.native.js.map +1 -1
  151. package/dist/cjs/list/statusColors.native.js.map +1 -1
  152. package/dist/cjs/list/useListControls.native.js.map +1 -1
  153. package/dist/cjs/liveErrors.cjs +8 -2
  154. package/dist/cjs/liveErrors.native.js +8 -2
  155. package/dist/cjs/liveErrors.native.js.map +1 -1
  156. package/dist/cjs/measures.cjs +31 -0
  157. package/dist/cjs/measures.native.js +34 -0
  158. package/dist/cjs/measures.native.js.map +1 -0
  159. package/dist/cjs/record/RecordBars.native.js.map +1 -1
  160. package/dist/cjs/record/RecordGallery.native.js.map +1 -1
  161. package/dist/cjs/record/RecordHero.native.js.map +1 -1
  162. package/dist/cjs/record/RecordPage.native.js.map +1 -1
  163. package/dist/cjs/record/RecordPager.native.js.map +1 -1
  164. package/dist/cjs/record/RecordRows.native.js.map +1 -1
  165. package/dist/cjs/record/recordData.native.js.map +1 -1
  166. package/dist/cjs/record/recordSections.native.js.map +1 -1
  167. package/dist/cjs/recordShape.cjs +103 -0
  168. package/dist/cjs/recordShape.native.js +115 -0
  169. package/dist/cjs/recordShape.native.js.map +1 -0
  170. package/dist/cjs/report/ReportGrid.cjs +453 -0
  171. package/dist/cjs/report/ReportGrid.native.js +510 -0
  172. package/dist/cjs/report/ReportGrid.native.js.map +1 -0
  173. package/dist/cjs/report/ReportViewToolbar.cjs +253 -0
  174. package/dist/cjs/report/ReportViewToolbar.native.js +303 -0
  175. package/dist/cjs/report/ReportViewToolbar.native.js.map +1 -0
  176. package/dist/cjs/report/queryReport.cjs +444 -0
  177. package/dist/cjs/report/queryReport.native.js +588 -0
  178. package/dist/cjs/report/queryReport.native.js.map +1 -0
  179. package/dist/cjs/report/queryReportColumns.cjs +131 -0
  180. package/dist/cjs/report/queryReportColumns.native.js +159 -0
  181. package/dist/cjs/report/queryReportColumns.native.js.map +1 -0
  182. package/dist/cjs/report/reportViewModel.cjs +386 -0
  183. package/dist/cjs/report/reportViewModel.native.js +657 -0
  184. package/dist/cjs/report/reportViewModel.native.js.map +1 -0
  185. package/dist/cjs/report/savedReports.cjs +137 -0
  186. package/dist/cjs/report/savedReports.native.js +169 -0
  187. package/dist/cjs/report/savedReports.native.js.map +1 -0
  188. package/dist/cjs/report/useFrappeReport.cjs +184 -0
  189. package/dist/cjs/report/useFrappeReport.native.js +214 -0
  190. package/dist/cjs/report/useFrappeReport.native.js.map +1 -0
  191. package/dist/cjs/report/useQueryReport.cjs +201 -0
  192. package/dist/cjs/report/useQueryReport.native.js +233 -0
  193. package/dist/cjs/report/useQueryReport.native.js.map +1 -0
  194. package/dist/cjs/resolveControl.native.js.map +1 -1
  195. package/dist/cjs/schemaForm/SchemaWizard.native.js.map +1 -1
  196. package/dist/cjs/schemaForm/applyFieldOrder.native.js.map +1 -1
  197. package/dist/cjs/schemaForm/index.native.js +1 -1
  198. package/dist/cjs/schemaForm/index.native.js.map +1 -1
  199. package/dist/cjs/shared/devWarn.native.js.map +1 -1
  200. package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -1
  201. package/dist/cjs/syncError.native.js.map +1 -1
  202. package/dist/cjs/useConnectionFilters.native.js.map +1 -1
  203. package/dist/cjs/useFrappeAggregate.native.js.map +1 -1
  204. package/dist/cjs/useFrappeFacets.native.js.map +1 -1
  205. package/dist/cjs/useFrappeForm.cjs +558 -0
  206. package/dist/cjs/useFrappeForm.native.js +714 -0
  207. package/dist/cjs/useFrappeForm.native.js.map +1 -0
  208. package/dist/cjs/useFrappePagination.native.js.map +1 -1
  209. package/dist/cjs/useFrappeRows.native.js.map +1 -1
  210. package/dist/esm/ChartCard.native.js.map +1 -1
  211. package/dist/esm/FileBrowser/AttachLibrary.native.js.map +1 -1
  212. package/dist/esm/FileBrowser/folderTree.native.js.map +1 -1
  213. package/dist/esm/FileBrowser/index.mjs +20 -3
  214. package/dist/esm/FileBrowser/index.mjs.map +1 -1
  215. package/dist/esm/FileBrowser/index.native.js +20 -3
  216. package/dist/esm/FileBrowser/index.native.js.map +1 -1
  217. package/dist/esm/FileBrowser/types.native.js.map +1 -1
  218. package/dist/esm/FileBrowser/viewPersistence.native.js.map +1 -1
  219. package/dist/esm/FormSidebar.native.js.map +1 -1
  220. package/dist/esm/FrappeAssignment.native.js.map +1 -1
  221. package/dist/esm/FrappeCalendar.mjs +4 -3
  222. package/dist/esm/FrappeCalendar.mjs.map +1 -1
  223. package/dist/esm/FrappeCalendar.native.js +4 -3
  224. package/dist/esm/FrappeCalendar.native.js.map +1 -1
  225. package/dist/esm/FrappeChartCard.native.js.map +1 -1
  226. package/dist/esm/FrappeConnectionIndicator.native.js.map +1 -1
  227. package/dist/esm/FrappeDashboard.native.js.map +1 -1
  228. package/dist/esm/FrappeForm.mjs +151 -467
  229. package/dist/esm/FrappeForm.mjs.map +1 -1
  230. package/dist/esm/FrappeForm.native.js +155 -636
  231. package/dist/esm/FrappeForm.native.js.map +1 -1
  232. package/dist/esm/FrappeFormActions.native.js.map +1 -1
  233. package/dist/esm/FrappeFormConnections.native.js.map +1 -1
  234. package/dist/esm/FrappeGantt.native.js.map +1 -1
  235. package/dist/esm/FrappeImageView.native.js.map +1 -1
  236. package/dist/esm/FrappeInsights.native.js.map +1 -1
  237. package/dist/esm/FrappeKPICard.native.js.map +1 -1
  238. package/dist/esm/FrappeKanban.native.js.map +1 -1
  239. package/dist/esm/FrappeLikedBy.native.js.map +1 -1
  240. package/dist/esm/FrappeList.native.js.map +1 -1
  241. package/dist/esm/FrappeListView.mjs +6 -28
  242. package/dist/esm/FrappeListView.mjs.map +1 -1
  243. package/dist/esm/FrappeListView.native.js +12 -33
  244. package/dist/esm/FrappeListView.native.js.map +1 -1
  245. package/dist/esm/FrappeNotConfigured.native.js.map +1 -1
  246. package/dist/esm/FrappeProvider.native.js.map +1 -1
  247. package/dist/esm/FrappeReconnectIndicator.native.js.map +1 -1
  248. package/dist/esm/FrappeRecordView.native.js.map +1 -1
  249. package/dist/esm/FrappeReportBuilder.mjs +526 -312
  250. package/dist/esm/FrappeReportBuilder.mjs.map +1 -1
  251. package/dist/esm/FrappeReportBuilder.native.js +661 -356
  252. package/dist/esm/FrappeReportBuilder.native.js.map +1 -1
  253. package/dist/esm/FrappeReportView.mjs +30 -229
  254. package/dist/esm/FrappeReportView.mjs.map +1 -1
  255. package/dist/esm/FrappeReportView.native.js +34 -278
  256. package/dist/esm/FrappeReportView.native.js.map +1 -1
  257. package/dist/esm/FrappeRowsReader.native.js.map +1 -1
  258. package/dist/esm/FrappeTable.native.js.map +1 -1
  259. package/dist/esm/FrappeTreeView.native.js.map +1 -1
  260. package/dist/esm/SyncErrorNotice.native.js.map +1 -1
  261. package/dist/esm/commentActions.native.js.map +1 -1
  262. package/dist/esm/components/attachments.native.js.map +1 -1
  263. package/dist/esm/components/tags.native.js.map +1 -1
  264. package/dist/esm/components/timeline.native.js.map +1 -1
  265. package/dist/esm/dependsOn.mjs +2 -2
  266. package/dist/esm/dependsOn.mjs.map +1 -1
  267. package/dist/esm/dependsOn.native.js +1 -2
  268. package/dist/esm/dependsOn.native.js.map +1 -1
  269. package/dist/esm/desk/DeskFormPage.native.js.map +1 -1
  270. package/dist/esm/desk/DeskFormSidebar.native.js.map +1 -1
  271. package/dist/esm/desk/DeskListPage.native.js.map +1 -1
  272. package/dist/esm/desk/DeskShell.native.js.map +1 -1
  273. package/dist/esm/desk/DeskSidebar.native.js.map +1 -1
  274. package/dist/esm/desk/awesomebar.native.js.map +1 -1
  275. package/dist/esm/fieldOverrides.native.js.map +1 -1
  276. package/dist/esm/fieldRegistry.native.js.map +1 -1
  277. package/dist/esm/fields/Barcode/index.native.js.map +1 -1
  278. package/dist/esm/fields/Check/index.native.js.map +1 -1
  279. package/dist/esm/fields/CodeEditor/index.native.js.map +1 -1
  280. package/dist/esm/fields/Color/index.native.js.map +1 -1
  281. package/dist/esm/fields/Data/index.native.js.map +1 -1
  282. package/dist/esm/fields/Date/sheetKeyboard.native.js.map +1 -1
  283. package/dist/esm/fields/Date/types.native.js.map +1 -1
  284. package/dist/esm/fields/Date/wire.native.js.map +1 -1
  285. package/dist/esm/fields/DateRange/index.native.js.map +1 -1
  286. package/dist/esm/fields/Duration/index.native.js.map +1 -1
  287. package/dist/esm/fields/DynamicLink.native.js.map +1 -1
  288. package/dist/esm/fields/FileUpload.native.js.map +1 -1
  289. package/dist/esm/fields/FileUploadField/index.native.js.map +1 -1
  290. package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
  291. package/dist/esm/fields/HTML/index.native.js.map +1 -1
  292. package/dist/esm/fields/Heading/index.native.js.map +1 -1
  293. package/dist/esm/fields/Icon/index.native.js.map +1 -1
  294. package/dist/esm/fields/Link.native.js.map +1 -1
  295. package/dist/esm/fields/LinkTree.native.js.map +1 -1
  296. package/dist/esm/fields/LongText/index.native.js.map +1 -1
  297. package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
  298. package/dist/esm/fields/Numeric/index.native.js.map +1 -1
  299. package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
  300. package/dist/esm/fields/Password/index.native.js.map +1 -1
  301. package/dist/esm/fields/Phone/index.native.js.map +1 -1
  302. package/dist/esm/fields/Progress/index.native.js.map +1 -1
  303. package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
  304. package/dist/esm/fields/Rating/index.native.js.map +1 -1
  305. package/dist/esm/fields/ReadOnly/index.native.js.map +1 -1
  306. package/dist/esm/fields/Select/index.native.js.map +1 -1
  307. package/dist/esm/fields/Signature/index.native.js.map +1 -1
  308. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  309. package/dist/esm/fields/SmallText/index.native.js.map +1 -1
  310. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  311. package/dist/esm/fields/TableMultiSelect.native.js.map +1 -1
  312. package/dist/esm/fields/TextEditor/types.native.js.map +1 -1
  313. package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
  314. package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
  315. package/dist/esm/fields/shared/EditorPreviewPanes.mjs +2 -2
  316. package/dist/esm/fields/shared/EditorPreviewPanes.mjs.map +1 -1
  317. package/dist/esm/fields/shared/EditorPreviewPanes.native.js +2 -2
  318. package/dist/esm/fields/shared/EditorPreviewPanes.native.js.map +1 -1
  319. package/dist/esm/filterFields.native.js.map +1 -1
  320. package/dist/esm/formEngine/createPrefill.native.js.map +1 -1
  321. package/dist/esm/formEngine/dirtyTracking.native.js.map +1 -1
  322. package/dist/esm/formEngine/docLifecycle.native.js.map +1 -1
  323. package/dist/esm/formEngine/docPermissions.mjs +19 -1
  324. package/dist/esm/formEngine/docPermissions.mjs.map +1 -1
  325. package/dist/esm/formEngine/docPermissions.native.js +68 -1
  326. package/dist/esm/formEngine/docPermissions.native.js.map +1 -1
  327. package/dist/esm/formEngine/doctypeMeta.native.js.map +1 -1
  328. package/dist/esm/formEngine/fetchFrom.native.js.map +1 -1
  329. package/dist/esm/formEngine/fieldPermissions.native.js.map +1 -1
  330. package/dist/esm/formEngine/formActions.native.js.map +1 -1
  331. package/dist/esm/formEngine/formLayout.native.js.map +1 -1
  332. package/dist/esm/formEngine/index.mjs +2 -2
  333. package/dist/esm/formEngine/index.mjs.map +1 -1
  334. package/dist/esm/formEngine/index.native.js +2 -2
  335. package/dist/esm/formEngine/index.native.js.map +1 -1
  336. package/dist/esm/formEngine/useAmendedAs.native.js.map +1 -1
  337. package/dist/esm/formEngine/useDocRights.native.js.map +1 -1
  338. package/dist/esm/formEngine/useFormEngine.native.js.map +1 -1
  339. package/dist/esm/formEngine/useSessionRoles.native.js.map +1 -1
  340. package/dist/esm/frappeConnections.native.js.map +1 -1
  341. package/dist/esm/frappeEventColor.native.js.map +1 -1
  342. package/dist/esm/frappeNavigation.native.js.map +1 -1
  343. package/dist/esm/frappeStoryTarget.native.js.map +1 -1
  344. package/dist/esm/frappeUsers.native.js.map +1 -1
  345. package/dist/esm/index.mjs +16 -4
  346. package/dist/esm/index.mjs.map +1 -1
  347. package/dist/esm/index.native.js +16 -4
  348. package/dist/esm/index.native.js.map +1 -1
  349. package/dist/esm/insights/InsightsFacetTags.native.js.map +1 -1
  350. package/dist/esm/insights/InsightsKpiBand.native.js.map +1 -1
  351. package/dist/esm/insights/InsightsLeaders.native.js.map +1 -1
  352. package/dist/esm/insights/InsightsRecords.native.js.map +1 -1
  353. package/dist/esm/insights/InsightsTable.native.js.map +1 -1
  354. package/dist/esm/insights/insightsData.native.js.map +1 -1
  355. package/dist/esm/insights/insightsRecord.native.js.map +1 -1
  356. package/dist/esm/list/FacetBadge.native.js.map +1 -1
  357. package/dist/esm/list/FacetRail.native.js.map +1 -1
  358. package/dist/esm/list/ImageWell.native.js.map +1 -1
  359. package/dist/esm/list/ListControls.native.js.map +1 -1
  360. package/dist/esm/list/ListToastHost.native.js.map +1 -1
  361. package/dist/esm/list/RangeFilter.native.js.map +1 -1
  362. package/dist/esm/list/ShufflePanel.native.js.map +1 -1
  363. package/dist/esm/list/facetReading.native.js.map +1 -1
  364. package/dist/esm/list/favorites.native.js.map +1 -1
  365. package/dist/esm/list/listColumns.native.js.map +1 -1
  366. package/dist/esm/list/listFields.native.js.map +1 -1
  367. package/dist/esm/list/listFormat.native.js.map +1 -1
  368. package/dist/esm/list/listState.native.js.map +1 -1
  369. package/dist/esm/list/recordLook.native.js.map +1 -1
  370. package/dist/esm/list/statusColors.native.js.map +1 -1
  371. package/dist/esm/list/useListControls.native.js.map +1 -1
  372. package/dist/esm/liveErrors.mjs +8 -3
  373. package/dist/esm/liveErrors.mjs.map +1 -1
  374. package/dist/esm/liveErrors.native.js +8 -3
  375. package/dist/esm/liveErrors.native.js.map +1 -1
  376. package/dist/esm/measures.mjs +5 -0
  377. package/dist/esm/measures.mjs.map +1 -0
  378. package/dist/esm/measures.native.js +5 -0
  379. package/dist/esm/measures.native.js.map +1 -0
  380. package/dist/esm/record/RecordBars.native.js.map +1 -1
  381. package/dist/esm/record/RecordGallery.native.js.map +1 -1
  382. package/dist/esm/record/RecordHero.native.js.map +1 -1
  383. package/dist/esm/record/RecordPage.native.js.map +1 -1
  384. package/dist/esm/record/RecordPager.native.js.map +1 -1
  385. package/dist/esm/record/RecordRows.native.js.map +1 -1
  386. package/dist/esm/record/recordData.native.js.map +1 -1
  387. package/dist/esm/record/recordSections.native.js.map +1 -1
  388. package/dist/esm/recordShape.mjs +74 -0
  389. package/dist/esm/recordShape.mjs.map +1 -0
  390. package/dist/esm/recordShape.native.js +83 -0
  391. package/dist/esm/recordShape.native.js.map +1 -0
  392. package/dist/esm/report/ReportGrid.mjs +428 -0
  393. package/dist/esm/report/ReportGrid.mjs.map +1 -0
  394. package/dist/esm/report/ReportGrid.native.js +471 -0
  395. package/dist/esm/report/ReportGrid.native.js.map +1 -0
  396. package/dist/esm/report/ReportViewToolbar.mjs +228 -0
  397. package/dist/esm/report/ReportViewToolbar.mjs.map +1 -0
  398. package/dist/esm/report/ReportViewToolbar.native.js +264 -0
  399. package/dist/esm/report/ReportViewToolbar.native.js.map +1 -0
  400. package/dist/esm/report/queryReport.mjs +404 -0
  401. package/dist/esm/report/queryReport.mjs.map +1 -0
  402. package/dist/esm/report/queryReport.native.js +545 -0
  403. package/dist/esm/report/queryReport.native.js.map +1 -0
  404. package/dist/esm/report/queryReportColumns.mjs +105 -0
  405. package/dist/esm/report/queryReportColumns.mjs.map +1 -0
  406. package/dist/esm/report/queryReportColumns.native.js +119 -0
  407. package/dist/esm/report/queryReportColumns.native.js.map +1 -0
  408. package/dist/esm/report/reportViewModel.mjs +343 -0
  409. package/dist/esm/report/reportViewModel.mjs.map +1 -0
  410. package/dist/esm/report/reportViewModel.native.js +611 -0
  411. package/dist/esm/report/reportViewModel.native.js.map +1 -0
  412. package/dist/esm/report/savedReports.mjs +112 -0
  413. package/dist/esm/report/savedReports.mjs.map +1 -0
  414. package/dist/esm/report/savedReports.native.js +141 -0
  415. package/dist/esm/report/savedReports.native.js.map +1 -0
  416. package/dist/esm/report/useFrappeReport.mjs +158 -0
  417. package/dist/esm/report/useFrappeReport.mjs.map +1 -0
  418. package/dist/esm/report/useFrappeReport.native.js +185 -0
  419. package/dist/esm/report/useFrappeReport.native.js.map +1 -0
  420. package/dist/esm/report/useQueryReport.mjs +176 -0
  421. package/dist/esm/report/useQueryReport.mjs.map +1 -0
  422. package/dist/esm/report/useQueryReport.native.js +205 -0
  423. package/dist/esm/report/useQueryReport.native.js.map +1 -0
  424. package/dist/esm/resolveControl.native.js.map +1 -1
  425. package/dist/esm/schemaForm/SchemaWizard.native.js.map +1 -1
  426. package/dist/esm/schemaForm/applyFieldOrder.native.js.map +1 -1
  427. package/dist/esm/schemaForm/index.native.js.map +1 -1
  428. package/dist/esm/shared/devWarn.native.js.map +1 -1
  429. package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
  430. package/dist/esm/syncError.native.js.map +1 -1
  431. package/dist/esm/useConnectionFilters.native.js.map +1 -1
  432. package/dist/esm/useFrappeAggregate.native.js.map +1 -1
  433. package/dist/esm/useFrappeFacets.native.js.map +1 -1
  434. package/dist/esm/useFrappeForm.mjs +533 -0
  435. package/dist/esm/useFrappeForm.mjs.map +1 -0
  436. package/dist/esm/useFrappeForm.native.js +686 -0
  437. package/dist/esm/useFrappeForm.native.js.map +1 -0
  438. package/dist/esm/useFrappePagination.native.js.map +1 -1
  439. package/dist/esm/useFrappeRows.native.js.map +1 -1
  440. package/dist/jsx/FileBrowser/index.mjs +20 -3
  441. package/dist/jsx/FileBrowser/index.mjs.map +1 -1
  442. package/dist/jsx/FileBrowser/index.native.js +20 -3
  443. package/dist/jsx/FileBrowser/index.native.js.map +1 -1
  444. package/dist/jsx/FrappeCalendar.mjs +4 -3
  445. package/dist/jsx/FrappeCalendar.mjs.map +1 -1
  446. package/dist/jsx/FrappeCalendar.native.js +3 -2
  447. package/dist/jsx/FrappeCalendar.native.js.map +1 -1
  448. package/dist/jsx/FrappeForm.mjs +151 -467
  449. package/dist/jsx/FrappeForm.mjs.map +1 -1
  450. package/dist/jsx/FrappeForm.native.js +152 -633
  451. package/dist/jsx/FrappeForm.native.js.map +1 -1
  452. package/dist/jsx/FrappeListView.mjs +6 -28
  453. package/dist/jsx/FrappeListView.mjs.map +1 -1
  454. package/dist/jsx/FrappeListView.native.js +11 -32
  455. package/dist/jsx/FrappeListView.native.js.map +1 -1
  456. package/dist/jsx/FrappeReportBuilder.mjs +526 -312
  457. package/dist/jsx/FrappeReportBuilder.mjs.map +1 -1
  458. package/dist/jsx/FrappeReportBuilder.native.js +658 -353
  459. package/dist/jsx/FrappeReportBuilder.native.js.map +1 -1
  460. package/dist/jsx/FrappeReportView.mjs +30 -229
  461. package/dist/jsx/FrappeReportView.mjs.map +1 -1
  462. package/dist/jsx/FrappeReportView.native.js +39 -283
  463. package/dist/jsx/FrappeReportView.native.js.map +1 -1
  464. package/dist/jsx/dependsOn.mjs +2 -2
  465. package/dist/jsx/dependsOn.mjs.map +1 -1
  466. package/dist/jsx/dependsOn.native.js +1 -2
  467. package/dist/jsx/dependsOn.native.js.map +1 -1
  468. package/dist/jsx/fields/shared/EditorPreviewPanes.mjs +2 -2
  469. package/dist/jsx/fields/shared/EditorPreviewPanes.mjs.map +1 -1
  470. package/dist/jsx/fields/shared/EditorPreviewPanes.native.js +2 -2
  471. package/dist/jsx/fields/shared/EditorPreviewPanes.native.js.map +1 -1
  472. package/dist/jsx/formEngine/docPermissions.mjs +19 -1
  473. package/dist/jsx/formEngine/docPermissions.mjs.map +1 -1
  474. package/dist/jsx/formEngine/docPermissions.native.js +69 -0
  475. package/dist/jsx/formEngine/docPermissions.native.js.map +1 -1
  476. package/dist/jsx/formEngine/index.mjs +2 -2
  477. package/dist/jsx/formEngine/index.mjs.map +1 -1
  478. package/dist/jsx/formEngine/index.native.js +2 -0
  479. package/dist/jsx/formEngine/index.native.js.map +1 -1
  480. package/dist/jsx/index.js +16 -4
  481. package/dist/jsx/index.js.map +1 -1
  482. package/dist/jsx/index.mjs +16 -4
  483. package/dist/jsx/index.mjs.map +1 -1
  484. package/dist/jsx/index.native.js +67 -7
  485. package/dist/jsx/index.native.js.map +1 -1
  486. package/dist/jsx/liveErrors.mjs +8 -3
  487. package/dist/jsx/liveErrors.mjs.map +1 -1
  488. package/dist/jsx/liveErrors.native.js +8 -2
  489. package/dist/jsx/liveErrors.native.js.map +1 -1
  490. package/dist/jsx/measures.mjs +5 -0
  491. package/dist/jsx/measures.mjs.map +1 -0
  492. package/dist/jsx/measures.native.js +34 -0
  493. package/dist/jsx/measures.native.js.map +1 -0
  494. package/dist/jsx/recordShape.mjs +74 -0
  495. package/dist/jsx/recordShape.mjs.map +1 -0
  496. package/dist/jsx/recordShape.native.js +115 -0
  497. package/dist/jsx/recordShape.native.js.map +1 -0
  498. package/dist/jsx/report/ReportGrid.mjs +428 -0
  499. package/dist/jsx/report/ReportGrid.mjs.map +1 -0
  500. package/dist/jsx/report/ReportGrid.native.js +510 -0
  501. package/dist/jsx/report/ReportGrid.native.js.map +1 -0
  502. package/dist/jsx/report/ReportViewToolbar.mjs +228 -0
  503. package/dist/jsx/report/ReportViewToolbar.mjs.map +1 -0
  504. package/dist/jsx/report/ReportViewToolbar.native.js +303 -0
  505. package/dist/jsx/report/ReportViewToolbar.native.js.map +1 -0
  506. package/dist/jsx/report/queryReport.mjs +404 -0
  507. package/dist/jsx/report/queryReport.mjs.map +1 -0
  508. package/dist/jsx/report/queryReport.native.js +588 -0
  509. package/dist/jsx/report/queryReport.native.js.map +1 -0
  510. package/dist/jsx/report/queryReportColumns.mjs +105 -0
  511. package/dist/jsx/report/queryReportColumns.mjs.map +1 -0
  512. package/dist/jsx/report/queryReportColumns.native.js +159 -0
  513. package/dist/jsx/report/queryReportColumns.native.js.map +1 -0
  514. package/dist/jsx/report/reportViewModel.mjs +343 -0
  515. package/dist/jsx/report/reportViewModel.mjs.map +1 -0
  516. package/dist/jsx/report/reportViewModel.native.js +657 -0
  517. package/dist/jsx/report/reportViewModel.native.js.map +1 -0
  518. package/dist/jsx/report/savedReports.mjs +112 -0
  519. package/dist/jsx/report/savedReports.mjs.map +1 -0
  520. package/dist/jsx/report/savedReports.native.js +169 -0
  521. package/dist/jsx/report/savedReports.native.js.map +1 -0
  522. package/dist/jsx/report/useFrappeReport.mjs +158 -0
  523. package/dist/jsx/report/useFrappeReport.mjs.map +1 -0
  524. package/dist/jsx/report/useFrappeReport.native.js +214 -0
  525. package/dist/jsx/report/useFrappeReport.native.js.map +1 -0
  526. package/dist/jsx/report/useQueryReport.mjs +176 -0
  527. package/dist/jsx/report/useQueryReport.mjs.map +1 -0
  528. package/dist/jsx/report/useQueryReport.native.js +233 -0
  529. package/dist/jsx/report/useQueryReport.native.js.map +1 -0
  530. package/dist/jsx/useFrappeForm.mjs +533 -0
  531. package/dist/jsx/useFrappeForm.mjs.map +1 -0
  532. package/dist/jsx/useFrappeForm.native.js +714 -0
  533. package/dist/jsx/useFrappeForm.native.js.map +1 -0
  534. package/package.json +16 -16
  535. package/src/FileBrowser/FileBrowser.spec.tsx +21 -0
  536. package/src/FileBrowser/FileBrowser.stories.tsx +27 -0
  537. package/src/FileBrowser/index.tsx +25 -2
  538. package/src/FrappeCalendar.tsx +8 -2
  539. package/src/FrappeForm.stories.tsx +52 -0
  540. package/src/FrappeForm.tsx +176 -565
  541. package/src/FrappeListView.cards.stories.tsx +3 -6
  542. package/src/FrappeListView.tsx +15 -55
  543. package/src/FrappeReportBuilder.stories.tsx +34 -7
  544. package/src/FrappeReportBuilder.tsx +790 -380
  545. package/src/FrappeReportView.spec.tsx +10 -6
  546. package/src/FrappeReportView.stories.tsx +20 -1
  547. package/src/FrappeReportView.tsx +89 -415
  548. package/src/dependsOn.ts +4 -1
  549. package/src/fields/shared/EditorPreviewPanes.tsx +2 -2
  550. package/src/formEngine/docPermissions.spec.ts +36 -1
  551. package/src/formEngine/docPermissions.ts +34 -0
  552. package/src/formEngine/index.ts +8 -1
  553. package/src/frappeRemainder.designLaw.spec.ts +9 -1
  554. package/src/frappeRoutes.spec.tsx +9 -0
  555. package/src/frappeViews.designLaw.spec.ts +15 -2
  556. package/src/guestFallback.spec.tsx +236 -0
  557. package/src/index.ts +117 -16
  558. package/src/liveErrors.spec.ts +10 -0
  559. package/src/liveErrors.ts +16 -3
  560. package/src/measures.ts +11 -0
  561. package/src/recordShape.spec.ts +100 -0
  562. package/src/recordShape.ts +133 -0
  563. package/src/report/ReportGrid.spec.tsx +175 -0
  564. package/src/report/ReportGrid.tsx +530 -0
  565. package/src/report/ReportViewToolbar.spec.tsx +90 -0
  566. package/src/report/ReportViewToolbar.tsx +314 -0
  567. package/src/report/queryReport.spec.ts +483 -0
  568. package/src/report/queryReport.ts +722 -0
  569. package/src/report/queryReportColumns.tsx +123 -0
  570. package/src/report/reportViewModel.spec.ts +393 -0
  571. package/src/report/reportViewModel.ts +617 -0
  572. package/src/report/savedReports.ts +172 -0
  573. package/src/report/seam.spec.ts +216 -0
  574. package/src/report/useFrappeReport.ts +241 -0
  575. package/src/report/useQueryReport.spec.tsx +131 -0
  576. package/src/report/useQueryReport.ts +309 -0
  577. package/src/useFrappeForm.spec.tsx +209 -0
  578. package/src/useFrappeForm.ts +778 -0
  579. package/types/FileBrowser/index.d.ts.map +1 -1
  580. package/types/FrappeCalendar.d.ts.map +1 -1
  581. package/types/FrappeForm.d.ts +21 -1
  582. package/types/FrappeForm.d.ts.map +1 -1
  583. package/types/FrappeListView.d.ts.map +1 -1
  584. package/types/FrappeReportBuilder.d.ts +66 -16
  585. package/types/FrappeReportBuilder.d.ts.map +1 -1
  586. package/types/FrappeReportView.d.ts +9 -127
  587. package/types/FrappeReportView.d.ts.map +1 -1
  588. package/types/dependsOn.d.ts.map +1 -1
  589. package/types/formEngine/docPermissions.d.ts +14 -0
  590. package/types/formEngine/docPermissions.d.ts.map +1 -1
  591. package/types/formEngine/index.d.ts +1 -1
  592. package/types/formEngine/index.d.ts.map +1 -1
  593. package/types/index.d.ts +15 -3
  594. package/types/index.d.ts.map +1 -1
  595. package/types/liveErrors.d.ts +9 -1
  596. package/types/liveErrors.d.ts.map +1 -1
  597. package/types/measures.d.ts +3 -0
  598. package/types/measures.d.ts.map +1 -0
  599. package/types/recordShape.d.ts +45 -0
  600. package/types/recordShape.d.ts.map +1 -0
  601. package/types/report/ReportGrid.d.ts +20 -0
  602. package/types/report/ReportGrid.d.ts.map +1 -0
  603. package/types/report/ReportViewToolbar.d.ts +31 -0
  604. package/types/report/ReportViewToolbar.d.ts.map +1 -0
  605. package/types/report/queryReport.d.ts +181 -0
  606. package/types/report/queryReport.d.ts.map +1 -0
  607. package/types/report/queryReportColumns.d.ts +12 -0
  608. package/types/report/queryReportColumns.d.ts.map +1 -0
  609. package/types/report/reportViewModel.d.ts +146 -0
  610. package/types/report/reportViewModel.d.ts.map +1 -0
  611. package/types/report/savedReports.d.ts +27 -0
  612. package/types/report/savedReports.d.ts.map +1 -0
  613. package/types/report/useFrappeReport.d.ts +60 -0
  614. package/types/report/useFrappeReport.d.ts.map +1 -0
  615. package/types/report/useQueryReport.d.ts +37 -0
  616. package/types/report/useQueryReport.d.ts.map +1 -0
  617. package/types/useFrappeForm.d.ts +142 -0
  618. package/types/useFrappeForm.d.ts.map +1 -0
@@ -25,19 +25,18 @@ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
25
25
  var FrappeReportView_exports = {};
26
26
  __export(FrappeReportView_exports, {
27
27
  FrappeReportView: () => FrappeReportView,
28
- compactFilterValues: () => compactFilterValues,
29
- normalizeReportColumn: () => normalizeReportColumn,
30
- normalizeReportPayload: () => normalizeReportPayload,
31
- normalizeReportRows: () => normalizeReportRows,
28
+ compactFilterValues: () => import_queryReport2.compactFilterValues,
29
+ normalizeReportColumn: () => import_queryReport2.normalizeReportColumn,
30
+ normalizeReportPayload: () => import_queryReport2.normalizeReportPayload,
31
+ normalizeReportRows: () => import_queryReport2.normalizeReportRows,
32
32
  reportColumnToDataTableColumn: () => reportColumnToDataTableColumn,
33
33
  reportFieldtypeToTableField: () => reportFieldtypeToTableField,
34
34
  reportRowLabel: () => reportRowLabel,
35
- scrubFieldname: () => scrubFieldname,
36
- useFrappeReport: () => useFrappeReport
35
+ scrubFieldname: () => import_queryReport2.scrubFieldname,
36
+ useFrappeReport: () => import_useFrappeReport2.useFrappeReport
37
37
  });
38
38
  module.exports = __toCommonJS(FrappeReportView_exports);
39
39
  var import_jsx_runtime = require("react/jsx-runtime");
40
- var import_frappe = require("@multiplatform.one/frappe");
41
40
  var import_components = require("@multiplatform.one/components");
42
41
  var import_forms = require("@multiplatform.one/forms");
43
42
  var import_table = require("@multiplatform.one/table");
@@ -47,101 +46,15 @@ var import_react2 = require("react");
47
46
  var import_react_i18next = require("react-i18next");
48
47
  var import_tamagui = require("tamagui");
49
48
  var import_FrappeProvider = require("./FrappeProvider.native.js");
50
- var import_Check = require("./fields/Check");
51
- var import_Data = require("./fields/Data");
52
- var import_Select = require("./fields/Select");
49
+ var import_Check = require("./fields/Check/index.native.js");
50
+ var import_Data = require("./fields/Data/index.native.js");
51
+ var import_Select = require("./fields/Select/index.native.js");
53
52
  var import_liveErrors = require("./liveErrors.native.js");
54
- function _instanceof(left, right) {
55
- "@swc/helpers - instanceof";
56
-
57
- if (right != null && typeof Symbol !== "undefined" && right[Symbol.hasInstance]) {
58
- return !!right[Symbol.hasInstance](left);
59
- } else {
60
- return left instanceof right;
61
- }
62
- }
53
+ var import_queryReport = require("./report/queryReport.native.js");
54
+ var import_useFrappeReport = require("./report/useFrappeReport.native.js");
55
+ var import_queryReport2 = require("./report/queryReport.native.js");
56
+ var import_useFrappeReport2 = require("./report/useFrappeReport.native.js");
63
57
  var ReportDataTable = import_table.DataTable;
64
- function scrubFieldname(label) {
65
- return label.trim().replace(/[\s-]+/g, "_").toLowerCase();
66
- }
67
- function normalizeReportColumn(col) {
68
- var _col_label, _col_label1;
69
- if (typeof col === "string") {
70
- var _parts_;
71
- var parts = col.split(":");
72
- var label = (_parts_ = parts[0]) !== null && _parts_ !== void 0 ? _parts_ : "";
73
- var out = {
74
- label,
75
- fieldname: scrubFieldname(label)
76
- };
77
- if (parts.length > 1 && parts[1]) {
78
- var [fieldtype, options] = parts[1].split("/");
79
- if (fieldtype) out.fieldtype = fieldtype;
80
- if (options) out.options = options;
81
- }
82
- if (parts.length === 3 && parts[2]) out.width = parts[2];
83
- return out;
84
- }
85
- return {
86
- ...col,
87
- fieldname: col.fieldname || scrubFieldname((_col_label = col.label) !== null && _col_label !== void 0 ? _col_label : ""),
88
- label: (_col_label1 = col.label) !== null && _col_label1 !== void 0 ? _col_label1 : col.fieldname
89
- };
90
- }
91
- function normalizeReportRows(columns, result) {
92
- if (!(result === null || result === void 0 ? void 0 : result.length)) return [];
93
- return result.map(function (row) {
94
- if (Array.isArray(row)) {
95
- var obj = {};
96
- columns.forEach(function (col, idx) {
97
- obj[col.fieldname] = row[idx];
98
- });
99
- return obj;
100
- }
101
- return row;
102
- });
103
- }
104
- function normalizeReportPayload(raw) {
105
- var _raw_columns, _raw_message;
106
- var columns = ((_raw_columns = raw.columns) !== null && _raw_columns !== void 0 ? _raw_columns : []).map(normalizeReportColumn);
107
- var rows = normalizeReportRows(columns, raw.result);
108
- var message = Array.isArray(raw.message) ? raw.message.filter(Boolean).join(" ") : (_raw_message = raw.message) !== null && _raw_message !== void 0 ? _raw_message : void 0;
109
- return {
110
- columns,
111
- rows,
112
- message: message || void 0,
113
- addTotalRow: Boolean(raw.add_total_row) && !raw.skip_total_row,
114
- filters: raw.filters,
115
- raw
116
- };
117
- }
118
- function compactFilterValues(values) {
119
- var out = {};
120
- var _iteratorNormalCompletion = true,
121
- _didIteratorError = false,
122
- _iteratorError = void 0;
123
- try {
124
- for (var _iterator = Object.entries(values !== null && values !== void 0 ? values : {})[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
125
- var [key, value] = _step.value;
126
- if (value === void 0 || value === null || value === "") continue;
127
- out[key] = value;
128
- }
129
- } catch (err) {
130
- _didIteratorError = true;
131
- _iteratorError = err;
132
- } finally {
133
- try {
134
- if (!_iteratorNormalCompletion && _iterator.return != null) {
135
- _iterator.return();
136
- }
137
- } finally {
138
- if (_didIteratorError) {
139
- throw _iteratorError;
140
- }
141
- }
142
- }
143
- return out;
144
- }
145
58
  function parseSelectOptions(options) {
146
59
  return (options !== null && options !== void 0 ? options : "").split("\n").map(function (opt) {
147
60
  return opt.trim();
@@ -249,177 +162,6 @@ function reportRowLabel(row) {
249
162
  function canDownloadFiles() {
250
163
  return typeof document !== "undefined" && typeof document.createElement === "function" && typeof Blob !== "undefined" && typeof URL !== "undefined" && typeof URL.createObjectURL === "function";
251
164
  }
252
- var callCache = /* @__PURE__ */new Map();
253
- function getCall(connection) {
254
- var _ref, _ref1;
255
- var _connection_auth, _connection_auth1, _connection_auth2;
256
- var key = `${connection.baseURL}:${((_connection_auth = connection.auth) === null || _connection_auth === void 0 ? void 0 : _connection_auth.useToken) ? "t" : ""}:${(_ref = (_connection_auth1 = connection.auth) === null || _connection_auth1 === void 0 ? void 0 : _connection_auth1.token) !== null && _ref !== void 0 ? _ref : ""}:${(_ref1 = (_connection_auth2 = connection.auth) === null || _connection_auth2 === void 0 ? void 0 : _connection_auth2.type) !== null && _ref1 !== void 0 ? _ref1 : ""}`;
257
- var call = callCache.get(key);
258
- if (!call) {
259
- var authConfig = connection.auth ? {
260
- useToken: connection.auth.useToken,
261
- token: connection.auth.token,
262
- type: connection.auth.type
263
- } : void 0;
264
- call = new import_frappe.CallModule(new import_frappe.HttpClient(connection.baseURL, authConfig));
265
- callCache.set(key, call);
266
- }
267
- return call;
268
- }
269
- var DEFAULT_DEBOUNCE_MS = 400;
270
- function useFrappeReport(connection, param) {
271
- var {
272
- reportName,
273
- filters,
274
- fixture,
275
- fetchFilterDefs = false,
276
- ignorePreparedReport = false,
277
- debounceMs = DEFAULT_DEBOUNCE_MS,
278
- enabled = true
279
- } = param;
280
- var isEnabled = enabled && !!reportName && (!!connection || !!fixture);
281
- var [payload, setPayload] = (0, import_react2.useState)(void 0);
282
- var [scriptFilters, setScriptFilters] = (0, import_react2.useState)(void 0);
283
- var [isLoading, setIsLoading] = (0, import_react2.useState)(isEnabled);
284
- var [isFetching, setIsFetching] = (0, import_react2.useState)(false);
285
- var [error, setError] = (0, import_react2.useState)(void 0);
286
- var compactedFilters = (0, import_react2.useMemo)(function () {
287
- return compactFilterValues(filters);
288
- }, [filters]);
289
- var filtersKey = JSON.stringify(compactedFilters);
290
- var runKey = JSON.stringify([connection === null || connection === void 0 ? void 0 : connection.baseURL, !!fixture, reportName, filtersKey, ignorePreparedReport]);
291
- var fetchSeq = (0, import_react2.useRef)(0);
292
- var argsRef = (0, import_react2.useRef)({
293
- reportName,
294
- filters: compactedFilters,
295
- fixture,
296
- ignorePreparedReport
297
- });
298
- argsRef.current = {
299
- reportName,
300
- filters: compactedFilters,
301
- fixture,
302
- ignorePreparedReport
303
- };
304
- var connectionRef = (0, import_react2.useRef)(connection);
305
- connectionRef.current = connection;
306
- var runFetch = (0, import_react2.useCallback)(async function () {
307
- var {
308
- reportName: name,
309
- filters: values,
310
- fixture: fx,
311
- ignorePreparedReport: skipPrepared
312
- } = argsRef.current;
313
- var conn = connectionRef.current;
314
- if (!name || !conn && !fx) return;
315
- var seq = ++fetchSeq.current;
316
- setIsFetching(true);
317
- try {
318
- var raw;
319
- if (fx) {
320
- raw = typeof fx === "function" ? await fx({
321
- reportName: name,
322
- filters: values
323
- }) : fx;
324
- } else if (conn) {
325
- var res = await getCall(conn).post("frappe.desk.query_report.run", {
326
- report_name: name,
327
- filters: values,
328
- ignore_prepared_report: skipPrepared ? 1 : 0,
329
- // Desk parity: only let the server substitute saved custom
330
- // filters when the caller sent no filter values at all.
331
- are_default_filters: Object.keys(values).length ? 0 : 1
332
- });
333
- raw = res.payload.message;
334
- }
335
- if (seq !== fetchSeq.current) return;
336
- setPayload(normalizeReportPayload(raw !== null && raw !== void 0 ? raw : {}));
337
- setError(void 0);
338
- } catch (err) {
339
- if (seq !== fetchSeq.current) return;
340
- setError(_instanceof(err, Error) ? err : new Error(String(err)));
341
- } finally {
342
- if (seq === fetchSeq.current) {
343
- setIsLoading(false);
344
- setIsFetching(false);
345
- }
346
- }
347
- }, []);
348
- var debouncerRef = (0, import_react2.useRef)(void 0);
349
- if (!debouncerRef.current) {
350
- debouncerRef.current = new import_frappe.AsyncDebouncer(function () {
351
- return runFetch();
352
- }, {
353
- wait: debounceMs
354
- });
355
- }
356
- (0, import_react2.useEffect)(function () {
357
- var _debouncerRef_current;
358
- (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.setOptions({
359
- wait: debounceMs
360
- });
361
- }, [debounceMs]);
362
- (0, import_react2.useEffect)(function () {
363
- return function () {
364
- var _debouncerRef_current;
365
- return (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.cancel();
366
- };
367
- }, []);
368
- var lastRunKeyRef = (0, import_react2.useRef)(void 0);
369
- var lastReportRef = (0, import_react2.useRef)(void 0);
370
- (0, import_react2.useEffect)(function () {
371
- if (!isEnabled || lastRunKeyRef.current === runKey) return;
372
- lastRunKeyRef.current = runKey;
373
- var reportChanged = lastReportRef.current !== argsRef.current.reportName;
374
- lastReportRef.current = argsRef.current.reportName;
375
- setError(void 0);
376
- if (reportChanged) {
377
- var _debouncerRef_current;
378
- setIsLoading(true);
379
- (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.cancel();
380
- void runFetch();
381
- } else if (debounceMs <= 0) {
382
- void runFetch();
383
- } else {
384
- var _debouncerRef_current1;
385
- void ((_debouncerRef_current1 = debouncerRef.current) === null || _debouncerRef_current1 === void 0 ? void 0 : _debouncerRef_current1.maybeExecute());
386
- }
387
- }, [isEnabled, runKey, debounceMs, runFetch]);
388
- (0, import_react2.useEffect)(function () {
389
- if (!isEnabled || !fetchFilterDefs || fixture || !connection) {
390
- return;
391
- }
392
- var cancelled = false;
393
- void async function () {
394
- try {
395
- var _ref;
396
- var _res_payload_message;
397
- var res = await getCall(connection).get("frappe.desk.query_report.get_script", {
398
- report_name: reportName
399
- });
400
- if (!cancelled) setScriptFilters((_ref = (_res_payload_message = res.payload.message) === null || _res_payload_message === void 0 ? void 0 : _res_payload_message.filters) !== null && _ref !== void 0 ? _ref : []);
401
- } catch (unused) {
402
- if (!cancelled) setScriptFilters([]);
403
- }
404
- }();
405
- return function () {
406
- cancelled = true;
407
- };
408
- }, [isEnabled, fetchFilterDefs, fixture, connection, reportName]);
409
- var refresh = (0, import_react2.useCallback)(function () {
410
- var _debouncerRef_current;
411
- (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.cancel();
412
- void runFetch();
413
- }, [runFetch]);
414
- return {
415
- payload,
416
- scriptFilters,
417
- isLoading,
418
- isFetching,
419
- error,
420
- refresh
421
- };
422
- }
423
165
  function ReportFilterField(param) {
424
166
  var {
425
167
  def,
@@ -429,6 +171,7 @@ function ReportFilterField(param) {
429
171
  var {
430
172
  t
431
173
  } = (0, import_react_i18next.useTranslation)();
174
+ var label = def.label || def.fieldname;
432
175
  switch (def.fieldtype) {
433
176
  case "Select":
434
177
  {
@@ -439,7 +182,7 @@ function ReportFilterField(param) {
439
182
  } : opt;
440
183
  });
441
184
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Select.Select, {
442
- label: def.label,
185
+ label,
443
186
  compact: true,
444
187
  options,
445
188
  value: value == null ? "" : String(value),
@@ -449,7 +192,7 @@ function ReportFilterField(param) {
449
192
  case "Date":
450
193
  case "Datetime":
451
194
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.DatePicker, {
452
- label: def.label,
195
+ label,
453
196
  compact: true,
454
197
  value: value == null ? null : String(value),
455
198
  onChange: function onChange1(date) {
@@ -458,7 +201,7 @@ function ReportFilterField(param) {
458
201
  });
459
202
  case "Check":
460
203
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Check.Check, {
461
- label: def.label,
204
+ label,
462
205
  compact: true,
463
206
  value: Boolean(value),
464
207
  // Wire shape parity with desk: checkboxes travel as 1 / 0.
@@ -468,11 +211,11 @@ function ReportFilterField(param) {
468
211
  });
469
212
  default:
470
213
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_Data.Data, {
471
- label: def.label,
214
+ label,
472
215
  compact: true,
473
216
  value: value == null ? "" : String(value),
474
217
  onChange,
475
- placeholder: def.label
218
+ placeholder: label
476
219
  });
477
220
  }
478
221
  }
@@ -536,7 +279,7 @@ function FrappeReportView(param) {
536
279
  isFetching,
537
280
  error,
538
281
  refresh
539
- } = useFrappeReport(connection, {
282
+ } = (0, import_useFrappeReport.useFrappeReport)(connection, {
540
283
  reportName,
541
284
  filters: filterValues,
542
285
  fixture,
@@ -546,8 +289,13 @@ function FrappeReportView(param) {
546
289
  });
547
290
  var filterDefs = (0, import_react2.useMemo)(function () {
548
291
  var _ref2, _ref1;
549
- return (_ref2 = (_ref1 = filterFields !== null && filterFields !== void 0 ? filterFields : payload === null || payload === void 0 ? void 0 : payload.filters) !== null && _ref1 !== void 0 ? _ref1 : scriptFilters) !== null && _ref2 !== void 0 ? _ref2 : [];
292
+ return (0, import_queryReport.normalizeFilterMeta)((_ref2 = (_ref1 = filterFields !== null && filterFields !== void 0 ? filterFields : payload === null || payload === void 0 ? void 0 : payload.filters) !== null && _ref1 !== void 0 ? _ref1 : scriptFilters) !== null && _ref2 !== void 0 ? _ref2 : []);
550
293
  }, [filterFields, payload === null || payload === void 0 ? void 0 : payload.filters, scriptFilters]);
294
+ var shownFilterDefs = (0, import_react2.useMemo)(function () {
295
+ return filterDefs.filter(function (def) {
296
+ return def.hidden !== 1;
297
+ });
298
+ }, [filterDefs]);
551
299
  var seededReportRef = (0, import_react2.useRef)(void 0);
552
300
  (0, import_react2.useEffect)(function () {
553
301
  if (isControlled || seededReportRef.current === reportName || !filterDefs.length) return;
@@ -560,7 +308,7 @@ function FrappeReportView(param) {
560
308
  try {
561
309
  for (var _iterator = filterDefs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
562
310
  var def = _step.value;
563
- if (def.default != null && def.default !== "" && prev[def.fieldname] == null) {
311
+ if (def.default !== void 0 && def.default !== "" && prev[def.fieldname] == null) {
564
312
  seeded[def.fieldname] = def.default;
565
313
  }
566
314
  }
@@ -601,13 +349,15 @@ function FrappeReportView(param) {
601
349
  });
602
350
  }, [payload === null || payload === void 0 ? void 0 : payload.columns]);
603
351
  var exportEnabled = showExport && canDownloadFiles();
604
- var hasToolbar = filterDefs.length > 0 || showRefresh || exportEnabled;
352
+ var refused = error !== void 0 && (0, import_liveErrors.isPermissionError)(error);
353
+ var refreshShown = showRefresh && !refused;
354
+ var hasToolbar = shownFilterDefs.length > 0 || refreshShown || exportEnabled;
605
355
  if (error && errorRenderer) {
606
356
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
607
357
  children: errorRenderer(error)
608
358
  });
609
359
  }
610
- var normalizedError = error ? (0, import_liveErrors.toLiveLoadError)(error, {
360
+ var normalizedError = error && !refused ? (0, import_liveErrors.toLiveLoadError)(error, {
611
361
  permissionMessage: t("You do not have permission to run {{reportName}}", {
612
362
  reportName
613
363
  }),
@@ -615,7 +365,7 @@ function FrappeReportView(param) {
615
365
  reportName
616
366
  })
617
367
  }) : null;
618
- var boundaryState = normalizedError ? {
368
+ var boundaryState = refused ? null : normalizedError ? {
619
369
  error: normalizedError
620
370
  } : isLoading ? {
621
371
  loading: loading !== null && loading !== void 0 ? loading : true
@@ -633,7 +383,7 @@ function FrappeReportView(param) {
633
383
  ...knobProps.gap,
634
384
  alignItems: "flex-end",
635
385
  flexWrap: "wrap",
636
- children: [filterDefs.map(function (def) {
386
+ children: [shownFilterDefs.map(function (def) {
637
387
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
638
388
  minWidth: 180,
639
389
  maxWidth: 280,
@@ -660,7 +410,7 @@ function FrappeReportView(param) {
660
410
  color: import_forms.formCommonColors.muted,
661
411
  children: t("Updating...")
662
412
  })]
663
- }), showRefresh && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
413
+ }), refreshShown && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
664
414
  size: "$2",
665
415
  icon: import_react.ArrowClockwiseIcon,
666
416
  onPress: refresh,
@@ -669,7 +419,7 @@ function FrappeReportView(param) {
669
419
  }), exportEnabled && rows.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_table.DataTableExport, {
670
420
  data: rows,
671
421
  columns: exportColumns,
672
- filename: scrubFieldname(reportName),
422
+ filename: (0, import_queryReport.scrubFieldname)(reportName),
673
423
  exportFormats: [{
674
424
  id: "csv",
675
425
  label: t("CSV"),
@@ -693,7 +443,13 @@ function FrappeReportView(param) {
693
443
  ...knobProps.label,
694
444
  color: import_forms.formCommonColors.muted,
695
445
  children: payload.message
696
- }), boundaryState ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {
446
+ }), refused ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.EmptyState, {
447
+ testID: "frappe-report-not-permitted",
448
+ title: t("You can't run {{reportName}}", {
449
+ reportName
450
+ }),
451
+ description: (0, import_liveErrors.refusalReason)((0, import_queryReport.humanizeFrappeError)(error))
452
+ }) : boundaryState ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {
697
453
  layout: "table",
698
454
  errorTitle: t("Error running {{reportName}}", {
699
455
  reportName
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","FrappeReportView_exports","FrappeReportView","compactFilterValues","normalizeReportColumn","normalizeReportPayload","normalizeReportRows","reportColumnToDataTableColumn","reportFieldtypeToTableField","reportRowLabel","scrubFieldname","useFrappeReport","module","exports","import_jsx_runtime","require","import_frappe","import_components","import_forms","import_table","import_theme","import_react","import_react2","import_react_i18next","import_tamagui","import_FrappeProvider","import_Check","import_Data","import_Select","import_liveErrors","_instanceof","left","right","Symbol","hasInstance","ReportDataTable","DataTable","label","trim","replace","toLowerCase","col","_col_label","_col_label1","_parts_","parts","split","out","fieldname","length","fieldtype","options","width","columns","result","map","row","Array","isArray","obj","forEach","idx","raw","_raw_columns","_raw_message","rows","message","filter","Boolean","join","addTotalRow","add_total_row","skip_total_row","filters","values","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","entries","iterator","_step","next","done","err","return","parseSelectOptions","opt","arr","indexOf","column","field","fieldProps","precision","_column_precision","o","Number","id","accessorKey","header","isFinite","meta","align","getDefaultColumnAlign","_i","_iter","String","canDownloadFiles","document","createElement","Blob","URL","createObjectURL","callCache","Map","getCall","connection","_ref","_ref1","_connection_auth","_connection_auth1","_connection_auth2","baseURL","auth","useToken","token","type","authConfig","CallModule","HttpClient","set","DEFAULT_DEBOUNCE_MS","param","reportName","fixture","fetchFilterDefs","ignorePreparedReport","debounceMs","enabled","isEnabled","payload","setPayload","useState","scriptFilters","setScriptFilters","isLoading","setIsLoading","isFetching","setIsFetching","error","setError","compactedFilters","useMemo","filtersKey","JSON","stringify","runKey","fetchSeq","useRef","argsRef","current","connectionRef","runFetch","useCallback","fx","skipPrepared","conn","seq","res","post","report_name","ignore_prepared_report","are_default_filters","keys","Error","debouncerRef","AsyncDebouncer","wait","useEffect","_debouncerRef_current","setOptions","cancel","lastRunKeyRef","lastReportRef","reportChanged","_debouncerRef_current1","maybeExecute","cancelled","_res_payload_message","unused","refresh","ReportFilterField","def","onChange","t","useTranslation","jsx","Select","compact","DatePicker","onChange1","date","formatCalendarDate","Check","checked","Data","placeholder","controlledFilters","defaultFilters","onFiltersChange","filterFields","onRowPress","showExport","showRefresh","loading","errorRenderer","tableProps","stackProps","knobProps","useResolvedKnobs","config","useFrappeConfig","finalBaseURL","finalAuth","realtime","isControlled","internalFilters","setInternalFilters","filterValues","setFilterValue","filterDefs","_ref2","seededReportRef","prev","seeded","default","exportColumns","exportEnabled","hasToolbar","Fragment","children","normalizedError","toLiveLoadError","permissionMessage","genericMessage","boundaryState","empty","jsxs","YStack","gap","flex","XStack","alignItems","flexWrap","minWidth","maxWidth","flexShrink","paddingBottom","Spinner","size","Text","color","formCommonColors","muted","Button","icon","ArrowClockwiseIcon","onPress","DataTableExport","data","filename","exportFormats","extension","mimeType","description","AsyncBoundary","layout","errorTitle","emptyTitle","onRetry","readOnly","onRowPress1","rowLabel"],"sources":["FrappeReportView.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar FrappeReportView_exports = {};\n__export(FrappeReportView_exports, {\n FrappeReportView: () => FrappeReportView,\n compactFilterValues: () => compactFilterValues,\n normalizeReportColumn: () => normalizeReportColumn,\n normalizeReportPayload: () => normalizeReportPayload,\n normalizeReportRows: () => normalizeReportRows,\n reportColumnToDataTableColumn: () => reportColumnToDataTableColumn,\n reportFieldtypeToTableField: () => reportFieldtypeToTableField,\n reportRowLabel: () => reportRowLabel,\n scrubFieldname: () => scrubFieldname,\n useFrappeReport: () => useFrappeReport\n});\nmodule.exports = __toCommonJS(FrappeReportView_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_frappe = require(\"@multiplatform.one/frappe\");\nvar import_components = require(\"@multiplatform.one/components\");\nvar import_forms = require(\"@multiplatform.one/forms\");\nvar import_table = require(\"@multiplatform.one/table\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_react = require(\"@phosphor-icons/react\");\nvar import_react2 = require(\"react\");\nvar import_react_i18next = require(\"react-i18next\");\nvar import_tamagui = require(\"tamagui\");\nvar import_FrappeProvider = require(\"./FrappeProvider\");\nvar import_Check = require(\"./fields/Check\");\nvar import_Data = require(\"./fields/Data\");\nvar import_Select = require(\"./fields/Select\");\nvar import_liveErrors = require(\"./liveErrors\");\nfunction _instanceof(left, right) {\n \"@swc/helpers - instanceof\";\n if (right != null && typeof Symbol !== \"undefined\" && right[Symbol.hasInstance]) {\n return !!right[Symbol.hasInstance](left);\n } else {\n return left instanceof right;\n }\n}\nvar ReportDataTable = import_table.DataTable;\nfunction scrubFieldname(label) {\n return label.trim().replace(/[\\s-]+/g, \"_\").toLowerCase();\n}\nfunction normalizeReportColumn(col) {\n var _col_label, _col_label1;\n if (typeof col === \"string\") {\n var _parts_;\n var parts = col.split(\":\");\n var label = (_parts_ = parts[0]) !== null && _parts_ !== void 0 ? _parts_ : \"\";\n var out = {\n label,\n fieldname: scrubFieldname(label)\n };\n if (parts.length > 1 && parts[1]) {\n var [fieldtype, options] = parts[1].split(\"/\");\n if (fieldtype) out.fieldtype = fieldtype;\n if (options) out.options = options;\n }\n if (parts.length === 3 && parts[2]) out.width = parts[2];\n return out;\n }\n return {\n ...col,\n fieldname: col.fieldname || scrubFieldname((_col_label = col.label) !== null && _col_label !== void 0 ? _col_label : \"\"),\n label: (_col_label1 = col.label) !== null && _col_label1 !== void 0 ? _col_label1 : col.fieldname\n };\n}\nfunction normalizeReportRows(columns, result) {\n if (!(result === null || result === void 0 ? void 0 : result.length)) return [];\n return result.map(function(row) {\n if (Array.isArray(row)) {\n var obj = {};\n columns.forEach(function(col, idx) {\n obj[col.fieldname] = row[idx];\n });\n return obj;\n }\n return row;\n });\n}\nfunction normalizeReportPayload(raw) {\n var _raw_columns, _raw_message;\n var columns = ((_raw_columns = raw.columns) !== null && _raw_columns !== void 0 ? _raw_columns : []).map(normalizeReportColumn);\n var rows = normalizeReportRows(columns, raw.result);\n var message = Array.isArray(raw.message) ? raw.message.filter(Boolean).join(\" \") : (_raw_message = raw.message) !== null && _raw_message !== void 0 ? _raw_message : void 0;\n return {\n columns,\n rows,\n message: message || void 0,\n addTotalRow: Boolean(raw.add_total_row) && !raw.skip_total_row,\n filters: raw.filters,\n raw\n };\n}\nfunction compactFilterValues(values) {\n var out = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.entries(values !== null && values !== void 0 ? values : {})[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var [key, value] = _step.value;\n if (value === void 0 || value === null || value === \"\") continue;\n out[key] = value;\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return out;\n}\nfunction parseSelectOptions(options) {\n return (options !== null && options !== void 0 ? options : \"\").split(\"\\n\").map(function(opt) {\n return opt.trim();\n }).filter(function(opt, idx, arr) {\n return arr.indexOf(opt) === idx;\n }).map(function(opt) {\n return {\n label: opt,\n value: opt\n };\n });\n}\nfunction reportFieldtypeToTableField(column) {\n switch (column.fieldtype) {\n case \"Int\":\n return {\n field: \"stepper\",\n fieldProps: {\n precision: 0\n }\n };\n case \"Float\":\n case \"Currency\":\n case \"Percent\":\n var _column_precision;\n return {\n field: \"stepper\",\n fieldProps: {\n precision: (_column_precision = column.precision) !== null && _column_precision !== void 0 ? _column_precision : 2\n }\n };\n case \"Check\":\n return {\n field: \"checkbox\"\n };\n case \"Date\":\n return {\n field: \"datepicker\"\n };\n case \"Datetime\":\n return {\n field: \"datetimepicker\"\n };\n case \"Time\":\n return {\n field: \"timepicker\"\n };\n case \"Duration\":\n return {\n field: \"duration\"\n };\n case \"Select\": {\n var options = parseSelectOptions(column.options).filter(function(o) {\n return o.value !== \"\";\n });\n return {\n field: \"select\",\n fieldProps: options.length ? {\n options\n } : void 0\n };\n }\n default:\n return {\n field: \"input\"\n };\n }\n}\nfunction reportColumnToDataTableColumn(column) {\n var { field, fieldProps } = reportFieldtypeToTableField(column);\n var width = column.width != null ? Number(column.width) : void 0;\n return {\n id: column.fieldname,\n accessorKey: column.fieldname,\n header: column.label,\n ...width && Number.isFinite(width) ? {\n width\n } : {},\n field,\n ...fieldProps ? {\n fieldProps\n } : {},\n meta: {\n align: (0, import_table.getDefaultColumnAlign)({\n id: column.fieldname,\n field,\n fieldProps\n })\n }\n };\n}\nfunction reportRowLabel(row) {\n for (var _i = 0, _iter = [\n \"name\",\n \"title\"\n ]; _i < _iter.length; _i++) {\n var key = _iter[_i];\n var value = row[key];\n if (typeof value === \"string\" && value) return value;\n if (typeof value === \"number\") return String(value);\n }\n return \"\";\n}\nfunction canDownloadFiles() {\n return typeof document !== \"undefined\" && typeof document.createElement === \"function\" && typeof Blob !== \"undefined\" && typeof URL !== \"undefined\" && typeof URL.createObjectURL === \"function\";\n}\nvar callCache = /* @__PURE__ */ new Map();\nfunction getCall(connection) {\n var _ref, _ref1;\n var _connection_auth, _connection_auth1, _connection_auth2;\n var key = `${connection.baseURL}:${((_connection_auth = connection.auth) === null || _connection_auth === void 0 ? void 0 : _connection_auth.useToken) ? \"t\" : \"\"}:${(_ref = (_connection_auth1 = connection.auth) === null || _connection_auth1 === void 0 ? void 0 : _connection_auth1.token) !== null && _ref !== void 0 ? _ref : \"\"}:${(_ref1 = (_connection_auth2 = connection.auth) === null || _connection_auth2 === void 0 ? void 0 : _connection_auth2.type) !== null && _ref1 !== void 0 ? _ref1 : \"\"}`;\n var call = callCache.get(key);\n if (!call) {\n var authConfig = connection.auth ? {\n useToken: connection.auth.useToken,\n token: connection.auth.token,\n type: connection.auth.type\n } : void 0;\n call = new import_frappe.CallModule(new import_frappe.HttpClient(connection.baseURL, authConfig));\n callCache.set(key, call);\n }\n return call;\n}\nvar DEFAULT_DEBOUNCE_MS = 400;\nfunction useFrappeReport(connection, param) {\n var { reportName, filters, fixture, fetchFilterDefs = false, ignorePreparedReport = false, debounceMs = DEFAULT_DEBOUNCE_MS, enabled = true } = param;\n var isEnabled = enabled && !!reportName && (!!connection || !!fixture);\n var [payload, setPayload] = (0, import_react2.useState)(void 0);\n var [scriptFilters, setScriptFilters] = (0, import_react2.useState)(void 0);\n var [isLoading, setIsLoading] = (0, import_react2.useState)(isEnabled);\n var [isFetching, setIsFetching] = (0, import_react2.useState)(false);\n var [error, setError] = (0, import_react2.useState)(void 0);\n var compactedFilters = (0, import_react2.useMemo)(function() {\n return compactFilterValues(filters);\n }, [\n filters\n ]);\n var filtersKey = JSON.stringify(compactedFilters);\n var runKey = JSON.stringify([\n connection === null || connection === void 0 ? void 0 : connection.baseURL,\n !!fixture,\n reportName,\n filtersKey,\n ignorePreparedReport\n ]);\n var fetchSeq = (0, import_react2.useRef)(0);\n var argsRef = (0, import_react2.useRef)({\n reportName,\n filters: compactedFilters,\n fixture,\n ignorePreparedReport\n });\n argsRef.current = {\n reportName,\n filters: compactedFilters,\n fixture,\n ignorePreparedReport\n };\n var connectionRef = (0, import_react2.useRef)(connection);\n connectionRef.current = connection;\n var runFetch = (0, import_react2.useCallback)(async function() {\n var { reportName: name, filters: values, fixture: fx, ignorePreparedReport: skipPrepared } = argsRef.current;\n var conn = connectionRef.current;\n if (!name || !conn && !fx) return;\n var seq = ++fetchSeq.current;\n setIsFetching(true);\n try {\n var raw;\n if (fx) {\n raw = typeof fx === \"function\" ? await fx({\n reportName: name,\n filters: values\n }) : fx;\n } else if (conn) {\n var res = await getCall(conn).post(\"frappe.desk.query_report.run\", {\n report_name: name,\n filters: values,\n ignore_prepared_report: skipPrepared ? 1 : 0,\n // Desk parity: only let the server substitute saved custom\n // filters when the caller sent no filter values at all.\n are_default_filters: Object.keys(values).length ? 0 : 1\n });\n raw = res.payload.message;\n }\n if (seq !== fetchSeq.current) return;\n setPayload(normalizeReportPayload(raw !== null && raw !== void 0 ? raw : {}));\n setError(void 0);\n } catch (err) {\n if (seq !== fetchSeq.current) return;\n setError(_instanceof(err, Error) ? err : new Error(String(err)));\n } finally {\n if (seq === fetchSeq.current) {\n setIsLoading(false);\n setIsFetching(false);\n }\n }\n }, []);\n var debouncerRef = (0, import_react2.useRef)(void 0);\n if (!debouncerRef.current) {\n debouncerRef.current = new import_frappe.AsyncDebouncer(function() {\n return runFetch();\n }, {\n wait: debounceMs\n });\n }\n (0, import_react2.useEffect)(function() {\n var _debouncerRef_current;\n (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.setOptions({\n wait: debounceMs\n });\n }, [\n debounceMs\n ]);\n (0, import_react2.useEffect)(function() {\n return function() {\n var _debouncerRef_current;\n return (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.cancel();\n };\n }, []);\n var lastRunKeyRef = (0, import_react2.useRef)(void 0);\n var lastReportRef = (0, import_react2.useRef)(void 0);\n (0, import_react2.useEffect)(function() {\n if (!isEnabled || lastRunKeyRef.current === runKey) return;\n lastRunKeyRef.current = runKey;\n var reportChanged = lastReportRef.current !== argsRef.current.reportName;\n lastReportRef.current = argsRef.current.reportName;\n setError(void 0);\n if (reportChanged) {\n var _debouncerRef_current;\n setIsLoading(true);\n (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.cancel();\n void runFetch();\n } else if (debounceMs <= 0) {\n void runFetch();\n } else {\n var _debouncerRef_current1;\n void ((_debouncerRef_current1 = debouncerRef.current) === null || _debouncerRef_current1 === void 0 ? void 0 : _debouncerRef_current1.maybeExecute());\n }\n }, [\n isEnabled,\n runKey,\n debounceMs,\n runFetch\n ]);\n (0, import_react2.useEffect)(function() {\n if (!isEnabled || !fetchFilterDefs || fixture || !connection) {\n return;\n }\n var cancelled = false;\n void (async function() {\n try {\n var _ref;\n var _res_payload_message;\n var res = await getCall(connection).get(\"frappe.desk.query_report.get_script\", {\n report_name: reportName\n });\n if (!cancelled) setScriptFilters((_ref = (_res_payload_message = res.payload.message) === null || _res_payload_message === void 0 ? void 0 : _res_payload_message.filters) !== null && _ref !== void 0 ? _ref : []);\n } catch (unused) {\n if (!cancelled) setScriptFilters([]);\n }\n })();\n return function() {\n cancelled = true;\n };\n }, [\n isEnabled,\n fetchFilterDefs,\n fixture,\n connection,\n reportName\n ]);\n var refresh = (0, import_react2.useCallback)(function() {\n var _debouncerRef_current;\n (_debouncerRef_current = debouncerRef.current) === null || _debouncerRef_current === void 0 ? void 0 : _debouncerRef_current.cancel();\n void runFetch();\n }, [\n runFetch\n ]);\n return {\n payload,\n scriptFilters,\n isLoading,\n isFetching,\n error,\n refresh\n };\n}\nfunction ReportFilterField(param) {\n var { def, value, onChange } = param;\n var { t } = (0, import_react_i18next.useTranslation)();\n switch (def.fieldtype) {\n case \"Select\": {\n var options = parseSelectOptions(def.options).map(function(opt) {\n return opt.value === \"\" ? {\n label: t(\"All\"),\n value: \"\"\n } : opt;\n });\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Select.Select, {\n label: def.label,\n compact: true,\n options,\n value: value == null ? \"\" : String(value),\n onChange\n });\n }\n case \"Date\":\n case \"Datetime\":\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_forms.DatePicker, {\n label: def.label,\n compact: true,\n value: value == null ? null : String(value),\n onChange: function onChange1(date) {\n return onChange(date ? (0, import_theme.formatCalendarDate)(date) : \"\");\n }\n });\n case \"Check\":\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Check.Check, {\n label: def.label,\n compact: true,\n value: Boolean(value),\n // Wire shape parity with desk: checkboxes travel as 1 / 0.\n onChange: function onChange1(checked) {\n return onChange(checked ? 1 : 0);\n }\n });\n default:\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_Data.Data, {\n label: def.label,\n compact: true,\n value: value == null ? \"\" : String(value),\n onChange,\n placeholder: def.label\n });\n }\n}\nfunction FrappeReportView(param) {\n var { reportName, filters: controlledFilters, defaultFilters, onFiltersChange, filterFields, onRowPress, fixture, baseURL, auth, showExport = true, showRefresh = true, ignorePreparedReport = false, debounceMs, loading, error: errorRenderer, tableProps, ...stackProps } = param;\n var _ref;\n var { knobProps } = (0, import_theme.useResolvedKnobs)();\n var { t } = (0, import_react_i18next.useTranslation)();\n var config = (0, import_FrappeProvider.useFrappeConfig)();\n var finalBaseURL = baseURL !== null && baseURL !== void 0 ? baseURL : config === null || config === void 0 ? void 0 : config.baseURL;\n var finalAuth = auth !== null && auth !== void 0 ? auth : config === null || config === void 0 ? void 0 : config.auth;\n if (!finalBaseURL && !fixture) {\n throw new Error(\"FrappeReportView requires baseURL prop or FrappeProvider with baseURL\");\n }\n var connection = (0, import_react2.useMemo)(function() {\n return finalBaseURL ? {\n baseURL: finalBaseURL,\n realtime: config === null || config === void 0 ? void 0 : config.realtime,\n auth: finalAuth\n } : void 0;\n }, [\n finalBaseURL,\n config === null || config === void 0 ? void 0 : config.realtime,\n finalAuth\n ]);\n var isControlled = controlledFilters !== void 0;\n var [internalFilters, setInternalFilters] = (0, import_react2.useState)(function() {\n return defaultFilters !== null && defaultFilters !== void 0 ? defaultFilters : {};\n });\n var filterValues = isControlled ? controlledFilters : internalFilters;\n var setFilterValue = (0, import_react2.useCallback)(function(fieldname, value) {\n var next = {\n ...isControlled ? controlledFilters : internalFilters,\n [fieldname]: value\n };\n if (!isControlled) setInternalFilters(next);\n onFiltersChange === null || onFiltersChange === void 0 ? void 0 : onFiltersChange(next);\n }, [\n isControlled,\n controlledFilters,\n internalFilters,\n onFiltersChange\n ]);\n var { payload, scriptFilters, isLoading, isFetching, error, refresh } = useFrappeReport(connection, {\n reportName,\n filters: filterValues,\n fixture,\n fetchFilterDefs: !filterFields,\n ignorePreparedReport,\n debounceMs\n });\n var filterDefs = (0, import_react2.useMemo)(function() {\n var _ref2, _ref1;\n return (_ref2 = (_ref1 = filterFields !== null && filterFields !== void 0 ? filterFields : payload === null || payload === void 0 ? void 0 : payload.filters) !== null && _ref1 !== void 0 ? _ref1 : scriptFilters) !== null && _ref2 !== void 0 ? _ref2 : [];\n }, [\n filterFields,\n payload === null || payload === void 0 ? void 0 : payload.filters,\n scriptFilters\n ]);\n var seededReportRef = (0, import_react2.useRef)(void 0);\n (0, import_react2.useEffect)(function() {\n if (isControlled || seededReportRef.current === reportName || !filterDefs.length) return;\n seededReportRef.current = reportName;\n setInternalFilters(function(prev) {\n var seeded = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = filterDefs[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var def = _step.value;\n if (def.default != null && def.default !== \"\" && prev[def.fieldname] == null) {\n seeded[def.fieldname] = def.default;\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return Object.keys(seeded).length ? {\n ...seeded,\n ...prev\n } : prev;\n });\n }, [\n isControlled,\n reportName,\n filterDefs\n ]);\n var rows = (_ref = payload === null || payload === void 0 ? void 0 : payload.rows) !== null && _ref !== void 0 ? _ref : [];\n var columns = (0, import_react2.useMemo)(function() {\n var _ref2;\n return ((_ref2 = payload === null || payload === void 0 ? void 0 : payload.columns) !== null && _ref2 !== void 0 ? _ref2 : []).map(function(col) {\n return reportColumnToDataTableColumn(col);\n });\n }, [\n payload === null || payload === void 0 ? void 0 : payload.columns\n ]);\n var exportColumns = (0, import_react2.useMemo)(function() {\n var _ref2;\n return ((_ref2 = payload === null || payload === void 0 ? void 0 : payload.columns) !== null && _ref2 !== void 0 ? _ref2 : []).map(function(col) {\n return {\n accessorKey: col.fieldname,\n header: col.label\n };\n });\n }, [\n payload === null || payload === void 0 ? void 0 : payload.columns\n ]);\n var exportEnabled = showExport && canDownloadFiles();\n var hasToolbar = filterDefs.length > 0 || showRefresh || exportEnabled;\n if (error && errorRenderer) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children: errorRenderer(error)\n });\n }\n var normalizedError = error ? (0, import_liveErrors.toLiveLoadError)(error, {\n permissionMessage: t(\"You do not have permission to run {{reportName}}\", {\n reportName\n }),\n genericMessage: t(\"Error running {{reportName}}\", {\n reportName\n })\n }) : null;\n var boundaryState = normalizedError ? {\n error: normalizedError\n } : isLoading ? {\n loading: loading !== null && loading !== void 0 ? loading : true\n } : rows.length === 0 ? {\n empty: true\n } : null;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ...knobProps.gap,\n flex: 1,\n ...stackProps,\n children: [\n /* Filter bar + actions — stays mounted across empty/error states so a\n bad filter can always be corrected. */\n hasToolbar && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n ...knobProps.gap,\n alignItems: \"flex-end\",\n flexWrap: \"wrap\",\n children: [\n filterDefs.map(function(def) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n minWidth: 180,\n maxWidth: 280,\n flexShrink: 1,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ReportFilterField, {\n def,\n value: filterValues[def.fieldname],\n onChange: function onChange(value) {\n return setFilterValue(def.fieldname, value);\n }\n })\n }, def.fieldname);\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.XStack, {\n flex: 1\n }),\n isFetching && !isLoading && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n gap: \"$2\",\n alignItems: \"center\",\n paddingBottom: \"$2\",\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_forms.Spinner, {\n size: \"small\",\n \"aria-label\": t(\"Updating\")\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n color: import_forms.formCommonColors.muted,\n children: t(\"Updating...\")\n })\n ]\n }),\n showRefresh && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_forms.Button, {\n size: \"$2\",\n icon: import_react.ArrowClockwiseIcon,\n onPress: refresh,\n \"aria-label\": t(\"Refresh report\"),\n children: t(\"Refresh\")\n }),\n exportEnabled && rows.length > 0 && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_table.DataTableExport, {\n data: rows,\n columns: exportColumns,\n filename: scrubFieldname(reportName),\n exportFormats: [\n {\n id: \"csv\",\n label: t(\"CSV\"),\n icon: null,\n extension: \"csv\",\n mimeType: \"text/csv\",\n description: t(\"Comma-separated values\"),\n enabled: true\n },\n {\n id: \"json\",\n label: t(\"JSON\"),\n icon: null,\n extension: \"json\",\n mimeType: \"application/json\",\n description: t(\"JavaScript object notation\"),\n enabled: true\n }\n ]\n })\n ]\n }),\n /* Server-side report message (already user-facing). */\n (payload === null || payload === void 0 ? void 0 : payload.message) && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n color: import_forms.formCommonColors.muted,\n children: payload.message\n }),\n boundaryState ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {\n layout: \"table\",\n errorTitle: t(\"Error running {{reportName}}\", {\n reportName\n }),\n emptyTitle: t(\"No results for {{reportName}}\", {\n reportName\n }),\n onRetry: refresh,\n ...boundaryState\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(ReportDataTable, {\n data: rows,\n columns,\n readOnly: true,\n // onRowPress (the stable FrappeReportView prop) rides DataTable's\n // first-class row activation: whole-row press target, roving tab\n // stop (LC-49), Enter/Space activation (LC-50), inner interactive\n // controls win. The forwarded index keeps its full-row-set\n // meaning (DataTable reports page-local indexes). rowLabel names\n // each pressable row by report identity. Both spread BEFORE\n // {...tableProps} so an explicit consumer onRowPress/rowLabel\n // still ejects (consumer-last house rule).\n ...onRowPress ? {\n onRowPress: function onRowPress1(row) {\n return onRowPress(row, rows.indexOf(row));\n }\n } : {},\n rowLabel: reportRowLabel,\n ...tableProps\n })\n ]\n });\n}\n//# sourceMappingURL=FrappeReportView.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["__toCommonJS","mod","__copyProps","__defProp","value","FrappeReportView_exports","__export","FrappeReportView","compactFilterValues","import_queryReport2","normalizeReportColumn","normalizeReportPayload","normalizeReportRows","reportColumnToDataTableColumn","reportFieldtypeToTableField","reportRowLabel","scrubFieldname","useFrappeReport","import_useFrappeReport2","module","exports","import_jsx_runtime","require","import_components","import_forms","import_table","import_theme","import_react","import_react2","import_react_i18next","import_tamagui","import_FrappeProvider","import_Check","import_Data","import_Select","import_liveErrors","import_queryReport","import_useFrappeReport","ReportDataTable","DataTable","parseSelectOptions","options","split","map","opt","trim","filter","idx","arr","indexOf","label","column","fieldtype","field","fieldProps","precision","_column_precision","o","length","width","Number","id","fieldname","accessorKey","header","isFinite","meta","align","getDefaultColumnAlign","row","_i","_iter","key","String","canDownloadFiles","document","createElement","Blob","URL","createObjectURL","ReportFilterField","param","def","onChange","t","useTranslation","jsx","Select","compact","DatePicker","onChange1","date","formatCalendarDate","Check","Boolean","checked","Data","placeholder","reportName","filters","controlledFilters","defaultFilters","onFiltersChange","filterFields","onRowPress","fixture","baseURL","auth","showExport","showRefresh","ignorePreparedReport","debounceMs","loading","error","errorRenderer","tableProps","stackProps","_ref","knobProps","useResolvedKnobs","config","useFrappeConfig","finalBaseURL","finalAuth","Error","connection","useMemo","realtime","isControlled","internalFilters","setInternalFilters","useState","filterValues","setFilterValue","useCallback","next","payload","scriptFilters","isLoading","isFetching","refresh","fetchFilterDefs","filterDefs","_ref2","_ref1","normalizeFilterMeta","shownFilterDefs","hidden","seededReportRef","useRef","useEffect","current","prev","seeded","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Symbol","iterator","_step","done","default","err","return","Object","keys","rows","columns","col","exportColumns","exportEnabled","refused","isPermissionError","refreshShown","hasToolbar","Fragment","children","normalizedError","toLiveLoadError"],"sources":["../../src/FrappeReportView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}