@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
@@ -0,0 +1,253 @@
1
+ var __defProp = Object.defineProperty;
2
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
3
+ var __getOwnPropNames = Object.getOwnPropertyNames;
4
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
5
+ var __export = (target, all) => {
6
+ for (var name in all) __defProp(target, name, {
7
+ get: all[name],
8
+ enumerable: true
9
+ });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
14
+ get: () => from[key],
15
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
16
+ });
17
+ }
18
+ return to;
19
+ };
20
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
21
+ value: true
22
+ }), mod);
23
+ var ReportViewToolbar_exports = {};
24
+ __export(ReportViewToolbar_exports, {
25
+ ReportViewToolbar: () => ReportViewToolbar
26
+ });
27
+ module.exports = __toCommonJS(ReportViewToolbar_exports);
28
+ var import_components = require("@multiplatform.one/components");
29
+ var import_forms = require("@multiplatform.one/forms");
30
+ var import_theme = require("@multiplatform.one/theme");
31
+ var import_react = require("@phosphor-icons/react");
32
+ var import_react2 = require("react");
33
+ var import_react_i18next = require("react-i18next");
34
+ var import_filterFields = require("../filterFields.cjs");
35
+ var import_measures = require("../measures.cjs");
36
+ var import_jsx_runtime = require("react/jsx-runtime");
37
+ function ReportViewToolbar({
38
+ columns,
39
+ selected,
40
+ onToggleColumn,
41
+ onResetColumns,
42
+ groupBy,
43
+ onGroupByChange,
44
+ baseFilters,
45
+ onClearBaseFilters,
46
+ columnFilterCount,
47
+ onClearColumnFilters,
48
+ savedReports,
49
+ currentReport,
50
+ onSelectReport,
51
+ onSaveReport,
52
+ onDeleteReport,
53
+ onExport,
54
+ exportDisabled
55
+ }) {
56
+ const {
57
+ t
58
+ } = (0, import_react_i18next.useTranslation)();
59
+ const {
60
+ knobProps
61
+ } = (0, import_theme.useResolvedKnobs)();
62
+ const [saveOpen, setSaveOpen] = (0, import_react2.useState)(false);
63
+ const [saveName, setSaveName] = (0, import_react2.useState)("");
64
+ const selectedSet = new Set(selected);
65
+ const groupByColumn = groupBy ? columns.find(column => column.fieldname === groupBy) : void 0;
66
+ const currentSummary = currentReport ? savedReports.find(report => report.name === currentReport) : void 0;
67
+ const handleSaveAs = () => {
68
+ const name = saveName.trim();
69
+ if (!name || !onSaveReport) return;
70
+ onSaveReport(name);
71
+ setSaveOpen(false);
72
+ setSaveName("");
73
+ };
74
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.XStack, {
75
+ alignItems: "center",
76
+ flexWrap: "wrap",
77
+ gap: "$2",
78
+ ...knobProps.panelPadding,
79
+ paddingVertical: "$2",
80
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu, {
81
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Trigger, {
82
+ asChild: true,
83
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
84
+ size: "$3",
85
+ chromeless: true,
86
+ icon: import_react.ColumnsIcon,
87
+ children: t("report.columns", {
88
+ defaultValue: "Columns ({{enabled}}/{{total}})",
89
+ enabled: selected.length,
90
+ total: columns.length
91
+ })
92
+ })
93
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
94
+ maxHeight: import_measures.overlayListMaxHeight,
95
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Label, {
96
+ children: t("report.pickColumns", "Report columns")
97
+ }), columns.map(column => {
98
+ const isSelected = selectedSet.has(column.fieldname);
99
+ const lastSelected = isSelected && selected.length === 1;
100
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
101
+ checked: isSelected,
102
+ disabled: lastSelected,
103
+ disabledReason: lastSelected ? t("report.lastColumn", "At least one column stays visible") : void 0,
104
+ onCheckedChange: () => onToggleColumn(column.fieldname),
105
+ children: column.label
106
+ }, column.fieldname);
107
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Item, {
108
+ onSelect: onResetColumns,
109
+ children: t("report.resetColumns", "Reset to default columns")
110
+ })]
111
+ })]
112
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu, {
113
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Trigger, {
114
+ asChild: true,
115
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
116
+ size: "$3",
117
+ chromeless: true,
118
+ icon: import_react.RowsIcon,
119
+ children: groupByColumn ? t("report.groupByActive", {
120
+ defaultValue: "Group by: {{field}}",
121
+ field: groupByColumn.label
122
+ }) : t("report.groupBy", "Group by")
123
+ })
124
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
125
+ maxHeight: import_measures.overlayListMaxHeight,
126
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
127
+ checked: !groupBy,
128
+ closeOnSelect: true,
129
+ onCheckedChange: () => onGroupByChange(null),
130
+ children: t("report.groupByNone", "No grouping")
131
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), columns.map(column => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
132
+ checked: groupBy === column.fieldname,
133
+ closeOnSelect: true,
134
+ onCheckedChange: () => onGroupByChange(column.fieldname),
135
+ children: column.label
136
+ }, column.fieldname))]
137
+ })]
138
+ }), (onSaveReport || savedReports.length > 0) && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu, {
139
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Trigger, {
140
+ asChild: true,
141
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
142
+ size: "$3",
143
+ chromeless: true,
144
+ icon: import_react.StackIcon,
145
+ children: currentSummary ? t("report.savedReportActive", {
146
+ defaultValue: "Report: {{name}}",
147
+ name: currentSummary.reportName
148
+ }) : t("report.savedReport", "Select Report")
149
+ })
150
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
151
+ maxHeight: import_measures.overlayListMaxHeight,
152
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
153
+ checked: !currentReport,
154
+ closeOnSelect: true,
155
+ onCheckedChange: () => onSelectReport(null),
156
+ children: t("report.savedReportNone", "New report (unsaved)")
157
+ }), savedReports.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), savedReports.map(report => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
158
+ checked: currentReport === report.name,
159
+ closeOnSelect: true,
160
+ onCheckedChange: () => onSelectReport(report.name),
161
+ children: report.reportName
162
+ }, report.name)), currentSummary && onDeleteReport && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
163
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Item, {
164
+ destructive: true,
165
+ onSelect: () => onDeleteReport(currentSummary.name),
166
+ children: t("report.deleteReport", {
167
+ defaultValue: "Delete \u201C{{name}}\u201D",
168
+ name: currentSummary.reportName
169
+ })
170
+ })]
171
+ })]
172
+ })]
173
+ }), currentSummary && onSaveReport && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
174
+ size: "$3",
175
+ icon: import_react.FloppyDiskIcon,
176
+ onPress: () => onSaveReport(currentSummary.name),
177
+ children: t("report.save", "Save")
178
+ }), onSaveReport && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.Popover, {
179
+ placement: "bottom-start",
180
+ open: saveOpen,
181
+ onOpenChange: setSaveOpen,
182
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Popover.Trigger, {
183
+ asChild: true,
184
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
185
+ size: "$3",
186
+ chromeless: !!currentSummary,
187
+ icon: currentSummary ? void 0 : import_react.FloppyDiskIcon,
188
+ children: t("report.saveAs", "Save As\u2026")
189
+ })
190
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.PopoverContent, {
191
+ ...knobProps.panelPadding,
192
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Popover.Arrow, {
193
+ borderWidth: 1,
194
+ borderColor: "$borderColor"
195
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.XStack, {
196
+ gap: "$2",
197
+ alignItems: "center",
198
+ minWidth: import_measures.dialogBodyMinWidth,
199
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.YStack, {
200
+ flex: 1,
201
+ minWidth: 0,
202
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Input, {
203
+ size: "$3",
204
+ compact: true,
205
+ value: saveName,
206
+ onChangeText: setSaveName,
207
+ placeholder: t("report.reportNamePlaceholder", "New report name"),
208
+ inputProps: {
209
+ "aria-label": t("report.reportNamePlaceholder", "New report name")
210
+ }
211
+ })
212
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
213
+ size: "$3",
214
+ accent: true,
215
+ disabled: !saveName.trim(),
216
+ disabledReason: t("report.saveNeedsName", "Name the report to save it"),
217
+ disabledReasonPlacement: "inline",
218
+ onPress: handleSaveAs,
219
+ children: t("report.save", "Save")
220
+ })]
221
+ })]
222
+ })]
223
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.XStack, {
224
+ flex: 1
225
+ }), baseFilters.map((tuple, index) => /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Chip, {
226
+ size: "$2",
227
+ variant: "subtle",
228
+ color: "gray",
229
+ children: (0, import_filterFields.filterTupleLabel)([...columns], tuple)
230
+ }, `${tuple[0]}-${index}`)), onClearBaseFilters && baseFilters.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
231
+ size: "$3",
232
+ chromeless: true,
233
+ onPress: onClearBaseFilters,
234
+ children: t("report.clearFilters", "Clear filters")
235
+ }), columnFilterCount > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
236
+ size: "$3",
237
+ chromeless: true,
238
+ onPress: onClearColumnFilters,
239
+ children: t("report.clearColumnFilters", {
240
+ defaultValue: "Clear column filters ({{count}})",
241
+ count: columnFilterCount
242
+ })
243
+ }), onExport && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
244
+ size: "$3",
245
+ icon: import_react.DownloadSimpleIcon,
246
+ disabled: exportDisabled,
247
+ disabledReason: exportDisabled ? t("report.exportEmpty", "No rows to export") : void 0,
248
+ disabledReasonPlacement: "inline",
249
+ onPress: onExport,
250
+ children: t("report.export", "Export CSV")
251
+ })]
252
+ });
253
+ }
@@ -0,0 +1,303 @@
1
+ "use strict";
2
+
3
+ var __create = Object.create;
4
+ var __defProp = Object.defineProperty;
5
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
6
+ var __getOwnPropNames = Object.getOwnPropertyNames;
7
+ var __getProtoOf = Object.getPrototypeOf;
8
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
9
+ var __export = (target, all) => {
10
+ for (var name in all) __defProp(target, name, {
11
+ get: all[name],
12
+ enumerable: true
13
+ });
14
+ };
15
+ var __copyProps = (to, from, except, desc) => {
16
+ if (from && typeof from === "object" || typeof from === "function") {
17
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
18
+ get: () => from[key],
19
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
20
+ });
21
+ }
22
+ return to;
23
+ };
24
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
25
+ // If the importer is in node compatibility mode or this is not an ESM
26
+ // file that has been converted to a CommonJS file using a Babel-
27
+ // compatible transform (i.e. "__esModule" has not been set), then set
28
+ // "default" to the CommonJS "module.exports" for node compatibility.
29
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", {
30
+ value: mod,
31
+ enumerable: true
32
+ }) : target, mod));
33
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
34
+ value: true
35
+ }), mod);
36
+ var ReportViewToolbar_exports = {};
37
+ __export(ReportViewToolbar_exports, {
38
+ ReportViewToolbar: () => ReportViewToolbar
39
+ });
40
+ module.exports = __toCommonJS(ReportViewToolbar_exports);
41
+ var import_jsx_runtime = require("react/jsx-runtime");
42
+ var import_components = require("@multiplatform.one/components");
43
+ var import_forms = require("@multiplatform.one/forms");
44
+ var import_theme = require("@multiplatform.one/theme");
45
+ var import_react = require("@phosphor-icons/react");
46
+ var import_react2 = __toESM(require("react"));
47
+ var import_react_i18next = require("react-i18next");
48
+ var import_filterFields = require("../filterFields.native.js");
49
+ var import_measures = require("../measures.native.js");
50
+ function ReportViewToolbar(param) {
51
+ var {
52
+ columns,
53
+ selected,
54
+ onToggleColumn,
55
+ onResetColumns,
56
+ groupBy,
57
+ onGroupByChange,
58
+ baseFilters,
59
+ onClearBaseFilters,
60
+ columnFilterCount,
61
+ onClearColumnFilters,
62
+ savedReports,
63
+ currentReport,
64
+ onSelectReport,
65
+ onSaveReport,
66
+ onDeleteReport,
67
+ onExport,
68
+ exportDisabled
69
+ } = param;
70
+ var {
71
+ t
72
+ } = (0, import_react_i18next.useTranslation)();
73
+ var {
74
+ knobProps
75
+ } = (0, import_theme.useResolvedKnobs)();
76
+ var [saveOpen, setSaveOpen] = (0, import_react2.useState)(false);
77
+ var [saveName, setSaveName] = (0, import_react2.useState)("");
78
+ var selectedSet = new Set(selected);
79
+ var groupByColumn = groupBy ? columns.find(function (column) {
80
+ return column.fieldname === groupBy;
81
+ }) : void 0;
82
+ var currentSummary = currentReport ? savedReports.find(function (report) {
83
+ return report.name === currentReport;
84
+ }) : void 0;
85
+ var handleSaveAs = function handleSaveAs2() {
86
+ var name = saveName.trim();
87
+ if (!name || !onSaveReport) return;
88
+ onSaveReport(name);
89
+ setSaveOpen(false);
90
+ setSaveName("");
91
+ };
92
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.XStack, {
93
+ alignItems: "center",
94
+ flexWrap: "wrap",
95
+ gap: "$2",
96
+ ...knobProps.panelPadding,
97
+ paddingVertical: "$2",
98
+ children: [/* Column add/remove picker (persisted per doctype) */
99
+ /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu, {
100
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Trigger, {
101
+ asChild: true,
102
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
103
+ size: "$3",
104
+ chromeless: true,
105
+ icon: import_react.ColumnsIcon,
106
+ children: t("report.columns", {
107
+ defaultValue: "Columns ({{enabled}}/{{total}})",
108
+ enabled: selected.length,
109
+ total: columns.length
110
+ })
111
+ })
112
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
113
+ maxHeight: import_measures.overlayListMaxHeight,
114
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Label, {
115
+ children: t("report.pickColumns", "Report columns")
116
+ }), columns.map(function (column) {
117
+ var isSelected = selectedSet.has(column.fieldname);
118
+ var lastSelected = isSelected && selected.length === 1;
119
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
120
+ checked: isSelected,
121
+ disabled: lastSelected,
122
+ disabledReason: lastSelected ? t("report.lastColumn", "At least one column stays visible") : void 0,
123
+ onCheckedChange: function onCheckedChange() {
124
+ return onToggleColumn(column.fieldname);
125
+ },
126
+ children: column.label
127
+ }, column.fieldname);
128
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Item, {
129
+ onSelect: onResetColumns,
130
+ children: t("report.resetColumns", "Reset to default columns")
131
+ })]
132
+ })]
133
+ }), /* Group-by (rendered as in-grid group header rows) */
134
+ /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu, {
135
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Trigger, {
136
+ asChild: true,
137
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
138
+ size: "$3",
139
+ chromeless: true,
140
+ icon: import_react.RowsIcon,
141
+ children: groupByColumn ? t("report.groupByActive", {
142
+ defaultValue: "Group by: {{field}}",
143
+ field: groupByColumn.label
144
+ }) : t("report.groupBy", "Group by")
145
+ })
146
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
147
+ maxHeight: import_measures.overlayListMaxHeight,
148
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
149
+ checked: !groupBy,
150
+ closeOnSelect: true,
151
+ onCheckedChange: function onCheckedChange() {
152
+ return onGroupByChange(null);
153
+ },
154
+ children: t("report.groupByNone", "No grouping")
155
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), columns.map(function (column) {
156
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
157
+ checked: groupBy === column.fieldname,
158
+ closeOnSelect: true,
159
+ onCheckedChange: function onCheckedChange() {
160
+ return onGroupByChange(column.fieldname);
161
+ },
162
+ children: column.label
163
+ }, column.fieldname);
164
+ })]
165
+ })]
166
+ }), /* Saved-report selector (desk "Select Report": Report Builder docs) */
167
+ (onSaveReport || savedReports.length > 0) && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu, {
168
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Trigger, {
169
+ asChild: true,
170
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
171
+ size: "$3",
172
+ chromeless: true,
173
+ icon: import_react.StackIcon,
174
+ children: currentSummary ? t("report.savedReportActive", {
175
+ defaultValue: "Report: {{name}}",
176
+ name: currentSummary.reportName
177
+ }) : t("report.savedReport", "Select Report")
178
+ })
179
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.DropdownMenu.Content, {
180
+ maxHeight: import_measures.overlayListMaxHeight,
181
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
182
+ checked: !currentReport,
183
+ closeOnSelect: true,
184
+ onCheckedChange: function onCheckedChange() {
185
+ return onSelectReport(null);
186
+ },
187
+ children: t("report.savedReportNone", "New report (unsaved)")
188
+ }), savedReports.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), savedReports.map(function (report) {
189
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.CheckboxItem, {
190
+ checked: currentReport === report.name,
191
+ closeOnSelect: true,
192
+ onCheckedChange: function onCheckedChange() {
193
+ return onSelectReport(report.name);
194
+ },
195
+ children: report.reportName
196
+ }, report.name);
197
+ }), currentSummary && onDeleteReport && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
198
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Separator, {}), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.DropdownMenu.Item, {
199
+ destructive: true,
200
+ onSelect: function onSelect() {
201
+ return onDeleteReport(currentSummary.name);
202
+ },
203
+ children: t("report.deleteReport", {
204
+ defaultValue: "Delete \u201C{{name}}\u201D",
205
+ name: currentSummary.reportName
206
+ })
207
+ })]
208
+ })]
209
+ })]
210
+ }), /* Save (overwrite the selected report) + Save As (new Report doc) */
211
+ currentSummary && onSaveReport && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
212
+ size: "$3",
213
+ icon: import_react.FloppyDiskIcon,
214
+ onPress: function onPress() {
215
+ return onSaveReport(currentSummary.name);
216
+ },
217
+ children: t("report.save", "Save")
218
+ }), onSaveReport && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.Popover, {
219
+ placement: "bottom-start",
220
+ open: saveOpen,
221
+ onOpenChange: setSaveOpen,
222
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Popover.Trigger, {
223
+ asChild: true,
224
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
225
+ size: "$3",
226
+ chromeless: !!currentSummary,
227
+ icon: currentSummary ? void 0 : import_react.FloppyDiskIcon,
228
+ children: t("report.saveAs", "Save As\u2026")
229
+ })
230
+ }),
231
+ /* House overlay surface (elevatedSurface knob recipe) — raw
232
+ Popover.Content has no `elevate` variant in tamagui 2.0, so the
233
+ bare boolean leaked to the DOM (LC-46 class). */
234
+ /* @__PURE__ */
235
+ (0, import_jsx_runtime.jsxs)(import_components.PopoverContent, {
236
+ ...knobProps.panelPadding,
237
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Popover.Arrow, {
238
+ borderWidth: 1,
239
+ borderColor: "$borderColor"
240
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.XStack, {
241
+ gap: "$2",
242
+ alignItems: "center",
243
+ minWidth: import_measures.dialogBodyMinWidth,
244
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.YStack, {
245
+ flex: 1,
246
+ minWidth: 0,
247
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Input, {
248
+ size: "$3",
249
+ compact: true,
250
+ value: saveName,
251
+ onChangeText: setSaveName,
252
+ placeholder: t("report.reportNamePlaceholder", "New report name"),
253
+ inputProps: {
254
+ "aria-label": t("report.reportNamePlaceholder", "New report name")
255
+ }
256
+ })
257
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
258
+ size: "$3",
259
+ accent: true,
260
+ disabled: !saveName.trim(),
261
+ disabledReason: t("report.saveNeedsName", "Name the report to save it"),
262
+ disabledReasonPlacement: "inline",
263
+ onPress: handleSaveAs,
264
+ children: t("report.save", "Save")
265
+ })]
266
+ })]
267
+ })]
268
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.XStack, {
269
+ flex: 1
270
+ }), /* Base filter chips (?f= deep link) */
271
+ baseFilters.map(function (tuple, index) {
272
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.Chip, {
273
+ size: "$2",
274
+ variant: "subtle",
275
+ color: "gray",
276
+ children: (0, import_filterFields.filterTupleLabel)([...columns], tuple)
277
+ }, `${tuple[0]}-${index}`);
278
+ }), onClearBaseFilters && baseFilters.length > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
279
+ size: "$3",
280
+ chromeless: true,
281
+ onPress: onClearBaseFilters,
282
+ children: t("report.clearFilters", "Clear filters")
283
+ }), /* Column filter-row summary + clear-all */
284
+ columnFilterCount > 0 && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
285
+ size: "$3",
286
+ chromeless: true,
287
+ onPress: onClearColumnFilters,
288
+ children: t("report.clearColumnFilters", {
289
+ defaultValue: "Clear column filters ({{count}})",
290
+ count: columnFilterCount
291
+ })
292
+ }), onExport && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
293
+ size: "$3",
294
+ icon: import_react.DownloadSimpleIcon,
295
+ disabled: exportDisabled,
296
+ disabledReason: exportDisabled ? t("report.exportEmpty", "No rows to export") : void 0,
297
+ disabledReasonPlacement: "inline",
298
+ onPress: onExport,
299
+ children: t("report.export", "Export CSV")
300
+ })]
301
+ });
302
+ }
303
+ //# sourceMappingURL=ReportViewToolbar.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["to","__toESM","mod","isNodeMode","target","__create","__getProtoOf","__copyProps","__esModule","__defProp","value","enumerable","__toCommonJS","ReportViewToolbar_exports","__export","ReportViewToolbar","module","exports","import_jsx_runtime","require","import_components","import_forms","import_theme","import_react","import_react2","import_react_i18next","import_filterFields","import_measures","param","columns","selected","onToggleColumn","onResetColumns","groupBy","onGroupByChange","baseFilters","onClearBaseFilters","columnFilterCount","onClearColumnFilters","savedReports","currentReport","onSelectReport","onSaveReport","onDeleteReport","onExport","exportDisabled","t","useTranslation","knobProps","useResolvedKnobs","saveOpen","setSaveOpen","useState","saveName","setSaveName","selectedSet","Set","groupByColumn","find","column","fieldname","currentSummary","report","name","handleSaveAs","handleSaveAs2","trim","jsxs","XStack","alignItems","flexWrap","gap","panelPadding","paddingVertical","children","DropdownMenu","jsx","Trigger","asChild","Button","size","chromeless","icon","ColumnsIcon","defaultValue","enabled","length","total","Content","maxHeight","overlayListMaxHeight","Label","map","isSelected","has","lastSelected","CheckboxItem","checked","disabled","disabledReason","onCheckedChange","label","Separator","Item","onSelect","RowsIcon","field","closeOnSelect","StackIcon","reportName","Fragment","destructive","FloppyDiskIcon","onPress","Popover","placement","open","onOpenChange"],"sources":["../../../src/report/ReportViewToolbar.tsx"],"sourcesContent":[null],"mappings":";;;;;;;;;;;;;;;;;;;;;EAAA,OAAAA,EAAA;AAAA;AAAA,IAAAC,OAAA,GAAAA,CAAAC,GAAA,EAAAC,UAAA,EAAAC,MAAA,MAAAA,MAAA,GAAAF,GAAA,WAAAG,QAAA,CAAAC,YAAA,CAAAJ,GAAA,SAAAK,WAAA;AAAA;AAAA;AAKA;AAQA;AACAJ,UAAA,KAAAD,GAAiC,KAAAA,GAAA,CAAAM,UAAA,GAAAC,SAAA,CAAAL,MAAA;EAAAM,KAAA,EAAAR,GAAA;EAAAS,UAAA;AAAA,KAAAP,MAAA,EACjCF,GAOA;AACA,IAAAU,YAAA,GAAAV,GAAA,IAA+BK,WAAA,CAAAE,SAAA;EAAAC,KAAA;AAAA,IAAAR,GAAA;AAC/B,IAAAW,yBAAiC;AACjCC,QAAA,CAAAD,yBAAyD;EAmF/CE,iBAAA,EAAAA,CAAA,KAAAA;AAnDH;AAA2BC,MAChC,CAAAC,OAAA,GAAAL,YAAA,CAAAC,yBAAA;AAAA,IACAK,kBAAA,GAAAC,OAAA;AAAA,IACAC,iBAAA,GAAAD,OAAA;AAAA,IACAE,YAAA,GAAAF,OAAA;AAAA,IACAG,YAAA,GAAAH,OAAA;AAAA,IACAI,YAAA,GAAAJ,OAAA;AAAA,IACAK,aAAA,GAAAvB,OAAA,CAAAkB,OAAA;AAAA,IACAM,oBAAA,GAAAN,OAAA;AAAA,IACAO,mBAAA,GAAAP,OAAA;AAAA,IACAQ,eAAA,GAAAR,OAAA;AAAA,SACAJ,kBAAAa,KAAA;EACA;IAAAC,OAAA;IAAAC,QAAA;IAAAC,cAAA;IAAAC,cAAA;IAAAC,OAAA;IAAAC,eAAA;IAAAC,WAAA;IAAAC,kBAAA;IAAAC,iBAAA;IAAAC,oBAAA;IAAAC,YAAA;IAAAC,aAAA;IAAAC,cAAA;IAAAC,YAAA;IAAAC,cAAA;IAAAC,QAAA;IAAAC;EAAA,IAAAjB,KAAA;EACA;IAAAkB;EAAA,QAAArB,oBAAA,CAAAsB,cAAA;EACA;IAAAC;EAAA,QAAA1B,YAAA,CAAA2B,gBAAA;EACA,KAAAC,QAAA,EAAAC,WAAA,QAAA3B,aAAA,CAAA4B,QAAA;EACA,KAAAC,QAAA,EAAAC,WAAA,QAAA9B,aAAA,CAAA4B,QAAA;EACA,IAAAG,WAAA,OAAAC,GAAA,CAAA1B,QAAA;EACF,IAA2B2B,aAAA,GAAAxB,OAAA,GAAAJ,OAAA,CAAA6B,IAAA,WAAAC,MAAA;IACzB,OAAQA,MAAE,CAAAC,SAAI,KAAA3B,OAAA;EACd,UAAQ;EACR,IAAA4B,cAAiB,GAAArB,aAAW,GAAID,YAAA,CAAAmB,IAAA,WAASI,MAAK;IAC9C,OAAOA,MAAA,CAAAC,IAAU,KAAAvB,aAAe;EAEhC,UAAM;EACN,IAAAwB,YAAM,YAAgBC,aACVA,CAAA;IAEZ,IAAMF,IAAA,GAAAV,QAAA,CAAAa,IAAiB;IAIvB,IAAM,CAAAH,IAAA,KAAArB,YAAqB;IACzBA,YAAM,CAAOqB,IAAA;IACbZ,WAAK,MAAS;IACdG,WAAA,GAAa;EACb;EACA,sBAAc,IAAApC,kBAAA,CAAAiD,IAAA,EAAA/C,iBAAA,CAAAgD,MAAA;IAChBC,UAAA;IAEAC,QACE;IAACC,GAAA;IAAA,GAAAvB,SAAA,CAAAwB,YAAA;IAAAC,eACY;IAAAC,QACX,GACA;IACC,eAAa,IAAAxD,kBAAA,CAAAiD,IAAA,EAAA/C,iBAAA,CAAAuD,YAAA;MACdD,QAAA,GAGA,mBAAAxD,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAE,OAAA;QAAAC,OAAA;QACEJ,QAAA,qBAAAxD,kBAAC,CAAA0D,GAAA,EAAAvD,YAAA,CAAA0D,MAAa;UAGRC,IAAA;UACAC,UAAS,MAAS;UAClBC,IAAA,EAAO3D,YAAQ,CAAA4D,WAAA;UAEnBT,QACF,EAAA5B,CAAA;YACAsC,YAAA,mCAAC;YACCC,OAAA,EAAAvD,QAAA,CAAAwD,MAAA;YACCC,KAAQ,EAAA1D,OAAK,CAAAyD;UACZ;QACA;MACA,IACE,eAAC,IAAApE,kBAAa,CAAAiD,IAAA,EAAA/C,iBAAA,CAAAuD,YAAA,CAAAa,OAAA;QAAAC,SAAb,EAAA9D,eAAA,CAAA+D,oBAAA;QAAAhB,QAEC,GAAS,eACC,IAAAxD,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAgB,KAAA;UAAAjB,QACV,EAAA5B,CAAA,qBACE,EACI,gBAAE;QACF,IAEgDjB,OAErD,CAAA+D,GAAA,WAAOjC,MAAA;UAAA,IAAAkC,UAAA,GAAAtC,WAAA,CAAAuC,GAAA,CAAAnC,MAAA,CAAAC,SAAA;UAVH,IAAAmC,YAAO,GAAAF,UAAA,IAAA/D,QAAA,CAAAwD,MAAA;UAWd,0BAAApE,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAqB,YAAA;YAEHC,OAAA,EAAAJ,UAAA;YACDK,QAAA,EAAAH,YAAA;YACAI,cAAA,EAAAJ,YAAA,GAAAjD,CAAA,oBAAC,qCAA4B;YAG/BsD,eAAA,WAAAA,gBAAA;cACF,OAAArE,cAAA,CAAA4B,MAAA,CAAAC,SAAA;YAGA;YACEc,QAAA,EAAAf,MAAA,CAAA0C;UAIU,GAAA1C,MAAA,CAAcC,SAAA;QACd,IACD,eACC,IAAA1C,kBAEV,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAA2B,SAAA,OACA,mBAAApF,kBAAA,CAAA0D,GAAC,EAAAxD,iBAAA,CAAAuD,YAAa,CAAA4B,IAAA,EAAb;UACCC,QAAA,EAAAxE,cAAA;UAAC0C,QAAA,EAAA5B,CAAA,sBAAa;QAAb;MACW;IAEiC,IAEL;IAAA,eACxC,IAAA5B,kBAAA,CAAAiD,IAAA,EAAA/C,iBAAA,CAAAuD,YAAA;MAAAD,QACA,GAAwB,eACV,IAAAxD,kBACZ,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAE,OAAA;QAAAC,OAAC;QAAaJ,QAAb,qBAAAxD,kBAAA,CAAA0D,GAAA,EAAAvD,YAAA,CAAA0D,MAAA;UAAAC,IAEC;UAA4BC,UAC5B;UAAaC,IACb,EAAA3D,YAAA,CAAiBkF,QAAM;UAAgC/B,QAEtD,EAAAjB,aAAO,GAAAX,CAAA;YAAAsC,YAAA;YALHsB,KAAO,EAAAjD,aAAA,CAAA4C;UAOf,KAAAvD,CAAA;QAAA,CACH;MAAA,CACF,GAGE,eAAgB,IAAA5B,kBAAsB,CAAAiD,IACtC,EAAA/C,iBAAA,CAAAuD,YAAA,CAAAa,OAAA;QACEC,SAAA,EAAA9D,eAAA,CAAA+D,oBAAC;QAIShB,QAAA,GACA,eAAM,IAAexD,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAqB,YAAA;UAEvBC,OAAE,GAAAhE,OAAA;UAGV0E,aAAA;UACEP,eAAA,WAAAA,gBAAA;YAAC,OAAAlE,eAAA,KAAa;UAAb;UACCwC,QAAA,EAAU5B,CAAA;QAAA,EACV,EAAa,eACb,IAAiB5B,kBAAM,CAAA0D,GAAe,EAAIxD,iBAAA,CAAAuD,YAAA,CAAA2B,SAAA,OAAAzE,OAEzC,CAAA+D,GAAA,WAAEjC,MAAA;UAAgD,0BAAAzC,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAqB,YAAA;YACrDC,OAAA,EAAAhE,OAAA,KAAA0B,MAAA,CAAAC,SAAA;YACC+C,aAAa,MAAS;YACtBP,eAAkB,WACjBA,gBAAA;cAAC,OAAAlE,eAAA,CAAAyB,MAAa,CAAAC,SAAA;YAAb;YAECc,QAAS,EAAAf,MAAA,CAAA0C;UACT,GAAA1C,MAAA,CAAAC,SAAa;QAAA,EACb;MAEQ;IALI,IAOf;IAGG,CAAAlB,YAAA,IAAAH,YAAA,CAAA+C,MAAA,wBAAC,IAAApE,kBAAa,CAAAiD,IAAA,EAAA/C,iBAAU,CAAAuD,YAAA;MAAAD,QACxB,GAC4B,eACxB,IAAcxD,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAE,OAAA;QAAAC,OACd,MAAM;QAAeJ,QAEzB,qBAAAxD,kBAAA,CAAA0D,GAAA,EAAAvD,YAAA,CAAA0D,MAAA;UAAAC,IACF;UAEJC,UAAA;UACFC,IAAA,EAAA3D,YAAA,CAAAqF,SAAA;UAIDlC,QAAA,EAAAb,cAAkB,GAAAf,CACjB;YAIDsC,YACC;YACErB,IAAA,EAAAF,cAAA,CAAAgD;UACG,KAAA/D,CAAA;QAAA;MAAA,IACM,eACO,CAAC,CAAC,EAAA5B,kBAAA,CAAAiD,IAAA,EAAA/C,iBAAA,CAAAuD,YAAA,CAAAa,OAAA;QAAAC,SACR,EAAA9D,eAAiB,CAAA+D,oBAAY;QAAAhB,QAElC,GAA6B,mBAAAxD,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAqB,YAAA;UAElCC,OAAA,GAAAzD,aAAA;UAIAmE,aAAA;UACEP,eAAA,WAAAA,eAACA,CAAA;YACD,OAAA3D,cAAA;UACE;UACGiC,QAAA,EAAA5B,CAAA;QAAA,IAAAP,YACM,CAAA+C,MAAA,2BAAApE,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAA2B,SAAA,OAAA/D,YACL,CAAOqD,GAAA,WAAA9B,MAAA;UAAA,OACP,eAAO,IAAA5C,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAAqB,YAAA;YACPC,OAAA,EAAAzD,aAAc,KAAAsB,MAAA,CAAAC,IAAA;YACd4C,aAAa,EAAE;YACfP,eAAY,WAAAA,gBAAA;cACV,OAAA3D,cAAgB,CAAAqB,MAAA,CAAAC,IAAA;YAClB;YAAAW,QAAA,EAAAZ,MAAA,CAAA+C;UACF,CACF,EAAA/C,MAAA,CAAAC,IAAA;QACA,IAAAF,cAAC,IAAAlB,cAAA,uBAAAzB,kBAAA,CAAAiD,IAAA,EAAAjD,kBAAA,CAAA4F,QAAA;UAAApC,QAAA,GACC,eAAK,IAAAxD,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAA2B,SAAA,OACL,eAAM,IAAApF,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAAuD,YAAA,CAAA4B,IAAA;YACNQ,WAAW;YACXP,QAAA,WAAkBA,SAAA;cAClB,OAAA7D,cAAwB,CAAAkB,cAAA,CAAAE,IAAA;YACxB;YAECW,QAAA,EAAE5B,CAAA,sBAAqB;cAAAsC,YAAA;cAC1BrB,IAAA,EAAAF,cAAA,CAAAgD;YACF;UACF;QAIJ;MAQC;IASmC,IAChB;IACPhD,cAEX,IAAAnB,YAAA,uBAAAxB,kBAAA,CAAA0D,GAAA,EAAAvD,YAAA,CAAA0D,MAAA;MAGDC,IAAA;MACCE,IAAC,EAAA3D,YAAA,CAAAyF,cAAA;MAAAC,OAAA,WAAAA,QAAA;QAAA,OACCvE,YAAK,CAAAmB,cAAA,CAAAE,IAAA;MAAA;MACCW,QACN,EAAA5B,CAAA,cAAU;IAAA,IACsEJ,YAChF,mBAAwB,IAAAxB,kBAAA,CAAAiD,IAAA,EAAA/C,iBAAA,CAAA8F,OAAA;MAAAC,SACxB,gBAAS;MAAAC,IAER,EAAAlE,QAAA;MAA+BmE,YAAA,EAAAlE,WAAA;MAClCuB,QAAA,sBAAAxD,kBAAA,CAAA0D,GAAA,EAAAxD,iBAAA,CAAA8F,OAAA,CAAArC,OAAA;QAAAC,OAAA;QAEJJ,QAAA,qBAAAxD,kBAAA,CAAA0D,GAAA,EAAAvD,YAAA,CAAA0D,MAAA;UAEJC,IAAA","ignoreList":[]}