@multiplatform.one/frappe-ui 7.7.6 → 7.8.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 (491) 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.native.js.map +1 -1
  5. package/dist/cjs/FileBrowser/types.native.js.map +1 -1
  6. package/dist/cjs/FileBrowser/viewPersistence.native.js.map +1 -1
  7. package/dist/cjs/FormSidebar.native.js.map +1 -1
  8. package/dist/cjs/FrappeAssignment.native.js.map +1 -1
  9. package/dist/cjs/FrappeCalendar.cjs +20 -17
  10. package/dist/cjs/FrappeCalendar.native.js +22 -21
  11. package/dist/cjs/FrappeCalendar.native.js.map +1 -1
  12. package/dist/cjs/FrappeChartCard.native.js.map +1 -1
  13. package/dist/cjs/FrappeConnectionIndicator.native.js.map +1 -1
  14. package/dist/cjs/FrappeDashboard.native.js.map +1 -1
  15. package/dist/cjs/FrappeForm.cjs +1 -1
  16. package/dist/cjs/FrappeForm.native.js +2 -2
  17. package/dist/cjs/FrappeForm.native.js.map +1 -1
  18. package/dist/cjs/FrappeGantt.cjs +25 -34
  19. package/dist/cjs/FrappeGantt.native.js +27 -38
  20. package/dist/cjs/FrappeGantt.native.js.map +1 -1
  21. package/dist/cjs/FrappeImageView.cjs +4 -2
  22. package/dist/cjs/FrappeImageView.native.js +8 -4
  23. package/dist/cjs/FrappeImageView.native.js.map +1 -1
  24. package/dist/cjs/FrappeKPICard.cjs +26 -1
  25. package/dist/cjs/FrappeKPICard.native.js +26 -1
  26. package/dist/cjs/FrappeKPICard.native.js.map +1 -1
  27. package/dist/cjs/FrappeKanban.cjs +16 -17
  28. package/dist/cjs/FrappeKanban.native.js +18 -21
  29. package/dist/cjs/FrappeKanban.native.js.map +1 -1
  30. package/dist/cjs/FrappeLikedBy.cjs +1 -1
  31. package/dist/cjs/FrappeLikedBy.native.js +1 -1
  32. package/dist/cjs/FrappeLikedBy.native.js.map +1 -1
  33. package/dist/cjs/FrappeList.cjs +2 -2
  34. package/dist/cjs/FrappeList.native.js +2 -2
  35. package/dist/cjs/FrappeList.native.js.map +1 -1
  36. package/dist/cjs/FrappeListView.native.js.map +1 -1
  37. package/dist/cjs/FrappeProvider.native.js.map +1 -1
  38. package/dist/cjs/FrappeReconnectIndicator.native.js.map +1 -1
  39. package/dist/cjs/FrappeReportBuilder.cjs +2 -2
  40. package/dist/cjs/FrappeReportBuilder.native.js +2 -2
  41. package/dist/cjs/FrappeReportBuilder.native.js.map +1 -1
  42. package/dist/cjs/FrappeReportView.native.js +3 -3
  43. package/dist/cjs/FrappeReportView.native.js.map +1 -1
  44. package/dist/cjs/FrappeTable.cjs +35 -38
  45. package/dist/cjs/FrappeTable.native.js +38 -39
  46. package/dist/cjs/FrappeTable.native.js.map +1 -1
  47. package/dist/cjs/FrappeTreeView.cjs +85 -50
  48. package/dist/cjs/FrappeTreeView.native.js +129 -50
  49. package/dist/cjs/FrappeTreeView.native.js.map +1 -1
  50. package/dist/cjs/SyncErrorNotice.native.js.map +1 -1
  51. package/dist/cjs/commentActions.cjs +1 -1
  52. package/dist/cjs/commentActions.native.js +1 -1
  53. package/dist/cjs/commentActions.native.js.map +1 -1
  54. package/dist/cjs/components/attachments.native.js.map +1 -1
  55. package/dist/cjs/components/tags.native.js.map +1 -1
  56. package/dist/cjs/components/timeline.cjs +1 -1
  57. package/dist/cjs/components/timeline.native.js +1 -1
  58. package/dist/cjs/components/timeline.native.js.map +1 -1
  59. package/dist/cjs/dependsOn.native.js.map +1 -1
  60. package/dist/cjs/desk/DeskFormPage.native.js.map +1 -1
  61. package/dist/cjs/desk/DeskFormSidebar.native.js.map +1 -1
  62. package/dist/cjs/desk/DeskListPage.native.js.map +1 -1
  63. package/dist/cjs/desk/DeskShell.cjs +2 -0
  64. package/dist/cjs/desk/DeskShell.native.js +2 -0
  65. package/dist/cjs/desk/DeskShell.native.js.map +1 -1
  66. package/dist/cjs/desk/DeskSidebar.native.js.map +1 -1
  67. package/dist/cjs/desk/awesomebar.cjs +1 -1
  68. package/dist/cjs/desk/awesomebar.native.js +1 -1
  69. package/dist/cjs/desk/awesomebar.native.js.map +1 -1
  70. package/dist/cjs/fieldOverrides.native.js.map +1 -1
  71. package/dist/cjs/fieldRegistry.native.js +31 -31
  72. package/dist/cjs/fieldRegistry.native.js.map +1 -1
  73. package/dist/cjs/fields/Barcode/index.native.js.map +1 -1
  74. package/dist/cjs/fields/Check/index.native.js.map +1 -1
  75. package/dist/cjs/fields/CodeEditor/index.native.js.map +1 -1
  76. package/dist/cjs/fields/Color/index.native.js.map +1 -1
  77. package/dist/cjs/fields/Data/index.native.js.map +1 -1
  78. package/dist/cjs/fields/Date/sheetKeyboard.native.js.map +1 -1
  79. package/dist/cjs/fields/Date/types.native.js.map +1 -1
  80. package/dist/cjs/fields/Date/wire.native.js.map +1 -1
  81. package/dist/cjs/fields/DateRange/index.native.js.map +1 -1
  82. package/dist/cjs/fields/Duration/index.native.js.map +1 -1
  83. package/dist/cjs/fields/DynamicLink.native.js.map +1 -1
  84. package/dist/cjs/fields/FileUpload.native.js.map +1 -1
  85. package/dist/cjs/fields/FileUploadField/index.native.js.map +1 -1
  86. package/dist/cjs/fields/Geolocation/index.native.js.map +1 -1
  87. package/dist/cjs/fields/HTML/index.native.js.map +1 -1
  88. package/dist/cjs/fields/Heading/index.native.js.map +1 -1
  89. package/dist/cjs/fields/Icon/index.native.js.map +1 -1
  90. package/dist/cjs/fields/Link.native.js.map +1 -1
  91. package/dist/cjs/fields/LinkTree.native.js.map +1 -1
  92. package/dist/cjs/fields/LongText/index.native.js.map +1 -1
  93. package/dist/cjs/fields/MentionInput/index.cjs +4 -1
  94. package/dist/cjs/fields/MentionInput/index.native.js +4 -1
  95. package/dist/cjs/fields/MentionInput/index.native.js.map +1 -1
  96. package/dist/cjs/fields/Numeric/index.native.js.map +1 -1
  97. package/dist/cjs/fields/OTPInput/index.native.js.map +1 -1
  98. package/dist/cjs/fields/Password/index.native.js.map +1 -1
  99. package/dist/cjs/fields/Phone/index.native.js.map +1 -1
  100. package/dist/cjs/fields/Progress/index.native.js.map +1 -1
  101. package/dist/cjs/fields/RadioGroup/index.native.js.map +1 -1
  102. package/dist/cjs/fields/Rating/index.native.js.map +1 -1
  103. package/dist/cjs/fields/ReadOnly/index.native.js.map +1 -1
  104. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  105. package/dist/cjs/fields/Signature/index.native.js.map +1 -1
  106. package/dist/cjs/fields/Slider/index.native.js.map +1 -1
  107. package/dist/cjs/fields/SmallText/index.native.js.map +1 -1
  108. package/dist/cjs/fields/Switch/index.native.js.map +1 -1
  109. package/dist/cjs/fields/TableMultiSelect.native.js.map +1 -1
  110. package/dist/cjs/fields/TextEditor/types.native.js.map +1 -1
  111. package/dist/cjs/fields/TimePicker/index.native.js.map +1 -1
  112. package/dist/cjs/fields/ToggleGroup/index.native.js.map +1 -1
  113. package/dist/cjs/fields/shared/EditorPreviewPanes.native.js.map +1 -1
  114. package/dist/cjs/filterFields.native.js.map +1 -1
  115. package/dist/cjs/formEngine/createPrefill.native.js.map +1 -1
  116. package/dist/cjs/formEngine/dirtyTracking.native.js.map +1 -1
  117. package/dist/cjs/formEngine/doctypeMeta.native.js.map +1 -1
  118. package/dist/cjs/formEngine/fetchFrom.native.js.map +1 -1
  119. package/dist/cjs/formEngine/fieldPermissions.native.js.map +1 -1
  120. package/dist/cjs/formEngine/formActions.native.js.map +1 -1
  121. package/dist/cjs/formEngine/formLayout.native.js.map +1 -1
  122. package/dist/cjs/formEngine/index.native.js.map +1 -1
  123. package/dist/cjs/formEngine/useFormEngine.native.js.map +1 -1
  124. package/dist/cjs/frappeEventColor.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 +4 -0
  128. package/dist/cjs/index.native.js +38 -34
  129. package/dist/cjs/index.native.js.map +1 -1
  130. package/dist/cjs/liveErrors.native.js.map +1 -1
  131. package/dist/cjs/resolveControl.native.js.map +1 -1
  132. package/dist/cjs/schemaForm/SchemaWizard.native.js.map +1 -1
  133. package/dist/cjs/schemaForm/applyFieldOrder.native.js.map +1 -1
  134. package/dist/cjs/schemaForm/index.cjs +10 -9
  135. package/dist/cjs/schemaForm/index.native.js +11 -10
  136. package/dist/cjs/schemaForm/index.native.js.map +1 -1
  137. package/dist/cjs/shared/devWarn.cjs +40 -0
  138. package/dist/cjs/shared/devWarn.native.js +45 -0
  139. package/dist/cjs/shared/devWarn.native.js.map +1 -0
  140. package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -1
  141. package/dist/cjs/syncError.native.js.map +1 -1
  142. package/dist/cjs/useFrappeAggregate.cjs +15 -8
  143. package/dist/cjs/useFrappeAggregate.native.js +15 -9
  144. package/dist/cjs/useFrappeAggregate.native.js.map +1 -1
  145. package/dist/cjs/useFrappeFacets.cjs +10 -9
  146. package/dist/cjs/useFrappeFacets.native.js +10 -10
  147. package/dist/cjs/useFrappeFacets.native.js.map +1 -1
  148. package/dist/cjs/useFrappePagination.native.js.map +1 -1
  149. package/dist/cjs/useFrappeRows.cjs +113 -0
  150. package/dist/cjs/useFrappeRows.native.js +129 -0
  151. package/dist/cjs/useFrappeRows.native.js.map +1 -0
  152. package/dist/esm/ChartCard.native.js.map +1 -1
  153. package/dist/esm/FileBrowser/AttachLibrary.native.js.map +1 -1
  154. package/dist/esm/FileBrowser/folderTree.native.js.map +1 -1
  155. package/dist/esm/FileBrowser/index.native.js.map +1 -1
  156. package/dist/esm/FileBrowser/types.native.js.map +1 -1
  157. package/dist/esm/FileBrowser/viewPersistence.native.js.map +1 -1
  158. package/dist/esm/FormSidebar.native.js.map +1 -1
  159. package/dist/esm/FrappeAssignment.native.js.map +1 -1
  160. package/dist/esm/FrappeCalendar.mjs +20 -17
  161. package/dist/esm/FrappeCalendar.mjs.map +1 -1
  162. package/dist/esm/FrappeCalendar.native.js +22 -21
  163. package/dist/esm/FrappeCalendar.native.js.map +1 -1
  164. package/dist/esm/FrappeChartCard.native.js.map +1 -1
  165. package/dist/esm/FrappeConnectionIndicator.native.js.map +1 -1
  166. package/dist/esm/FrappeDashboard.native.js.map +1 -1
  167. package/dist/esm/FrappeForm.mjs +1 -1
  168. package/dist/esm/FrappeForm.mjs.map +1 -1
  169. package/dist/esm/FrappeForm.native.js +1 -1
  170. package/dist/esm/FrappeForm.native.js.map +1 -1
  171. package/dist/esm/FrappeGantt.mjs +27 -36
  172. package/dist/esm/FrappeGantt.mjs.map +1 -1
  173. package/dist/esm/FrappeGantt.native.js +29 -40
  174. package/dist/esm/FrappeGantt.native.js.map +1 -1
  175. package/dist/esm/FrappeImageView.mjs +5 -3
  176. package/dist/esm/FrappeImageView.mjs.map +1 -1
  177. package/dist/esm/FrappeImageView.native.js +9 -5
  178. package/dist/esm/FrappeImageView.native.js.map +1 -1
  179. package/dist/esm/FrappeKPICard.mjs +27 -2
  180. package/dist/esm/FrappeKPICard.mjs.map +1 -1
  181. package/dist/esm/FrappeKPICard.native.js +27 -2
  182. package/dist/esm/FrappeKPICard.native.js.map +1 -1
  183. package/dist/esm/FrappeKanban.mjs +16 -17
  184. package/dist/esm/FrappeKanban.mjs.map +1 -1
  185. package/dist/esm/FrappeKanban.native.js +18 -21
  186. package/dist/esm/FrappeKanban.native.js.map +1 -1
  187. package/dist/esm/FrappeLikedBy.mjs +1 -1
  188. package/dist/esm/FrappeLikedBy.mjs.map +1 -1
  189. package/dist/esm/FrappeLikedBy.native.js +1 -1
  190. package/dist/esm/FrappeLikedBy.native.js.map +1 -1
  191. package/dist/esm/FrappeList.mjs +2 -2
  192. package/dist/esm/FrappeList.mjs.map +1 -1
  193. package/dist/esm/FrappeList.native.js +2 -2
  194. package/dist/esm/FrappeList.native.js.map +1 -1
  195. package/dist/esm/FrappeListView.native.js.map +1 -1
  196. package/dist/esm/FrappeProvider.mjs.map +1 -1
  197. package/dist/esm/FrappeProvider.native.js.map +1 -1
  198. package/dist/esm/FrappeReconnectIndicator.native.js.map +1 -1
  199. package/dist/esm/FrappeReportBuilder.mjs +2 -2
  200. package/dist/esm/FrappeReportBuilder.mjs.map +1 -1
  201. package/dist/esm/FrappeReportBuilder.native.js +2 -2
  202. package/dist/esm/FrappeReportBuilder.native.js.map +1 -1
  203. package/dist/esm/FrappeReportView.native.js.map +1 -1
  204. package/dist/esm/FrappeTable.mjs +36 -39
  205. package/dist/esm/FrappeTable.mjs.map +1 -1
  206. package/dist/esm/FrappeTable.native.js +39 -40
  207. package/dist/esm/FrappeTable.native.js.map +1 -1
  208. package/dist/esm/FrappeTreeView.mjs +89 -55
  209. package/dist/esm/FrappeTreeView.mjs.map +1 -1
  210. package/dist/esm/FrappeTreeView.native.js +133 -55
  211. package/dist/esm/FrappeTreeView.native.js.map +1 -1
  212. package/dist/esm/SyncErrorNotice.native.js.map +1 -1
  213. package/dist/esm/commentActions.mjs +1 -1
  214. package/dist/esm/commentActions.mjs.map +1 -1
  215. package/dist/esm/commentActions.native.js +1 -1
  216. package/dist/esm/commentActions.native.js.map +1 -1
  217. package/dist/esm/components/attachments.native.js.map +1 -1
  218. package/dist/esm/components/tags.native.js.map +1 -1
  219. package/dist/esm/components/timeline.mjs +1 -1
  220. package/dist/esm/components/timeline.mjs.map +1 -1
  221. package/dist/esm/components/timeline.native.js +1 -1
  222. package/dist/esm/components/timeline.native.js.map +1 -1
  223. package/dist/esm/dependsOn.native.js.map +1 -1
  224. package/dist/esm/desk/DeskFormPage.native.js.map +1 -1
  225. package/dist/esm/desk/DeskFormSidebar.native.js.map +1 -1
  226. package/dist/esm/desk/DeskListPage.native.js.map +1 -1
  227. package/dist/esm/desk/DeskShell.mjs +2 -0
  228. package/dist/esm/desk/DeskShell.mjs.map +1 -1
  229. package/dist/esm/desk/DeskShell.native.js +2 -0
  230. package/dist/esm/desk/DeskShell.native.js.map +1 -1
  231. package/dist/esm/desk/DeskSidebar.native.js.map +1 -1
  232. package/dist/esm/desk/awesomebar.mjs +1 -1
  233. package/dist/esm/desk/awesomebar.mjs.map +1 -1
  234. package/dist/esm/desk/awesomebar.native.js +1 -1
  235. package/dist/esm/desk/awesomebar.native.js.map +1 -1
  236. package/dist/esm/fieldOverrides.native.js.map +1 -1
  237. package/dist/esm/fieldRegistry.native.js.map +1 -1
  238. package/dist/esm/fields/Barcode/index.native.js.map +1 -1
  239. package/dist/esm/fields/Check/index.native.js.map +1 -1
  240. package/dist/esm/fields/CodeEditor/index.native.js.map +1 -1
  241. package/dist/esm/fields/Color/index.native.js.map +1 -1
  242. package/dist/esm/fields/Data/index.native.js.map +1 -1
  243. package/dist/esm/fields/Date/sheetKeyboard.native.js.map +1 -1
  244. package/dist/esm/fields/Date/types.native.js.map +1 -1
  245. package/dist/esm/fields/Date/wire.native.js.map +1 -1
  246. package/dist/esm/fields/DateRange/index.native.js.map +1 -1
  247. package/dist/esm/fields/Duration/index.native.js.map +1 -1
  248. package/dist/esm/fields/DynamicLink.native.js.map +1 -1
  249. package/dist/esm/fields/FileUpload.native.js.map +1 -1
  250. package/dist/esm/fields/FileUploadField/index.native.js.map +1 -1
  251. package/dist/esm/fields/Geolocation/index.native.js.map +1 -1
  252. package/dist/esm/fields/HTML/index.native.js.map +1 -1
  253. package/dist/esm/fields/Heading/index.native.js.map +1 -1
  254. package/dist/esm/fields/Icon/index.native.js.map +1 -1
  255. package/dist/esm/fields/Link.native.js.map +1 -1
  256. package/dist/esm/fields/LinkTree.native.js.map +1 -1
  257. package/dist/esm/fields/LongText/index.native.js.map +1 -1
  258. package/dist/esm/fields/MentionInput/index.mjs +4 -1
  259. package/dist/esm/fields/MentionInput/index.mjs.map +1 -1
  260. package/dist/esm/fields/MentionInput/index.native.js +4 -1
  261. package/dist/esm/fields/MentionInput/index.native.js.map +1 -1
  262. package/dist/esm/fields/Numeric/index.native.js.map +1 -1
  263. package/dist/esm/fields/OTPInput/index.native.js.map +1 -1
  264. package/dist/esm/fields/Password/index.native.js.map +1 -1
  265. package/dist/esm/fields/Phone/index.native.js.map +1 -1
  266. package/dist/esm/fields/Progress/index.native.js.map +1 -1
  267. package/dist/esm/fields/RadioGroup/index.native.js.map +1 -1
  268. package/dist/esm/fields/Rating/index.native.js.map +1 -1
  269. package/dist/esm/fields/ReadOnly/index.native.js.map +1 -1
  270. package/dist/esm/fields/Select/index.native.js.map +1 -1
  271. package/dist/esm/fields/Signature/index.native.js.map +1 -1
  272. package/dist/esm/fields/Slider/index.native.js.map +1 -1
  273. package/dist/esm/fields/SmallText/index.native.js.map +1 -1
  274. package/dist/esm/fields/Switch/index.native.js.map +1 -1
  275. package/dist/esm/fields/TableMultiSelect.native.js.map +1 -1
  276. package/dist/esm/fields/TextEditor/types.native.js.map +1 -1
  277. package/dist/esm/fields/TimePicker/index.native.js.map +1 -1
  278. package/dist/esm/fields/ToggleGroup/index.native.js.map +1 -1
  279. package/dist/esm/fields/shared/EditorPreviewPanes.native.js.map +1 -1
  280. package/dist/esm/filterFields.native.js.map +1 -1
  281. package/dist/esm/formEngine/createPrefill.native.js.map +1 -1
  282. package/dist/esm/formEngine/dirtyTracking.native.js.map +1 -1
  283. package/dist/esm/formEngine/doctypeMeta.native.js.map +1 -1
  284. package/dist/esm/formEngine/fetchFrom.native.js.map +1 -1
  285. package/dist/esm/formEngine/fieldPermissions.native.js.map +1 -1
  286. package/dist/esm/formEngine/formActions.native.js.map +1 -1
  287. package/dist/esm/formEngine/formLayout.native.js.map +1 -1
  288. package/dist/esm/formEngine/index.native.js.map +1 -1
  289. package/dist/esm/formEngine/useFormEngine.native.js.map +1 -1
  290. package/dist/esm/frappeEventColor.native.js.map +1 -1
  291. package/dist/esm/frappeStoryTarget.native.js.map +1 -1
  292. package/dist/esm/frappeUsers.native.js.map +1 -1
  293. package/dist/esm/index.mjs +2 -1
  294. package/dist/esm/index.mjs.map +1 -1
  295. package/dist/esm/index.native.js +2 -1
  296. package/dist/esm/index.native.js.map +1 -1
  297. package/dist/esm/liveErrors.native.js.map +1 -1
  298. package/dist/esm/resolveControl.native.js.map +1 -1
  299. package/dist/esm/schemaForm/SchemaWizard.native.js.map +1 -1
  300. package/dist/esm/schemaForm/applyFieldOrder.native.js.map +1 -1
  301. package/dist/esm/schemaForm/index.mjs +8 -7
  302. package/dist/esm/schemaForm/index.mjs.map +1 -1
  303. package/dist/esm/schemaForm/index.native.js +8 -7
  304. package/dist/esm/schemaForm/index.native.js.map +1 -1
  305. package/dist/esm/shared/devWarn.mjs +14 -0
  306. package/dist/esm/shared/devWarn.mjs.map +1 -0
  307. package/dist/esm/shared/devWarn.native.js +16 -0
  308. package/dist/esm/shared/devWarn.native.js.map +1 -0
  309. package/dist/esm/shared/useKeyboardInset.native.js.map +1 -1
  310. package/dist/esm/syncError.native.js.map +1 -1
  311. package/dist/esm/useFrappeAggregate.mjs +15 -8
  312. package/dist/esm/useFrappeAggregate.mjs.map +1 -1
  313. package/dist/esm/useFrappeAggregate.native.js +15 -9
  314. package/dist/esm/useFrappeAggregate.native.js.map +1 -1
  315. package/dist/esm/useFrappeFacets.mjs +10 -9
  316. package/dist/esm/useFrappeFacets.mjs.map +1 -1
  317. package/dist/esm/useFrappeFacets.native.js +10 -10
  318. package/dist/esm/useFrappeFacets.native.js.map +1 -1
  319. package/dist/esm/useFrappePagination.native.js.map +1 -1
  320. package/dist/esm/useFrappeRows.mjs +86 -0
  321. package/dist/esm/useFrappeRows.mjs.map +1 -0
  322. package/dist/esm/useFrappeRows.native.js +99 -0
  323. package/dist/esm/useFrappeRows.native.js.map +1 -0
  324. package/dist/jsx/FrappeCalendar.mjs +20 -17
  325. package/dist/jsx/FrappeCalendar.mjs.map +1 -1
  326. package/dist/jsx/FrappeCalendar.native.js +22 -21
  327. package/dist/jsx/FrappeCalendar.native.js.map +1 -1
  328. package/dist/jsx/FrappeForm.mjs +1 -1
  329. package/dist/jsx/FrappeForm.mjs.map +1 -1
  330. package/dist/jsx/FrappeForm.native.js +1 -1
  331. package/dist/jsx/FrappeForm.native.js.map +1 -1
  332. package/dist/jsx/FrappeGantt.mjs +27 -36
  333. package/dist/jsx/FrappeGantt.mjs.map +1 -1
  334. package/dist/jsx/FrappeGantt.native.js +27 -38
  335. package/dist/jsx/FrappeGantt.native.js.map +1 -1
  336. package/dist/jsx/FrappeImageView.mjs +5 -3
  337. package/dist/jsx/FrappeImageView.mjs.map +1 -1
  338. package/dist/jsx/FrappeImageView.native.js +8 -4
  339. package/dist/jsx/FrappeImageView.native.js.map +1 -1
  340. package/dist/jsx/FrappeKPICard.mjs +27 -2
  341. package/dist/jsx/FrappeKPICard.mjs.map +1 -1
  342. package/dist/jsx/FrappeKPICard.native.js +26 -1
  343. package/dist/jsx/FrappeKPICard.native.js.map +1 -1
  344. package/dist/jsx/FrappeKanban.mjs +16 -17
  345. package/dist/jsx/FrappeKanban.mjs.map +1 -1
  346. package/dist/jsx/FrappeKanban.native.js +18 -21
  347. package/dist/jsx/FrappeKanban.native.js.map +1 -1
  348. package/dist/jsx/FrappeLikedBy.mjs +1 -1
  349. package/dist/jsx/FrappeLikedBy.mjs.map +1 -1
  350. package/dist/jsx/FrappeLikedBy.native.js +1 -1
  351. package/dist/jsx/FrappeLikedBy.native.js.map +1 -1
  352. package/dist/jsx/FrappeList.mjs +2 -2
  353. package/dist/jsx/FrappeList.mjs.map +1 -1
  354. package/dist/jsx/FrappeList.native.js +2 -2
  355. package/dist/jsx/FrappeList.native.js.map +1 -1
  356. package/dist/jsx/FrappeProvider.mjs.map +1 -1
  357. package/dist/jsx/FrappeProvider.native.js.map +1 -1
  358. package/dist/jsx/FrappeReportBuilder.mjs +2 -2
  359. package/dist/jsx/FrappeReportBuilder.mjs.map +1 -1
  360. package/dist/jsx/FrappeReportBuilder.native.js +2 -2
  361. package/dist/jsx/FrappeReportBuilder.native.js.map +1 -1
  362. package/dist/jsx/FrappeTable.mjs +36 -39
  363. package/dist/jsx/FrappeTable.mjs.map +1 -1
  364. package/dist/jsx/FrappeTable.native.js +38 -39
  365. package/dist/jsx/FrappeTable.native.js.map +1 -1
  366. package/dist/jsx/FrappeTreeView.mjs +89 -55
  367. package/dist/jsx/FrappeTreeView.mjs.map +1 -1
  368. package/dist/jsx/FrappeTreeView.native.js +129 -50
  369. package/dist/jsx/FrappeTreeView.native.js.map +1 -1
  370. package/dist/jsx/commentActions.mjs +1 -1
  371. package/dist/jsx/commentActions.mjs.map +1 -1
  372. package/dist/jsx/commentActions.native.js +1 -1
  373. package/dist/jsx/commentActions.native.js.map +1 -1
  374. package/dist/jsx/components/timeline.mjs +1 -1
  375. package/dist/jsx/components/timeline.mjs.map +1 -1
  376. package/dist/jsx/components/timeline.native.js +1 -1
  377. package/dist/jsx/desk/DeskShell.mjs +2 -0
  378. package/dist/jsx/desk/DeskShell.mjs.map +1 -1
  379. package/dist/jsx/desk/DeskShell.native.js +2 -0
  380. package/dist/jsx/desk/DeskShell.native.js.map +1 -1
  381. package/dist/jsx/desk/awesomebar.mjs +1 -1
  382. package/dist/jsx/desk/awesomebar.mjs.map +1 -1
  383. package/dist/jsx/desk/awesomebar.native.js +1 -1
  384. package/dist/jsx/desk/awesomebar.native.js.map +1 -1
  385. package/dist/jsx/fields/MentionInput/index.mjs +4 -1
  386. package/dist/jsx/fields/MentionInput/index.mjs.map +1 -1
  387. package/dist/jsx/fields/MentionInput/index.native.js +4 -1
  388. package/dist/jsx/fields/MentionInput/index.native.js.map +1 -1
  389. package/dist/jsx/index.js +2 -1
  390. package/dist/jsx/index.js.map +1 -1
  391. package/dist/jsx/index.mjs +2 -1
  392. package/dist/jsx/index.mjs.map +1 -1
  393. package/dist/jsx/index.native.js +4 -0
  394. package/dist/jsx/index.native.js.map +1 -1
  395. package/dist/jsx/schemaForm/index.mjs +8 -7
  396. package/dist/jsx/schemaForm/index.mjs.map +1 -1
  397. package/dist/jsx/schemaForm/index.native.js +10 -9
  398. package/dist/jsx/schemaForm/index.native.js.map +1 -1
  399. package/dist/jsx/shared/devWarn.mjs +14 -0
  400. package/dist/jsx/shared/devWarn.mjs.map +1 -0
  401. package/dist/jsx/shared/devWarn.native.js +45 -0
  402. package/dist/jsx/shared/devWarn.native.js.map +1 -0
  403. package/dist/jsx/useFrappeAggregate.mjs +15 -8
  404. package/dist/jsx/useFrappeAggregate.mjs.map +1 -1
  405. package/dist/jsx/useFrappeAggregate.native.js +15 -9
  406. package/dist/jsx/useFrappeAggregate.native.js.map +1 -1
  407. package/dist/jsx/useFrappeFacets.mjs +10 -9
  408. package/dist/jsx/useFrappeFacets.mjs.map +1 -1
  409. package/dist/jsx/useFrappeFacets.native.js +10 -10
  410. package/dist/jsx/useFrappeFacets.native.js.map +1 -1
  411. package/dist/jsx/useFrappeRows.mjs +86 -0
  412. package/dist/jsx/useFrappeRows.mjs.map +1 -0
  413. package/dist/jsx/useFrappeRows.native.js +129 -0
  414. package/dist/jsx/useFrappeRows.native.js.map +1 -0
  415. package/package.json +17 -16
  416. package/src/FileBrowser/FileBrowser.spec.tsx +11 -1
  417. package/src/FrappeCalendar.tsx +25 -22
  418. package/src/FrappeForm.tsx +7 -3
  419. package/src/FrappeGantt.tsx +29 -39
  420. package/src/FrappeImageView.tsx +5 -3
  421. package/src/FrappeKPICard.spec.tsx +128 -0
  422. package/src/FrappeKPICard.tsx +44 -4
  423. package/src/FrappeKanban.tsx +24 -17
  424. package/src/FrappeLikedBy.tsx +1 -1
  425. package/src/FrappeList.tsx +3 -2
  426. package/src/FrappeProvider.fixturesOnly.spec.tsx +129 -0
  427. package/src/FrappeProvider.tsx +16 -6
  428. package/src/FrappeReportBuilder.tsx +4 -2
  429. package/src/FrappeTable.autoHeight.spec.tsx +142 -0
  430. package/src/FrappeTable.rowAccumulator.spec.tsx +110 -0
  431. package/src/FrappeTable.tsx +75 -48
  432. package/src/FrappeTreeView.stories.tsx +59 -0
  433. package/src/FrappeTreeView.tsx +166 -56
  434. package/src/commentActions.ts +1 -1
  435. package/src/components/timeline.tsx +1 -1
  436. package/src/desk/DeskShell.tsx +2 -0
  437. package/src/desk/awesomebar.tsx +5 -2
  438. package/src/fields/CodeEditor/CodeEditor.spec.tsx +10 -9
  439. package/src/fields/Date/typeParity.spec.tsx +19 -9
  440. package/src/fields/Duration/Duration.spec.tsx +73 -0
  441. package/src/fields/MentionInput/MentionInput.spec.tsx +110 -0
  442. package/src/fields/MentionInput/index.tsx +4 -1
  443. package/src/fields/Password/index.tsx +1 -1
  444. package/src/fields/Progress/Progress.spec.tsx +9 -0
  445. package/src/fields/RadioGroup/RadioGroup.spec.tsx +93 -0
  446. package/src/fields/Signature/Signature.spec.tsx +105 -0
  447. package/src/fields/Slider/Slider.spec.tsx +73 -0
  448. package/src/fields/Switch/Switch.spec.tsx +65 -0
  449. package/src/fields/TextEditor/TextEditor.spec.tsx +2 -3
  450. package/src/fields/TextEditor/TextEditor.stories.tsx +31 -1
  451. package/src/fields/ToggleGroup/ToggleGroup.spec.tsx +110 -0
  452. package/src/frappeViews.designLaw.spec.ts +11 -7
  453. package/src/index.ts +13 -0
  454. package/src/schemaForm/index.tsx +6 -7
  455. package/src/shared/devWarn.ts +42 -0
  456. package/src/useFrappeAggregate.ts +17 -11
  457. package/src/useFrappeFacets.ts +17 -10
  458. package/src/useFrappeRows.spec.tsx +176 -0
  459. package/src/useFrappeRows.ts +293 -0
  460. package/types/FrappeCalendar.d.ts.map +1 -1
  461. package/types/FrappeForm.d.ts +6 -2
  462. package/types/FrappeForm.d.ts.map +1 -1
  463. package/types/FrappeGantt.d.ts.map +1 -1
  464. package/types/FrappeImageView.d.ts.map +1 -1
  465. package/types/FrappeKPICard.d.ts +9 -1
  466. package/types/FrappeKPICard.d.ts.map +1 -1
  467. package/types/FrappeKanban.d.ts.map +1 -1
  468. package/types/FrappeList.d.ts.map +1 -1
  469. package/types/FrappeProvider.d.ts +16 -6
  470. package/types/FrappeProvider.d.ts.map +1 -1
  471. package/types/FrappeReportBuilder.d.ts.map +1 -1
  472. package/types/FrappeTable.d.ts +20 -1
  473. package/types/FrappeTable.d.ts.map +1 -1
  474. package/types/FrappeTreeView.d.ts +38 -1
  475. package/types/FrappeTreeView.d.ts.map +1 -1
  476. package/types/desk/DeskShell.d.ts.map +1 -1
  477. package/types/desk/awesomebar.d.ts.map +1 -1
  478. package/types/fields/MentionInput/index.d.ts.map +1 -1
  479. package/types/fields/Password/index.d.ts +1 -1
  480. package/types/fields/Password/index.d.ts.map +1 -1
  481. package/types/index.d.ts +1 -0
  482. package/types/index.d.ts.map +1 -1
  483. package/types/schemaForm/index.d.ts.map +1 -1
  484. package/types/shared/devWarn.d.ts +23 -0
  485. package/types/shared/devWarn.d.ts.map +1 -0
  486. package/types/useFrappeAggregate.d.ts +2 -1
  487. package/types/useFrappeAggregate.d.ts.map +1 -1
  488. package/types/useFrappeFacets.d.ts +2 -1
  489. package/types/useFrappeFacets.d.ts.map +1 -1
  490. package/types/useFrappeRows.d.ts +186 -0
  491. package/types/useFrappeRows.d.ts.map +1 -0
@@ -1 +1 @@
1
- {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","FrappeImageView_exports","FrappeImageView","module","exports","import_jsx_runtime","require","import_frappe","import_components","import_react","import_react2","import_react_i18next","import_forms","import_tamagui","import_platform","import_theme","import_FrappeProvider","import_FrappeReconnectIndicator","IS_SSR","isServer","getImageUrl","baseURL","startsWith","props","knobProps","useResolvedKnobs","t","useTranslation","providerConfig","useFrappeConfig","doctype","imageField","titleField","subtitleField","columns","onItemClick","baseURLProp","ssrItems","stackProps","length","jsx","ImageGrid","items","emptyMessage","testID","toLowerCase","renderItem","doc","FrappeImageCard","jsxs","YStack","panelPadding","alignItems","justifyContent","children","Spinner","size","Text","color","formCommonColors","muted","body","marginTop","FrappeImageViewClient","param","filters","fields","searchText","auth","syncOptions","_ref","config","finalBaseURL","finalAuth","finalSyncOptions","Error","appConfig","useMemo","socketPort","siteName","socketBaseURL","realtime","fixtures","meta","isLoading","isMetaLoading","useDocTypeMeta","effectiveImageField","image_field","effectiveTitleField","title_field","effectiveFields","fieldSet","Set","add","Array","effectiveFilters","searchFilter","isArray","objectFilters","entries","map","param2","collection","useFrappeCollection","data","rawData","isDataLoading","useLiveQuery","q","_list","needsMeta","AsyncSkeleton","layout","_knobProps_controlIcon","iconSize","Number","controlIcon","width","gap","ImageSquareIcon","Fragment","FrappeReconnectIndicator","imageUrl","title","subtitle","Card","cursor","hoverStyle","scale","pressStyle","onPress","e","_e_stopPropagation","stopPropagation","Image","src","alt","String","aspectRatio","objectFit","backgroundColor","borderRadius","Footer","heading","fontWeight","numberOfLines","label"],"sources":["FrappeImageView.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar FrappeImageView_exports = {};\n__export(FrappeImageView_exports, {\n FrappeImageView: () => FrappeImageView\n});\nmodule.exports = __toCommonJS(FrappeImageView_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_react = require(\"@phosphor-icons/react\");\nvar import_react2 = __toESM(require(\"react\"));\nvar import_react_i18next = require(\"react-i18next\");\nvar import_forms = require(\"@multiplatform.one/forms\");\nvar import_tamagui = require(\"tamagui\");\nvar import_platform = require(\"@multiplatform.one/platform\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_FrappeProvider = require(\"./FrappeProvider\");\nvar import_FrappeReconnectIndicator = require(\"./FrappeReconnectIndicator\");\nvar IS_SSR = import_platform.isServer;\nfunction getImageUrl(value, baseURL) {\n if (!value || typeof value !== \"string\") return \"\";\n if (value.startsWith(\"http://\") || value.startsWith(\"https://\")) return value;\n if (value.startsWith(\"/\")) return `${baseURL}${value}`;\n return value;\n}\nfunction FrappeImageView(props) {\n var { knobProps } = (0, import_theme.useResolvedKnobs)();\n var { t } = (0, import_react_i18next.useTranslation)();\n var providerConfig = (0, import_FrappeProvider.useFrappeConfig)();\n if (IS_SSR) {\n var { doctype, imageField, titleField = \"name\", subtitleField, columns, onItemClick, baseURL: baseURLProp, ssrItems, ...stackProps } = props;\n var baseURL = baseURLProp !== null && baseURLProp !== void 0 ? baseURLProp : providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.baseURL;\n if (ssrItems && ssrItems.length > 0 && imageField && baseURL) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.ImageGrid, {\n items: ssrItems,\n columns,\n onItemClick,\n emptyMessage: t(\"No items found\"),\n testID: `${doctype.toLowerCase()}-list`,\n ...stackProps,\n renderItem: function renderItem(doc) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(FrappeImageCard, {\n doc,\n doctype,\n imageField,\n titleField,\n subtitleField,\n baseURL,\n onItemClick,\n knobProps\n });\n }\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n justifyContent: \"center\",\n ...stackProps,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_forms.Spinner, {\n size: \"large\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_forms.formCommonColors.muted,\n ...knobProps.body,\n marginTop: \"$2\",\n children: t(\"Loading {{doctype}}...\", {\n doctype\n })\n })\n ]\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(FrappeImageViewClient, {\n ...props\n });\n}\nfunction FrappeImageViewClient(param) {\n var { doctype, imageField, titleField, subtitleField, columns, filters, fields, searchText, onItemClick, baseURL, auth, syncOptions, ...stackProps } = param;\n var _ref;\n var config = (0, import_FrappeProvider.useFrappeConfig)();\n var { knobProps } = (0, import_theme.useResolvedKnobs)();\n var { t } = (0, import_react_i18next.useTranslation)();\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 var finalSyncOptions = syncOptions !== null && syncOptions !== void 0 ? syncOptions : config === null || config === void 0 ? void 0 : config.syncOptions;\n if (!finalBaseURL) {\n throw new Error(\"FrappeImageView requires baseURL prop or FrappeProvider with baseURL\");\n }\n var appConfig = (0, import_react2.useMemo)(function() {\n return {\n baseURL: finalBaseURL,\n socketPort: config === null || config === void 0 ? void 0 : config.socketPort,\n siteName: config === null || config === void 0 ? void 0 : config.siteName,\n socketBaseURL: config === null || config === void 0 ? void 0 : config.socketBaseURL,\n auth: finalAuth,\n syncOptions: finalSyncOptions,\n realtime: config === null || config === void 0 ? void 0 : config.realtime,\n fixtures: config === null || config === void 0 ? void 0 : config.fixtures\n };\n }, [\n finalBaseURL,\n config === null || config === void 0 ? void 0 : config.socketPort,\n config === null || config === void 0 ? void 0 : config.siteName,\n config === null || config === void 0 ? void 0 : config.socketBaseURL,\n config === null || config === void 0 ? void 0 : config.realtime,\n finalAuth,\n finalSyncOptions,\n config === null || config === void 0 ? void 0 : config.fixtures\n ]);\n var { meta, isLoading: isMetaLoading } = (0, import_frappe.useDocTypeMeta)(appConfig, doctype);\n var effectiveImageField = imageField !== null && imageField !== void 0 ? imageField : meta === null || meta === void 0 ? void 0 : meta.image_field;\n var effectiveTitleField = (_ref = titleField !== null && titleField !== void 0 ? titleField : meta === null || meta === void 0 ? void 0 : meta.title_field) !== null && _ref !== void 0 ? _ref : \"name\";\n var effectiveFields = (0, import_react2.useMemo)(function() {\n var fieldSet = new Set(fields);\n fieldSet.add(\"name\");\n if (effectiveImageField) fieldSet.add(effectiveImageField);\n if (effectiveTitleField) fieldSet.add(effectiveTitleField);\n if (subtitleField) fieldSet.add(subtitleField);\n return Array.from(fieldSet);\n }, [\n fields,\n effectiveImageField,\n effectiveTitleField,\n subtitleField\n ]);\n var effectiveFilters = (0, import_react2.useMemo)(function() {\n if (!searchText || !effectiveTitleField) return filters;\n var searchFilter = [\n [\n effectiveTitleField,\n \"like\",\n `%${searchText}%`\n ]\n ];\n if (Array.isArray(filters)) {\n return [\n ...filters,\n ...searchFilter\n ];\n }\n if (filters) {\n var objectFilters = Object.entries(filters).map(function(param2) {\n var [key, value] = param2;\n return [\n key,\n \"=\",\n value\n ];\n });\n return [\n ...objectFilters,\n ...searchFilter\n ];\n }\n return searchFilter;\n }, [\n filters,\n searchText,\n effectiveTitleField\n ]);\n var collection = (0, import_frappe.useFrappeCollection)(appConfig, doctype, {\n fields: effectiveFields,\n filters: effectiveFilters\n });\n var { data: rawData, isLoading: isDataLoading } = (0, import_frappe.useLiveQuery)(function(q) {\n return collection ? q.from({\n _list: collection\n }) : null;\n }, [\n collection\n ]);\n var items = (0, import_react2.useMemo)(function() {\n return rawData !== null && rawData !== void 0 ? rawData : [];\n }, [\n rawData\n ]);\n var needsMeta = !imageField || !titleField;\n if (needsMeta && isMetaLoading || isDataLoading) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n ...knobProps.panelPadding,\n testID: `${doctype.toLowerCase()}-skeleton`,\n ...stackProps,\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.AsyncSkeleton, {\n layout: \"generic\"\n })\n });\n }\n if (!effectiveImageField) {\n var _knobProps_controlIcon;\n var iconSize = Number((_knobProps_controlIcon = knobProps.controlIcon) === null || _knobProps_controlIcon === void 0 ? void 0 : _knobProps_controlIcon.width) || 16;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ...knobProps.panelPadding,\n alignItems: \"center\",\n ...knobProps.gap,\n ...stackProps,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.ImageSquareIcon, {\n size: iconSize * 2,\n color: import_forms.formCommonColors.muted\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_forms.formCommonColors.muted,\n ...knobProps.body,\n children: t(\"No image field configured for {{doctype}}\", {\n doctype\n })\n })\n ]\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FrappeReconnectIndicator.FrappeReconnectIndicator, {\n config: appConfig\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.ImageGrid, {\n items,\n columns,\n onItemClick,\n emptyMessage: t(\"No items found\"),\n testID: `${doctype.toLowerCase()}-list`,\n ...stackProps,\n renderItem: function renderItem(doc) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(FrappeImageCard, {\n doc,\n doctype,\n imageField: effectiveImageField,\n titleField: effectiveTitleField,\n subtitleField,\n baseURL: finalBaseURL,\n onItemClick,\n knobProps\n });\n }\n })\n ]\n });\n}\nfunction FrappeImageCard(param) {\n var { doc, doctype, imageField, titleField, subtitleField, baseURL, onItemClick, knobProps } = param;\n var _knobProps_controlIcon;\n var imageUrl = getImageUrl(doc[imageField], baseURL);\n var title = doc[titleField] || doc.name;\n var subtitle = subtitleField ? doc[subtitleField] : void 0;\n var iconSize = Number((_knobProps_controlIcon = knobProps.controlIcon) === null || _knobProps_controlIcon === void 0 ? void 0 : _knobProps_controlIcon.width) || 16;\n return (\n // Catalog Card owns cardSurface (no cherry-picked radius). Inner media\n // radius stays UNCLAMPED (R11). No status pip on the tile.\n /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_components.Card, {\n testID: `${doctype.toLowerCase()}-card-${doc.name}`,\n cursor: \"pointer\",\n hoverStyle: {\n scale: 1.02\n },\n pressStyle: {\n scale: 0.98\n },\n onPress: function onPress(e) {\n var _e_stopPropagation;\n e === null || e === void 0 ? void 0 : (_e_stopPropagation = e.stopPropagation) === null || _e_stopPropagation === void 0 ? void 0 : _e_stopPropagation.call(e);\n onItemClick === null || onItemClick === void 0 ? void 0 : onItemClick(doc);\n },\n children: [\n imageUrl ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Image, {\n src: imageUrl,\n alt: String(title),\n width: \"100%\",\n aspectRatio: 1,\n objectFit: \"cover\",\n backgroundColor: \"$color2\",\n ...knobProps.borderRadius\n }) : /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.YStack, {\n width: \"100%\",\n aspectRatio: 1,\n backgroundColor: \"$color2\",\n ...knobProps.borderRadius,\n alignItems: \"center\",\n justifyContent: \"center\",\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_react.ImageSquareIcon, {\n size: iconSize * 2,\n color: import_forms.formCommonColors.muted\n })\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.Card.Footer, {\n children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n testID: `${doctype.toLowerCase()}-name-${doc.name}`,\n ...knobProps.heading,\n fontWeight: \"400\",\n numberOfLines: 1,\n children: String(title)\n }),\n subtitle != null ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n testID: `${doctype.toLowerCase()}-subtitle-${doc.name}`,\n color: import_forms.formCommonColors.muted,\n ...knobProps.label,\n numberOfLines: 1,\n children: String(subtitle)\n }) : null\n ]\n })\n })\n ]\n })\n );\n}\n//# sourceMappingURL=FrappeImageView.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["to","__toESM","mod","isNodeMode","target","__create","__getProtoOf","__copyProps","__esModule","__defProp","value","enumerable","__toCommonJS","FrappeImageView_exports","__export","FrappeImageView","module","exports","import_jsx_runtime","require","import_frappe","import_components","import_react","import_react2","import_react_i18next","import_forms","import_tamagui","import_platform","import_theme","import_FrappeProvider","import_FrappeReconnectIndicator","IS_SSR","isServer","getImageUrl","baseURL","startsWith","props","knobProps","useResolvedKnobs","t","useTranslation","providerConfig","useFrappeConfig","doctype","imageField","titleField","subtitleField","columns","onItemClick","baseURLProp","ssrItems","stackProps","length","jsx","ImageGrid","items","emptyMessage","testID","toLowerCase","renderItem","doc","FrappeImageCard","jsxs","YStack","panelPadding","alignItems","justifyContent","children","Spinner","size","Text","color","formCommonColors","muted","body","marginTop","FrappeImageViewClient","param","filters","fields","searchText","auth","syncOptions","_ref","theme","useTheme","config","finalBaseURL","finalAuth","finalSyncOptions","Error","appConfig","useMemo","socketPort","siteName","socketBaseURL","realtime","fixtures","meta","isLoading","isMetaLoading","useDocTypeMeta","effectiveImageField","image_field","effectiveTitleField","title_field","effectiveFields","fieldSet","Set","add","Array","from","effectiveFilters","searchFilter","isArray","objectFilters","Object","entries","map","param2","key","collection","useFrappeCollection","data","rawData","isDataLoading","useLiveQuery","q","_list","needsMeta","AsyncSkeleton","layout","_ref1","_knobProps_controlIcon","_theme_color11","iconSize","Number","controlIcon","width","gap","ImageSquareIcon","color11","val","Fragment","FrappeReconnectIndicator","imageUrl","title","name","subtitle","Card","cursor","hoverStyle","scale","pressStyle","onPress","e","_e_stopPropagation","stopPropagation","call","Image","src","alt","String","aspectRatio","objectFit","backgroundColor","borderRadius"],"sources":["../../src/FrappeImageView.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -29,6 +29,7 @@ var import_components = require("@multiplatform.one/components");
29
29
  var import_react = require("react");
30
30
  var import_react_i18next = require("react-i18next");
31
31
  var import_FrappeProvider = require("./FrappeProvider.cjs");
32
+ var import_devWarn = require("./shared/devWarn.cjs");
32
33
  var import_useFrappeAggregate = require("./useFrappeAggregate.cjs");
33
34
  var import_jsx_runtime = require("react/jsx-runtime");
34
35
  function KPICardSkeleton(stackProps) {
@@ -71,6 +72,17 @@ function FrappeKPICard({
71
72
  realtime: providerConfig?.realtime,
72
73
  fixtures: providerConfig?.fixtures
73
74
  } : void 0;
75
+ const missingBaseURL = !!dataSource && !finalBaseURL;
76
+ const doctype = dataSource?.doctype;
77
+ (0, import_react.useEffect)(() => {
78
+ if (!missingBaseURL) return;
79
+ (0, import_devWarn.frappeDevWarn)("kpi-datasource-without-baseurl", {
80
+ component: "FrappeKPICard",
81
+ id: config.id,
82
+ doctype,
83
+ suggest: "set baseURL on FrappeKPICard or on the FrappeProvider above it"
84
+ });
85
+ }, [missingBaseURL, config.id, doctype]);
74
86
  const {
75
87
  value,
76
88
  isLoading,
@@ -92,12 +104,25 @@ function FrappeKPICard({
92
104
  value: value ?? "\u2014"
93
105
  };
94
106
  }, [config, dataSource, value]);
95
- if (!dataSource || !connection) {
107
+ if (!dataSource) {
96
108
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.KPICard, {
97
109
  config,
98
110
  ...stackProps
99
111
  });
100
112
  }
113
+ if (!connection) {
114
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {
115
+ compact: true,
116
+ error: true,
117
+ errorTitle: t("{{title}} is not configured", {
118
+ title: config.title
119
+ }),
120
+ errorDescription: t("This card reads {{doctype}} live, but no Frappe baseURL is in scope, so the figure was never computed.", {
121
+ doctype: dataSource.doctype
122
+ }),
123
+ ...stackProps
124
+ });
125
+ }
101
126
  if (isLoading) {
102
127
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(KPICardSkeleton, {
103
128
  ...stackProps
@@ -43,6 +43,7 @@ var import_components = require("@multiplatform.one/components");
43
43
  var import_react = __toESM(require("react"));
44
44
  var import_react_i18next = require("react-i18next");
45
45
  var import_FrappeProvider = require("./FrappeProvider.native.js");
46
+ var import_devWarn = require("./shared/devWarn.native.js");
46
47
  var import_useFrappeAggregate = require("./useFrappeAggregate.native.js");
47
48
  function KPICardSkeleton(stackProps) {
48
49
  var {
@@ -86,6 +87,17 @@ function FrappeKPICard(param) {
86
87
  realtime: providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.realtime,
87
88
  fixtures: providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.fixtures
88
89
  } : void 0;
90
+ var missingBaseURL = !!dataSource && !finalBaseURL;
91
+ var doctype = dataSource === null || dataSource === void 0 ? void 0 : dataSource.doctype;
92
+ (0, import_react.useEffect)(function () {
93
+ if (!missingBaseURL) return;
94
+ (0, import_devWarn.frappeDevWarn)("kpi-datasource-without-baseurl", {
95
+ component: "FrappeKPICard",
96
+ id: config.id,
97
+ doctype,
98
+ suggest: "set baseURL on FrappeKPICard or on the FrappeProvider above it"
99
+ });
100
+ }, [missingBaseURL, config.id, doctype]);
89
101
  var {
90
102
  value,
91
103
  isLoading,
@@ -107,12 +119,25 @@ function FrappeKPICard(param) {
107
119
  value: value !== null && value !== void 0 ? value : "\u2014"
108
120
  };
109
121
  }, [config, dataSource, value]);
110
- if (!dataSource || !connection) {
122
+ if (!dataSource) {
111
123
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.KPICard, {
112
124
  config,
113
125
  ...stackProps
114
126
  });
115
127
  }
128
+ if (!connection) {
129
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {
130
+ compact: true,
131
+ error: true,
132
+ errorTitle: t("{{title}} is not configured", {
133
+ title: config.title
134
+ }),
135
+ errorDescription: t("This card reads {{doctype}} live, but no Frappe baseURL is in scope, so the figure was never computed.", {
136
+ doctype: dataSource.doctype
137
+ }),
138
+ ...stackProps
139
+ });
140
+ }
116
141
  if (isLoading) {
117
142
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(KPICardSkeleton, {
118
143
  ...stackProps
@@ -1 +1 @@
1
- {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","FrappeKPICard_exports","FrappeKPICard","module","exports","import_jsx_runtime","require","import_components","import_react","import_react_i18next","import_FrappeProvider","import_useFrappeAggregate","KPICardSkeleton","stackProps","t","useTranslation","jsxs","Card","children","jsx","Skeleton","width","param","config","dataSource","baseURL","auth","syncOptions","_ref","providerConfig","useFrappeConfig","finalBaseURL","connection","socketPort","siteName","socketBaseURL","realtime","fixtures","isLoading","isStale","error","isPermissionError","useFrappeAggregate","doctype","aggregate","field","filters","debounceMs","enabled","liveConfig","useMemo","KPICard","AsyncBoundary","compact","errorTitle","title","opacity"],"sources":["FrappeKPICard.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar FrappeKPICard_exports = {};\n__export(FrappeKPICard_exports, {\n FrappeKPICard: () => FrappeKPICard\n});\nmodule.exports = __toCommonJS(FrappeKPICard_exports);\nvar import_jsx_runtime = require(\"react/jsx-runtime\");\nvar import_components = require(\"@multiplatform.one/components\");\nvar import_react = __toESM(require(\"react\"));\nvar import_react_i18next = require(\"react-i18next\");\nvar import_FrappeProvider = require(\"./FrappeProvider\");\nvar import_useFrappeAggregate = require(\"./useFrappeAggregate\");\nfunction KPICardSkeleton(stackProps) {\n var { t } = (0, import_react_i18next.useTranslation)();\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_components.Card, {\n \"aria-busy\": true,\n \"aria-label\": t(\"Loading\"),\n ...stackProps,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.Skeleton, {\n width: \"50%\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.Skeleton, {\n width: \"70%\"\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.Skeleton, {\n width: \"40%\"\n })\n ]\n });\n}\nfunction FrappeKPICard(param) {\n var { config, dataSource, baseURL, auth, syncOptions, ...stackProps } = param;\n var _ref;\n var providerConfig = (0, import_FrappeProvider.useFrappeConfig)();\n var { t } = (0, import_react_i18next.useTranslation)();\n var finalBaseURL = baseURL !== null && baseURL !== void 0 ? baseURL : providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.baseURL;\n var connection = dataSource && finalBaseURL ? {\n baseURL: finalBaseURL,\n socketPort: providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.socketPort,\n siteName: providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.siteName,\n socketBaseURL: providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.socketBaseURL,\n auth: auth !== null && auth !== void 0 ? auth : providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.auth,\n syncOptions: syncOptions !== null && syncOptions !== void 0 ? syncOptions : providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.syncOptions,\n realtime: providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.realtime,\n fixtures: providerConfig === null || providerConfig === void 0 ? void 0 : providerConfig.fixtures\n } : void 0;\n var { value, isLoading, isStale, error, isPermissionError } = (0, import_useFrappeAggregate.useFrappeAggregate)(connection, {\n doctype: (_ref = dataSource === null || dataSource === void 0 ? void 0 : dataSource.doctype) !== null && _ref !== void 0 ? _ref : \"\",\n aggregate: dataSource === null || dataSource === void 0 ? void 0 : dataSource.aggregate,\n field: dataSource === null || dataSource === void 0 ? void 0 : dataSource.field,\n filters: dataSource === null || dataSource === void 0 ? void 0 : dataSource.filters,\n debounceMs: dataSource === null || dataSource === void 0 ? void 0 : dataSource.debounceMs,\n enabled: !!dataSource\n });\n var liveConfig = (0, import_react.useMemo)(function() {\n if (!dataSource) return config;\n return {\n ...config,\n value: value !== null && value !== void 0 ? value : \"\\u2014\"\n };\n }, [\n config,\n dataSource,\n value\n ]);\n if (!dataSource || !connection) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.KPICard, {\n config,\n ...stackProps\n });\n }\n if (isLoading) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(KPICardSkeleton, {\n ...stackProps\n });\n }\n if (error) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.AsyncBoundary, {\n compact: true,\n error,\n errorTitle: isPermissionError ? t(\"No permission to read {{doctype}}\", {\n doctype: dataSource.doctype\n }) : t(\"Couldn't load {{title}}\", {\n title: config.title\n }),\n ...stackProps\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.KPICard, {\n config: liveConfig,\n // Subtle stale affordance: dim while a post-event refetch is in flight.\n opacity: isStale ? 0.6 : 1,\n \"aria-busy\": isStale || void 0,\n ...stackProps\n });\n}\n//# sourceMappingURL=FrappeKPICard.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["to","__toESM","mod","isNodeMode","target","__create","__getProtoOf","__copyProps","__esModule","__defProp","value","enumerable","__toCommonJS","FrappeKPICard_exports","__export","FrappeKPICard","module","exports","import_jsx_runtime","require","import_components","import_react","import_react_i18next","import_FrappeProvider","import_devWarn","import_useFrappeAggregate","KPICardSkeleton","stackProps","t","useTranslation","jsxs","Card","children","jsx","Skeleton","width","param","config","dataSource","baseURL","auth","syncOptions","_ref","providerConfig","useFrappeConfig","finalBaseURL","connection","socketPort","siteName","socketBaseURL","realtime","fixtures","missingBaseURL","doctype","useEffect","frappeDevWarn","component","id","suggest","isLoading","isStale","error","isPermissionError","useFrappeAggregate","aggregate","field","filters","debounceMs","enabled","liveConfig","useMemo","KPICard","AsyncBoundary","compact","errorTitle","title","errorDescription"],"sources":["../../src/FrappeKPICard.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -25,7 +25,6 @@ __export(FrappeKanban_exports, {
25
25
  FrappeKanban: () => FrappeKanban
26
26
  });
27
27
  module.exports = __toCommonJS(FrappeKanban_exports);
28
- var import_frappe = require("@multiplatform.one/frappe");
29
28
  var import_components = require("@multiplatform.one/components");
30
29
  var import_forms = require("@multiplatform.one/forms");
31
30
  var import_react = require("@phosphor-icons/react");
@@ -36,6 +35,7 @@ var import_theme = require("@multiplatform.one/theme");
36
35
  var import_FrappeConnectionIndicator = require("./FrappeConnectionIndicator.cjs");
37
36
  var import_FrappeProvider = require("./FrappeProvider.cjs");
38
37
  var import_syncError = require("./syncError.cjs");
38
+ var import_useFrappeRows = require("./useFrappeRows.cjs");
39
39
  var import_jsx_runtime = require("react/jsx-runtime");
40
40
  function FrappeKanban({
41
41
  baseURL,
@@ -67,12 +67,11 @@ function FrappeKanban({
67
67
  t
68
68
  } = (0, import_react_i18next.useTranslation)();
69
69
  const [actionError, setActionError] = (0, import_react2.useState)(null);
70
- const [syncError, setSyncError] = (0, import_react2.useState)(null);
71
70
  const finalBaseURL = baseURL ?? config?.baseURL;
72
71
  const finalAuth = auth ?? config?.auth;
73
72
  const finalSyncOptions = syncOptions ?? config?.syncOptions;
74
- if (!finalBaseURL) {
75
- throw new Error("FrappeKanban requires baseURL prop or FrappeProvider with baseURL");
73
+ if (!finalBaseURL && !config?.fixtures) {
74
+ throw new Error("FrappeKanban requires baseURL prop or FrappeProvider with baseURL or fixtures");
76
75
  }
77
76
  const effectiveFields = (0, import_react2.useMemo)(() => {
78
77
  if (!fields) return void 0;
@@ -94,19 +93,19 @@ function FrappeKanban({
94
93
  realtime: config?.realtime,
95
94
  fixtures: config?.fixtures
96
95
  }), [finalBaseURL, config?.socketPort, config?.siteName, config?.socketBaseURL, config?.realtime, finalAuth, finalSyncOptions, config?.socketOptions, config?.fixtures]);
97
- const collection = (0, import_frappe.useFrappeCollection)(connectionConfig, doctype, {
96
+ const mapSyncError = (0, import_react2.useCallback)(err => new Error((0, import_syncError.describeSyncError)(err, doctype, t)), [doctype, t]);
97
+ const {
98
+ rows: cards,
99
+ isQueryLoading: isLoading,
100
+ isError,
101
+ syncError,
102
+ collection
103
+ } = (0, import_useFrappeRows.useFrappeRows)(connectionConfig, doctype, {
98
104
  fields: effectiveFields,
99
105
  filters,
100
- onSyncError: setSyncError
106
+ limit: null,
107
+ mapError: mapSyncError
101
108
  });
102
- const {
103
- data: rawData,
104
- isLoading,
105
- isError
106
- } = (0, import_frappe.useLiveQuery)(q => collection ? q.from({
107
- _list: collection
108
- }) : null, [collection]);
109
- const cards = (0, import_react2.useMemo)(() => rawData ?? [], [rawData]);
110
109
  const genericColumns = (0, import_react2.useMemo)(() => {
111
110
  const grouped = {};
112
111
  for (const column of columns) {
@@ -206,10 +205,10 @@ function FrappeKanban({
206
205
  children: loading
207
206
  });
208
207
  }
209
- const boardError = syncError != null ? (0, import_syncError.describeSyncError)(syncError, doctype, t) : null;
210
- if (boardError && error) {
208
+ const boardError = syncError ? syncError.message : null;
209
+ if (syncError && error) {
211
210
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
212
- children: error(new Error(boardError))
211
+ children: error(syncError)
213
212
  });
214
213
  }
215
214
  if (isError && error && !isLoading && cards.length === 0) {
@@ -39,7 +39,6 @@ __export(FrappeKanban_exports, {
39
39
  });
40
40
  module.exports = __toCommonJS(FrappeKanban_exports);
41
41
  var import_jsx_runtime = require("react/jsx-runtime");
42
- var import_frappe = require("@multiplatform.one/frappe");
43
42
  var import_components = require("@multiplatform.one/components");
44
43
  var import_forms = require("@multiplatform.one/forms");
45
44
  var import_react = require("@phosphor-icons/react");
@@ -50,6 +49,7 @@ var import_theme = require("@multiplatform.one/theme");
50
49
  var import_FrappeConnectionIndicator = require("./FrappeConnectionIndicator.native.js");
51
50
  var import_FrappeProvider = require("./FrappeProvider.native.js");
52
51
  var import_syncError = require("./syncError.native.js");
52
+ var import_useFrappeRows = require("./useFrappeRows.native.js");
53
53
  function _instanceof(left, right) {
54
54
  "@swc/helpers - instanceof";
55
55
 
@@ -90,12 +90,11 @@ function FrappeKanban(param) {
90
90
  t
91
91
  } = (0, import_react_i18next.useTranslation)();
92
92
  var [actionError, setActionError] = (0, import_react2.useState)(null);
93
- var [syncError, setSyncError] = (0, import_react2.useState)(null);
94
93
  var finalBaseURL = baseURL !== null && baseURL !== void 0 ? baseURL : config === null || config === void 0 ? void 0 : config.baseURL;
95
94
  var finalAuth = auth !== null && auth !== void 0 ? auth : config === null || config === void 0 ? void 0 : config.auth;
96
95
  var finalSyncOptions = syncOptions !== null && syncOptions !== void 0 ? syncOptions : config === null || config === void 0 ? void 0 : config.syncOptions;
97
- if (!finalBaseURL) {
98
- throw new Error("FrappeKanban requires baseURL prop or FrappeProvider with baseURL");
96
+ if (!finalBaseURL && !(config === null || config === void 0 ? void 0 : config.fixtures)) {
97
+ throw new Error("FrappeKanban requires baseURL prop or FrappeProvider with baseURL or fixtures");
99
98
  }
100
99
  var effectiveFields = (0, import_react2.useMemo)(function () {
101
100
  if (!fields) return void 0;
@@ -119,23 +118,21 @@ function FrappeKanban(param) {
119
118
  fixtures: config === null || config === void 0 ? void 0 : config.fixtures
120
119
  };
121
120
  }, [finalBaseURL, config === null || config === void 0 ? void 0 : config.socketPort, config === null || config === void 0 ? void 0 : config.siteName, config === null || config === void 0 ? void 0 : config.socketBaseURL, config === null || config === void 0 ? void 0 : config.realtime, finalAuth, finalSyncOptions, config === null || config === void 0 ? void 0 : config.socketOptions, config === null || config === void 0 ? void 0 : config.fixtures]);
122
- var collection = (0, import_frappe.useFrappeCollection)(connectionConfig, doctype, {
121
+ var mapSyncError = (0, import_react2.useCallback)(function (err) {
122
+ return new Error((0, import_syncError.describeSyncError)(err, doctype, t));
123
+ }, [doctype, t]);
124
+ var {
125
+ rows: cards,
126
+ isQueryLoading: isLoading,
127
+ isError,
128
+ syncError,
129
+ collection
130
+ } = (0, import_useFrappeRows.useFrappeRows)(connectionConfig, doctype, {
123
131
  fields: effectiveFields,
124
132
  filters,
125
- onSyncError: setSyncError
133
+ limit: null,
134
+ mapError: mapSyncError
126
135
  });
127
- var {
128
- data: rawData,
129
- isLoading,
130
- isError
131
- } = (0, import_frappe.useLiveQuery)(function (q) {
132
- return collection ? q.from({
133
- _list: collection
134
- }) : null;
135
- }, [collection]);
136
- var cards = (0, import_react2.useMemo)(function () {
137
- return rawData !== null && rawData !== void 0 ? rawData : [];
138
- }, [rawData]);
139
136
  var genericColumns = (0, import_react2.useMemo)(function () {
140
137
  var grouped = {};
141
138
  var _iteratorNormalCompletion = true,
@@ -278,10 +275,10 @@ function FrappeKanban(param) {
278
275
  children: loading
279
276
  });
280
277
  }
281
- var boardError = syncError != null ? (0, import_syncError.describeSyncError)(syncError, doctype, t) : null;
282
- if (boardError && error) {
278
+ var boardError = syncError ? syncError.message : null;
279
+ if (syncError && error) {
283
280
  return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {
284
- children: error(new Error(boardError))
281
+ children: error(syncError)
285
282
  });
286
283
  }
287
284
  if (isError && error && !isLoading && cards.length === 0) {
@@ -1 +1 @@
1
- {"version":3,"names":["__create","Object","create","__defProp","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__getProtoOf","getPrototypeOf","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toESM","mod","isNodeMode","__esModule","value","__toCommonJS","FrappeKanban_exports","FrappeKanban","module","exports","import_jsx_runtime","require","import_frappe","import_components","import_forms","import_react","import_react2","import_react_i18next","import_tamagui","import_theme","import_FrappeConnectionIndicator","import_FrappeProvider","import_syncError","_instanceof","left","right","Symbol","hasInstance","param","baseURL","auth","syncOptions","doctype","fields","filters","statusField","columns","titleField","descriptionField","renderCard","onCardClick","onCardMove","readOnly","enableCardCreation","onCreateCard","loading","error","renderColumnActions","kanbanProps","config","useFrappeConfig","knobProps","useResolvedKnobs","t","useTranslation","actionError","setActionError","useState","syncError","setSyncError","finalBaseURL","finalAuth","finalSyncOptions","Error","effectiveFields","useMemo","fieldSet","Set","add","Array","connectionConfig","socketPort","siteName","socketBaseURL","socketOptions","realtime","fixtures","collection","useFrappeCollection","onSyncError","data","rawData","isLoading","isError","useLiveQuery","q","_list","cards","genericColumns","grouped","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","column","err","return","unknown","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","card","_card_statusField","status","String","push","result","map","col","id","title","items","color","length","componentColors","text","subtle","effectiveRenderCard","item","jsxs","YStack","panelPadding","gap","children","jsx","Text","label","textWeight","formCommonColors","muted","body","getItemLabel","useCallback","handleCardMove","fromColumn","toColumn","tx","update","draft","isPersisted","promise","handleCardSelect","_columnId","effectiveRenderColumnActions","canQuickAdd","Boolean","XStack","alignItems","Button","size","circular","chromeless","icon","PlusIcon","onPress","Fragment","boardError","describeSyncError","flex","FrappeConnectionIndicator","containerRadius","backgroundColor","borderColor","borderWidth","message","Kanban","onCardSelect","getItemKey","index","_item_name"],"sources":["FrappeKanban.native.js"],"sourcesContent":["\"use strict\";\nvar __create = Object.create;\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __getProtoOf = Object.getPrototypeOf;\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 __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(\n // If the importer is in node compatibility mode or this is not an ESM\n // file that has been converted to a CommonJS file using a Babel-\n // compatible transform (i.e. \"__esModule\" has not been set), then set\n // \"default\" to the CommonJS \"module.exports\" for node compatibility.\n isNodeMode || !mod || !mod.__esModule ? __defProp(target, \"default\", { value: mod, enumerable: true }) : target,\n mod\n));\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar FrappeKanban_exports = {};\n__export(FrappeKanban_exports, {\n FrappeKanban: () => FrappeKanban\n});\nmodule.exports = __toCommonJS(FrappeKanban_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_react = require(\"@phosphor-icons/react\");\nvar import_react2 = __toESM(require(\"react\"));\nvar import_react_i18next = require(\"react-i18next\");\nvar import_tamagui = require(\"tamagui\");\nvar import_theme = require(\"@multiplatform.one/theme\");\nvar import_FrappeConnectionIndicator = require(\"./FrappeConnectionIndicator\");\nvar import_FrappeProvider = require(\"./FrappeProvider\");\nvar import_syncError = require(\"./syncError\");\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}\nfunction FrappeKanban(param) {\n var { baseURL, auth, syncOptions, doctype, fields, filters, statusField, columns, titleField, descriptionField, renderCard, onCardClick, onCardMove, readOnly = false, enableCardCreation = false, onCreateCard, loading, error, renderColumnActions, ...kanbanProps } = param;\n var config = (0, import_FrappeProvider.useFrappeConfig)();\n var { knobProps } = (0, import_theme.useResolvedKnobs)();\n var { t } = (0, import_react_i18next.useTranslation)();\n var [actionError, setActionError] = (0, import_react2.useState)(null);\n var [syncError, setSyncError] = (0, import_react2.useState)(null);\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 var finalSyncOptions = syncOptions !== null && syncOptions !== void 0 ? syncOptions : config === null || config === void 0 ? void 0 : config.syncOptions;\n if (!finalBaseURL) {\n throw new Error(\"FrappeKanban requires baseURL prop or FrappeProvider with baseURL\");\n }\n var effectiveFields = (0, import_react2.useMemo)(function() {\n if (!fields) return void 0;\n var fieldSet = new Set(fields);\n fieldSet.add(statusField);\n fieldSet.add(\"name\");\n if (titleField) fieldSet.add(titleField);\n if (descriptionField) fieldSet.add(descriptionField);\n return Array.from(fieldSet);\n }, [\n fields,\n statusField,\n titleField,\n descriptionField\n ]);\n var connectionConfig = (0, import_react2.useMemo)(function() {\n return {\n baseURL: finalBaseURL,\n socketPort: config === null || config === void 0 ? void 0 : config.socketPort,\n siteName: config === null || config === void 0 ? void 0 : config.siteName,\n socketBaseURL: config === null || config === void 0 ? void 0 : config.socketBaseURL,\n auth: finalAuth,\n syncOptions: finalSyncOptions,\n socketOptions: config === null || config === void 0 ? void 0 : config.socketOptions,\n realtime: config === null || config === void 0 ? void 0 : config.realtime,\n fixtures: config === null || config === void 0 ? void 0 : config.fixtures\n };\n }, [\n finalBaseURL,\n config === null || config === void 0 ? void 0 : config.socketPort,\n config === null || config === void 0 ? void 0 : config.siteName,\n config === null || config === void 0 ? void 0 : config.socketBaseURL,\n config === null || config === void 0 ? void 0 : config.realtime,\n finalAuth,\n finalSyncOptions,\n config === null || config === void 0 ? void 0 : config.socketOptions,\n config === null || config === void 0 ? void 0 : config.fixtures\n ]);\n var collection = (0, import_frappe.useFrappeCollection)(connectionConfig, doctype, {\n fields: effectiveFields,\n filters,\n onSyncError: setSyncError\n });\n var { data: rawData, isLoading, isError } = (0, import_frappe.useLiveQuery)(function(q) {\n return collection ? q.from({\n _list: collection\n }) : null;\n }, [\n collection\n ]);\n var cards = (0, import_react2.useMemo)(function() {\n return rawData !== null && rawData !== void 0 ? rawData : [];\n }, [\n rawData\n ]);\n var genericColumns = (0, import_react2.useMemo)(function() {\n var grouped = {};\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = columns[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var column = _step.value;\n grouped[column.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 var unknown = [];\n var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = cards[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var card = _step1.value;\n var _card_statusField;\n var status = String((_card_statusField = card[statusField]) !== null && _card_statusField !== void 0 ? _card_statusField : \"\");\n if (status && grouped[status]) {\n grouped[status].push(card);\n } else {\n unknown.push(card);\n }\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n var result = columns.map(function(col) {\n return {\n id: col.value,\n title: col.title,\n items: grouped[col.value] || [],\n color: col.color\n };\n });\n if (unknown.length > 0) {\n result.push({\n id: \"__unassigned__\",\n title: t(\"Unassigned\"),\n items: unknown,\n color: import_components.componentColors.text.subtle\n });\n }\n return result;\n }, [\n cards,\n columns,\n statusField,\n t\n ]);\n var effectiveRenderCard = renderCard !== null && renderCard !== void 0 ? renderCard : function(item) {\n var title = titleField ? item[titleField] : item.name;\n var desc = descriptionField ? item[descriptionField] : void 0;\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ...knobProps.panelPadding,\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n ...knobProps.label,\n ...knobProps.textWeight,\n children: title || item.name\n }),\n desc != null && desc !== \"\" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_forms.formCommonColors.muted,\n ...knobProps.body,\n children: String(desc)\n })\n ]\n });\n };\n var getItemLabel = (0, import_react2.useCallback)(function(item) {\n var title = titleField ? item[titleField] : void 0;\n return String(title || item.name || t(\"Card\"));\n }, [\n titleField,\n t\n ]);\n var handleCardMove = (0, import_react2.useCallback)(async function(item, fromColumn, toColumn) {\n if (!item.name || toColumn === \"__unassigned__\") return;\n setActionError(null);\n try {\n if (collection) {\n var tx = collection.update(item.name, function(draft) {\n draft[statusField] = toColumn;\n });\n await tx.isPersisted.promise;\n }\n await (onCardMove === null || onCardMove === void 0 ? void 0 : onCardMove(item.name, fromColumn, toColumn));\n } catch (err) {\n setActionError(_instanceof(err, Error) ? err : new Error(String(err)));\n }\n }, [\n collection,\n onCardMove,\n statusField\n ]);\n var handleCardSelect = (0, import_react2.useCallback)(function(item, _columnId) {\n onCardClick === null || onCardClick === void 0 ? void 0 : onCardClick(item);\n }, [\n onCardClick\n ]);\n var effectiveRenderColumnActions = (0, import_react2.useMemo)(function() {\n var canQuickAdd = enableCardCreation && Boolean(onCreateCard);\n if (!canQuickAdd && !renderColumnActions) return void 0;\n return function(column) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {\n alignItems: \"center\",\n gap: \"$1\",\n children: [\n canQuickAdd && column.id !== \"__unassigned__\" && /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_forms.Button, {\n size: \"$2\",\n circular: true,\n chromeless: true,\n icon: import_react.PlusIcon,\n \"aria-label\": t(\"Add card to {{column}}\", {\n column: column.title\n }),\n onPress: function onPress() {\n setActionError(null);\n try {\n onCreateCard === null || onCreateCard === void 0 ? void 0 : onCreateCard(column.id);\n } catch (err) {\n setActionError(_instanceof(err, Error) ? err : new Error(String(err)));\n }\n }\n }),\n renderColumnActions === null || renderColumnActions === void 0 ? void 0 : renderColumnActions(column)\n ]\n });\n };\n }, [\n enableCardCreation,\n onCreateCard,\n renderColumnActions,\n t\n ]);\n if (isLoading && cards.length === 0 && loading) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children: loading\n });\n }\n var boardError = syncError != null ? (0, import_syncError.describeSyncError)(syncError, doctype, t) : null;\n if (boardError && error) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children: error(new Error(boardError))\n });\n }\n if (isError && error && !isLoading && cards.length === 0) {\n return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_jsx_runtime.Fragment, {\n children: error(new Error(t(\"Failed to load {{doctype}}\", {\n doctype\n })))\n });\n }\n return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n flex: 1,\n ...knobProps.gap,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_FrappeConnectionIndicator.FrappeConnectionIndicator, {\n config: connectionConfig\n }),\n actionError && /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {\n ...knobProps.panelPadding,\n ...knobProps.containerRadius,\n backgroundColor: \"$red2\",\n borderColor: \"$red7\",\n borderWidth: 1,\n children: [\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_forms.formCommonColors.error,\n children: t(\"Action failed\")\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_tamagui.Text, {\n color: import_forms.formCommonColors.muted,\n ...knobProps.body,\n children: actionError.message\n })\n ]\n }),\n /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_components.Kanban, {\n ...knobProps.gap,\n columns: genericColumns,\n renderCard: effectiveRenderCard,\n // The generic Kanban enables drag when a move handler exists —\n // readOnly withholds it so the board stays a visualization.\n onCardMove: readOnly ? void 0 : handleCardMove,\n onCardSelect: handleCardSelect,\n renderColumnActions: effectiveRenderColumnActions,\n isLoading,\n error: boardError,\n getItemKey: function getItemKey(item, index) {\n var _item_name;\n return (_item_name = item.name) !== null && _item_name !== void 0 ? _item_name : index;\n },\n getItemLabel,\n ...kanbanProps\n })\n ]\n });\n}\n//# sourceMappingURL=FrappeKanban.js.map\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["to","__toESM","mod","isNodeMode","target","__create","__getProtoOf","__copyProps","__esModule","__defProp","value","enumerable","__toCommonJS","FrappeKanban_exports","__export","FrappeKanban","module","exports","import_jsx_runtime","require","import_components","import_forms","import_react","import_react2","import_react_i18next","import_tamagui","import_theme","import_FrappeConnectionIndicator","import_FrappeProvider","import_syncError","import_useFrappeRows","_instanceof","left","right","Symbol","hasInstance","param","baseURL","auth","syncOptions","doctype","fields","filters","statusField","columns","titleField","descriptionField","renderCard","onCardClick","onCardMove","readOnly","enableCardCreation","onCreateCard","loading","error","renderColumnActions","kanbanProps","config","useFrappeConfig","knobProps","useResolvedKnobs","t","useTranslation","actionError","setActionError","useState","finalBaseURL","finalAuth","finalSyncOptions","fixtures","Error","effectiveFields","useMemo","fieldSet","Set","add","Array","from","connectionConfig","socketPort","siteName","socketBaseURL","socketOptions","realtime","mapSyncError","useCallback","err","describeSyncError","rows","cards","isQueryLoading","isLoading","isError","syncError","collection","useFrappeRows","limit","mapError","genericColumns","grouped","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","column","return","unknown","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","card","_card_statusField","status","String","push","result","map","col","id","title","items","color","length","componentColors","text","subtle","effectiveRenderCard","item","name","desc","jsxs","YStack","panelPadding","gap","children","jsx","Text","label","textWeight","formCommonColors","muted","body","getItemLabel","handleCardMove","fromColumn","toColumn","tx","update","draft","isPersisted","promise","handleCardSelect","_columnId","effectiveRenderColumnActions","canQuickAdd","Boolean","XStack","alignItems","Button","size","circular","chromeless","icon","PlusIcon","onPress"],"sources":["../../src/FrappeKanban.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -121,7 +121,7 @@ function FrappeLikedByBody({
121
121
  setOverride(null);
122
122
  }, [serverKey]);
123
123
  const likedBy = override ?? serverLikedBy;
124
- const http = (0, import_react2.useMemo)(() => config && !config.fixtures ? new import_frappe.HttpClient(config.baseURL, config.auth) : void 0, [config]);
124
+ const http = (0, import_react2.useMemo)(() => config?.baseURL && !config.fixtures ? new import_frappe.HttpClient(config.baseURL, config.auth) : void 0, [config]);
125
125
  const [sessionUser, setSessionUser] = (0, import_react2.useState)(void 0);
126
126
  (0, import_react2.useEffect)(() => {
127
127
  if (currentUser || !http) return;
@@ -138,7 +138,7 @@ function FrappeLikedByBody(param) {
138
138
  }, [serverKey]);
139
139
  var likedBy = override !== null && override !== void 0 ? override : serverLikedBy;
140
140
  var http = (0, import_react2.useMemo)(function () {
141
- return config && !config.fixtures ? new import_frappe.HttpClient(config.baseURL, config.auth) : void 0;
141
+ return (config === null || config === void 0 ? void 0 : config.baseURL) && !config.fixtures ? new import_frappe.HttpClient(config.baseURL, config.auth) : void 0;
142
142
  }, [config]);
143
143
  var [sessionUser, setSessionUser] = (0, import_react2.useState)(void 0);
144
144
  (0, import_react2.useEffect)(function () {