@multiplatform.one/frappe-ui 7.11.0 → 7.16.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 (366) hide show
  1. package/README.md +2 -2
  2. package/dist/cjs/FrappeCalendar.cjs +1 -0
  3. package/dist/cjs/FrappeCalendar.native.js +1 -0
  4. package/dist/cjs/FrappeCalendar.native.js.map +1 -1
  5. package/dist/cjs/FrappeDashboard.cjs +8 -10
  6. package/dist/cjs/FrappeDashboard.native.js +8 -14
  7. package/dist/cjs/FrappeDashboard.native.js.map +1 -1
  8. package/dist/cjs/FrappeForm.cjs +465 -175
  9. package/dist/cjs/FrappeForm.native.js +611 -207
  10. package/dist/cjs/FrappeForm.native.js.map +1 -1
  11. package/dist/cjs/FrappeFormConnections.cjs +125 -0
  12. package/dist/cjs/FrappeFormConnections.native.js +149 -0
  13. package/dist/cjs/FrappeFormConnections.native.js.map +1 -0
  14. package/dist/cjs/FrappeImageView.cjs +7 -9
  15. package/dist/cjs/FrappeImageView.native.js +7 -13
  16. package/dist/cjs/FrappeImageView.native.js.map +1 -1
  17. package/dist/cjs/FrappeList.cjs +29 -4
  18. package/dist/cjs/FrappeList.native.js +37 -5
  19. package/dist/cjs/FrappeList.native.js.map +1 -1
  20. package/dist/cjs/FrappeListView.cjs +102 -29
  21. package/dist/cjs/FrappeListView.native.js +109 -29
  22. package/dist/cjs/FrappeListView.native.js.map +1 -1
  23. package/dist/cjs/FrappeProvider.cjs +7 -2
  24. package/dist/cjs/FrappeProvider.native.js +7 -2
  25. package/dist/cjs/FrappeProvider.native.js.map +1 -1
  26. package/dist/cjs/FrappeReportBuilder.cjs +10 -11
  27. package/dist/cjs/FrappeReportBuilder.native.js +10 -16
  28. package/dist/cjs/FrappeReportBuilder.native.js.map +1 -1
  29. package/dist/cjs/FrappeRowsReader.cjs +49 -0
  30. package/dist/cjs/FrappeRowsReader.native.js +53 -0
  31. package/dist/cjs/FrappeRowsReader.native.js.map +1 -0
  32. package/dist/cjs/FrappeTable.cjs +18 -6
  33. package/dist/cjs/FrappeTable.native.js +24 -6
  34. package/dist/cjs/FrappeTable.native.js.map +1 -1
  35. package/dist/cjs/fieldRegistry.cjs +36 -11
  36. package/dist/cjs/fieldRegistry.native.js +59 -11
  37. package/dist/cjs/fieldRegistry.native.js.map +1 -1
  38. package/dist/cjs/fields/Date/index.native.js +5 -2
  39. package/dist/cjs/fields/Date/index.native.js.map +1 -1
  40. package/dist/cjs/fields/Date/sheetKeyboard.cjs +2 -2
  41. package/dist/cjs/fields/Date/sheetKeyboard.native.js +2 -2
  42. package/dist/cjs/fields/Date/sheetKeyboard.native.js.map +1 -1
  43. package/dist/cjs/fields/DateRange/index.cjs +2 -1
  44. package/dist/cjs/fields/DateRange/index.native.js +4 -1
  45. package/dist/cjs/fields/DateRange/index.native.js.map +1 -1
  46. package/dist/cjs/fields/Password/index.cjs +1 -1
  47. package/dist/cjs/fields/Password/index.native.js +1 -1
  48. package/dist/cjs/formEngine/index.cjs +4 -2
  49. package/dist/cjs/formEngine/index.native.js +3 -1
  50. package/dist/cjs/formEngine/index.native.js.map +1 -1
  51. package/dist/cjs/formEngine/useSessionRoles.cjs +77 -0
  52. package/dist/cjs/formEngine/useSessionRoles.native.js +84 -0
  53. package/dist/cjs/formEngine/useSessionRoles.native.js.map +1 -0
  54. package/dist/cjs/frappeConnections.cjs +41 -0
  55. package/dist/cjs/frappeConnections.native.js +50 -0
  56. package/dist/cjs/frappeConnections.native.js.map +1 -0
  57. package/dist/cjs/frappeNavigation.cjs +107 -0
  58. package/dist/cjs/frappeNavigation.native.js +112 -0
  59. package/dist/cjs/frappeNavigation.native.js.map +1 -0
  60. package/dist/cjs/index.cjs +18 -1
  61. package/dist/cjs/index.native.js +18 -1
  62. package/dist/cjs/index.native.js.map +1 -1
  63. package/dist/cjs/schemaForm/index.cjs +4 -1
  64. package/dist/cjs/schemaForm/index.native.js +4 -1
  65. package/dist/cjs/schemaForm/index.native.js.map +1 -1
  66. package/dist/cjs/useConnectionFilters.cjs +146 -0
  67. package/dist/cjs/useConnectionFilters.native.js +213 -0
  68. package/dist/cjs/useConnectionFilters.native.js.map +1 -0
  69. package/dist/cjs/useFrappePagination.cjs +37 -18
  70. package/dist/cjs/useFrappePagination.native.js +59 -23
  71. package/dist/cjs/useFrappePagination.native.js.map +1 -1
  72. package/dist/cjs/useFrappeRows.native.js.map +1 -1
  73. package/dist/esm/FrappeCalendar.mjs +1 -0
  74. package/dist/esm/FrappeCalendar.mjs.map +1 -1
  75. package/dist/esm/FrappeCalendar.native.js +1 -0
  76. package/dist/esm/FrappeCalendar.native.js.map +1 -1
  77. package/dist/esm/FrappeDashboard.mjs +9 -11
  78. package/dist/esm/FrappeDashboard.mjs.map +1 -1
  79. package/dist/esm/FrappeDashboard.native.js +9 -15
  80. package/dist/esm/FrappeDashboard.native.js.map +1 -1
  81. package/dist/esm/FrappeForm.mjs +471 -181
  82. package/dist/esm/FrappeForm.mjs.map +1 -1
  83. package/dist/esm/FrappeForm.native.js +599 -195
  84. package/dist/esm/FrappeForm.native.js.map +1 -1
  85. package/dist/esm/FrappeFormConnections.mjs +99 -0
  86. package/dist/esm/FrappeFormConnections.mjs.map +1 -0
  87. package/dist/esm/FrappeFormConnections.native.js +120 -0
  88. package/dist/esm/FrappeFormConnections.native.js.map +1 -0
  89. package/dist/esm/FrappeImageView.mjs +8 -10
  90. package/dist/esm/FrappeImageView.mjs.map +1 -1
  91. package/dist/esm/FrappeImageView.native.js +8 -14
  92. package/dist/esm/FrappeImageView.native.js.map +1 -1
  93. package/dist/esm/FrappeList.mjs +31 -6
  94. package/dist/esm/FrappeList.mjs.map +1 -1
  95. package/dist/esm/FrappeList.native.js +39 -7
  96. package/dist/esm/FrappeList.native.js.map +1 -1
  97. package/dist/esm/FrappeListView.mjs +103 -30
  98. package/dist/esm/FrappeListView.mjs.map +1 -1
  99. package/dist/esm/FrappeListView.native.js +110 -30
  100. package/dist/esm/FrappeListView.native.js.map +1 -1
  101. package/dist/esm/FrappeProvider.mjs +7 -2
  102. package/dist/esm/FrappeProvider.mjs.map +1 -1
  103. package/dist/esm/FrappeProvider.native.js +7 -2
  104. package/dist/esm/FrappeProvider.native.js.map +1 -1
  105. package/dist/esm/FrappeReportBuilder.mjs +11 -12
  106. package/dist/esm/FrappeReportBuilder.mjs.map +1 -1
  107. package/dist/esm/FrappeReportBuilder.native.js +11 -17
  108. package/dist/esm/FrappeReportBuilder.native.js.map +1 -1
  109. package/dist/esm/FrappeRowsReader.mjs +24 -0
  110. package/dist/esm/FrappeRowsReader.mjs.map +1 -0
  111. package/dist/esm/FrappeRowsReader.native.js +25 -0
  112. package/dist/esm/FrappeRowsReader.native.js.map +1 -0
  113. package/dist/esm/FrappeTable.mjs +18 -6
  114. package/dist/esm/FrappeTable.mjs.map +1 -1
  115. package/dist/esm/FrappeTable.native.js +24 -6
  116. package/dist/esm/FrappeTable.native.js.map +1 -1
  117. package/dist/esm/fieldRegistry.mjs +35 -12
  118. package/dist/esm/fieldRegistry.mjs.map +1 -1
  119. package/dist/esm/fieldRegistry.native.js +58 -12
  120. package/dist/esm/fieldRegistry.native.js.map +1 -1
  121. package/dist/esm/fields/Date/index.native.js +6 -3
  122. package/dist/esm/fields/Date/index.native.js.map +1 -1
  123. package/dist/esm/fields/Date/sheetKeyboard.mjs +2 -2
  124. package/dist/esm/fields/Date/sheetKeyboard.mjs.map +1 -1
  125. package/dist/esm/fields/Date/sheetKeyboard.native.js +2 -2
  126. package/dist/esm/fields/Date/sheetKeyboard.native.js.map +1 -1
  127. package/dist/esm/fields/DateRange/index.mjs +2 -1
  128. package/dist/esm/fields/DateRange/index.mjs.map +1 -1
  129. package/dist/esm/fields/DateRange/index.native.js +4 -1
  130. package/dist/esm/fields/DateRange/index.native.js.map +1 -1
  131. package/dist/esm/fields/Password/index.mjs +1 -1
  132. package/dist/esm/fields/Password/index.mjs.map +1 -1
  133. package/dist/esm/fields/Password/index.native.js +1 -1
  134. package/dist/esm/fields/Password/index.native.js.map +1 -1
  135. package/dist/esm/formEngine/index.mjs +2 -1
  136. package/dist/esm/formEngine/index.mjs.map +1 -1
  137. package/dist/esm/formEngine/index.native.js +2 -1
  138. package/dist/esm/formEngine/index.native.js.map +1 -1
  139. package/dist/esm/formEngine/useSessionRoles.mjs +52 -0
  140. package/dist/esm/formEngine/useSessionRoles.mjs.map +1 -0
  141. package/dist/esm/formEngine/useSessionRoles.native.js +56 -0
  142. package/dist/esm/formEngine/useSessionRoles.native.js.map +1 -0
  143. package/dist/esm/frappeConnections.mjs +15 -0
  144. package/dist/esm/frappeConnections.mjs.map +1 -0
  145. package/dist/esm/frappeConnections.native.js +21 -0
  146. package/dist/esm/frappeConnections.native.js.map +1 -0
  147. package/dist/esm/frappeNavigation.mjs +78 -0
  148. package/dist/esm/frappeNavigation.mjs.map +1 -0
  149. package/dist/esm/frappeNavigation.native.js +80 -0
  150. package/dist/esm/frappeNavigation.native.js.map +1 -0
  151. package/dist/esm/index.mjs +7 -3
  152. package/dist/esm/index.mjs.map +1 -1
  153. package/dist/esm/index.native.js +7 -3
  154. package/dist/esm/index.native.js.map +1 -1
  155. package/dist/esm/schemaForm/index.mjs +4 -1
  156. package/dist/esm/schemaForm/index.mjs.map +1 -1
  157. package/dist/esm/schemaForm/index.native.js +4 -1
  158. package/dist/esm/schemaForm/index.native.js.map +1 -1
  159. package/dist/esm/useConnectionFilters.mjs +121 -0
  160. package/dist/esm/useConnectionFilters.mjs.map +1 -0
  161. package/dist/esm/useConnectionFilters.native.js +185 -0
  162. package/dist/esm/useConnectionFilters.native.js.map +1 -0
  163. package/dist/esm/useFrappePagination.mjs +38 -19
  164. package/dist/esm/useFrappePagination.mjs.map +1 -1
  165. package/dist/esm/useFrappePagination.native.js +60 -24
  166. package/dist/esm/useFrappePagination.native.js.map +1 -1
  167. package/dist/esm/useFrappeRows.mjs.map +1 -1
  168. package/dist/esm/useFrappeRows.native.js.map +1 -1
  169. package/dist/jsx/FrappeCalendar.mjs +1 -0
  170. package/dist/jsx/FrappeCalendar.mjs.map +1 -1
  171. package/dist/jsx/FrappeCalendar.native.js +1 -0
  172. package/dist/jsx/FrappeCalendar.native.js.map +1 -1
  173. package/dist/jsx/FrappeDashboard.mjs +9 -11
  174. package/dist/jsx/FrappeDashboard.mjs.map +1 -1
  175. package/dist/jsx/FrappeDashboard.native.js +8 -14
  176. package/dist/jsx/FrappeDashboard.native.js.map +1 -1
  177. package/dist/jsx/FrappeForm.mjs +471 -181
  178. package/dist/jsx/FrappeForm.mjs.map +1 -1
  179. package/dist/jsx/FrappeForm.native.js +611 -207
  180. package/dist/jsx/FrappeForm.native.js.map +1 -1
  181. package/dist/jsx/FrappeFormConnections.mjs +99 -0
  182. package/dist/jsx/FrappeFormConnections.mjs.map +1 -0
  183. package/dist/jsx/FrappeFormConnections.native.js +149 -0
  184. package/dist/jsx/FrappeFormConnections.native.js.map +1 -0
  185. package/dist/jsx/FrappeImageView.mjs +8 -10
  186. package/dist/jsx/FrappeImageView.mjs.map +1 -1
  187. package/dist/jsx/FrappeImageView.native.js +7 -13
  188. package/dist/jsx/FrappeImageView.native.js.map +1 -1
  189. package/dist/jsx/FrappeList.mjs +31 -6
  190. package/dist/jsx/FrappeList.mjs.map +1 -1
  191. package/dist/jsx/FrappeList.native.js +37 -5
  192. package/dist/jsx/FrappeList.native.js.map +1 -1
  193. package/dist/jsx/FrappeListView.mjs +103 -30
  194. package/dist/jsx/FrappeListView.mjs.map +1 -1
  195. package/dist/jsx/FrappeListView.native.js +109 -29
  196. package/dist/jsx/FrappeListView.native.js.map +1 -1
  197. package/dist/jsx/FrappeProvider.mjs +7 -2
  198. package/dist/jsx/FrappeProvider.mjs.map +1 -1
  199. package/dist/jsx/FrappeProvider.native.js +7 -2
  200. package/dist/jsx/FrappeProvider.native.js.map +1 -1
  201. package/dist/jsx/FrappeReportBuilder.mjs +11 -12
  202. package/dist/jsx/FrappeReportBuilder.mjs.map +1 -1
  203. package/dist/jsx/FrappeReportBuilder.native.js +10 -16
  204. package/dist/jsx/FrappeReportBuilder.native.js.map +1 -1
  205. package/dist/jsx/FrappeRowsReader.mjs +24 -0
  206. package/dist/jsx/FrappeRowsReader.mjs.map +1 -0
  207. package/dist/jsx/FrappeRowsReader.native.js +53 -0
  208. package/dist/jsx/FrappeRowsReader.native.js.map +1 -0
  209. package/dist/jsx/FrappeTable.mjs +18 -6
  210. package/dist/jsx/FrappeTable.mjs.map +1 -1
  211. package/dist/jsx/FrappeTable.native.js +24 -6
  212. package/dist/jsx/FrappeTable.native.js.map +1 -1
  213. package/dist/jsx/fieldRegistry.mjs +35 -12
  214. package/dist/jsx/fieldRegistry.mjs.map +1 -1
  215. package/dist/jsx/fieldRegistry.native.js +59 -11
  216. package/dist/jsx/fieldRegistry.native.js.map +1 -1
  217. package/dist/jsx/fields/Date/index.native.js +5 -2
  218. package/dist/jsx/fields/Date/index.native.js.map +1 -1
  219. package/dist/jsx/fields/Date/sheetKeyboard.mjs +2 -2
  220. package/dist/jsx/fields/Date/sheetKeyboard.mjs.map +1 -1
  221. package/dist/jsx/fields/Date/sheetKeyboard.native.js +2 -2
  222. package/dist/jsx/fields/Date/sheetKeyboard.native.js.map +1 -1
  223. package/dist/jsx/fields/DateRange/index.mjs +2 -1
  224. package/dist/jsx/fields/DateRange/index.mjs.map +1 -1
  225. package/dist/jsx/fields/DateRange/index.native.js +4 -1
  226. package/dist/jsx/fields/DateRange/index.native.js.map +1 -1
  227. package/dist/jsx/fields/Password/index.mjs +1 -1
  228. package/dist/jsx/fields/Password/index.mjs.map +1 -1
  229. package/dist/jsx/fields/Password/index.native.js +1 -1
  230. package/dist/jsx/fields/Password/index.native.js.map +1 -1
  231. package/dist/jsx/formEngine/index.mjs +2 -1
  232. package/dist/jsx/formEngine/index.mjs.map +1 -1
  233. package/dist/jsx/formEngine/index.native.js +3 -1
  234. package/dist/jsx/formEngine/index.native.js.map +1 -1
  235. package/dist/jsx/formEngine/useSessionRoles.mjs +52 -0
  236. package/dist/jsx/formEngine/useSessionRoles.mjs.map +1 -0
  237. package/dist/jsx/formEngine/useSessionRoles.native.js +84 -0
  238. package/dist/jsx/formEngine/useSessionRoles.native.js.map +1 -0
  239. package/dist/jsx/frappeConnections.mjs +15 -0
  240. package/dist/jsx/frappeConnections.mjs.map +1 -0
  241. package/dist/jsx/frappeConnections.native.js +50 -0
  242. package/dist/jsx/frappeConnections.native.js.map +1 -0
  243. package/dist/jsx/frappeNavigation.mjs +78 -0
  244. package/dist/jsx/frappeNavigation.mjs.map +1 -0
  245. package/dist/jsx/frappeNavigation.native.js +112 -0
  246. package/dist/jsx/frappeNavigation.native.js.map +1 -0
  247. package/dist/jsx/index.js +7 -3
  248. package/dist/jsx/index.js.map +1 -1
  249. package/dist/jsx/index.mjs +7 -3
  250. package/dist/jsx/index.mjs.map +1 -1
  251. package/dist/jsx/index.native.js +18 -1
  252. package/dist/jsx/index.native.js.map +1 -1
  253. package/dist/jsx/schemaForm/index.mjs +4 -1
  254. package/dist/jsx/schemaForm/index.mjs.map +1 -1
  255. package/dist/jsx/schemaForm/index.native.js +4 -1
  256. package/dist/jsx/schemaForm/index.native.js.map +1 -1
  257. package/dist/jsx/useConnectionFilters.mjs +121 -0
  258. package/dist/jsx/useConnectionFilters.mjs.map +1 -0
  259. package/dist/jsx/useConnectionFilters.native.js +213 -0
  260. package/dist/jsx/useConnectionFilters.native.js.map +1 -0
  261. package/dist/jsx/useFrappePagination.mjs +38 -19
  262. package/dist/jsx/useFrappePagination.mjs.map +1 -1
  263. package/dist/jsx/useFrappePagination.native.js +59 -23
  264. package/dist/jsx/useFrappePagination.native.js.map +1 -1
  265. package/dist/jsx/useFrappeRows.mjs.map +1 -1
  266. package/dist/jsx/useFrappeRows.native.js.map +1 -1
  267. package/package.json +24 -20
  268. package/src/FileBrowser/AttachLibrary.stories.tsx +23 -0
  269. package/src/FrappeCalendar.radius.spec.tsx +55 -0
  270. package/src/FrappeCalendar.tsx +1 -0
  271. package/src/FrappeDashboard.tsx +11 -16
  272. package/src/FrappeForm.connections.spec.tsx +280 -0
  273. package/src/FrappeForm.connections.stories.tsx +93 -0
  274. package/src/FrappeForm.deskSemantics.spec.tsx +284 -0
  275. package/src/FrappeForm.tsx +560 -145
  276. package/src/FrappeFormConnections.tsx +148 -0
  277. package/src/FrappeGuestMeta.spec.tsx +143 -0
  278. package/src/FrappeImageView.tsx +8 -12
  279. package/src/FrappeList.tsx +71 -15
  280. package/src/FrappeListView.cards.spec.tsx +175 -0
  281. package/src/FrappeListView.cards.stories.tsx +131 -0
  282. package/src/FrappeListView.connections.spec.tsx +192 -0
  283. package/src/FrappeListView.connections.stories.tsx +99 -0
  284. package/src/FrappeListView.seed.spec.tsx +228 -0
  285. package/src/FrappeListView.tsx +177 -31
  286. package/src/FrappeProvider.tsx +13 -1
  287. package/src/FrappeReportBuilder.tsx +11 -19
  288. package/src/FrappeRowsReader.tsx +38 -0
  289. package/src/FrappeTable.optionalProps.spec.tsx +249 -0
  290. package/src/FrappeTable.spec.tsx +32 -42
  291. package/src/FrappeTable.stories.spec.tsx +55 -0
  292. package/src/FrappeTable.stories.tsx +28 -37
  293. package/src/FrappeTable.tsx +108 -45
  294. package/src/childTableDependsOn.spec.tsx +85 -0
  295. package/src/desk/DeskFormSidebar.spec.tsx +20 -0
  296. package/src/desk/DeskFormSidebar.stories.tsx +42 -0
  297. package/src/fieldRegistry.spec.tsx +27 -64
  298. package/src/fieldRegistry.ts +71 -14
  299. package/src/fields/Date/index.native.tsx +4 -2
  300. package/src/fields/Date/sheetKeyboard.spec.ts +14 -5
  301. package/src/fields/Date/sheetKeyboard.ts +12 -4
  302. package/src/fields/DateRange/DateRange.spec.tsx +67 -0
  303. package/src/fields/DateRange/index.tsx +5 -1
  304. package/src/fields/LinkTree.spec.tsx +8 -0
  305. package/src/fields/LinkTree.stories.tsx +28 -5
  306. package/src/fields/Password/index.tsx +1 -1
  307. package/src/fields/Select/Select.hydration.spec.tsx +177 -0
  308. package/src/formEngine/doctypeMeta.ts +15 -114
  309. package/src/formEngine/index.ts +2 -0
  310. package/src/formEngine/seam.spec.ts +23 -4
  311. package/src/formEngine/useSessionRoles.ts +73 -0
  312. package/src/frappeConnections.ts +50 -0
  313. package/src/frappeNavigation.tsx +112 -0
  314. package/src/frappeRoutes.spec.tsx +335 -0
  315. package/src/index.ts +28 -1
  316. package/src/schemaForm/index.tsx +1 -0
  317. package/src/useConnectionFilters.tsx +157 -0
  318. package/src/useFrappePagination.ts +70 -26
  319. package/src/useFrappeRows.sharedPath.spec.tsx +206 -0
  320. package/src/useFrappeRows.ts +5 -4
  321. package/types/FrappeCalendar.d.ts.map +1 -1
  322. package/types/FrappeDashboard.d.ts +3 -4
  323. package/types/FrappeDashboard.d.ts.map +1 -1
  324. package/types/FrappeForm.d.ts +57 -5
  325. package/types/FrappeForm.d.ts.map +1 -1
  326. package/types/FrappeFormConnections.d.ts +18 -0
  327. package/types/FrappeFormConnections.d.ts.map +1 -0
  328. package/types/FrappeImageView.d.ts +2 -3
  329. package/types/FrappeImageView.d.ts.map +1 -1
  330. package/types/FrappeList.d.ts +20 -2
  331. package/types/FrappeList.d.ts.map +1 -1
  332. package/types/FrappeListView.d.ts +53 -3
  333. package/types/FrappeListView.d.ts.map +1 -1
  334. package/types/FrappeProvider.d.ts +8 -1
  335. package/types/FrappeProvider.d.ts.map +1 -1
  336. package/types/FrappeReportBuilder.d.ts.map +1 -1
  337. package/types/FrappeRowsReader.d.ts +26 -0
  338. package/types/FrappeRowsReader.d.ts.map +1 -0
  339. package/types/FrappeTable.d.ts +39 -8
  340. package/types/FrappeTable.d.ts.map +1 -1
  341. package/types/fieldRegistry.d.ts +17 -3
  342. package/types/fieldRegistry.d.ts.map +1 -1
  343. package/types/fields/Date/index.native.d.ts.map +1 -1
  344. package/types/fields/Date/sheetKeyboard.d.ts +4 -3
  345. package/types/fields/Date/sheetKeyboard.d.ts.map +1 -1
  346. package/types/fields/DateRange/index.d.ts.map +1 -1
  347. package/types/formEngine/doctypeMeta.d.ts +10 -114
  348. package/types/formEngine/doctypeMeta.d.ts.map +1 -1
  349. package/types/formEngine/index.d.ts +1 -0
  350. package/types/formEngine/index.d.ts.map +1 -1
  351. package/types/formEngine/useSessionRoles.d.ts +19 -0
  352. package/types/formEngine/useSessionRoles.d.ts.map +1 -0
  353. package/types/frappeConnections.d.ts +33 -0
  354. package/types/frappeConnections.d.ts.map +1 -0
  355. package/types/frappeNavigation.d.ts +49 -0
  356. package/types/frappeNavigation.d.ts.map +1 -0
  357. package/types/index.d.ts +7 -3
  358. package/types/index.d.ts.map +1 -1
  359. package/types/schemaForm/index.d.ts.map +1 -1
  360. package/types/useConnectionFilters.d.ts +34 -0
  361. package/types/useConnectionFilters.d.ts.map +1 -0
  362. package/types/useFrappePagination.d.ts +18 -5
  363. package/types/useFrappePagination.d.ts.map +1 -1
  364. package/types/useFrappeRows.d.ts +5 -4
  365. package/types/useFrappeRows.d.ts.map +1 -1
  366. package/src/FileBrowser/AttachLibrary.spec.tsx +0 -74
@@ -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","schemaForm_exports","SchemaForm","applyFieldOrder","import_applyFieldOrder2","applyOrderToSchema","module","exports","import_jsx_runtime","require","import_forms","import_theme","import_components","import_react","import_react_i18next","import_tamagui","import_dependsOn","import_Heading","import_fieldOverrides","import_applyFieldOrder","_type_of","obj","Symbol","constructor","layoutFieldTypes","Set","isOverrideFunction","override","isOverrideComponent","isOverrideProps","param","schema","doc","setValue","errors","disabled","overrides","hideFields","readOnlyFields","requiredMarking","sectionHeadingLevel","renderFieldWrapper","order","t","useTranslation","knobProps","useResolvedKnobs","resolveFieldComponent","useFieldResolver","orderedSchema","useMemo","dependsOnMap","map","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","fields","iterator","_step","next","done","field","depends_on","evaluator","compileDependsOn","set","err","return","hiddenSet","readOnlySet","requiredMarkMode","flags","filter","f","Component","has","type","hidden","required","computeRequiredMarkMode","renderField","_doc_optionsStr","fieldReadOnly","readOnly","optionsStr","options","doctype","onDoctypeChange","_doc_optionsStr1","String","onDoctypeChange2","fieldValue","baseProps","label","onChange","v","error","fieldMeta","multiple","commit","control","jsx","default","Fragment","children","OverrideComponent","component","mergedProps","props","Text","color","fontSize","fieldtype","Component1","jsxs"],"sources":["../../../src/schemaForm/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
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","schemaForm_exports","SchemaForm","applyFieldOrder","import_applyFieldOrder2","applyOrderToSchema","module","exports","import_jsx_runtime","require","import_forms","import_theme","import_components","import_react","import_react_i18next","import_tamagui","import_dependsOn","import_Heading","import_fieldOverrides","import_applyFieldOrder","_type_of","obj","Symbol","constructor","layoutFieldTypes","Set","isOverrideFunction","override","isOverrideComponent","isOverrideProps","param","schema","doc","setValue","errors","disabled","overrides","hideFields","readOnlyFields","requiredMarking","sectionHeadingLevel","renderFieldWrapper","order","t","useTranslation","knobProps","useResolvedKnobs","resolveFieldComponent","useFieldResolver","orderedSchema","useMemo","dependsOnMap","map","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","fields","iterator","_step","next","done","field","depends_on","evaluator","compileDependsOn","set","err","return","hiddenSet","readOnlySet","requiredMarkMode","flags","filter","f","has","type","hidden","required","computeRequiredMarkMode","renderField","_doc_optionsStr","fieldReadOnly","readOnly","optionsStr","options","doctype","onDoctypeChange","_doc_optionsStr1","String","onDoctypeChange2","fieldValue","baseProps","label","onChange","v","error","fieldMeta","multiple","commit","control","parentDoc","jsx","default","Fragment","children","OverrideComponent","component","mergedProps","props","Component","Text","color","fontSize","fieldtype","Component1","jsxs"],"sources":["../../../src/schemaForm/index.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,121 @@
1
+ import { useCallback, useMemo, useRef, useState } from "react";
2
+ import { FrappeRowsReader } from "./FrappeRowsReader.mjs";
3
+ import { jsx } from "react/jsx-runtime";
4
+ function useConnectionFilters(connection, doctype, filters, connections) {
5
+ const filtersKey = JSON.stringify(filters ?? null);
6
+ const connectionsKey = JSON.stringify(connections ?? null);
7
+ const {
8
+ own,
9
+ linked,
10
+ undeclared
11
+ } = useMemo(() => {
12
+ const parsed = JSON.parse(filtersKey);
13
+ const declaredList = JSON.parse(connectionsKey);
14
+ const declared = declaredList ?? [];
15
+ if (!parsed || !Array.isArray(parsed)) {
16
+ return {
17
+ own: parsed ?? void 0,
18
+ linked: [],
19
+ undeclared: false
20
+ };
21
+ }
22
+ let waitsOnDeclaration = false;
23
+ const ownFilters = [];
24
+ const byDoctype = /* @__PURE__ */new Map();
25
+ for (const filter of parsed) {
26
+ if (filter.length !== 4) {
27
+ ownFilters.push(filter);
28
+ continue;
29
+ }
30
+ const [target, field, operator, value] = filter;
31
+ if (target === doctype) {
32
+ ownFilters.push([field, operator, value]);
33
+ continue;
34
+ }
35
+ const declaration = declared.find(candidate => candidate.doctype === target);
36
+ if (!declaration) {
37
+ if (!declaredList) waitsOnDeclaration = true;
38
+ ownFilters.push(filter);
39
+ continue;
40
+ }
41
+ const entry = byDoctype.get(target) ?? {
42
+ connection: declaration,
43
+ conditions: []
44
+ };
45
+ entry.conditions.push([field, operator, value]);
46
+ byDoctype.set(target, entry);
47
+ }
48
+ return {
49
+ own: ownFilters,
50
+ linked: [...byDoctype.values()],
51
+ undeclared: waitsOnDeclaration
52
+ };
53
+ }, [filtersKey, connectionsKey, doctype]);
54
+ const [snapshots, setSnapshots] = useState({});
55
+ const handlers = useRef(/* @__PURE__ */new Map());
56
+ const handlerFor = useCallback(key => {
57
+ let handler = handlers.current.get(key);
58
+ if (!handler) {
59
+ handler = snapshot => setSnapshots(prev => ({
60
+ ...prev,
61
+ [key]: snapshot
62
+ }));
63
+ handlers.current.set(key, handler);
64
+ }
65
+ return handler;
66
+ }, []);
67
+ const reads = useMemo(() => linked.map(({
68
+ connection: link,
69
+ conditions
70
+ }) => ({
71
+ key: JSON.stringify([link.doctype, link.fieldname, conditions]),
72
+ link,
73
+ options: {
74
+ fields: ["name", link.fieldname],
75
+ filters: conditions,
76
+ limit: link.limit ?? 0
77
+ }
78
+ })), [linked]);
79
+ return useMemo(() => {
80
+ const readers = reads.map(read => /* @__PURE__ */jsx(FrappeRowsReader, {
81
+ connection,
82
+ doctype: read.link.doctype,
83
+ options: read.options,
84
+ onChange: handlerFor(read.key)
85
+ }, read.key));
86
+ if (reads.length === 0) {
87
+ return {
88
+ filters: own,
89
+ pending: undeclared,
90
+ error: null,
91
+ readers
92
+ };
93
+ }
94
+ let names;
95
+ let pending = false;
96
+ let error = null;
97
+ for (const read of reads) {
98
+ const snapshot = snapshots[read.key];
99
+ if (!snapshot || snapshot.isLoading) {
100
+ pending = true;
101
+ continue;
102
+ }
103
+ if (snapshot.error) {
104
+ error = error ?? snapshot.error;
105
+ continue;
106
+ }
107
+ const linkedNames = new Set(snapshot.rows.map(row => row[read.link.fieldname]).filter(value => typeof value === "string" && value !== ""));
108
+ names = names ? new Set([...names].filter(name => linkedNames.has(name))) : linkedNames;
109
+ }
110
+ const ownList = Array.isArray(own) ? own : own ? Object.entries(own).map(([field, value]) => [field, "=", value]) : [];
111
+ const resolved = [...ownList, ["name", "in", [...(names ?? [])].sort()]];
112
+ return {
113
+ filters: resolved,
114
+ pending: (pending || undeclared) && !error,
115
+ error,
116
+ readers
117
+ };
118
+ }, [reads, snapshots, own, undeclared, connection, handlerFor]);
119
+ }
120
+ export { useConnectionFilters };
121
+ //# sourceMappingURL=useConnectionFilters.mjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["useCallback","useMemo","useRef","useState","FrappeRowsReader","jsx","useConnectionFilters","connection","doctype","filters","connections","filtersKey","JSON","stringify","connectionsKey","own","linked","undeclared","parsed","parse","declaredList","declared","Array","isArray","waitsOnDeclaration","ownFilters","byDoctype","Map","filter","length","push","target","field","operator","value","declaration","find","candidate","entry","get","conditions","set","values","snapshots","setSnapshots","handlers","handlerFor","key","handler","current","snapshot","prev","reads","map","link","fieldname","options","fields","limit","readers","read","onChange","pending","error","names","isLoading","linkedNames","Set","rows","row","name","has","ownList","Object","entries","resolved","sort"],"sources":["../../src/useConnectionFilters.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,213 @@
1
+ "use strict";
2
+
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all) __defProp(target, name, {
9
+ get: all[name],
10
+ enumerable: true
11
+ });
12
+ };
13
+ var __copyProps = (to, from, except, desc) => {
14
+ if (from && typeof from === "object" || typeof from === "function") {
15
+ for (let key of __getOwnPropNames(from)) if (!__hasOwnProp.call(to, key) && key !== except) __defProp(to, key, {
16
+ get: () => from[key],
17
+ enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable
18
+ });
19
+ }
20
+ return to;
21
+ };
22
+ var __toCommonJS = mod => __copyProps(__defProp({}, "__esModule", {
23
+ value: true
24
+ }), mod);
25
+ var useConnectionFilters_exports = {};
26
+ __export(useConnectionFilters_exports, {
27
+ useConnectionFilters: () => useConnectionFilters
28
+ });
29
+ module.exports = __toCommonJS(useConnectionFilters_exports);
30
+ var import_jsx_runtime = require("react/jsx-runtime");
31
+ var import_react = require("react");
32
+ var import_FrappeRowsReader = require("./FrappeRowsReader.native.js");
33
+ function useConnectionFilters(connection, doctype, filters, connections) {
34
+ var filtersKey = JSON.stringify(filters !== null && filters !== void 0 ? filters : null);
35
+ var connectionsKey = JSON.stringify(connections !== null && connections !== void 0 ? connections : null);
36
+ var {
37
+ own,
38
+ linked,
39
+ undeclared
40
+ } = (0, import_react.useMemo)(function () {
41
+ var parsed = JSON.parse(filtersKey);
42
+ var declaredList = JSON.parse(connectionsKey);
43
+ var declared = declaredList !== null && declaredList !== void 0 ? declaredList : [];
44
+ if (!parsed || !Array.isArray(parsed)) {
45
+ return {
46
+ own: parsed !== null && parsed !== void 0 ? parsed : void 0,
47
+ linked: [],
48
+ undeclared: false
49
+ };
50
+ }
51
+ var waitsOnDeclaration = false;
52
+ var ownFilters = [];
53
+ var byDoctype = /* @__PURE__ */new Map();
54
+ var _iteratorNormalCompletion = true,
55
+ _didIteratorError = false,
56
+ _iteratorError = void 0;
57
+ try {
58
+ var _loop = function () {
59
+ var filter = _step.value;
60
+ var _byDoctype_get;
61
+ if (filter.length !== 4) {
62
+ ownFilters.push(filter);
63
+ return "continue";
64
+ }
65
+ var [target, field, operator, value] = filter;
66
+ if (target === doctype) {
67
+ ownFilters.push([field, operator, value]);
68
+ return "continue";
69
+ }
70
+ var declaration = declared.find(function (candidate) {
71
+ return candidate.doctype === target;
72
+ });
73
+ if (!declaration) {
74
+ if (!declaredList) waitsOnDeclaration = true;
75
+ ownFilters.push(filter);
76
+ return "continue";
77
+ }
78
+ var entry = (_byDoctype_get = byDoctype.get(target)) !== null && _byDoctype_get !== void 0 ? _byDoctype_get : {
79
+ connection: declaration,
80
+ conditions: []
81
+ };
82
+ entry.conditions.push([field, operator, value]);
83
+ byDoctype.set(target, entry);
84
+ };
85
+ for (var _iterator = parsed[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();
86
+ } catch (err) {
87
+ _didIteratorError = true;
88
+ _iteratorError = err;
89
+ } finally {
90
+ try {
91
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
92
+ _iterator.return();
93
+ }
94
+ } finally {
95
+ if (_didIteratorError) {
96
+ throw _iteratorError;
97
+ }
98
+ }
99
+ }
100
+ return {
101
+ own: ownFilters,
102
+ linked: [...byDoctype.values()],
103
+ undeclared: waitsOnDeclaration
104
+ };
105
+ }, [filtersKey, connectionsKey, doctype]);
106
+ var [snapshots, setSnapshots] = (0, import_react.useState)({});
107
+ var handlers = (0, import_react.useRef)(/* @__PURE__ */new Map());
108
+ var handlerFor = (0, import_react.useCallback)(function (key) {
109
+ var handler = handlers.current.get(key);
110
+ if (!handler) {
111
+ handler = function handler2(snapshot) {
112
+ return setSnapshots(function (prev) {
113
+ return {
114
+ ...prev,
115
+ [key]: snapshot
116
+ };
117
+ });
118
+ };
119
+ handlers.current.set(key, handler);
120
+ }
121
+ return handler;
122
+ }, []);
123
+ var reads = (0, import_react.useMemo)(function () {
124
+ return linked.map(function (param) {
125
+ var {
126
+ connection: link,
127
+ conditions
128
+ } = param;
129
+ var _link_limit;
130
+ return {
131
+ key: JSON.stringify([link.doctype, link.fieldname, conditions]),
132
+ link,
133
+ options: {
134
+ fields: ["name", link.fieldname],
135
+ filters: conditions,
136
+ limit: (_link_limit = link.limit) !== null && _link_limit !== void 0 ? _link_limit : 0
137
+ }
138
+ };
139
+ });
140
+ }, [linked]);
141
+ return (0, import_react.useMemo)(function () {
142
+ var readers = reads.map(function (read) {
143
+ return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_FrappeRowsReader.FrappeRowsReader, {
144
+ connection,
145
+ doctype: read.link.doctype,
146
+ options: read.options,
147
+ onChange: handlerFor(read.key)
148
+ }, read.key);
149
+ });
150
+ if (reads.length === 0) {
151
+ return {
152
+ filters: own,
153
+ pending: undeclared,
154
+ error: null,
155
+ readers
156
+ };
157
+ }
158
+ var names;
159
+ var pending = false;
160
+ var error = null;
161
+ var _iteratorNormalCompletion = true,
162
+ _didIteratorError = false,
163
+ _iteratorError = void 0;
164
+ try {
165
+ var _loop = function () {
166
+ var read = _step.value;
167
+ var snapshot = snapshots[read.key];
168
+ if (!snapshot || snapshot.isLoading) {
169
+ pending = true;
170
+ return "continue";
171
+ }
172
+ if (snapshot.error) {
173
+ error = error !== null && error !== void 0 ? error : snapshot.error;
174
+ return "continue";
175
+ }
176
+ var linkedNames = new Set(snapshot.rows.map(function (row) {
177
+ return row[read.link.fieldname];
178
+ }).filter(function (value) {
179
+ return typeof value === "string" && value !== "";
180
+ }));
181
+ names = names ? new Set([...names].filter(function (name) {
182
+ return linkedNames.has(name);
183
+ })) : linkedNames;
184
+ };
185
+ for (var _iterator = reads[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) _loop();
186
+ } catch (err) {
187
+ _didIteratorError = true;
188
+ _iteratorError = err;
189
+ } finally {
190
+ try {
191
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
192
+ _iterator.return();
193
+ }
194
+ } finally {
195
+ if (_didIteratorError) {
196
+ throw _iteratorError;
197
+ }
198
+ }
199
+ }
200
+ var ownList = Array.isArray(own) ? own : own ? Object.entries(own).map(function (param) {
201
+ var [field, value] = param;
202
+ return [field, "=", value];
203
+ }) : [];
204
+ var resolved = [...ownList, ["name", "in", [...(names !== null && names !== void 0 ? names : [])].sort()]];
205
+ return {
206
+ filters: resolved,
207
+ pending: (pending || undeclared) && !error,
208
+ error,
209
+ readers
210
+ };
211
+ }, [reads, snapshots, own, undeclared, connection, handlerFor]);
212
+ }
213
+ //# sourceMappingURL=useConnectionFilters.native.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","useConnectionFilters_exports","useConnectionFilters","module","exports","import_jsx_runtime","require","import_react","import_FrappeRowsReader","connection","doctype","filters","connections","filtersKey","JSON","stringify","connectionsKey","own","linked","undeclared","useMemo","parsed","parse","declaredList","declared","Array","isArray","waitsOnDeclaration","ownFilters","byDoctype","Map","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_loop","filter","_step","_byDoctype_get","length","push","field","operator","declaration","find","candidate","entry","conditions","set","_iterator","Symbol","iterator","next","done","err","return","values"],"sources":["../../src/useConnectionFilters.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,28 +1,47 @@
1
- import { useFrappeCollection, useLiveQuery } from "@multiplatform.one/frappe";
2
- import { useCallback, useEffect, useMemo, useState } from "react";
1
+ import { useCallback, useMemo, useState } from "react";
2
+ import { useFrappeRows } from "./useFrappeRows.mjs";
3
3
  const defaultPageSize = 20;
4
+ function toError(err) {
5
+ return err instanceof Error ? err : new Error(String(err));
6
+ }
7
+ function compareRows(orderBy) {
8
+ return (a, b) => {
9
+ for (const {
10
+ field,
11
+ order
12
+ } of orderBy) {
13
+ const left = a[field];
14
+ const right = b[field];
15
+ if (left === right) continue;
16
+ if (left === null || left === void 0) return 1;
17
+ if (right === null || right === void 0) return -1;
18
+ const compared = typeof left === "number" && typeof right === "number" ? left - right : String(left).localeCompare(String(right));
19
+ if (compared !== 0) return String(order).toLowerCase() === "desc" ? -compared : compared;
20
+ }
21
+ return 0;
22
+ };
23
+ }
4
24
  function useFrappePagination(config, doctype, options) {
5
25
  const pageSize = options?.pageSize ?? defaultPageSize;
6
26
  const [limit, setLimit] = useState(pageSize);
7
- const [error, setError] = useState(null);
8
- const handleSyncError = useCallback(err => {
9
- setError(err instanceof Error ? err : new Error(String(err)));
10
- }, []);
11
- const collection = useFrappeCollection(config, doctype, {
27
+ const {
28
+ rows: liveRows,
29
+ isLoading: isReading,
30
+ isQueryLoading,
31
+ syncError: error
32
+ } = useFrappeRows(config, doctype, {
12
33
  fields: options?.fields,
13
34
  filters: options?.filters,
14
- onSyncError: handleSyncError
35
+ orderBy: options?.orderBy,
36
+ limit: options?.limit ?? null,
37
+ mapError: toError
15
38
  });
16
- useEffect(() => {
17
- setError(null);
18
- }, [collection]);
19
- const {
20
- data: rawData,
21
- isLoading
22
- } = useLiveQuery(q => collection ? q.from({
23
- _list: collection
24
- }) : null, [collection]);
25
- const allItems = useMemo(() => rawData ?? [], [rawData]);
39
+ const orderBy = options?.orderBy;
40
+ const liveItems = useMemo(() => orderBy?.length ? [...liveRows].sort(compareRows(orderBy)) : liveRows, [liveRows, orderBy]);
41
+ const seed = options?.initialRows;
42
+ const seeded = Boolean(seed?.length) && (isReading || error !== null && liveItems.length === 0);
43
+ const allItems = seeded ? seed : liveItems;
44
+ const isLoading = isQueryLoading && !seeded;
26
45
  const items = useMemo(() => allItems.slice(0, limit), [allItems, limit]);
27
46
  const hasMore = allItems.length >= limit;
28
47
  const onLoadMore = useCallback(() => {
@@ -38,7 +57,7 @@ function useFrappePagination(config, doctype, options) {
38
57
  onLoadMore,
39
58
  limit,
40
59
  reset,
41
- error
60
+ error: seeded ? null : error
42
61
  };
43
62
  }
44
63
  export { useFrappePagination };
@@ -1 +1 @@
1
- {"version":3,"names":["useFrappeCollection","useLiveQuery","useCallback","useEffect","useMemo","useState","defaultPageSize","useFrappePagination","config","doctype","options","pageSize","limit","setLimit","error","setError","handleSyncError","err","Error","String","collection","fields","filters","onSyncError","data","rawData","isLoading","q","from","_list","allItems","items","slice","hasMore","length","onLoadMore","prev","reset"],"sources":["../../src/useFrappePagination.ts"],"sourcesContent":[null],"mappings":"AAsBA,SAASA,mBAAA,EAAqBC,YAAA,QAAoB;AAClD,SAASC,WAAA,EAAaC,SAAA,EAAWC,OAAA,EAASC,QAAA,QAAgB;AA0B1D,MAAMC,eAAA,GAAkB;AAEjB,SAASC,oBACdC,MAAA,EACAC,OAAA,EACAC,OAAA,EACiC;EACjC,MAAMC,QAAA,GAAWD,OAAA,EAASC,QAAA,IAAYL,eAAA;EACtC,MAAM,CAACM,KAAA,EAAOC,QAAQ,IAAIR,QAAA,CAASM,QAAQ;EAC3C,MAAM,CAACG,KAAA,EAAOC,QAAQ,IAAIV,QAAA,CAAuB,IAAI;EAErD,MAAMW,eAAA,GAAkBd,WAAA,CAAae,GAAA,IAAiB;IACpDF,QAAA,CAASE,GAAA,YAAeC,KAAA,GAAQD,GAAA,GAAM,IAAIC,KAAA,CAAMC,MAAA,CAAOF,GAAG,CAAC,CAAC;EAC9D,GAAG,EAAE;EAGL,MAAMG,UAAA,GAAapB,mBAAA,CAA0BQ,MAAA,EAAQC,OAAA,EAAS;IAC5DY,MAAA,EAAQX,OAAA,EAASW,MAAA;IACjBC,OAAA,EAASZ,OAAA,EAASY,OAAA;IAClBC,WAAA,EAAaP;EACf,CAAC;EAGDb,SAAA,CAAU,MAAM;IACdY,QAAA,CAAS,IAAI;EACf,GAAG,CAACK,UAAU,CAAC;EAGf,MAAM;IAAEI,IAAA,EAAMC,OAAA;IAASC;EAAU,IAAIzB,YAAA,CAClC0B,CAAA,IAAOP,UAAA,GAAaO,CAAA,CAAEC,IAAA,CAAK;IAAEC,KAAA,EAAOT;EAAW,CAAC,IAAI,MACrD,CAACA,UAAU,CACb;EAEA,MAAMU,QAAA,GAAW1B,OAAA,CAAQ,MAAOqB,OAAA,IAAkC,EAAC,EAAG,CAACA,OAAO,CAAC;EAG/E,MAAMM,KAAA,GAAQ3B,OAAA,CAAQ,MAAM0B,QAAA,CAASE,KAAA,CAAM,GAAGpB,KAAK,GAAG,CAACkB,QAAA,EAAUlB,KAAK,CAAC;EAKvE,MAAMqB,OAAA,GAAUH,QAAA,CAASI,MAAA,IAAUtB,KAAA;EAEnC,MAAMuB,UAAA,GAAajC,WAAA,CAAY,MAAM;IACnCW,QAAA,CAAUuB,IAAA,IAASA,IAAA,GAAOzB,QAAQ;EACpC,GAAG,CAACA,QAAQ,CAAC;EAEb,MAAM0B,KAAA,GAAQnC,WAAA,CAAY,MAAM;IAC9BW,QAAA,CAASF,QAAQ;EACnB,GAAG,CAACA,QAAQ,CAAC;EAEb,OAAO;IAAEoB,KAAA;IAAOL,SAAA;IAAWO,OAAA;IAASE,UAAA;IAAYvB,KAAA;IAAOyB,KAAA;IAAOvB;EAAM;AACtE","ignoreList":[]}
1
+ {"version":3,"names":["useCallback","useMemo","useState","useFrappeRows","defaultPageSize","toError","err","Error","String","compareRows","orderBy","a","b","field","order","left","right","compared","localeCompare","toLowerCase","useFrappePagination","config","doctype","options","pageSize","limit","setLimit","rows","liveRows","isLoading","isReading","isQueryLoading","syncError","error","fields","filters","mapError","liveItems","length","sort","seed","initialRows","seeded","Boolean","allItems","items","slice","hasMore","onLoadMore","prev","reset"],"sources":["../../src/useFrappePagination.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -27,8 +27,8 @@ __export(useFrappePagination_exports, {
27
27
  useFrappePagination: () => useFrappePagination
28
28
  });
29
29
  module.exports = __toCommonJS(useFrappePagination_exports);
30
- var import_frappe = require("@multiplatform.one/frappe");
31
30
  var import_react = require("react");
31
+ var import_useFrappeRows = require("./useFrappeRows.native.js");
32
32
  function _instanceof(left, right) {
33
33
  "@swc/helpers - instanceof";
34
34
 
@@ -39,33 +39,69 @@ function _instanceof(left, right) {
39
39
  }
40
40
  }
41
41
  var defaultPageSize = 20;
42
+ function toError(err) {
43
+ return _instanceof(err, Error) ? err : new Error(String(err));
44
+ }
45
+ function compareRows(orderBy) {
46
+ return function (a, b) {
47
+ var _iteratorNormalCompletion = true,
48
+ _didIteratorError = false,
49
+ _iteratorError = void 0;
50
+ try {
51
+ for (var _iterator = orderBy[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
52
+ var {
53
+ field,
54
+ order
55
+ } = _step.value;
56
+ var left = a[field];
57
+ var right = b[field];
58
+ if (left === right) continue;
59
+ if (left === null || left === void 0) return 1;
60
+ if (right === null || right === void 0) return -1;
61
+ var compared = typeof left === "number" && typeof right === "number" ? left - right : String(left).localeCompare(String(right));
62
+ if (compared !== 0) return String(order).toLowerCase() === "desc" ? -compared : compared;
63
+ }
64
+ } catch (err) {
65
+ _didIteratorError = true;
66
+ _iteratorError = err;
67
+ } finally {
68
+ try {
69
+ if (!_iteratorNormalCompletion && _iterator.return != null) {
70
+ _iterator.return();
71
+ }
72
+ } finally {
73
+ if (_didIteratorError) {
74
+ throw _iteratorError;
75
+ }
76
+ }
77
+ }
78
+ return 0;
79
+ };
80
+ }
42
81
  function useFrappePagination(config, doctype, options) {
43
- var _ref;
82
+ var _ref, _ref1;
44
83
  var pageSize = (_ref = options === null || options === void 0 ? void 0 : options.pageSize) !== null && _ref !== void 0 ? _ref : defaultPageSize;
45
84
  var [limit, setLimit] = (0, import_react.useState)(pageSize);
46
- var [error, setError] = (0, import_react.useState)(null);
47
- var handleSyncError = (0, import_react.useCallback)(function (err) {
48
- setError(_instanceof(err, Error) ? err : new Error(String(err)));
49
- }, []);
50
- var collection = (0, import_frappe.useFrappeCollection)(config, doctype, {
85
+ var {
86
+ rows: liveRows,
87
+ isLoading: isReading,
88
+ isQueryLoading,
89
+ syncError: error
90
+ } = (0, import_useFrappeRows.useFrappeRows)(config, doctype, {
51
91
  fields: options === null || options === void 0 ? void 0 : options.fields,
52
92
  filters: options === null || options === void 0 ? void 0 : options.filters,
53
- onSyncError: handleSyncError
93
+ orderBy: options === null || options === void 0 ? void 0 : options.orderBy,
94
+ limit: (_ref1 = options === null || options === void 0 ? void 0 : options.limit) !== null && _ref1 !== void 0 ? _ref1 : null,
95
+ mapError: toError
54
96
  });
55
- (0, import_react.useEffect)(function () {
56
- setError(null);
57
- }, [collection]);
58
- var {
59
- data: rawData,
60
- isLoading
61
- } = (0, import_frappe.useLiveQuery)(function (q) {
62
- return collection ? q.from({
63
- _list: collection
64
- }) : null;
65
- }, [collection]);
66
- var allItems = (0, import_react.useMemo)(function () {
67
- return rawData !== null && rawData !== void 0 ? rawData : [];
68
- }, [rawData]);
97
+ var orderBy = options === null || options === void 0 ? void 0 : options.orderBy;
98
+ var liveItems = (0, import_react.useMemo)(function () {
99
+ return (orderBy === null || orderBy === void 0 ? void 0 : orderBy.length) ? [...liveRows].sort(compareRows(orderBy)) : liveRows;
100
+ }, [liveRows, orderBy]);
101
+ var seed = options === null || options === void 0 ? void 0 : options.initialRows;
102
+ var seeded = Boolean(seed === null || seed === void 0 ? void 0 : seed.length) && (isReading || error !== null && liveItems.length === 0);
103
+ var allItems = seeded ? seed : liveItems;
104
+ var isLoading = isQueryLoading && !seeded;
69
105
  var items = (0, import_react.useMemo)(function () {
70
106
  return allItems.slice(0, limit);
71
107
  }, [allItems, limit]);
@@ -85,7 +121,7 @@ function useFrappePagination(config, doctype, options) {
85
121
  onLoadMore,
86
122
  limit,
87
123
  reset,
88
- error
124
+ error: seeded ? null : error
89
125
  };
90
126
  }
91
127
  //# sourceMappingURL=useFrappePagination.native.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","useFrappePagination_exports","useFrappePagination","module","exports","import_frappe","require","import_react","_instanceof","left","right","Symbol","hasInstance"],"sources":["../../src/useFrappePagination.ts"],"sourcesContent":[null],"mappings":"AAsBA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAa,CAAAC,cAAW;AA0BjC,IAAAC,gBAAM,GAAAF,MAAkB,CAAAG,wBAAA;AAEjB,IAAAC,iBAAS,GAAAJ,MACd,CAAAK,mBAEA;AAEA,IAAAC,YAAM,GAAWN,MAAA,CAAAO,SAAS,CAAAC,cAAY;AACtC,IAAAC,QAAO,GAAAA,CAAOC,MAAA,EAAQC,GAAA,KAAI;EAC1B,SAAOC,IAAA,IAAOD,GAAA,EAEdZ,SAAM,CAAAW,MAAA,EAAAE,IAAkB;IAAAC,GAAA,EAAAF,GAAY,CAACC,IAAA;IAAAE,UAAiB;EAAA;AACpD;AAA4D,IAC9DC,WAAK,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EAGL,IAAAF,IAAM,WAAaA,IAAA,iBAA0B,OAAQA,IAAA,KAAS;IAC5D,SAAQG,GAAA,IAAAhB,iBAAS,CAAAa,IAAA,GACjB,KAAAX,YAAkB,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EAClBnB,SAAa,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAA,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EACf;EAGA,OAAAE,EAAA;AACE;AAAa,IACfM,YAAc,GAACC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAGf,IAAAE,2BAAuB,IAAU;AAAIhB,QAClC,CAAAgB,2BAA6B;EAAuBC,mBAC1C,EAAAA,CAAA,KAAAA;AAAA,EACb;AAEAC,MAAA,CAAAC,OAAM,GAAAN,YAAmB,CAAAG,2BAAsD;AAG/E,IAAAI,aAAc,GAAAC,OAAQ,4BAA6B,CAAG;AAKtD,IAAAC,YAAM,GAAUD,OAAA,CAAS;AAEzB,SAAME,YAAaC,IAAA,EAAAC,KAAA,EAAY;EAC7B,2BAAmB;;EACrB,IAAIA,KAAA,IAAS,eAAAC,MAAA,oBAAAD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IAEb,OAAM,EAAAF,KAAQ,CAAAC,MAAA,CAAAC,WAAkB,EAAAH,IAAA;EAC9B;IACF,OAAIA,IAAS,YAAAC,KAAA;EAEb;AACF","ignoreList":[]}
1
+ {"version":3,"names":["__defProp","Object","defineProperty","__getOwnPropDesc","getOwnPropertyDescriptor","__getOwnPropNames","getOwnPropertyNames","__hasOwnProp","prototype","hasOwnProperty","__export","target","all","name","get","enumerable","__copyProps","to","from","except","desc","key","call","__toCommonJS","mod","value","useFrappePagination_exports","useFrappePagination","module","exports","import_react","require","import_useFrappeRows","_instanceof","left","right","Symbol","hasInstance","defaultPageSize","toError","err","Error","String","compareRows","orderBy","a","b","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","iterator","_step","next","done","field","order","compared","localeCompare","toLowerCase"],"sources":["../../src/useFrappePagination.ts"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}