@multiplatform.one/frappe-ui 7.4.1 → 7.6.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 (722) hide show
  1. package/dist/cjs/FileBrowser/AttachLibrary.cjs +111 -0
  2. package/dist/cjs/FileBrowser/AttachLibrary.native.js +115 -0
  3. package/dist/cjs/FileBrowser/AttachLibrary.native.js.map +1 -0
  4. package/dist/cjs/FileBrowser/folderTree.cjs +84 -0
  5. package/dist/cjs/FileBrowser/folderTree.native.js +94 -0
  6. package/dist/cjs/FileBrowser/folderTree.native.js.map +1 -0
  7. package/dist/cjs/FileBrowser/index.cjs +690 -0
  8. package/dist/cjs/FileBrowser/index.native.js +781 -0
  9. package/dist/cjs/FileBrowser/index.native.js.map +1 -0
  10. package/dist/cjs/FileBrowser/types.cjs +18 -0
  11. package/dist/cjs/FileBrowser/types.native.js +21 -0
  12. package/dist/cjs/FileBrowser/types.native.js.map +1 -0
  13. package/dist/cjs/FileBrowser/viewPersistence.cjs +55 -0
  14. package/dist/cjs/FileBrowser/viewPersistence.native.js +60 -0
  15. package/dist/cjs/FileBrowser/viewPersistence.native.js.map +1 -0
  16. package/dist/cjs/FormSidebar.cjs +47 -47
  17. package/dist/cjs/FormSidebar.native.js +48 -50
  18. package/dist/cjs/FormSidebar.native.js.map +1 -1
  19. package/dist/cjs/FrappeAssignment.cjs +18 -13
  20. package/dist/cjs/FrappeAssignment.native.js +19 -13
  21. package/dist/cjs/FrappeAssignment.native.js.map +1 -1
  22. package/dist/cjs/FrappeCalendar.cjs +11 -10
  23. package/dist/cjs/FrappeCalendar.native.js +11 -10
  24. package/dist/cjs/FrappeCalendar.native.js.map +1 -1
  25. package/dist/cjs/FrappeChartCard.cjs +6 -15
  26. package/dist/cjs/FrappeChartCard.native.js +6 -15
  27. package/dist/cjs/FrappeChartCard.native.js.map +1 -1
  28. package/dist/cjs/FrappeDashboard.cjs +12 -9
  29. package/dist/cjs/FrappeDashboard.native.js +12 -9
  30. package/dist/cjs/FrappeDashboard.native.js.map +1 -1
  31. package/dist/cjs/FrappeForm.cjs +36 -25
  32. package/dist/cjs/FrappeForm.native.js +36 -25
  33. package/dist/cjs/FrappeForm.native.js.map +1 -1
  34. package/dist/cjs/FrappeGantt.cjs +7 -5
  35. package/dist/cjs/FrappeGantt.native.js +7 -5
  36. package/dist/cjs/FrappeGantt.native.js.map +1 -1
  37. package/dist/cjs/FrappeImageView.cjs +22 -22
  38. package/dist/cjs/FrappeImageView.native.js +24 -22
  39. package/dist/cjs/FrappeImageView.native.js.map +1 -1
  40. package/dist/cjs/FrappeKPICard.cjs +7 -29
  41. package/dist/cjs/FrappeKPICard.native.js +7 -29
  42. package/dist/cjs/FrappeKPICard.native.js.map +1 -1
  43. package/dist/cjs/FrappeKanban.cjs +11 -13
  44. package/dist/cjs/FrappeKanban.native.js +11 -13
  45. package/dist/cjs/FrappeKanban.native.js.map +1 -1
  46. package/dist/cjs/FrappeLikedBy.cjs +5 -5
  47. package/dist/cjs/FrappeLikedBy.native.js +6 -6
  48. package/dist/cjs/FrappeLikedBy.native.js.map +1 -1
  49. package/dist/cjs/FrappeListView.cjs +32 -33
  50. package/dist/cjs/FrappeListView.native.js +37 -39
  51. package/dist/cjs/FrappeListView.native.js.map +1 -1
  52. package/dist/cjs/FrappeReportBuilder.cjs +30 -46
  53. package/dist/cjs/FrappeReportBuilder.native.js +30 -42
  54. package/dist/cjs/FrappeReportBuilder.native.js.map +1 -1
  55. package/dist/cjs/FrappeReportView.cjs +5 -5
  56. package/dist/cjs/FrappeReportView.native.js +5 -5
  57. package/dist/cjs/FrappeReportView.native.js.map +1 -1
  58. package/dist/cjs/FrappeTreeView.cjs +9 -6
  59. package/dist/cjs/FrappeTreeView.native.js +10 -6
  60. package/dist/cjs/FrappeTreeView.native.js.map +1 -1
  61. package/dist/cjs/desk/DeskFormPage.cjs +3 -3
  62. package/dist/cjs/desk/DeskFormPage.native.js +3 -3
  63. package/dist/cjs/desk/DeskFormPage.native.js.map +1 -1
  64. package/dist/cjs/desk/DeskListPage.cjs +2 -2
  65. package/dist/cjs/desk/DeskListPage.native.js +2 -2
  66. package/dist/cjs/desk/DeskListPage.native.js.map +1 -1
  67. package/dist/cjs/desk/DeskShell.cjs +58 -38
  68. package/dist/cjs/desk/DeskShell.native.js +63 -44
  69. package/dist/cjs/desk/DeskShell.native.js.map +1 -1
  70. package/dist/cjs/desk/awesomebar.cjs +28 -16
  71. package/dist/cjs/desk/awesomebar.native.js +28 -16
  72. package/dist/cjs/desk/awesomebar.native.js.map +1 -1
  73. package/dist/cjs/fieldRegistry.cjs +64 -3
  74. package/dist/cjs/fieldRegistry.native.js +69 -3
  75. package/dist/cjs/fieldRegistry.native.js.map +1 -1
  76. package/dist/cjs/fields/Check/index.cjs +1 -1
  77. package/dist/cjs/fields/Check/index.native.js +1 -1
  78. package/dist/cjs/fields/Check/index.native.js.map +1 -1
  79. package/dist/cjs/fields/Color/index.cjs +1 -1
  80. package/dist/cjs/fields/Color/index.native.js +1 -1
  81. package/dist/cjs/fields/Color/index.native.js.map +1 -1
  82. package/dist/cjs/fields/Data/index.native.js.map +1 -1
  83. package/dist/cjs/fields/Date/index.native.js +47 -34
  84. package/dist/cjs/fields/Date/index.native.js.map +1 -1
  85. package/dist/cjs/fields/Date/sheetKeyboard.cjs +54 -0
  86. package/dist/cjs/fields/Date/sheetKeyboard.native.js +57 -0
  87. package/dist/cjs/fields/Date/sheetKeyboard.native.js.map +1 -0
  88. package/dist/cjs/fields/DynamicLink.cjs +37 -128
  89. package/dist/cjs/fields/DynamicLink.native.js +40 -138
  90. package/dist/cjs/fields/DynamicLink.native.js.map +1 -1
  91. package/dist/cjs/fields/FileUpload.cjs +233 -50
  92. package/dist/cjs/fields/FileUpload.native.js +242 -51
  93. package/dist/cjs/fields/FileUpload.native.js.map +1 -1
  94. package/dist/cjs/fields/FileUploadField/index.cjs +53 -20
  95. package/dist/cjs/fields/FileUploadField/index.native.js +56 -20
  96. package/dist/cjs/fields/FileUploadField/index.native.js.map +1 -1
  97. package/dist/cjs/fields/HTML/index.cjs +30 -51
  98. package/dist/cjs/fields/HTML/index.native.js +30 -51
  99. package/dist/cjs/fields/HTML/index.native.js.map +1 -1
  100. package/dist/cjs/fields/Icon/index.cjs +73 -0
  101. package/dist/cjs/fields/Icon/index.native.js +76 -0
  102. package/dist/cjs/fields/Icon/index.native.js.map +1 -0
  103. package/dist/cjs/fields/Link.cjs +34 -8
  104. package/dist/cjs/fields/Link.native.js +35 -9
  105. package/dist/cjs/fields/Link.native.js.map +1 -1
  106. package/dist/cjs/fields/LinkTree.cjs +114 -0
  107. package/dist/cjs/fields/LinkTree.native.js +125 -0
  108. package/dist/cjs/fields/LinkTree.native.js.map +1 -0
  109. package/dist/cjs/fields/LongText/index.cjs +6 -4
  110. package/dist/cjs/fields/LongText/index.native.js +6 -4
  111. package/dist/cjs/fields/LongText/index.native.js.map +1 -1
  112. package/dist/cjs/fields/Numeric/index.native.js.map +1 -1
  113. package/dist/cjs/fields/Password/index.cjs +178 -16
  114. package/dist/cjs/fields/Password/index.native.js +186 -16
  115. package/dist/cjs/fields/Password/index.native.js.map +1 -1
  116. package/dist/cjs/fields/Phone/index.native.js.map +1 -1
  117. package/dist/cjs/fields/ReadOnly/index.cjs +34 -48
  118. package/dist/cjs/fields/ReadOnly/index.native.js +34 -46
  119. package/dist/cjs/fields/ReadOnly/index.native.js.map +1 -1
  120. package/dist/cjs/fields/Select/index.cjs +1 -1
  121. package/dist/cjs/fields/Select/index.native.js +1 -1
  122. package/dist/cjs/fields/Select/index.native.js.map +1 -1
  123. package/dist/cjs/fields/SmallText/index.cjs +4 -3
  124. package/dist/cjs/fields/SmallText/index.native.js +4 -3
  125. package/dist/cjs/fields/SmallText/index.native.js.map +1 -1
  126. package/dist/cjs/fields/TableMultiSelect.cjs +39 -150
  127. package/dist/cjs/fields/TableMultiSelect.native.js +44 -171
  128. package/dist/cjs/fields/TableMultiSelect.native.js.map +1 -1
  129. package/dist/cjs/fields/TextEditor/index.cjs +26 -293
  130. package/dist/cjs/index.cjs +9 -0
  131. package/dist/cjs/index.native.js +9 -0
  132. package/dist/cjs/index.native.js.map +1 -1
  133. package/dist/cjs/schemaForm/SchemaWizard.cjs +182 -0
  134. package/dist/cjs/schemaForm/SchemaWizard.native.js +232 -0
  135. package/dist/cjs/schemaForm/SchemaWizard.native.js.map +1 -0
  136. package/dist/cjs/schemaForm/index.cjs +1 -1
  137. package/dist/cjs/schemaForm/index.native.js +1 -1
  138. package/dist/cjs/schemaForm/index.native.js.map +1 -1
  139. package/dist/cjs/shared/useKeyboardInset.cjs +48 -0
  140. package/dist/cjs/shared/useKeyboardInset.native.js +53 -0
  141. package/dist/cjs/shared/useKeyboardInset.native.js.map +1 -0
  142. package/dist/esm/FileBrowser/AttachLibrary.mjs +86 -0
  143. package/dist/esm/FileBrowser/AttachLibrary.mjs.map +1 -0
  144. package/dist/esm/FileBrowser/AttachLibrary.native.js +87 -0
  145. package/dist/esm/FileBrowser/AttachLibrary.native.js.map +1 -0
  146. package/dist/esm/FileBrowser/folderTree.mjs +52 -0
  147. package/dist/esm/FileBrowser/folderTree.mjs.map +1 -0
  148. package/dist/esm/FileBrowser/folderTree.native.js +59 -0
  149. package/dist/esm/FileBrowser/folderTree.native.js.map +1 -0
  150. package/dist/esm/FileBrowser/index.mjs +665 -0
  151. package/dist/esm/FileBrowser/index.mjs.map +1 -0
  152. package/dist/esm/FileBrowser/index.native.js +753 -0
  153. package/dist/esm/FileBrowser/index.native.js.map +1 -0
  154. package/dist/esm/FileBrowser/types.mjs +2 -0
  155. package/dist/esm/FileBrowser/types.mjs.map +1 -0
  156. package/dist/esm/FileBrowser/types.native.js +2 -0
  157. package/dist/esm/FileBrowser/types.native.js.map +1 -0
  158. package/dist/esm/FileBrowser/viewPersistence.mjs +29 -0
  159. package/dist/esm/FileBrowser/viewPersistence.mjs.map +1 -0
  160. package/dist/esm/FileBrowser/viewPersistence.native.js +31 -0
  161. package/dist/esm/FileBrowser/viewPersistence.native.js.map +1 -0
  162. package/dist/esm/FormSidebar.mjs +46 -46
  163. package/dist/esm/FormSidebar.mjs.map +1 -1
  164. package/dist/esm/FormSidebar.native.js +47 -49
  165. package/dist/esm/FormSidebar.native.js.map +1 -1
  166. package/dist/esm/FrappeAssignment.mjs +19 -14
  167. package/dist/esm/FrappeAssignment.mjs.map +1 -1
  168. package/dist/esm/FrappeAssignment.native.js +20 -14
  169. package/dist/esm/FrappeAssignment.native.js.map +1 -1
  170. package/dist/esm/FrappeCalendar.mjs +12 -11
  171. package/dist/esm/FrappeCalendar.mjs.map +1 -1
  172. package/dist/esm/FrappeCalendar.native.js +12 -11
  173. package/dist/esm/FrappeCalendar.native.js.map +1 -1
  174. package/dist/esm/FrappeChartCard.mjs +7 -16
  175. package/dist/esm/FrappeChartCard.mjs.map +1 -1
  176. package/dist/esm/FrappeChartCard.native.js +7 -16
  177. package/dist/esm/FrappeChartCard.native.js.map +1 -1
  178. package/dist/esm/FrappeDashboard.mjs +12 -9
  179. package/dist/esm/FrappeDashboard.mjs.map +1 -1
  180. package/dist/esm/FrappeDashboard.native.js +12 -9
  181. package/dist/esm/FrappeDashboard.native.js.map +1 -1
  182. package/dist/esm/FrappeForm.mjs +35 -24
  183. package/dist/esm/FrappeForm.mjs.map +1 -1
  184. package/dist/esm/FrappeForm.native.js +35 -24
  185. package/dist/esm/FrappeForm.native.js.map +1 -1
  186. package/dist/esm/FrappeGantt.mjs +7 -5
  187. package/dist/esm/FrappeGantt.mjs.map +1 -1
  188. package/dist/esm/FrappeGantt.native.js +7 -5
  189. package/dist/esm/FrappeGantt.native.js.map +1 -1
  190. package/dist/esm/FrappeImageView.mjs +23 -23
  191. package/dist/esm/FrappeImageView.mjs.map +1 -1
  192. package/dist/esm/FrappeImageView.native.js +25 -23
  193. package/dist/esm/FrappeImageView.native.js.map +1 -1
  194. package/dist/esm/FrappeKPICard.mjs +7 -29
  195. package/dist/esm/FrappeKPICard.mjs.map +1 -1
  196. package/dist/esm/FrappeKPICard.native.js +7 -29
  197. package/dist/esm/FrappeKPICard.native.js.map +1 -1
  198. package/dist/esm/FrappeKanban.mjs +13 -15
  199. package/dist/esm/FrappeKanban.mjs.map +1 -1
  200. package/dist/esm/FrappeKanban.native.js +13 -15
  201. package/dist/esm/FrappeKanban.native.js.map +1 -1
  202. package/dist/esm/FrappeLikedBy.mjs +6 -6
  203. package/dist/esm/FrappeLikedBy.mjs.map +1 -1
  204. package/dist/esm/FrappeLikedBy.native.js +7 -7
  205. package/dist/esm/FrappeLikedBy.native.js.map +1 -1
  206. package/dist/esm/FrappeListView.mjs +33 -34
  207. package/dist/esm/FrappeListView.mjs.map +1 -1
  208. package/dist/esm/FrappeListView.native.js +38 -40
  209. package/dist/esm/FrappeListView.native.js.map +1 -1
  210. package/dist/esm/FrappeReportBuilder.mjs +27 -43
  211. package/dist/esm/FrappeReportBuilder.mjs.map +1 -1
  212. package/dist/esm/FrappeReportBuilder.native.js +27 -39
  213. package/dist/esm/FrappeReportBuilder.native.js.map +1 -1
  214. package/dist/esm/FrappeReportView.mjs +6 -6
  215. package/dist/esm/FrappeReportView.mjs.map +1 -1
  216. package/dist/esm/FrappeReportView.native.js +6 -6
  217. package/dist/esm/FrappeReportView.native.js.map +1 -1
  218. package/dist/esm/FrappeTreeView.mjs +9 -6
  219. package/dist/esm/FrappeTreeView.mjs.map +1 -1
  220. package/dist/esm/FrappeTreeView.native.js +10 -6
  221. package/dist/esm/FrappeTreeView.native.js.map +1 -1
  222. package/dist/esm/desk/DeskFormPage.mjs +3 -3
  223. package/dist/esm/desk/DeskFormPage.mjs.map +1 -1
  224. package/dist/esm/desk/DeskFormPage.native.js +3 -3
  225. package/dist/esm/desk/DeskFormPage.native.js.map +1 -1
  226. package/dist/esm/desk/DeskListPage.mjs +2 -2
  227. package/dist/esm/desk/DeskListPage.mjs.map +1 -1
  228. package/dist/esm/desk/DeskListPage.native.js +2 -2
  229. package/dist/esm/desk/DeskListPage.native.js.map +1 -1
  230. package/dist/esm/desk/DeskShell.mjs +48 -28
  231. package/dist/esm/desk/DeskShell.mjs.map +1 -1
  232. package/dist/esm/desk/DeskShell.native.js +52 -33
  233. package/dist/esm/desk/DeskShell.native.js.map +1 -1
  234. package/dist/esm/desk/awesomebar.mjs +29 -17
  235. package/dist/esm/desk/awesomebar.mjs.map +1 -1
  236. package/dist/esm/desk/awesomebar.native.js +29 -17
  237. package/dist/esm/desk/awesomebar.native.js.map +1 -1
  238. package/dist/esm/fieldRegistry.mjs +65 -4
  239. package/dist/esm/fieldRegistry.mjs.map +1 -1
  240. package/dist/esm/fieldRegistry.native.js +70 -4
  241. package/dist/esm/fieldRegistry.native.js.map +1 -1
  242. package/dist/esm/fields/Check/index.mjs +1 -1
  243. package/dist/esm/fields/Check/index.mjs.map +1 -1
  244. package/dist/esm/fields/Check/index.native.js +1 -1
  245. package/dist/esm/fields/Check/index.native.js.map +1 -1
  246. package/dist/esm/fields/Color/index.mjs +1 -1
  247. package/dist/esm/fields/Color/index.mjs.map +1 -1
  248. package/dist/esm/fields/Color/index.native.js +1 -1
  249. package/dist/esm/fields/Color/index.native.js.map +1 -1
  250. package/dist/esm/fields/Data/index.mjs.map +1 -1
  251. package/dist/esm/fields/Data/index.native.js.map +1 -1
  252. package/dist/esm/fields/Date/index.native.js +46 -33
  253. package/dist/esm/fields/Date/index.native.js.map +1 -1
  254. package/dist/esm/fields/Date/sheetKeyboard.mjs +21 -0
  255. package/dist/esm/fields/Date/sheetKeyboard.mjs.map +1 -0
  256. package/dist/esm/fields/Date/sheetKeyboard.native.js +21 -0
  257. package/dist/esm/fields/Date/sheetKeyboard.native.js.map +1 -0
  258. package/dist/esm/fields/DynamicLink.mjs +37 -128
  259. package/dist/esm/fields/DynamicLink.mjs.map +1 -1
  260. package/dist/esm/fields/DynamicLink.native.js +40 -138
  261. package/dist/esm/fields/DynamicLink.native.js.map +1 -1
  262. package/dist/esm/fields/FileUpload.mjs +234 -51
  263. package/dist/esm/fields/FileUpload.mjs.map +1 -1
  264. package/dist/esm/fields/FileUpload.native.js +243 -52
  265. package/dist/esm/fields/FileUpload.native.js.map +1 -1
  266. package/dist/esm/fields/FileUploadField/index.mjs +55 -22
  267. package/dist/esm/fields/FileUploadField/index.mjs.map +1 -1
  268. package/dist/esm/fields/FileUploadField/index.native.js +58 -22
  269. package/dist/esm/fields/FileUploadField/index.native.js.map +1 -1
  270. package/dist/esm/fields/HTML/index.mjs +33 -54
  271. package/dist/esm/fields/HTML/index.mjs.map +1 -1
  272. package/dist/esm/fields/HTML/index.native.js +33 -54
  273. package/dist/esm/fields/HTML/index.native.js.map +1 -1
  274. package/dist/esm/fields/Icon/index.mjs +48 -0
  275. package/dist/esm/fields/Icon/index.mjs.map +1 -0
  276. package/dist/esm/fields/Icon/index.native.js +48 -0
  277. package/dist/esm/fields/Icon/index.native.js.map +1 -0
  278. package/dist/esm/fields/Link.mjs +35 -9
  279. package/dist/esm/fields/Link.mjs.map +1 -1
  280. package/dist/esm/fields/Link.native.js +36 -10
  281. package/dist/esm/fields/Link.native.js.map +1 -1
  282. package/dist/esm/fields/LinkTree.mjs +89 -0
  283. package/dist/esm/fields/LinkTree.mjs.map +1 -0
  284. package/dist/esm/fields/LinkTree.native.js +97 -0
  285. package/dist/esm/fields/LinkTree.native.js.map +1 -0
  286. package/dist/esm/fields/LongText/index.mjs +7 -5
  287. package/dist/esm/fields/LongText/index.mjs.map +1 -1
  288. package/dist/esm/fields/LongText/index.native.js +7 -5
  289. package/dist/esm/fields/LongText/index.native.js.map +1 -1
  290. package/dist/esm/fields/Numeric/index.mjs.map +1 -1
  291. package/dist/esm/fields/Numeric/index.native.js.map +1 -1
  292. package/dist/esm/fields/Password/index.mjs +180 -18
  293. package/dist/esm/fields/Password/index.mjs.map +1 -1
  294. package/dist/esm/fields/Password/index.native.js +188 -18
  295. package/dist/esm/fields/Password/index.native.js.map +1 -1
  296. package/dist/esm/fields/Phone/index.mjs.map +1 -1
  297. package/dist/esm/fields/Phone/index.native.js.map +1 -1
  298. package/dist/esm/fields/ReadOnly/index.mjs +36 -50
  299. package/dist/esm/fields/ReadOnly/index.mjs.map +1 -1
  300. package/dist/esm/fields/ReadOnly/index.native.js +36 -48
  301. package/dist/esm/fields/ReadOnly/index.native.js.map +1 -1
  302. package/dist/esm/fields/Select/index.mjs +1 -1
  303. package/dist/esm/fields/Select/index.mjs.map +1 -1
  304. package/dist/esm/fields/Select/index.native.js +1 -1
  305. package/dist/esm/fields/Select/index.native.js.map +1 -1
  306. package/dist/esm/fields/SmallText/index.mjs +5 -4
  307. package/dist/esm/fields/SmallText/index.mjs.map +1 -1
  308. package/dist/esm/fields/SmallText/index.native.js +5 -4
  309. package/dist/esm/fields/SmallText/index.native.js.map +1 -1
  310. package/dist/esm/fields/TableMultiSelect.mjs +41 -152
  311. package/dist/esm/fields/TableMultiSelect.mjs.map +1 -1
  312. package/dist/esm/fields/TableMultiSelect.native.js +46 -173
  313. package/dist/esm/fields/TableMultiSelect.native.js.map +1 -1
  314. package/dist/esm/fields/TextEditor/index.mjs +28 -284
  315. package/dist/esm/fields/TextEditor/index.mjs.map +1 -1
  316. package/dist/esm/index.mjs +5 -1
  317. package/dist/esm/index.mjs.map +1 -1
  318. package/dist/esm/index.native.js +5 -1
  319. package/dist/esm/index.native.js.map +1 -1
  320. package/dist/esm/schemaForm/SchemaWizard.mjs +156 -0
  321. package/dist/esm/schemaForm/SchemaWizard.mjs.map +1 -0
  322. package/dist/esm/schemaForm/SchemaWizard.native.js +203 -0
  323. package/dist/esm/schemaForm/SchemaWizard.native.js.map +1 -0
  324. package/dist/esm/schemaForm/index.mjs +1 -1
  325. package/dist/esm/schemaForm/index.mjs.map +1 -1
  326. package/dist/esm/schemaForm/index.native.js +1 -1
  327. package/dist/esm/schemaForm/index.native.js.map +1 -1
  328. package/dist/esm/shared/useKeyboardInset.mjs +23 -0
  329. package/dist/esm/shared/useKeyboardInset.mjs.map +1 -0
  330. package/dist/esm/shared/useKeyboardInset.native.js +25 -0
  331. package/dist/esm/shared/useKeyboardInset.native.js.map +1 -0
  332. package/dist/jsx/FileBrowser/AttachLibrary.mjs +86 -0
  333. package/dist/jsx/FileBrowser/AttachLibrary.mjs.map +1 -0
  334. package/dist/jsx/FileBrowser/AttachLibrary.native.js +115 -0
  335. package/dist/jsx/FileBrowser/AttachLibrary.native.js.map +1 -0
  336. package/dist/jsx/FileBrowser/folderTree.mjs +52 -0
  337. package/dist/jsx/FileBrowser/folderTree.mjs.map +1 -0
  338. package/dist/jsx/FileBrowser/folderTree.native.js +94 -0
  339. package/dist/jsx/FileBrowser/folderTree.native.js.map +1 -0
  340. package/dist/jsx/FileBrowser/index.mjs +665 -0
  341. package/dist/jsx/FileBrowser/index.mjs.map +1 -0
  342. package/dist/jsx/FileBrowser/index.native.js +781 -0
  343. package/dist/jsx/FileBrowser/index.native.js.map +1 -0
  344. package/dist/jsx/FileBrowser/types.mjs +2 -0
  345. package/dist/jsx/FileBrowser/types.mjs.map +1 -0
  346. package/dist/jsx/FileBrowser/types.native.js +21 -0
  347. package/dist/jsx/FileBrowser/types.native.js.map +1 -0
  348. package/dist/jsx/FileBrowser/viewPersistence.mjs +29 -0
  349. package/dist/jsx/FileBrowser/viewPersistence.mjs.map +1 -0
  350. package/dist/jsx/FileBrowser/viewPersistence.native.js +60 -0
  351. package/dist/jsx/FileBrowser/viewPersistence.native.js.map +1 -0
  352. package/dist/jsx/FormSidebar.mjs +46 -46
  353. package/dist/jsx/FormSidebar.mjs.map +1 -1
  354. package/dist/jsx/FormSidebar.native.js +48 -50
  355. package/dist/jsx/FormSidebar.native.js.map +1 -1
  356. package/dist/jsx/FrappeAssignment.mjs +19 -14
  357. package/dist/jsx/FrappeAssignment.mjs.map +1 -1
  358. package/dist/jsx/FrappeAssignment.native.js +19 -13
  359. package/dist/jsx/FrappeAssignment.native.js.map +1 -1
  360. package/dist/jsx/FrappeCalendar.mjs +12 -11
  361. package/dist/jsx/FrappeCalendar.mjs.map +1 -1
  362. package/dist/jsx/FrappeCalendar.native.js +11 -10
  363. package/dist/jsx/FrappeCalendar.native.js.map +1 -1
  364. package/dist/jsx/FrappeChartCard.mjs +7 -16
  365. package/dist/jsx/FrappeChartCard.mjs.map +1 -1
  366. package/dist/jsx/FrappeChartCard.native.js +6 -15
  367. package/dist/jsx/FrappeChartCard.native.js.map +1 -1
  368. package/dist/jsx/FrappeDashboard.mjs +12 -9
  369. package/dist/jsx/FrappeDashboard.mjs.map +1 -1
  370. package/dist/jsx/FrappeDashboard.native.js +12 -9
  371. package/dist/jsx/FrappeDashboard.native.js.map +1 -1
  372. package/dist/jsx/FrappeForm.mjs +35 -24
  373. package/dist/jsx/FrappeForm.mjs.map +1 -1
  374. package/dist/jsx/FrappeForm.native.js +36 -25
  375. package/dist/jsx/FrappeForm.native.js.map +1 -1
  376. package/dist/jsx/FrappeGantt.mjs +7 -5
  377. package/dist/jsx/FrappeGantt.mjs.map +1 -1
  378. package/dist/jsx/FrappeGantt.native.js +7 -5
  379. package/dist/jsx/FrappeGantt.native.js.map +1 -1
  380. package/dist/jsx/FrappeImageView.mjs +23 -23
  381. package/dist/jsx/FrappeImageView.mjs.map +1 -1
  382. package/dist/jsx/FrappeImageView.native.js +24 -22
  383. package/dist/jsx/FrappeImageView.native.js.map +1 -1
  384. package/dist/jsx/FrappeKPICard.mjs +7 -29
  385. package/dist/jsx/FrappeKPICard.mjs.map +1 -1
  386. package/dist/jsx/FrappeKPICard.native.js +7 -29
  387. package/dist/jsx/FrappeKPICard.native.js.map +1 -1
  388. package/dist/jsx/FrappeKanban.mjs +13 -15
  389. package/dist/jsx/FrappeKanban.mjs.map +1 -1
  390. package/dist/jsx/FrappeKanban.native.js +11 -13
  391. package/dist/jsx/FrappeKanban.native.js.map +1 -1
  392. package/dist/jsx/FrappeLikedBy.mjs +6 -6
  393. package/dist/jsx/FrappeLikedBy.mjs.map +1 -1
  394. package/dist/jsx/FrappeLikedBy.native.js +6 -6
  395. package/dist/jsx/FrappeLikedBy.native.js.map +1 -1
  396. package/dist/jsx/FrappeListView.mjs +33 -34
  397. package/dist/jsx/FrappeListView.mjs.map +1 -1
  398. package/dist/jsx/FrappeListView.native.js +37 -39
  399. package/dist/jsx/FrappeListView.native.js.map +1 -1
  400. package/dist/jsx/FrappeReportBuilder.mjs +27 -43
  401. package/dist/jsx/FrappeReportBuilder.mjs.map +1 -1
  402. package/dist/jsx/FrappeReportBuilder.native.js +30 -42
  403. package/dist/jsx/FrappeReportBuilder.native.js.map +1 -1
  404. package/dist/jsx/FrappeReportView.mjs +6 -6
  405. package/dist/jsx/FrappeReportView.mjs.map +1 -1
  406. package/dist/jsx/FrappeReportView.native.js +5 -5
  407. package/dist/jsx/FrappeReportView.native.js.map +1 -1
  408. package/dist/jsx/FrappeTreeView.mjs +9 -6
  409. package/dist/jsx/FrappeTreeView.mjs.map +1 -1
  410. package/dist/jsx/FrappeTreeView.native.js +10 -6
  411. package/dist/jsx/FrappeTreeView.native.js.map +1 -1
  412. package/dist/jsx/desk/DeskFormPage.mjs +3 -3
  413. package/dist/jsx/desk/DeskFormPage.mjs.map +1 -1
  414. package/dist/jsx/desk/DeskFormPage.native.js +3 -3
  415. package/dist/jsx/desk/DeskFormPage.native.js.map +1 -1
  416. package/dist/jsx/desk/DeskListPage.mjs +2 -2
  417. package/dist/jsx/desk/DeskListPage.mjs.map +1 -1
  418. package/dist/jsx/desk/DeskListPage.native.js +2 -2
  419. package/dist/jsx/desk/DeskListPage.native.js.map +1 -1
  420. package/dist/jsx/desk/DeskShell.mjs +48 -28
  421. package/dist/jsx/desk/DeskShell.mjs.map +1 -1
  422. package/dist/jsx/desk/DeskShell.native.js +63 -44
  423. package/dist/jsx/desk/DeskShell.native.js.map +1 -1
  424. package/dist/jsx/desk/awesomebar.mjs +29 -17
  425. package/dist/jsx/desk/awesomebar.mjs.map +1 -1
  426. package/dist/jsx/desk/awesomebar.native.js +28 -16
  427. package/dist/jsx/desk/awesomebar.native.js.map +1 -1
  428. package/dist/jsx/fieldRegistry.mjs +65 -4
  429. package/dist/jsx/fieldRegistry.mjs.map +1 -1
  430. package/dist/jsx/fieldRegistry.native.js +69 -3
  431. package/dist/jsx/fieldRegistry.native.js.map +1 -1
  432. package/dist/jsx/fields/Check/index.mjs +1 -1
  433. package/dist/jsx/fields/Check/index.mjs.map +1 -1
  434. package/dist/jsx/fields/Check/index.native.js +1 -1
  435. package/dist/jsx/fields/Check/index.native.js.map +1 -1
  436. package/dist/jsx/fields/Color/index.mjs +1 -1
  437. package/dist/jsx/fields/Color/index.mjs.map +1 -1
  438. package/dist/jsx/fields/Color/index.native.js +1 -1
  439. package/dist/jsx/fields/Color/index.native.js.map +1 -1
  440. package/dist/jsx/fields/Data/index.mjs.map +1 -1
  441. package/dist/jsx/fields/Data/index.native.js.map +1 -1
  442. package/dist/jsx/fields/Date/index.native.js +47 -34
  443. package/dist/jsx/fields/Date/index.native.js.map +1 -1
  444. package/dist/jsx/fields/Date/sheetKeyboard.mjs +21 -0
  445. package/dist/jsx/fields/Date/sheetKeyboard.mjs.map +1 -0
  446. package/dist/jsx/fields/Date/sheetKeyboard.native.js +57 -0
  447. package/dist/jsx/fields/Date/sheetKeyboard.native.js.map +1 -0
  448. package/dist/jsx/fields/DynamicLink.mjs +37 -128
  449. package/dist/jsx/fields/DynamicLink.mjs.map +1 -1
  450. package/dist/jsx/fields/DynamicLink.native.js +40 -138
  451. package/dist/jsx/fields/DynamicLink.native.js.map +1 -1
  452. package/dist/jsx/fields/FileUpload.mjs +234 -51
  453. package/dist/jsx/fields/FileUpload.mjs.map +1 -1
  454. package/dist/jsx/fields/FileUpload.native.js +242 -51
  455. package/dist/jsx/fields/FileUpload.native.js.map +1 -1
  456. package/dist/jsx/fields/FileUploadField/index.mjs +55 -22
  457. package/dist/jsx/fields/FileUploadField/index.mjs.map +1 -1
  458. package/dist/jsx/fields/FileUploadField/index.native.js +56 -20
  459. package/dist/jsx/fields/FileUploadField/index.native.js.map +1 -1
  460. package/dist/jsx/fields/HTML/index.mjs +33 -54
  461. package/dist/jsx/fields/HTML/index.mjs.map +1 -1
  462. package/dist/jsx/fields/HTML/index.native.js +30 -51
  463. package/dist/jsx/fields/HTML/index.native.js.map +1 -1
  464. package/dist/jsx/fields/Icon/index.mjs +48 -0
  465. package/dist/jsx/fields/Icon/index.mjs.map +1 -0
  466. package/dist/jsx/fields/Icon/index.native.js +76 -0
  467. package/dist/jsx/fields/Icon/index.native.js.map +1 -0
  468. package/dist/jsx/fields/Link.mjs +35 -9
  469. package/dist/jsx/fields/Link.mjs.map +1 -1
  470. package/dist/jsx/fields/Link.native.js +35 -9
  471. package/dist/jsx/fields/Link.native.js.map +1 -1
  472. package/dist/jsx/fields/LinkTree.mjs +89 -0
  473. package/dist/jsx/fields/LinkTree.mjs.map +1 -0
  474. package/dist/jsx/fields/LinkTree.native.js +125 -0
  475. package/dist/jsx/fields/LinkTree.native.js.map +1 -0
  476. package/dist/jsx/fields/LongText/index.mjs +7 -5
  477. package/dist/jsx/fields/LongText/index.mjs.map +1 -1
  478. package/dist/jsx/fields/LongText/index.native.js +6 -4
  479. package/dist/jsx/fields/LongText/index.native.js.map +1 -1
  480. package/dist/jsx/fields/Numeric/index.mjs.map +1 -1
  481. package/dist/jsx/fields/Numeric/index.native.js.map +1 -1
  482. package/dist/jsx/fields/Password/index.mjs +180 -18
  483. package/dist/jsx/fields/Password/index.mjs.map +1 -1
  484. package/dist/jsx/fields/Password/index.native.js +186 -16
  485. package/dist/jsx/fields/Password/index.native.js.map +1 -1
  486. package/dist/jsx/fields/Phone/index.mjs.map +1 -1
  487. package/dist/jsx/fields/Phone/index.native.js.map +1 -1
  488. package/dist/jsx/fields/ReadOnly/index.mjs +36 -50
  489. package/dist/jsx/fields/ReadOnly/index.mjs.map +1 -1
  490. package/dist/jsx/fields/ReadOnly/index.native.js +34 -46
  491. package/dist/jsx/fields/ReadOnly/index.native.js.map +1 -1
  492. package/dist/jsx/fields/Select/index.mjs +1 -1
  493. package/dist/jsx/fields/Select/index.mjs.map +1 -1
  494. package/dist/jsx/fields/Select/index.native.js +1 -1
  495. package/dist/jsx/fields/Select/index.native.js.map +1 -1
  496. package/dist/jsx/fields/SmallText/index.mjs +5 -4
  497. package/dist/jsx/fields/SmallText/index.mjs.map +1 -1
  498. package/dist/jsx/fields/SmallText/index.native.js +4 -3
  499. package/dist/jsx/fields/SmallText/index.native.js.map +1 -1
  500. package/dist/jsx/fields/TableMultiSelect.mjs +41 -152
  501. package/dist/jsx/fields/TableMultiSelect.mjs.map +1 -1
  502. package/dist/jsx/fields/TableMultiSelect.native.js +44 -171
  503. package/dist/jsx/fields/TableMultiSelect.native.js.map +1 -1
  504. package/dist/jsx/fields/TextEditor/index.mjs +28 -284
  505. package/dist/jsx/fields/TextEditor/index.mjs.map +1 -1
  506. package/dist/jsx/index.js +5 -1
  507. package/dist/jsx/index.js.map +1 -1
  508. package/dist/jsx/index.mjs +5 -1
  509. package/dist/jsx/index.mjs.map +1 -1
  510. package/dist/jsx/index.native.js +9 -0
  511. package/dist/jsx/index.native.js.map +1 -1
  512. package/dist/jsx/schemaForm/SchemaWizard.mjs +156 -0
  513. package/dist/jsx/schemaForm/SchemaWizard.mjs.map +1 -0
  514. package/dist/jsx/schemaForm/SchemaWizard.native.js +232 -0
  515. package/dist/jsx/schemaForm/SchemaWizard.native.js.map +1 -0
  516. package/dist/jsx/schemaForm/index.mjs +1 -1
  517. package/dist/jsx/schemaForm/index.mjs.map +1 -1
  518. package/dist/jsx/schemaForm/index.native.js +1 -1
  519. package/dist/jsx/schemaForm/index.native.js.map +1 -1
  520. package/dist/jsx/shared/useKeyboardInset.mjs +23 -0
  521. package/dist/jsx/shared/useKeyboardInset.mjs.map +1 -0
  522. package/dist/jsx/shared/useKeyboardInset.native.js +53 -0
  523. package/dist/jsx/shared/useKeyboardInset.native.js.map +1 -0
  524. package/package.json +16 -16
  525. package/src/FileBrowser/AttachLibrary.tsx +90 -0
  526. package/src/FileBrowser/FileBrowser.spec.tsx +273 -0
  527. package/src/FileBrowser/FileBrowser.stories.tsx +97 -0
  528. package/src/FileBrowser/folderTree.ts +62 -0
  529. package/src/FileBrowser/index.tsx +765 -0
  530. package/src/FileBrowser/types.ts +61 -0
  531. package/src/FileBrowser/viewPersistence.ts +37 -0
  532. package/src/FormSidebar.stories.tsx +82 -25
  533. package/src/FormSidebar.tsx +51 -37
  534. package/src/FrappeAssignment.stories.tsx +158 -12
  535. package/src/FrappeAssignment.tsx +11 -9
  536. package/src/FrappeCalendar.stories.tsx +85 -9
  537. package/src/FrappeCalendar.tsx +9 -9
  538. package/src/FrappeChartCard.stories.tsx +107 -14
  539. package/src/FrappeChartCard.tsx +5 -12
  540. package/src/FrappeDashboard.stories.tsx +79 -9
  541. package/src/FrappeDashboard.tsx +8 -8
  542. package/src/FrappeForm.tsx +36 -24
  543. package/src/FrappeGantt.stories.tsx +73 -4
  544. package/src/FrappeGantt.tsx +7 -4
  545. package/src/FrappeImageView.tsx +23 -22
  546. package/src/FrappeKPICard.stories.tsx +110 -10
  547. package/src/FrappeKPICard.tsx +6 -22
  548. package/src/FrappeKanban.stories.tsx +115 -9
  549. package/src/FrappeKanban.tsx +10 -9
  550. package/src/FrappeLikedBy.stories.tsx +82 -10
  551. package/src/FrappeLikedBy.tsx +6 -6
  552. package/src/FrappeList.stories.tsx +85 -8
  553. package/src/FrappeListView.spec.tsx +59 -0
  554. package/src/FrappeListView.tsx +27 -30
  555. package/src/FrappeProvider.stories.tsx +53 -2
  556. package/src/FrappeReportBuilder.tsx +21 -34
  557. package/src/FrappeReportView.tsx +4 -4
  558. package/src/FrappeTreeView.tsx +8 -4
  559. package/src/components/attachments.stories.tsx +79 -7
  560. package/src/components/tags.stories.tsx +131 -6
  561. package/src/components/timeline.stories.tsx +128 -7
  562. package/src/desk/Awesomebar.stories.tsx +3 -2
  563. package/src/desk/DeskFormPage.tsx +3 -2
  564. package/src/desk/DeskListPage.tsx +2 -1
  565. package/src/desk/DeskShell.stories.tsx +21 -2
  566. package/src/desk/DeskShell.tsx +56 -39
  567. package/src/desk/awesomebar.tsx +33 -22
  568. package/src/fieldRegistry.spec.tsx +131 -1
  569. package/src/fieldRegistry.ts +100 -4
  570. package/src/fields/Barcode/Barcode.stories.tsx +32 -0
  571. package/src/fields/Check/Check.spec.tsx +27 -0
  572. package/src/fields/Check/Check.stories.tsx +58 -0
  573. package/src/fields/Check/index.tsx +7 -1
  574. package/src/fields/CodeEditor/CodeEditor.stories.tsx +32 -0
  575. package/src/fields/Color/Color.spec.tsx +21 -0
  576. package/src/fields/Color/Color.stories.tsx +33 -0
  577. package/src/fields/Color/index.tsx +7 -1
  578. package/src/fields/Data/Data.spec.tsx +26 -0
  579. package/src/fields/Data/Data.stories.tsx +58 -0
  580. package/src/fields/Data/index.tsx +6 -0
  581. package/src/fields/Date/Date.stories.tsx +32 -0
  582. package/src/fields/Date/Datetime.stories.tsx +32 -0
  583. package/src/fields/Date/index.native.tsx +45 -33
  584. package/src/fields/Date/nativePresentation.spec.tsx +20 -0
  585. package/src/fields/Date/sheetKeyboard.spec.ts +51 -0
  586. package/src/fields/Date/sheetKeyboard.ts +37 -0
  587. package/src/fields/DateRange/DateRange.stories.tsx +41 -0
  588. package/src/fields/Duration/Duration.stories.tsx +32 -0
  589. package/src/fields/DynamicLink.stories.tsx +115 -14
  590. package/src/fields/DynamicLink.tsx +43 -125
  591. package/src/fields/FileUpload.tsx +273 -54
  592. package/src/fields/FileUploadField/FileUploadField.stories.tsx +87 -0
  593. package/src/fields/FileUploadField/index.tsx +73 -25
  594. package/src/fields/FrappeFileUpload.stories.tsx +32 -0
  595. package/src/fields/Geolocation/Geolocation.stories.tsx +33 -0
  596. package/src/fields/HTML/Html.stories.tsx +59 -0
  597. package/src/fields/HTML/index.tsx +25 -34
  598. package/src/fields/Heading/Heading.stories.tsx +63 -2
  599. package/src/fields/Icon/index.tsx +90 -0
  600. package/src/fields/Link.spec.tsx +10 -0
  601. package/src/fields/Link.stories.tsx +161 -2
  602. package/src/fields/Link.tree.spec.tsx +111 -0
  603. package/src/fields/Link.tsx +36 -19
  604. package/src/fields/LinkTree.tsx +102 -0
  605. package/src/fields/LongText/LongText.stories.tsx +66 -0
  606. package/src/fields/LongText/index.tsx +13 -5
  607. package/src/fields/MarkdownEditor/MarkdownEditor.stories.tsx +36 -0
  608. package/src/fields/MentionInput/MentionInput.stories.tsx +44 -0
  609. package/src/fields/Numeric/Numeric.spec.tsx +7 -0
  610. package/src/fields/Numeric/Numeric.stories.tsx +32 -0
  611. package/src/fields/Numeric/index.tsx +7 -0
  612. package/src/fields/OTPInput/OTPInput.stories.tsx +33 -0
  613. package/src/fields/Password/Password.spec.tsx +119 -0
  614. package/src/fields/Password/Password.stories.tsx +58 -0
  615. package/src/fields/Password/index.tsx +234 -23
  616. package/src/fields/Phone/Phone.stories.tsx +33 -0
  617. package/src/fields/Phone/index.tsx +4 -0
  618. package/src/fields/Progress/Progress.stories.tsx +32 -0
  619. package/src/fields/RadioGroup/RadioGroup.stories.tsx +37 -0
  620. package/src/fields/Rating/Rating.stories.tsx +33 -0
  621. package/src/fields/ReadOnly/ReadOnly.stories.tsx +54 -0
  622. package/src/fields/ReadOnly/index.tsx +41 -55
  623. package/src/fields/Select/Select.stories.tsx +43 -0
  624. package/src/fields/Select/index.tsx +5 -1
  625. package/src/fields/Signature/Signature.stories.tsx +32 -0
  626. package/src/fields/Slider/Slider.stories.tsx +32 -0
  627. package/src/fields/SmallText/SmallText.stories.tsx +58 -0
  628. package/src/fields/SmallText/index.tsx +9 -4
  629. package/src/fields/Switch/Switch.stories.tsx +33 -0
  630. package/src/fields/TableMultiSelect.spec.tsx +26 -5
  631. package/src/fields/TableMultiSelect.stories.tsx +90 -14
  632. package/src/fields/TableMultiSelect.tsx +55 -177
  633. package/src/fields/TextEditor/TextEditor.spec.tsx +5 -3
  634. package/src/fields/TextEditor/TextEditor.stories.tsx +66 -0
  635. package/src/fields/TextEditor/index.tsx +32 -299
  636. package/src/fields/TimePicker/TimePicker.stories.tsx +32 -0
  637. package/src/fields/ToggleGroup/ToggleGroup.stories.tsx +35 -0
  638. package/src/frappeRemainder.designLaw.spec.ts +176 -0
  639. package/src/frappeViews.designLaw.spec.ts +94 -0
  640. package/src/index.ts +18 -1
  641. package/src/schemaForm/SchemaForm.spec.tsx +154 -0
  642. package/src/schemaForm/SchemaForm.stories.tsx +27 -0
  643. package/src/schemaForm/SchemaWizard.spec.tsx +134 -0
  644. package/src/schemaForm/SchemaWizard.stories.tsx +94 -0
  645. package/src/schemaForm/SchemaWizard.tsx +192 -0
  646. package/src/schemaForm/index.tsx +3 -4
  647. package/src/shared/useKeyboardInset.ts +45 -0
  648. package/types/FileBrowser/AttachLibrary.d.ts +13 -0
  649. package/types/FileBrowser/AttachLibrary.d.ts.map +1 -0
  650. package/types/FileBrowser/folderTree.d.ts +15 -0
  651. package/types/FileBrowser/folderTree.d.ts.map +1 -0
  652. package/types/FileBrowser/index.d.ts +4 -0
  653. package/types/FileBrowser/index.d.ts.map +1 -0
  654. package/types/FileBrowser/types.d.ts +59 -0
  655. package/types/FileBrowser/types.d.ts.map +1 -0
  656. package/types/FileBrowser/viewPersistence.d.ts +4 -0
  657. package/types/FileBrowser/viewPersistence.d.ts.map +1 -0
  658. package/types/FormSidebar.d.ts.map +1 -1
  659. package/types/FrappeAssignment.d.ts.map +1 -1
  660. package/types/FrappeChartCard.d.ts.map +1 -1
  661. package/types/FrappeDashboard.d.ts.map +1 -1
  662. package/types/FrappeForm.d.ts.map +1 -1
  663. package/types/FrappeGantt.d.ts.map +1 -1
  664. package/types/FrappeImageView.d.ts.map +1 -1
  665. package/types/FrappeKPICard.d.ts.map +1 -1
  666. package/types/FrappeKanban.d.ts.map +1 -1
  667. package/types/FrappeListView.d.ts.map +1 -1
  668. package/types/FrappeReportBuilder.d.ts.map +1 -1
  669. package/types/FrappeReportView.d.ts.map +1 -1
  670. package/types/FrappeTreeView.d.ts.map +1 -1
  671. package/types/desk/DeskFormPage.d.ts.map +1 -1
  672. package/types/desk/DeskListPage.d.ts.map +1 -1
  673. package/types/desk/DeskShell.d.ts +4 -2
  674. package/types/desk/DeskShell.d.ts.map +1 -1
  675. package/types/desk/awesomebar.d.ts.map +1 -1
  676. package/types/fieldRegistry.d.ts.map +1 -1
  677. package/types/fields/Check/index.d.ts +6 -0
  678. package/types/fields/Check/index.d.ts.map +1 -1
  679. package/types/fields/Color/index.d.ts +6 -0
  680. package/types/fields/Color/index.d.ts.map +1 -1
  681. package/types/fields/Data/index.d.ts +6 -0
  682. package/types/fields/Data/index.d.ts.map +1 -1
  683. package/types/fields/Date/index.native.d.ts +5 -0
  684. package/types/fields/Date/index.native.d.ts.map +1 -1
  685. package/types/fields/Date/sheetKeyboard.d.ts +19 -0
  686. package/types/fields/Date/sheetKeyboard.d.ts.map +1 -0
  687. package/types/fields/DynamicLink.d.ts.map +1 -1
  688. package/types/fields/FileUpload.d.ts +11 -1
  689. package/types/fields/FileUpload.d.ts.map +1 -1
  690. package/types/fields/FileUploadField/index.d.ts +8 -1
  691. package/types/fields/FileUploadField/index.d.ts.map +1 -1
  692. package/types/fields/HTML/index.d.ts.map +1 -1
  693. package/types/fields/Icon/index.d.ts +15 -0
  694. package/types/fields/Icon/index.d.ts.map +1 -0
  695. package/types/fields/Link.d.ts +6 -1
  696. package/types/fields/Link.d.ts.map +1 -1
  697. package/types/fields/LinkTree.d.ts +3 -0
  698. package/types/fields/LinkTree.d.ts.map +1 -0
  699. package/types/fields/LongText/index.d.ts +4 -0
  700. package/types/fields/LongText/index.d.ts.map +1 -1
  701. package/types/fields/Numeric/index.d.ts +7 -0
  702. package/types/fields/Numeric/index.d.ts.map +1 -1
  703. package/types/fields/Password/index.d.ts +1 -0
  704. package/types/fields/Password/index.d.ts.map +1 -1
  705. package/types/fields/Phone/index.d.ts +4 -0
  706. package/types/fields/Phone/index.d.ts.map +1 -1
  707. package/types/fields/ReadOnly/index.d.ts.map +1 -1
  708. package/types/fields/Select/index.d.ts +4 -0
  709. package/types/fields/Select/index.d.ts.map +1 -1
  710. package/types/fields/SmallText/index.d.ts +4 -0
  711. package/types/fields/SmallText/index.d.ts.map +1 -1
  712. package/types/fields/TableMultiSelect.d.ts +2 -1
  713. package/types/fields/TableMultiSelect.d.ts.map +1 -1
  714. package/types/fields/TextEditor/index.d.ts +2 -3
  715. package/types/fields/TextEditor/index.d.ts.map +1 -1
  716. package/types/index.d.ts +7 -1
  717. package/types/index.d.ts.map +1 -1
  718. package/types/schemaForm/SchemaWizard.d.ts +20 -0
  719. package/types/schemaForm/SchemaWizard.d.ts.map +1 -0
  720. package/types/schemaForm/index.d.ts.map +1 -1
  721. package/types/shared/useKeyboardInset.d.ts +18 -0
  722. package/types/shared/useKeyboardInset.d.ts.map +1 -0
@@ -34,7 +34,6 @@ var import_react = require("@phosphor-icons/react");
34
34
  var import_theme = require("@multiplatform.one/theme");
35
35
  var import_react2 = require("react");
36
36
  var import_react_i18next = require("react-i18next");
37
- var import_forms2 = require("@multiplatform.one/forms");
38
37
  var import_tamagui = require("tamagui");
39
38
  var import_FrappeProvider = require("../FrappeProvider.native.js");
40
39
  function _instanceof(left, right) {
@@ -46,6 +45,50 @@ function _instanceof(left, right) {
46
45
  return left instanceof right;
47
46
  }
48
47
  }
48
+ function formatFileSize(bytes) {
49
+ if (bytes === 0) return "0 Bytes";
50
+ var k = 1024;
51
+ var sizes = ["Bytes", "KB", "MB", "GB"];
52
+ var i = Math.floor(Math.log(bytes) / Math.log(k));
53
+ return `${Number.parseFloat((bytes / Math.pow(k, i)).toFixed(2))} ${sizes[i]}`;
54
+ }
55
+ function readFileAsDataUrl(file, param) {
56
+ var {
57
+ onProgress,
58
+ signal
59
+ } = param;
60
+ return new Promise(function (resolve, reject) {
61
+ var reader = new FileReader();
62
+ var onAbort = function onAbort2() {
63
+ reader.abort();
64
+ reject(new DOMException("Aborted", "AbortError"));
65
+ };
66
+ if (signal.aborted) {
67
+ onAbort();
68
+ return;
69
+ }
70
+ signal.addEventListener("abort", onAbort);
71
+ reader.onprogress = function (event) {
72
+ if (event.lengthComputable && event.total > 0) {
73
+ onProgress(Math.round(event.loaded / event.total * 100));
74
+ }
75
+ };
76
+ reader.onload = function () {
77
+ signal.removeEventListener("abort", onAbort);
78
+ onProgress(100);
79
+ resolve(reader.result);
80
+ };
81
+ reader.onerror = function () {
82
+ signal.removeEventListener("abort", onAbort);
83
+ reject(new Error("Failed to read file"));
84
+ };
85
+ reader.onabort = function () {
86
+ signal.removeEventListener("abort", onAbort);
87
+ reject(new DOMException("Aborted", "AbortError"));
88
+ };
89
+ reader.readAsDataURL(file);
90
+ });
91
+ }
49
92
  function FileUpload(param) {
50
93
  var {
51
94
  label,
@@ -61,7 +104,8 @@ function FileUpload(param) {
61
104
  helperText,
62
105
  readOnly = false,
63
106
  skeleton = false,
64
- compact = false
107
+ compact = false,
108
+ onUpload
65
109
  } = param;
66
110
  var _ref;
67
111
  var {
@@ -72,11 +116,15 @@ function FileUpload(param) {
72
116
  } = (0, import_theme.useResolvedKnobs)();
73
117
  var config = (0, import_FrappeProvider.useFrappeConfig)();
74
118
  var fileInputRef = (0, import_react2.useRef)(null);
75
- var [uploading, setUploading] = (0, import_react2.useState)(false);
119
+ var [transfer, setTransfer] = (0, import_react2.useState)(null);
76
120
  var [error, setError] = (0, import_react2.useState)(null);
121
+ var transferRef = (0, import_react2.useRef)(null);
122
+ var onUploadRef = (0, import_react2.useRef)(onUpload);
123
+ onUploadRef.current = onUpload;
77
124
  var isLocked = disabled || readOnly;
78
125
  var minHeight = compact ? 40 : 56;
79
126
  var previewSize = compact ? 120 : 200;
127
+ var uploading = (transfer === null || transfer === void 0 ? void 0 : transfer.status) === "uploading";
80
128
  var finalBaseURL = (_ref = baseURL !== null && baseURL !== void 0 ? baseURL : config === null || config === void 0 ? void 0 : config.baseURL) !== null && _ref !== void 0 ? _ref : "";
81
129
  var finalConfig = finalBaseURL ? {
82
130
  baseURL: finalBaseURL,
@@ -90,7 +138,79 @@ function FileUpload(param) {
90
138
  var fileCollection = (0, import_frappe.useFrappeCollection)(finalConfig, "File", {
91
139
  fields: ["name", "file_name", "file_url", "is_private"]
92
140
  });
93
- var handleFileSelect = async function handleFileSelect2(event) {
141
+ (0, import_react2.useEffect)(function () {
142
+ return function () {
143
+ var _transferRef_current;
144
+ (_transferRef_current = transferRef.current) === null || _transferRef_current === void 0 ? void 0 : _transferRef_current.controller.abort();
145
+ };
146
+ }, []);
147
+ var defaultUpload = (0, import_react2.useCallback)(async function (file, ctx) {
148
+ var base64 = await readFileAsDataUrl(file, ctx);
149
+ if (fileCollection) {
150
+ var tx = fileCollection.insert({
151
+ doctype: "File",
152
+ name: `new-${Date.now()}`,
153
+ file_name: file.name,
154
+ file_url: base64,
155
+ is_private: 0
156
+ });
157
+ await tx.isPersisted.promise;
158
+ }
159
+ return base64;
160
+ }, [fileCollection]);
161
+ var runTransfer = (0, import_react2.useCallback)(async function (file, controller) {
162
+ var _onUploadRef_current;
163
+ var upload = (_onUploadRef_current = onUploadRef.current) !== null && _onUploadRef_current !== void 0 ? _onUploadRef_current : defaultUpload;
164
+ try {
165
+ var url = await upload(file, {
166
+ onProgress: function onProgress(percent) {
167
+ var n = Math.min(100, Math.max(0, Math.round(Number(percent) || 0)));
168
+ setTransfer(function (prev) {
169
+ return prev ? {
170
+ ...prev,
171
+ progress: n
172
+ } : prev;
173
+ });
174
+ },
175
+ signal: controller.signal
176
+ });
177
+ if (controller.signal.aborted) return;
178
+ setTransfer(null);
179
+ transferRef.current = null;
180
+ setError(null);
181
+ onChange(url);
182
+ } catch (err) {
183
+ if (controller.signal.aborted || _instanceof(err, DOMException) && err.name === "AbortError") {
184
+ return;
185
+ }
186
+ var problem = _instanceof(err, Error) && err.message ? err.message : t("Upload failed");
187
+ setTransfer(function (prev) {
188
+ return prev ? {
189
+ ...prev,
190
+ status: "failed",
191
+ problem,
192
+ action: t("Try again or remove the file")
193
+ } : prev;
194
+ });
195
+ setError(null);
196
+ }
197
+ }, [defaultUpload, onChange, t]);
198
+ var startTransfer = (0, import_react2.useCallback)(function (file) {
199
+ var _transferRef_current;
200
+ (_transferRef_current = transferRef.current) === null || _transferRef_current === void 0 ? void 0 : _transferRef_current.controller.abort();
201
+ var controller = new AbortController();
202
+ var next = {
203
+ file,
204
+ status: "uploading",
205
+ progress: 0,
206
+ controller
207
+ };
208
+ transferRef.current = next;
209
+ setTransfer(next);
210
+ setError(null);
211
+ void runTransfer(file, controller);
212
+ }, [runTransfer]);
213
+ var handleFileSelect = function handleFileSelect2(event) {
94
214
  var _event_target_files;
95
215
  if (isLocked) return;
96
216
  var file = (_event_target_files = event.target.files) === null || _event_target_files === void 0 ? void 0 : _event_target_files[0];
@@ -99,51 +219,33 @@ function FileUpload(param) {
99
219
  setError(`File size exceeds ${Math.round(maxSize / 1024 / 1024)}MB limit`);
100
220
  return;
101
221
  }
102
- setError(null);
103
- setUploading(true);
104
- try {
105
- var reader = new FileReader();
106
- reader.onload = async function (e) {
107
- try {
108
- var _e_target;
109
- var base64 = (_e_target = e.target) === null || _e_target === void 0 ? void 0 : _e_target.result;
110
- if (fileCollection) {
111
- var tx = fileCollection.insert({
112
- doctype: "File",
113
- name: `new-${Date.now()}`,
114
- file_name: file.name,
115
- file_url: base64,
116
- is_private: 0
117
- });
118
- await tx.isPersisted.promise;
119
- }
120
- onChange(base64);
121
- } catch (err) {
122
- setError(_instanceof(err, Error) ? err.message : t("Upload failed"));
123
- } finally {
124
- setUploading(false);
125
- }
126
- };
127
- reader.onerror = function () {
128
- setError(t("Failed to read file"));
129
- setUploading(false);
130
- };
131
- reader.readAsDataURL(file);
132
- } catch (err) {
133
- setError(_instanceof(err, Error) ? err.message : t("Upload failed"));
134
- setUploading(false);
135
- }
222
+ startTransfer(file);
223
+ };
224
+ var handleCancel = function handleCancel2() {
225
+ var _transferRef_current;
226
+ (_transferRef_current = transferRef.current) === null || _transferRef_current === void 0 ? void 0 : _transferRef_current.controller.abort();
227
+ transferRef.current = null;
228
+ setTransfer(null);
229
+ if (fileInputRef.current) fileInputRef.current.value = "";
230
+ };
231
+ var handleRetry = function handleRetry2() {
232
+ if (!transfer) return;
233
+ startTransfer(transfer.file);
136
234
  };
137
235
  var handleRemove = function handleRemove2() {
138
236
  if (isLocked) return;
237
+ handleCancel();
139
238
  onChange("");
140
239
  if (fileInputRef.current) {
141
240
  fileInputRef.current.value = "";
142
241
  }
143
242
  };
243
+ var handleRemoveFailed = function handleRemoveFailed2() {
244
+ handleCancel();
245
+ };
144
246
  var handleClick = function handleClick2() {
145
247
  var _fileInputRef_current;
146
- if (isLocked) return;
248
+ if (isLocked || uploading) return;
147
249
  (_fileInputRef_current = fileInputRef.current) === null || _fileInputRef_current === void 0 ? void 0 : _fileInputRef_current.click();
148
250
  };
149
251
  if (skeleton) {
@@ -176,14 +278,103 @@ function FileUpload(param) {
176
278
  },
177
279
  onChange: handleFileSelect,
178
280
  disabled: isLocked || uploading
179
- }), !value ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
281
+ }), transfer ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
282
+ "data-file-upload": "transfer",
283
+ "data-transfer-status": transfer.status,
284
+ ...knobProps.gap,
285
+ ...knobProps.panelPadding,
286
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
287
+ gap: "$2",
288
+ alignItems: "center",
289
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_react.FileIcon, {
290
+ size: 20
291
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
292
+ flex: 1,
293
+ gap: "$1",
294
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
295
+ numberOfLines: 1,
296
+ children: transfer.file.name
297
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
298
+ numberOfLines: 1,
299
+ fontWeight: "700",
300
+ fontSize: "$2",
301
+ children: formatFileSize(transfer.file.size)
302
+ })]
303
+ }), transfer.status === "uploading" ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
304
+ size: "$2",
305
+ variant: "outlined",
306
+ icon: import_react.XIcon,
307
+ "aria-label": t("Cancel {{name}}", {
308
+ name: transfer.file.name
309
+ }),
310
+ disabled: isLocked,
311
+ onPress: handleCancel,
312
+ ...knobProps.borderRadius,
313
+ children: t("Cancel")
314
+ }) : null]
315
+ }), transfer.status === "uploading" ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
316
+ "data-file-upload": "progress",
317
+ role: "progressbar",
318
+ "aria-valuemin": 0,
319
+ "aria-valuemax": 100,
320
+ "aria-valuenow": transfer.progress,
321
+ "aria-label": t("Uploading {{name}}", {
322
+ name: transfer.file.name
323
+ }),
324
+ height: 11,
325
+ width: "100%",
326
+ borderRadius: 1e3,
327
+ backgroundColor: "$color4",
328
+ overflow: "hidden",
329
+ children: /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.YStack, {
330
+ height: "100%",
331
+ width: `${transfer.progress}%`,
332
+ backgroundColor: "$color11"
333
+ })
334
+ }) : null, transfer.status === "failed" ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
335
+ ...knobProps.gap,
336
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
337
+ color: "$red11",
338
+ fontSize: "$2",
339
+ children: transfer.problem
340
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
341
+ color: "$color11",
342
+ fontSize: "$2",
343
+ children: transfer.action
344
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
345
+ ...knobProps.gap,
346
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
347
+ size: "$2",
348
+ variant: "outlined",
349
+ "aria-label": t("Retry {{name}}", {
350
+ name: transfer.file.name
351
+ }),
352
+ disabled: isLocked,
353
+ onPress: handleRetry,
354
+ ...knobProps.borderRadius,
355
+ children: t("Retry")
356
+ }), /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
357
+ size: "$2",
358
+ variant: "outlined",
359
+ icon: import_react.XIcon,
360
+ "aria-label": t("Remove {{name}}", {
361
+ name: transfer.file.name
362
+ }),
363
+ disabled: isLocked,
364
+ onPress: handleRemoveFailed,
365
+ ...knobProps.borderRadius,
366
+ children: t("Remove")
367
+ })]
368
+ })]
369
+ }) : null]
370
+ }) : null, !value && !transfer ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
180
371
  size: "$3",
181
- icon: uploading ? import_forms2.Spinner : import_react.UploadIcon,
182
- disabled: isLocked || uploading,
372
+ icon: import_react.UploadIcon,
373
+ disabled: isLocked,
183
374
  onPress: handleClick,
184
375
  ...knobProps.borderRadius,
185
- children: uploading ? t("Uploading...") : t("Choose File")
186
- }) : /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
376
+ children: t("Choose File")
377
+ }) : null, value ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.YStack, {
187
378
  ...knobProps.gap,
188
379
  children: [isImage ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Image, {
189
380
  // src (string), not source: the RN source object leaks onto the
@@ -206,13 +397,13 @@ function FileUpload(param) {
206
397
  numberOfLines: 1,
207
398
  children: value.split("/").pop() || value
208
399
  })]
209
- }), !readOnly && /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
400
+ }), !readOnly && !transfer ? /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_tamagui.XStack, {
210
401
  ...knobProps.gap,
211
402
  children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Button, {
212
403
  size: "$2",
213
404
  variant: "outlined",
214
405
  icon: import_react.UploadIcon,
215
- disabled: isLocked || uploading,
406
+ disabled: isLocked,
216
407
  onPress: handleClick,
217
408
  ...knobProps.borderRadius,
218
409
  children: t("Replace")
@@ -220,21 +411,21 @@ function FileUpload(param) {
220
411
  size: "$2",
221
412
  variant: "outlined",
222
413
  icon: import_react.XIcon,
223
- disabled: isLocked || uploading,
414
+ disabled: isLocked,
224
415
  onPress: handleRemove,
225
416
  ...knobProps.borderRadius,
226
417
  children: t("Remove")
227
418
  })]
228
- })]
229
- }), helperText && !error && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
419
+ }) : null]
420
+ }) : null, helperText && !error && !transfer ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
230
421
  color: "$color11",
231
422
  fontSize: "$2",
232
423
  children: helperText
233
- }), error && /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
424
+ }) : null, error ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_tamagui.Text, {
234
425
  color: "$red11",
235
426
  fontSize: "$2",
236
427
  children: error
237
- })]
428
+ }) : null]
238
429
  });
239
430
  }
240
431
  //# sourceMappingURL=FileUpload.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","FileUpload_exports","FileUpload","module","exports","import_jsx_runtime","require","import_frappe","import_forms","import_react","import_theme","import_react2","import_react_i18next","import_forms2","import_tamagui","import_FrappeProvider","_instanceof","left","right","Symbol","hasInstance","param","label","onChange","accept","isImage","disabled","required","maxSize","baseURL","auth","helperText","readOnly","skeleton","compact","_ref","t","useTranslation","knobProps","useResolvedKnobs","config","useFrappeConfig","fileInputRef","useRef","uploading","setUploading","useState","error","setError","isLocked","minHeight","previewSize","finalBaseURL","finalConfig","socketPort","siteName","socketBaseURL","syncOptions","fixtures","fileCollection","useFrappeCollection","fields","handleFileSelect","handleFileSelect2","event","_event_target_files","file","files","size","Math","round","reader","FileReader","onload","e","_e_target","base64","result","tx","insert","doctype","Date","now","file_name","file_url","is_private","isPersisted","promise","err","Error","message","onerror","readAsDataURL","handleRemove","handleRemove2","current","handleClick","handleClick2","_fileInputRef_current","click","jsxs","YStack","gap","children","jsx","Skeleton","variant","width","height","Label","Text","color","ref","type","style","display","Button","icon","Spinner","UploadIcon","onPress","borderRadius","Image","src","alt","objectFit","XStack","alignItems"],"sources":["../../../src/fields/FileUpload.tsx"],"sourcesContent":[null],"mappings":"AAAA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAAgB;AACzB,IAAAC,gBAAmB,GAAAF,MAAA,CAAAG,wBAAyB;AAC5C,IAAAC,iBAAS,GAAAJ,MAAA,CAAAK,mBAAwB;AAEjC,IAAAC,YAAS,GAAQN,MAAA,CAAAO,SAAgB,CAAAC,cAAA;AACjC,IAAAC,QAAS,GAAAA,CAAAC,MAAA,EAAAC,GAAA,KAAsB;EAC/B,SAASC,IAAA,IAAAD,GAAA,EACTZ,SAAS,CAAAW,MAAQ,EAAAE,IAAO;IAAAC,GAAO,EAAAF,GAAM,CAAAC,IAAA;IAAQE,UAAA;EAAc;AAC3D;AAoIM,IAAAC,WAAA,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAAC,MAAA,EAAAC,IAAA;EAjHC,IAAAF,IAAS,WAAWA,IAAA,wBAAAA,IAAA;IACzB,SAAAG,GAAA,IAAAhB,iBAAA,CAAAa,IAAA,GACA,KAAAX,YAAA,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAA,KAAAA,GAAA,KAAAF,MAAA,EACAnB,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;EACA;EACA,OAAAE,EAAA;AAAU;AACC,IACXM,YAAW,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IACXE,kBAAc,GAAO;AAAAhB,QACrB,CAAAgB,kBAAA;EACAC,UAAA,EAAAA,CAAA,KAAAA;AAAA,EACA;AAAAC,MACA,CAAAC,OAAW,GAAAN,YAAA,CAAAG,kBAAA;AAAA,IACXI,kBAAW,GAAAC,OAAA;AAAA,IACXC,aAAU,GAAAD,OAAA;AACZ,IAAoBE,YAAA,GAAAF,OAAA;AAClB,IAAAG,YAAc,GAAAH,OAAA,wBAAe;AAC7B,IAAAI,YAAQ,GAAAJ,OAAc,2BAAiB;AACvC,IAAAK,aAAe,GAAAL,OAAA,QAAgB;AAC/B,IAAAM,oBAAqB,GAAAN,OAA6B;AAClD,IAAAO,aAAO,GAAWP,OAAA,2BAA8B;AAChD,IAAAQ,cAAc,GAAAR,OAAY,UAAwB;AAClD,IAAAS,qBAAiB,GAAAT,OAAY;AAC7B,SAAMU,WAAYA,CAAAC,IAAA,EAAAC,KAAU;EAC5B,2BAAoB;;EAEpB,IAAAA,KAAM,YAAe,OAAAC,MAAW,gBAAQ,IAAWD,KAAA,CAAAC,MAAA,CAAAC,WAAA;IACnD,OAAM,EAAAF,KAAA,CAAAC,MAAc,CAAAC,WAChB,EAAAH,IAAA;EAAA,OACE;IACA,OAAAA,IAAA,YAAoBC,KAAA;EAAA;AACF;AACK,SACvBhB,UAAcA,CAAAmB,KAAA,EAAQ;EAAA,IACtB;IAAAC,KAAA;IAAAtB,KAAa;IAAAuB,QAAQ;IAAAC,MAAA;IAAAC,OAAA;IAAAC,QAAA;IAAAC,QAAA;IAAAC,OAAA;IAAAC,OAAA;IAAAC,IAAA;IAAAC,UAAA;IAAAC,QAAA;IAAAC,QAAA;IAAAC,OAAA;EAAA,IAAAb,KAAA;EAAA,IACrBc,IAAA;EACF,IACA;IAAAC;EAAA,QAAAxB,oBAAA,CAAAyB,cAAA;EAEJ;IAAMC;EAAA,QAAiB5B,YAAA,CAAA6B,gBAMpB,GAAa;EAAQ,IACtBC,MAAQ,GAAC,IAAAzB,qBAAqB,CAAA0B,eAAY,EAAY;EACxD,IAACC,YAAA,OAAA/B,aAAA,CAAAgC,MAAA;EAED,KAAAC,SAAM,EAAAC,YAAmB,IAAO,IAAAlC,aAA+C,CAAAmC,QAAA;EAC7E,KAAAC,KAAI,EAAAC,QAAU,QAAArC,aAAA,CAAAmC,QAAA;EACd,IAAAG,QAAM,GAAOvB,QAAM,IAAAM,QAAO;EAC1B,IAAAkB,SAAW,GAAAhB,OAAA;EAEX,IAAAiB,WAAI,GAAWjB,OAAK,MAAO;EACzB,IAAAkB,YAAS,IAAAjB,IAAA,GAAAN,OAAqB,KAAK,QAAMA,OAAA,KAAU,KAAO,IAAKA,OAAA,GAAUW,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAX,OAAA,cAAAM,IAAA,cAAAA,IAAA;EACzE,IAAAkB,WAAA,GAAAD,YAAA;IACFvB,OAAA,EAAAuB,YAAA;IAEAE,UAAS,EAAAd,MAAI,aAAAA,MAAA,uBAAAA,MAAA,CAAAc,UAAA;IACbC,QAAA,EAAAf,MAAa,KAAI,QAAAA,MAAA,uBAAAA,MAAA,CAAAe,QAAA;IAEjBC,aAAI,EAAAhB,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAgB,aAAA;IACF1B,IAAA,EAAAA,IAAM,SAAS,IAAIA,IAAA,KAAW,SAAAA,IAAA,GAAAU,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAV,IAAA;IAC9B2B,WAAO,EAAAjB,MAAS,SAAO,IAAMA,MAAA,uBAAAA,MAAA,CAAAiB,WAAA;IAC3BC,QAAI,EAAAlB,MAAA,aAAAA,MAAA,uBAAAA,MAAA,CAAAkB;EACF;EAEA,IAAAC,cAAI,OAAApD,aAAgB,CAAAqD,mBAAA,EAAAP,WAAA;IAClBQ,MAAA,GAAiC,QACtB,WACT,EAAuB,UACvB,EAAgB,YAChB;EACY;EAEd,IAAAC,gBAAS,kBAAYC,kBAAAC,KAAA;IAAA,IAAAC,mBACvB;IACA,IAAAhB,QAAA;IAAe,IACjBiB,IAAA,IAAAD,mBAAc,GAAAD,KAAA,CAAA9E,MAAA,CAAAiF,KAAA,cAAAF,mBAAA,uBAAAA,mBAAA;IACZ,KAAAC,IAAA;IAAgE,IAClEtC,OAAA,IAAEsC,IAAA,CAAAE,IAAA,GAAAxC,OAAA;MACAoB,QAAA,sBAAkBqB,IAAA,CAAAC,KAAA,CAAA1C,OAAA;MAAA;IACpB;IAGFoB,QAAA,CAAO;IACLH,YAAA,CAAS,IAAE;IACX;MACF,IAAA0B,MAAA,OAAAC,UAAA;MAEAD,MAAA,CAAOE,MAAA,mBAAkBC,CAAA;QAC3B;UACE,IAAAC,SAAS;UACT,IAAAC,MAAa,IAAKD,SAAA,GAAAD,CAAA,CAAAxF,MAAA,cAAAyF,SAAA,uBAAAA,SAAA,CAAAE,MAAA;UACpB,IAAAlB,cAAA;YACF,IAAAmB,EAAA,GAAAnB,cAAA,CAAAoB,MAAA;cAEMC,OAAA,EAAe,MAAM;cACrB5F,IAAU,SAAA6F,IAAA,CAAAC,GAAA;cACLC,SAAE,EAAAjB,IAAA,CAAA9E,IAAA;cACPgG,QAAa,EAAAR,MAAS;cACxBS,UAAa;YACf;YACF,MAAAP,EAAA,CAAAQ,WAAA,CAAAC,OAAA;UAEM;UACAhE,QAAU,CAAAqD,MAAA;QACd,SAAaY,GAAA;UACfxC,QAAA,CAAAhC,WAAA,CAAAwE,GAAA,EAAAC,KAAA,IAAAD,GAAA,CAAAE,OAAA,GAAAtD,CAAA;QAEI,UAAU;UACZS,YACE;QACG;MACD;MAA4D0B,MAC9D,CAAAoB,OAAA;QAEJ3C,QAAA,CAAAZ,CAAA;QAEAS,YACE;MACG;MAEI0B,MAAA,CAAAqB,aAAA,CAAA1B,IAAA;IAAA,EACA,OAAAsB,GAAA,EAAY;MAAuBxC,QACtC,CAAAhC,WAAA,CAAAwE,GAAA,EAAAC,KAAA,IAAAD,GAAA,CAAAE,OAAA,GAAAtD,CAAA;MAGFS,YAAA;IAAA;EAAC;EAAA,IAAAgD,YACM,YAAAC,cAAA;IAAA,IACL7C,QAAK;IAAA1B,QACL,IAAQ;IAAiC,IACzCmB,YAAS,CAAAqD,OAAS;MAAOrD,YACf,CAAAqD,OAAA,CAAA/F,KAAA;IAAA;EACY;EAAA,IACxBgG,WAAA,YAAAC,aAAA;IAEC,IAACC,qBACA;IAAA,IAACjD,QAAA;IAAA,CAAAiD,qBAAA,GAAAxD,YAAA,CAAAqD,OAAA,cAAAG,qBAAA,uBAAAA,qBAAA,CAAAC,KAAA;EAAA;EACM,IAAAlE,QACC;IAAsB,OAC5B,eAAU,IAAY5B,kBAAA,CAAA+F,IAAA,EAAAtF,cAAA,CAAAuF,MAAA;MAAA,GACtB/D,SAAS,CAAAgE,GAAA;MAAAC,QACL,GAEHjF,KAAA,mBAAc,IAAAjB,kBAAoB,CAAAmG,GAAA,EAAAhG,YAAa,CAAAiG,QAAA;QAAAC,OAAA;QAGlDC,KAAA;QACGC,MACC;MAAC,uBAAAvG,kBAAA,CAAAmG,GAAA,EAAAhG,YAAA,CAAAiG,QAAA;QAGCC,OAAK;QACLC,KAAK,EAAE;QACPC,MAAA,EAAO1D;MAAA,EACP;IACc;EACJ;EAAA,OACZ,eAEA,IAAA7C,kBAAA,CAAA+F,IAAA,EAAAtF,cAAA,CAAAuF,MAAA;IAAA,GAAA/D,SAAC,CAAAgE,GAAA;IAAAC,QAAA,GAAAjF,KACC,IAAI,mBAAAjB,kBAAA,CAAA+F,IAAA,EAAAtF,cAAA,CAAA+F,KAAA;MAAAN,QACJ,GACCjF,KAAG,EACHK,QAAK,mBAAiB,IAAUtB,kBAAA,CAAAmG,GAAA,EAAA1F,cAAA,CAAAgG,IAAA;QAEjCC,KAAA;QAAAR,QAAA;MAAoB,EACpB;IAEA,IACF,mBAAAlG,kBAAA,CAAAmG,GAAA;MAGAQ,GAAA,EAAAtE,YACA;MACEuE,IAAA;MAAAzF,MAAC,EAAAA,MAAA,KAAAC,OAAA;MAAAyF,KAAA;QAAAC,OACC,EAAK;MAAA;MACG5F,QACR,EAAMuC,gBAAA;MAAApC,QACN,EAAAuB,QAAU,IAAAL;IAAY,IACb,CAAA5C,KACR,GAAG,eAAU,IAAAK,kBAAA,CAAAmG,GAAA,EAAA1F,cAAA,CAAAsG,MAAA;MAAAhD,IAEb;MAAWiD,IAAA,EAAAzE,SAAA,GAAA/B,aAAA,CAAAyG,OAAA,GAAA7G,YAAA,CAAA8G,UAAA;MACd7F,QAAA,EAAAuB,QAAA,IAAAL,SAAA;MACA4E,OAAA,EAAAxB,WAAA;MAAA,GAAC1D,SAAA,CAAAmF,YAAA;MAAAlB,QAAA,EAAA3D,SAAA,GAAAR,CAAA,mBAAAA,CAAA;IAAA,oBACM,IAAA/B,kBAAA,CAAA+F,IAAA,EAAAtF,cAAA,CAAAuF,MAAA;MAAA,GAAA/D,SACL,CAAQgE,GAAA;MAAAC,QACR,EAAM,CAAA9E,OACN,kBAAsB,IAAApB,kBAAA,CAAAmG,GAAA,EAAA1F,cAAA,CAAA4G,KAAA;QACtB;QACC;QAEAC,GAAA,EAAA3H,KAAA;QAAU4H,GAAA,EAAAxF,CAAA;QACbuE,KAAA,EAAAxD,WAAA;QACFyD,MAAA,EAAAzD,WAAA;QAEJ,GAAAb,SAAA,CAAAmF,YAAA;QAGDI,SAAe;MAKf,KACC,iBAAC,EAAAxH,kBAAW,CAAA+F,IAAS,EAAAtF,cAClB,CAAAgH,MAAA;QAGPxB,GAAA;QAEJyB,UAAA","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","FileUpload_exports","FileUpload","module","exports","import_jsx_runtime","require","import_frappe","import_forms","import_react","import_theme","import_react2","import_react_i18next","import_tamagui","import_FrappeProvider","_instanceof","left","right","Symbol","hasInstance","formatFileSize","bytes","k","sizes","i","Math","floor","log","Number","parseFloat","pow","toFixed","readFileAsDataUrl","file","param","onProgress","signal","Promise","resolve","reject","reader","FileReader","onAbort","onAbort2","abort","DOMException","aborted","addEventListener","onprogress","event","lengthComputable","total","round","loaded","onload","removeEventListener","result","onerror","Error","onabort","readAsDataURL","label","onChange","accept","isImage","disabled","required","maxSize","baseURL","auth","helperText","readOnly","skeleton","compact","onUpload","_ref","t","useTranslation","knobProps","useResolvedKnobs","config","useFrappeConfig","fileInputRef","useRef","transfer","setTransfer","useState","error","setError","transferRef","onUploadRef","current","isLocked","minHeight","previewSize","uploading","status","finalBaseURL","finalConfig","socketPort","siteName","socketBaseURL","syncOptions","fixtures","fileCollection","useFrappeCollection","fields","useEffect","_transferRef_current","controller","defaultUpload","useCallback","ctx","base64","tx","insert","doctype","Date","now","file_name","file_url","is_private","isPersisted","promise","runTransfer","_onUploadRef_current","upload","url","percent","n","min","max","prev","progress","err","problem","message","action","startTransfer","AbortController","next","handleFileSelect","handleFileSelect2","_event_target_files","files","size","handleCancel","handleCancel2","handleRetry","handleRetry2","handleRemove","handleRemove2","handleRemoveFailed","handleRemoveFailed2","handleClick","handleClick2","_fileInputRef_current","click","jsxs","YStack","gap","children","jsx","Skeleton","variant","width","height","Label","Text","color","ref","type","style","display","panelPadding","XStack","alignItems","FileIcon","flex","numberOfLines","fontWeight","fontSize","Button","icon","XIcon","onPress","borderRadius","role","backgroundColor","overflow"],"sources":["../../../src/fields/FileUpload.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,8 +1,15 @@
1
- import { FileUpload } from "@multiplatform.one/forms";
1
+ import { Button, FileUpload } from "@multiplatform.one/forms";
2
+ import { FolderOpenIcon } from "@phosphor-icons/react";
3
+ import { useState } from "react";
4
+ import { useTranslation } from "react-i18next";
2
5
  import { useProps } from "tamagui";
3
- import { jsx } from "react/jsx-runtime";
6
+ import { AttachLibrary } from "../../FileBrowser/AttachLibrary.mjs";
7
+ import { Fragment, jsx, jsxs } from "react/jsx-runtime";
4
8
  const imageAccept = "image/png,image/jpeg,image/gif,image/webp,image/svg+xml";
5
9
  function FileUploadField(props) {
10
+ const {
11
+ t
12
+ } = useTranslation();
6
13
  const {
7
14
  defaultValue,
8
15
  form,
@@ -17,30 +24,56 @@ function FileUploadField(props) {
17
24
  isImage,
18
25
  value,
19
26
  onChange,
27
+ onUpload,
28
+ library = true,
29
+ libraryFiles,
30
+ libraryFolder,
20
31
  ...fieldProps
21
32
  } = useProps(props);
33
+ const [libraryOpen, setLibraryOpen] = useState(false);
22
34
  const resolvedAccept = isImage ? accept ?? imageAccept : accept;
23
35
  const resolvedDefaultValue = value !== void 0 ? value : defaultValue;
24
- return /* @__PURE__ */jsx(FileUpload, {
25
- name,
26
- form,
27
- validators,
28
- defaultValue: resolvedDefaultValue,
29
- onValueChange: onChange,
30
- label: fieldProps.label,
31
- labelProps: fieldProps.labelProps,
32
- error: fieldProps.error,
33
- helperText: fieldProps.helperText,
34
- readOnly: fieldProps.readOnly,
35
- skeleton: fieldProps.skeleton,
36
- compact: fieldProps.compact,
37
- required: fieldProps.required,
38
- id: fieldProps.id,
39
- size: fieldProps.size,
40
- disabled,
41
- accept: resolvedAccept,
42
- maxSize,
43
- multiple
36
+ return /* @__PURE__ */jsxs(Fragment, {
37
+ children: [/* @__PURE__ */jsx(FileUpload, {
38
+ name,
39
+ form,
40
+ validators,
41
+ defaultValue: resolvedDefaultValue,
42
+ onValueChange: onChange,
43
+ label: fieldProps.label,
44
+ labelProps: fieldProps.labelProps,
45
+ error: fieldProps.error,
46
+ helperText: fieldProps.helperText,
47
+ readOnly: fieldProps.readOnly,
48
+ skeleton: fieldProps.skeleton,
49
+ compact: fieldProps.compact,
50
+ required: fieldProps.required,
51
+ id: fieldProps.id,
52
+ size: fieldProps.size,
53
+ disabled,
54
+ accept: resolvedAccept,
55
+ maxSize,
56
+ multiple,
57
+ onUpload,
58
+ actions: library ? /* @__PURE__ */jsx(Button, {
59
+ size: "$4",
60
+ outlined: true,
61
+ icon: FolderOpenIcon,
62
+ disabled: disabled || fieldProps.readOnly,
63
+ onPress: () => setLibraryOpen(true),
64
+ children: t("From Library")
65
+ }) : void 0
66
+ }), library ? /* @__PURE__ */jsx(AttachLibrary, {
67
+ open: libraryOpen,
68
+ onOpenChange: setLibraryOpen,
69
+ value,
70
+ files: libraryFiles,
71
+ currentFolder: libraryFolder,
72
+ accept: resolvedAccept,
73
+ onPick: file => {
74
+ onChange?.(file.file_url ?? file.name);
75
+ }
76
+ }) : null]
44
77
  });
45
78
  }
46
79
  export { FileUploadField };
@@ -1 +1 @@
1
- {"version":3,"names":["FileUpload","useProps","jsx","imageAccept","FileUploadField","props","defaultValue","form","_mode","name","_preserveValue","validators","disabled","accept","maxSize","multiple","isImage","value","onChange","fieldProps","resolvedAccept","resolvedDefaultValue","onValueChange","label","labelProps","error","helperText","readOnly","skeleton","compact","required","id","size"],"sources":["../../../../src/fields/FileUploadField/index.tsx"],"sourcesContent":[null],"mappings":"AACA,SAASA,UAAA,QAAkB;AAE3B,SAASC,QAAA,QAAgB;AAwErB,SAAAC,GAAA;AAtEJ,MAAMC,WAAA,GAAc;AAwCb,SAASC,gBAGdC,KAAA,EAA2C;EAC3C,MAAM;IACJC,YAAA;IACAC,IAAA;IACAC,KAAA;IACAC,IAAA;IACAC,cAAA;IACAC,UAAA;IACAC,QAAA;IACAC,MAAA;IACAC,OAAA;IACAC,QAAA;IACAC,OAAA;IACAC,KAAA;IACAC,QAAA;IACA,GAAGC;EACL,IAAIlB,QAAA,CAASI,KAAK;EAKlB,MAAMe,cAAA,GAAiBJ,OAAA,GAAWH,MAAA,IAAUV,WAAA,GAAeU,MAAA;EAG3D,MAAMQ,oBAAA,GAAuBJ,KAAA,KAAU,SAAYA,KAAA,GAAQX,YAAA;EAE3D,OACE,eAAAJ,GAAA,CAACF,UAAA;IACCS,IAAA;IACAF,IAAA;IACAI,UAAA;IACAL,YAAA,EAAce,oBAAA;IACdC,aAAA,EAAeJ,QAAA;IACfK,KAAA,EAAOJ,UAAA,CAAWI,KAAA;IAClBC,UAAA,EAAYL,UAAA,CAAWK,UAAA;IACvBC,KAAA,EAAON,UAAA,CAAWM,KAAA;IAClBC,UAAA,EAAYP,UAAA,CAAWO,UAAA;IACvBC,QAAA,EAAUR,UAAA,CAAWQ,QAAA;IACrBC,QAAA,EAAUT,UAAA,CAAWS,QAAA;IACrBC,OAAA,EAASV,UAAA,CAAWU,OAAA;IACpBC,QAAA,EAAUX,UAAA,CAAWW,QAAA;IACrBC,EAAA,EAAIZ,UAAA,CAAWY,EAAA;IACfC,IAAA,EAAMb,UAAA,CAAWa,IAAA;IACjBpB,QAAA;IACAC,MAAA,EAAQO,cAAA;IACRN,OAAA;IACAC;EAAA,CACF;AAEJ","ignoreList":[]}
1
+ {"version":3,"names":["Button","FileUpload","FolderOpenIcon","useState","useTranslation","useProps","AttachLibrary","Fragment","jsx","jsxs","imageAccept","FileUploadField","props","t","defaultValue","form","_mode","name","_preserveValue","validators","disabled","accept","maxSize","multiple","isImage","value","onChange","onUpload","library","libraryFiles","libraryFolder","fieldProps","libraryOpen","setLibraryOpen","resolvedAccept","resolvedDefaultValue","children","onValueChange","label","labelProps","error","helperText","readOnly","skeleton","compact","required","id","size","actions","outlined","icon","onPress","open","onOpenChange","files","currentFolder","onPick","file","file_url"],"sources":["../../../../src/fields/FileUploadField/index.tsx"],"sourcesContent":[null],"mappings":"AAKA,SAASA,MAAA,EAAQC,UAAA,QAAkB;AACnC,SAASC,cAAA,QAAsB;AAE/B,SAASC,QAAA,QAAgB;AACzB,SAASC,cAAA,QAAsB;AAC/B,SAASC,QAAA,QAAgB;AACzB,SAASC,aAAA,QAAqB;AAmF1B,SAAAC,QAAA,EAwBQC,GAAA,EAxBRC,IAAA;AAhFJ,MAAMC,WAAA,GAAc;AA8Cb,SAASC,gBAGdC,KAAA,EAA2C;EAC3C,MAAM;IAAEC;EAAE,IAAIT,cAAA,CAAe;EAC7B,MAAM;IACJU,YAAA;IACAC,IAAA;IACAC,KAAA;IACAC,IAAA;IACAC,cAAA;IACAC,UAAA;IACAC,QAAA;IACAC,MAAA;IACAC,OAAA;IACAC,QAAA;IACAC,OAAA;IACAC,KAAA;IACAC,QAAA;IACAC,QAAA;IACAC,OAAA,GAAU;IACVC,YAAA;IACAC,aAAA;IACA,GAAGC;EACL,IAAI1B,QAAA,CAASO,KAAK;EAKlB,MAAM,CAACoB,WAAA,EAAaC,cAAc,IAAI9B,QAAA,CAAS,KAAK;EACpD,MAAM+B,cAAA,GAAiBV,OAAA,GAAWH,MAAA,IAAUX,WAAA,GAAeW,MAAA;EAC3D,MAAMc,oBAAA,GAAuBV,KAAA,KAAU,SAAYA,KAAA,GAAQX,YAAA;EAE3D,OACE,eAAAL,IAAA,CAAAF,QAAA;IACE6B,QAAA,kBAAA5B,GAAA,CAACP,UAAA;MACCgB,IAAA;MACAF,IAAA;MACAI,UAAA;MACAL,YAAA,EAAcqB,oBAAA;MACdE,aAAA,EAAeX,QAAA;MACfY,KAAA,EAAOP,UAAA,CAAWO,KAAA;MAClBC,UAAA,EAAYR,UAAA,CAAWQ,UAAA;MACvBC,KAAA,EAAOT,UAAA,CAAWS,KAAA;MAClBC,UAAA,EAAYV,UAAA,CAAWU,UAAA;MACvBC,QAAA,EAAUX,UAAA,CAAWW,QAAA;MACrBC,QAAA,EAAUZ,UAAA,CAAWY,QAAA;MACrBC,OAAA,EAASb,UAAA,CAAWa,OAAA;MACpBC,QAAA,EAAUd,UAAA,CAAWc,QAAA;MACrBC,EAAA,EAAIf,UAAA,CAAWe,EAAA;MACfC,IAAA,EAAMhB,UAAA,CAAWgB,IAAA;MACjB3B,QAAA;MACAC,MAAA,EAAQa,cAAA;MACRZ,OAAA;MACAC,QAAA;MACAI,QAAA;MACAqB,OAAA,EACEpB,OAAA,GACE,eAAApB,GAAA,CAACR,MAAA;QACC+C,IAAA,EAAK;QACLE,QAAA,EAAQ;QACRC,IAAA,EAAMhD,cAAA;QACNkB,QAAA,EAAUA,QAAA,IAAYW,UAAA,CAAWW,QAAA;QACjCS,OAAA,EAASA,CAAA,KAAMlB,cAAA,CAAe,IAAI;QAEjCG,QAAA,EAAAvB,CAAA,CAAE,cAAc;MAAA,CACnB,IACE;IAAA,CAER,GACCe,OAAA,GACC,eAAApB,GAAA,CAACF,aAAA;MACC8C,IAAA,EAAMpB,WAAA;MACNqB,YAAA,EAAcpB,cAAA;MACdR,KAAA;MACA6B,KAAA,EAAOzB,YAAA;MACP0B,aAAA,EAAezB,aAAA;MACfT,MAAA,EAAQa,cAAA;MACRsB,MAAA,EAASC,IAAA,IAAS;QAChB/B,QAAA,GAAW+B,IAAA,CAAKC,QAAA,IAAYD,IAAA,CAAKxC,IAAI;MACvC;IAAA,CACF,IACE;EAAA,CACN;AAEJ","ignoreList":[]}
@@ -29,9 +29,16 @@ __export(FileUploadField_exports, {
29
29
  module.exports = __toCommonJS(FileUploadField_exports);
30
30
  var import_jsx_runtime = require("react/jsx-runtime");
31
31
  var import_forms = require("@multiplatform.one/forms");
32
+ var import_react = require("@phosphor-icons/react");
33
+ var import_react2 = require("react");
34
+ var import_react_i18next = require("react-i18next");
32
35
  var import_tamagui = require("tamagui");
36
+ var import_AttachLibrary = require("../../FileBrowser/AttachLibrary.native.js");
33
37
  var imageAccept = "image/png,image/jpeg,image/gif,image/webp,image/svg+xml";
34
38
  function FileUploadField(props) {
39
+ var {
40
+ t
41
+ } = (0, import_react_i18next.useTranslation)();
35
42
  var {
36
43
  defaultValue,
37
44
  form,
@@ -46,30 +53,59 @@ function FileUploadField(props) {
46
53
  isImage,
47
54
  value,
48
55
  onChange,
56
+ onUpload,
57
+ library = true,
58
+ libraryFiles,
59
+ libraryFolder,
49
60
  ...fieldProps
50
61
  } = (0, import_tamagui.useProps)(props);
62
+ var [libraryOpen, setLibraryOpen] = (0, import_react2.useState)(false);
51
63
  var resolvedAccept = isImage ? accept !== null && accept !== void 0 ? accept : imageAccept : accept;
52
64
  var resolvedDefaultValue = value !== void 0 ? value : defaultValue;
53
- return /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.FileUpload, {
54
- name,
55
- form,
56
- validators,
57
- defaultValue: resolvedDefaultValue,
58
- onValueChange: onChange,
59
- label: fieldProps.label,
60
- labelProps: fieldProps.labelProps,
61
- error: fieldProps.error,
62
- helperText: fieldProps.helperText,
63
- readOnly: fieldProps.readOnly,
64
- skeleton: fieldProps.skeleton,
65
- compact: fieldProps.compact,
66
- required: fieldProps.required,
67
- id: fieldProps.id,
68
- size: fieldProps.size,
69
- disabled,
70
- accept: resolvedAccept,
71
- maxSize,
72
- multiple
65
+ return /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_jsx_runtime.Fragment, {
66
+ children: [/* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.FileUpload, {
67
+ name,
68
+ form,
69
+ validators,
70
+ defaultValue: resolvedDefaultValue,
71
+ onValueChange: onChange,
72
+ label: fieldProps.label,
73
+ labelProps: fieldProps.labelProps,
74
+ error: fieldProps.error,
75
+ helperText: fieldProps.helperText,
76
+ readOnly: fieldProps.readOnly,
77
+ skeleton: fieldProps.skeleton,
78
+ compact: fieldProps.compact,
79
+ required: fieldProps.required,
80
+ id: fieldProps.id,
81
+ size: fieldProps.size,
82
+ disabled,
83
+ accept: resolvedAccept,
84
+ maxSize,
85
+ multiple,
86
+ onUpload,
87
+ actions: library ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_forms.Button, {
88
+ size: "$4",
89
+ outlined: true,
90
+ icon: import_react.FolderOpenIcon,
91
+ disabled: disabled || fieldProps.readOnly,
92
+ onPress: function onPress() {
93
+ return setLibraryOpen(true);
94
+ },
95
+ children: t("From Library")
96
+ }) : void 0
97
+ }), library ? /* @__PURE__ */(0, import_jsx_runtime.jsx)(import_AttachLibrary.AttachLibrary, {
98
+ open: libraryOpen,
99
+ onOpenChange: setLibraryOpen,
100
+ value,
101
+ files: libraryFiles,
102
+ currentFolder: libraryFolder,
103
+ accept: resolvedAccept,
104
+ onPick: function onPick(file) {
105
+ var _file_file_url;
106
+ onChange === null || onChange === void 0 ? void 0 : onChange((_file_file_url = file.file_url) !== null && _file_file_url !== void 0 ? _file_file_url : file.name);
107
+ }
108
+ }) : null]
73
109
  });
74
110
  }
75
111
  //# sourceMappingURL=index.native.js.map