@multiplatform.one/backoffice 7.34.3 → 7.35.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 (867) hide show
  1. package/dist/cjs/chrome/BackofficeAwesomebar.cjs +14 -7
  2. package/dist/cjs/chrome/BackofficeAwesomebar.native.js +14 -7
  3. package/dist/cjs/chrome/BackofficeAwesomebar.native.js.map +1 -1
  4. package/dist/cjs/chrome/CommandPalette.cjs +23 -17
  5. package/dist/cjs/chrome/CommandPalette.native.js +25 -17
  6. package/dist/cjs/chrome/CommandPalette.native.js.map +1 -1
  7. package/dist/cjs/chrome/NotificationsButton.cjs +3 -1
  8. package/dist/cjs/chrome/NotificationsButton.native.js +3 -1
  9. package/dist/cjs/chrome/NotificationsButton.native.js.map +1 -1
  10. package/dist/cjs/chrome/UserMenu.cjs +144 -78
  11. package/dist/cjs/chrome/UserMenu.native.js +158 -91
  12. package/dist/cjs/chrome/UserMenu.native.js.map +1 -1
  13. package/dist/cjs/chrome/awesomebar-data.cjs +45 -18
  14. package/dist/cjs/chrome/awesomebar-data.native.js +45 -17
  15. package/dist/cjs/chrome/awesomebar-data.native.js.map +1 -1
  16. package/dist/cjs/chrome/command-palette-model.cjs +8 -7
  17. package/dist/cjs/chrome/command-palette-model.native.js +10 -7
  18. package/dist/cjs/chrome/command-palette-model.native.js.map +1 -1
  19. package/dist/cjs/chrome/notifications-data.cjs +2 -38
  20. package/dist/cjs/chrome/notifications-data.native.js +2 -39
  21. package/dist/cjs/chrome/notifications-data.native.js.map +1 -1
  22. package/dist/cjs/chrome/notifications-panel.cjs +3 -4
  23. package/dist/cjs/chrome/notifications-panel.native.js +3 -4
  24. package/dist/cjs/chrome/notifications-panel.native.js.map +1 -1
  25. package/dist/cjs/chrome/user-session.cjs +20 -11
  26. package/dist/cjs/chrome/user-session.native.js +21 -13
  27. package/dist/cjs/chrome/user-session.native.js.map +1 -1
  28. package/dist/cjs/config/BackofficeProvider.cjs +3 -1
  29. package/dist/cjs/config/BackofficeProvider.native.js +3 -1
  30. package/dist/cjs/config/BackofficeProvider.native.js.map +1 -1
  31. package/dist/cjs/config/capabilities.cjs +3 -0
  32. package/dist/cjs/config/capabilities.native.js +3 -0
  33. package/dist/cjs/config/capabilities.native.js.map +1 -1
  34. package/dist/cjs/desk/Desk.cjs +17 -0
  35. package/dist/cjs/desk/Desk.native.js +17 -0
  36. package/dist/cjs/desk/Desk.native.js.map +1 -1
  37. package/dist/cjs/desk/DeskSurface.cjs +10 -0
  38. package/dist/cjs/desk/DeskSurface.native.js +10 -0
  39. package/dist/cjs/desk/DeskSurface.native.js.map +1 -1
  40. package/dist/cjs/desk/resolveDeskPath.cjs +6 -0
  41. package/dist/cjs/desk/resolveDeskPath.native.js +6 -0
  42. package/dist/cjs/desk/resolveDeskPath.native.js.map +1 -1
  43. package/dist/cjs/desk/target.cjs +5 -0
  44. package/dist/cjs/desk/target.native.js +5 -0
  45. package/dist/cjs/desk/target.native.js.map +1 -1
  46. package/dist/cjs/form/DocFormScreen.cjs +24 -3
  47. package/dist/cjs/form/DocFormScreen.native.js +27 -6
  48. package/dist/cjs/form/DocFormScreen.native.js.map +1 -1
  49. package/dist/cjs/form/FormConnections.cjs +2 -2
  50. package/dist/cjs/form/FormConnections.native.js +2 -2
  51. package/dist/cjs/form/FormConnections.native.js.map +1 -1
  52. package/dist/cjs/form/FormErrorBoundary.cjs +1 -1
  53. package/dist/cjs/form/FormErrorBoundary.native.js +1 -1
  54. package/dist/cjs/form/FormErrorBoundary.native.js.map +1 -1
  55. package/dist/cjs/form/FormSidebarPanel.cjs +1 -1
  56. package/dist/cjs/form/FormSidebarPanel.native.js +1 -1
  57. package/dist/cjs/form/FormSidebarPanel.native.js.map +1 -1
  58. package/dist/cjs/form/FormTimeline.cjs +1 -2
  59. package/dist/cjs/form/FormTimeline.native.js +1 -2
  60. package/dist/cjs/form/FormTimeline.native.js.map +1 -1
  61. package/dist/cjs/form/FormToolbar.cjs +97 -87
  62. package/dist/cjs/form/FormToolbar.native.js +98 -94
  63. package/dist/cjs/form/FormToolbar.native.js.map +1 -1
  64. package/dist/cjs/formBuilder/DoctypePicker.cjs +89 -0
  65. package/dist/cjs/formBuilder/DoctypePicker.native.js +98 -0
  66. package/dist/cjs/formBuilder/DoctypePicker.native.js.map +1 -0
  67. package/dist/cjs/formBuilder/FieldPalette.cjs +148 -0
  68. package/dist/cjs/formBuilder/FieldPalette.native.js +165 -0
  69. package/dist/cjs/formBuilder/FieldPalette.native.js.map +1 -0
  70. package/dist/cjs/formBuilder/FieldPropertiesPanel.cjs +186 -0
  71. package/dist/cjs/formBuilder/FieldPropertiesPanel.native.js +237 -0
  72. package/dist/cjs/formBuilder/FieldPropertiesPanel.native.js.map +1 -0
  73. package/dist/cjs/formBuilder/FormBuilderCanvas.cjs +407 -0
  74. package/dist/cjs/formBuilder/FormBuilderCanvas.native.js +472 -0
  75. package/dist/cjs/formBuilder/FormBuilderCanvas.native.js.map +1 -0
  76. package/dist/cjs/formBuilder/FormBuilderScreen.cjs +448 -0
  77. package/dist/cjs/formBuilder/FormBuilderScreen.native.js +537 -0
  78. package/dist/cjs/formBuilder/FormBuilderScreen.native.js.map +1 -0
  79. package/dist/cjs/formBuilder/api.cjs +160 -0
  80. package/dist/cjs/formBuilder/api.native.js +193 -0
  81. package/dist/cjs/formBuilder/api.native.js.map +1 -0
  82. package/dist/cjs/formBuilder/fieldtypes.cjs +114 -0
  83. package/dist/cjs/formBuilder/fieldtypes.native.js +133 -0
  84. package/dist/cjs/formBuilder/fieldtypes.native.js.map +1 -0
  85. package/dist/cjs/formBuilder/index.cjs +68 -0
  86. package/dist/cjs/formBuilder/index.native.js +71 -0
  87. package/dist/cjs/formBuilder/index.native.js.map +1 -0
  88. package/dist/cjs/formBuilder/model.cjs +466 -0
  89. package/dist/cjs/formBuilder/model.native.js +714 -0
  90. package/dist/cjs/formBuilder/model.native.js.map +1 -0
  91. package/dist/cjs/formBuilder/useFormBuilderDrag.cjs +399 -0
  92. package/dist/cjs/formBuilder/useFormBuilderDrag.native.js +434 -0
  93. package/dist/cjs/formBuilder/useFormBuilderDrag.native.js.map +1 -0
  94. package/dist/cjs/i18n/en.cjs +294 -4
  95. package/dist/cjs/i18n/en.native.js +294 -4
  96. package/dist/cjs/i18n/en.native.js.map +1 -1
  97. package/dist/cjs/index.cjs +41 -1
  98. package/dist/cjs/index.native.js +40 -0
  99. package/dist/cjs/index.native.js.map +1 -1
  100. package/dist/cjs/list/DoctypeListScreen.cjs +147 -43
  101. package/dist/cjs/list/DoctypeListScreen.native.js +164 -56
  102. package/dist/cjs/list/DoctypeListScreen.native.js.map +1 -1
  103. package/dist/cjs/list/ListFilterBar.cjs +8 -4
  104. package/dist/cjs/list/ListFilterBar.native.js +8 -4
  105. package/dist/cjs/list/ListFilterBar.native.js.map +1 -1
  106. package/dist/cjs/list/ListSidebar.cjs +4 -3
  107. package/dist/cjs/list/ListSidebar.native.js +4 -3
  108. package/dist/cjs/list/ListSidebar.native.js.map +1 -1
  109. package/dist/cjs/list/filter-chips.cjs +10 -4
  110. package/dist/cjs/list/filter-chips.native.js +10 -4
  111. package/dist/cjs/list/filter-chips.native.js.map +1 -1
  112. package/dist/cjs/list/filter-editor.cjs +1 -10
  113. package/dist/cjs/list/filter-editor.native.js +1 -10
  114. package/dist/cjs/list/filter-editor.native.js.map +1 -1
  115. package/dist/cjs/list/filter-saved.cjs +0 -1
  116. package/dist/cjs/list/filter-saved.native.js +0 -1
  117. package/dist/cjs/list/filter-saved.native.js.map +1 -1
  118. package/dist/cjs/list/filter-sort.cjs +0 -1
  119. package/dist/cjs/list/filter-sort.native.js +0 -1
  120. package/dist/cjs/list/filter-sort.native.js.map +1 -1
  121. package/dist/cjs/list/filter-standard.cjs +1 -3
  122. package/dist/cjs/list/filter-standard.native.js +1 -3
  123. package/dist/cjs/list/filter-standard.native.js.map +1 -1
  124. package/dist/cjs/list/list-tools-sheet.cjs +10 -3
  125. package/dist/cjs/list/list-tools-sheet.native.js +12 -3
  126. package/dist/cjs/list/list-tools-sheet.native.js.map +1 -1
  127. package/dist/cjs/navigation/paths.cjs +5 -0
  128. package/dist/cjs/navigation/paths.native.js +7 -0
  129. package/dist/cjs/navigation/paths.native.js.map +1 -1
  130. package/dist/cjs/report/QueryReportScreen.cjs +1 -1
  131. package/dist/cjs/report/QueryReportScreen.native.js +1 -1
  132. package/dist/cjs/report/QueryReportScreen.native.js.map +1 -1
  133. package/dist/cjs/report/queryReportFilterBar.cjs +3 -8
  134. package/dist/cjs/report/queryReportFilterBar.native.js +3 -8
  135. package/dist/cjs/report/queryReportFilterBar.native.js.map +1 -1
  136. package/dist/cjs/shared/sessionUser.cjs +107 -0
  137. package/dist/cjs/shared/sessionUser.native.js +137 -0
  138. package/dist/cjs/shared/sessionUser.native.js.map +1 -0
  139. package/dist/cjs/shared/useSessionUserId.cjs +2 -26
  140. package/dist/cjs/shared/useSessionUserId.native.js +2 -28
  141. package/dist/cjs/shared/useSessionUserId.native.js.map +1 -1
  142. package/dist/cjs/shell/BackofficeShell.cjs +129 -86
  143. package/dist/cjs/shell/BackofficeShell.native.js +146 -99
  144. package/dist/cjs/shell/BackofficeShell.native.js.map +1 -1
  145. package/dist/cjs/shell/HomeRedirect.cjs +17 -21
  146. package/dist/cjs/shell/HomeRedirect.native.js +17 -20
  147. package/dist/cjs/shell/HomeRedirect.native.js.map +1 -1
  148. package/dist/cjs/shell/WorkspaceSidebar.cjs +53 -25
  149. package/dist/cjs/shell/WorkspaceSidebar.native.js +55 -25
  150. package/dist/cjs/shell/WorkspaceSidebar.native.js.map +1 -1
  151. package/dist/cjs/shell/shellSidebarSlot.cjs +31 -0
  152. package/dist/cjs/shell/shellSidebarSlot.native.js +34 -0
  153. package/dist/cjs/shell/shellSidebarSlot.native.js.map +1 -0
  154. package/dist/cjs/shell/useWorkspaces.cjs +25 -37
  155. package/dist/cjs/shell/useWorkspaces.native.js +27 -41
  156. package/dist/cjs/shell/useWorkspaces.native.js.map +1 -1
  157. package/dist/cjs/views/DashboardView.cjs +2 -2
  158. package/dist/cjs/views/DashboardView.native.js +2 -2
  159. package/dist/cjs/views/DashboardView.native.js.map +1 -1
  160. package/dist/cjs/views/ImageView.cjs +14 -5
  161. package/dist/cjs/views/ImageView.native.js +14 -5
  162. package/dist/cjs/views/ImageView.native.js.map +1 -1
  163. package/dist/cjs/views/ViewHeader.cjs +17 -6
  164. package/dist/cjs/views/ViewHeader.native.js +17 -6
  165. package/dist/cjs/views/ViewHeader.native.js.map +1 -1
  166. package/dist/cjs/views/ViewSwitcherMenu.cjs +10 -9
  167. package/dist/cjs/views/ViewSwitcherMenu.native.js +10 -9
  168. package/dist/cjs/views/ViewSwitcherMenu.native.js.map +1 -1
  169. package/dist/cjs/views/viewAvailability.cjs +17 -9
  170. package/dist/cjs/views/viewAvailability.native.js +18 -8
  171. package/dist/cjs/views/viewAvailability.native.js.map +1 -1
  172. package/dist/cjs/views/viewMeta.cjs +24 -1
  173. package/dist/cjs/views/viewMeta.native.js +30 -1
  174. package/dist/cjs/views/viewMeta.native.js.map +1 -1
  175. package/dist/cjs/workspace/WorkspaceChartBlock.cjs +1 -1
  176. package/dist/cjs/workspace/WorkspaceChartBlock.native.js +1 -1
  177. package/dist/cjs/workspace/WorkspaceChartBlock.native.js.map +1 -1
  178. package/dist/cjs/workspace/WorkspaceLinkDirectory.cjs +2 -2
  179. package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js +2 -2
  180. package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
  181. package/dist/cjs/workspace/WorkspaceRecents.cjs +1 -1
  182. package/dist/cjs/workspace/WorkspaceRecents.native.js +1 -1
  183. package/dist/cjs/workspace/WorkspaceRecents.native.js.map +1 -1
  184. package/dist/cjs/workspace/WorkspaceShortcut.cjs +1 -1
  185. package/dist/cjs/workspace/WorkspaceShortcut.native.js +1 -1
  186. package/dist/cjs/workspace/WorkspaceShortcut.native.js.map +1 -1
  187. package/dist/esm/chrome/BackofficeAwesomebar.mjs +15 -8
  188. package/dist/esm/chrome/BackofficeAwesomebar.mjs.map +1 -1
  189. package/dist/esm/chrome/BackofficeAwesomebar.native.js +15 -8
  190. package/dist/esm/chrome/BackofficeAwesomebar.native.js.map +1 -1
  191. package/dist/esm/chrome/CommandPalette.mjs +25 -19
  192. package/dist/esm/chrome/CommandPalette.mjs.map +1 -1
  193. package/dist/esm/chrome/CommandPalette.native.js +27 -19
  194. package/dist/esm/chrome/CommandPalette.native.js.map +1 -1
  195. package/dist/esm/chrome/NotificationsButton.mjs +4 -2
  196. package/dist/esm/chrome/NotificationsButton.mjs.map +1 -1
  197. package/dist/esm/chrome/NotificationsButton.native.js +4 -2
  198. package/dist/esm/chrome/NotificationsButton.native.js.map +1 -1
  199. package/dist/esm/chrome/UserMenu.mjs +146 -80
  200. package/dist/esm/chrome/UserMenu.mjs.map +1 -1
  201. package/dist/esm/chrome/UserMenu.native.js +160 -93
  202. package/dist/esm/chrome/UserMenu.native.js.map +1 -1
  203. package/dist/esm/chrome/awesomebar-data.mjs +45 -18
  204. package/dist/esm/chrome/awesomebar-data.mjs.map +1 -1
  205. package/dist/esm/chrome/awesomebar-data.native.js +45 -17
  206. package/dist/esm/chrome/awesomebar-data.native.js.map +1 -1
  207. package/dist/esm/chrome/command-palette-model.mjs +8 -7
  208. package/dist/esm/chrome/command-palette-model.mjs.map +1 -1
  209. package/dist/esm/chrome/command-palette-model.native.js +10 -7
  210. package/dist/esm/chrome/command-palette-model.native.js.map +1 -1
  211. package/dist/esm/chrome/notifications-data.mjs +3 -39
  212. package/dist/esm/chrome/notifications-data.mjs.map +1 -1
  213. package/dist/esm/chrome/notifications-data.native.js +3 -40
  214. package/dist/esm/chrome/notifications-data.native.js.map +1 -1
  215. package/dist/esm/chrome/notifications-panel.mjs +4 -5
  216. package/dist/esm/chrome/notifications-panel.mjs.map +1 -1
  217. package/dist/esm/chrome/notifications-panel.native.js +4 -5
  218. package/dist/esm/chrome/notifications-panel.native.js.map +1 -1
  219. package/dist/esm/chrome/user-session.mjs +20 -11
  220. package/dist/esm/chrome/user-session.mjs.map +1 -1
  221. package/dist/esm/chrome/user-session.native.js +21 -13
  222. package/dist/esm/chrome/user-session.native.js.map +1 -1
  223. package/dist/esm/config/BackofficeProvider.mjs +3 -1
  224. package/dist/esm/config/BackofficeProvider.mjs.map +1 -1
  225. package/dist/esm/config/BackofficeProvider.native.js +3 -1
  226. package/dist/esm/config/BackofficeProvider.native.js.map +1 -1
  227. package/dist/esm/config/capabilities.mjs +3 -0
  228. package/dist/esm/config/capabilities.mjs.map +1 -1
  229. package/dist/esm/config/capabilities.native.js +3 -0
  230. package/dist/esm/config/capabilities.native.js.map +1 -1
  231. package/dist/esm/desk/Desk.mjs +17 -0
  232. package/dist/esm/desk/Desk.mjs.map +1 -1
  233. package/dist/esm/desk/Desk.native.js +17 -0
  234. package/dist/esm/desk/Desk.native.js.map +1 -1
  235. package/dist/esm/desk/DeskSurface.mjs +10 -0
  236. package/dist/esm/desk/DeskSurface.mjs.map +1 -1
  237. package/dist/esm/desk/DeskSurface.native.js +10 -0
  238. package/dist/esm/desk/DeskSurface.native.js.map +1 -1
  239. package/dist/esm/desk/resolveDeskPath.mjs +6 -0
  240. package/dist/esm/desk/resolveDeskPath.mjs.map +1 -1
  241. package/dist/esm/desk/resolveDeskPath.native.js +6 -0
  242. package/dist/esm/desk/resolveDeskPath.native.js.map +1 -1
  243. package/dist/esm/desk/target.mjs +5 -0
  244. package/dist/esm/desk/target.mjs.map +1 -1
  245. package/dist/esm/desk/target.native.js +5 -0
  246. package/dist/esm/desk/target.native.js.map +1 -1
  247. package/dist/esm/form/DocFormScreen.mjs +24 -3
  248. package/dist/esm/form/DocFormScreen.mjs.map +1 -1
  249. package/dist/esm/form/DocFormScreen.native.js +27 -6
  250. package/dist/esm/form/DocFormScreen.native.js.map +1 -1
  251. package/dist/esm/form/FormConnections.mjs +2 -2
  252. package/dist/esm/form/FormConnections.mjs.map +1 -1
  253. package/dist/esm/form/FormConnections.native.js +2 -2
  254. package/dist/esm/form/FormConnections.native.js.map +1 -1
  255. package/dist/esm/form/FormErrorBoundary.mjs +1 -1
  256. package/dist/esm/form/FormErrorBoundary.mjs.map +1 -1
  257. package/dist/esm/form/FormErrorBoundary.native.js +1 -1
  258. package/dist/esm/form/FormErrorBoundary.native.js.map +1 -1
  259. package/dist/esm/form/FormSidebarPanel.mjs +1 -1
  260. package/dist/esm/form/FormSidebarPanel.mjs.map +1 -1
  261. package/dist/esm/form/FormSidebarPanel.native.js +1 -1
  262. package/dist/esm/form/FormSidebarPanel.native.js.map +1 -1
  263. package/dist/esm/form/FormTimeline.mjs +1 -2
  264. package/dist/esm/form/FormTimeline.mjs.map +1 -1
  265. package/dist/esm/form/FormTimeline.native.js +1 -2
  266. package/dist/esm/form/FormTimeline.native.js.map +1 -1
  267. package/dist/esm/form/FormToolbar.mjs +99 -89
  268. package/dist/esm/form/FormToolbar.mjs.map +1 -1
  269. package/dist/esm/form/FormToolbar.native.js +100 -96
  270. package/dist/esm/form/FormToolbar.native.js.map +1 -1
  271. package/dist/esm/formBuilder/DoctypePicker.mjs +64 -0
  272. package/dist/esm/formBuilder/DoctypePicker.mjs.map +1 -0
  273. package/dist/esm/formBuilder/DoctypePicker.native.js +70 -0
  274. package/dist/esm/formBuilder/DoctypePicker.native.js.map +1 -0
  275. package/dist/esm/formBuilder/FieldPalette.mjs +123 -0
  276. package/dist/esm/formBuilder/FieldPalette.mjs.map +1 -0
  277. package/dist/esm/formBuilder/FieldPalette.native.js +137 -0
  278. package/dist/esm/formBuilder/FieldPalette.native.js.map +1 -0
  279. package/dist/esm/formBuilder/FieldPropertiesPanel.mjs +161 -0
  280. package/dist/esm/formBuilder/FieldPropertiesPanel.mjs.map +1 -0
  281. package/dist/esm/formBuilder/FieldPropertiesPanel.native.js +209 -0
  282. package/dist/esm/formBuilder/FieldPropertiesPanel.native.js.map +1 -0
  283. package/dist/esm/formBuilder/FormBuilderCanvas.mjs +382 -0
  284. package/dist/esm/formBuilder/FormBuilderCanvas.mjs.map +1 -0
  285. package/dist/esm/formBuilder/FormBuilderCanvas.native.js +444 -0
  286. package/dist/esm/formBuilder/FormBuilderCanvas.native.js.map +1 -0
  287. package/dist/esm/formBuilder/FormBuilderScreen.mjs +423 -0
  288. package/dist/esm/formBuilder/FormBuilderScreen.mjs.map +1 -0
  289. package/dist/esm/formBuilder/FormBuilderScreen.native.js +509 -0
  290. package/dist/esm/formBuilder/FormBuilderScreen.native.js.map +1 -0
  291. package/dist/esm/formBuilder/api.mjs +129 -0
  292. package/dist/esm/formBuilder/api.mjs.map +1 -0
  293. package/dist/esm/formBuilder/api.native.js +159 -0
  294. package/dist/esm/formBuilder/api.native.js.map +1 -0
  295. package/dist/esm/formBuilder/fieldtypes.mjs +82 -0
  296. package/dist/esm/formBuilder/fieldtypes.mjs.map +1 -0
  297. package/dist/esm/formBuilder/fieldtypes.native.js +98 -0
  298. package/dist/esm/formBuilder/fieldtypes.native.js.map +1 -0
  299. package/dist/esm/formBuilder/index.mjs +6 -0
  300. package/dist/esm/formBuilder/index.mjs.map +1 -0
  301. package/dist/esm/formBuilder/index.native.js +6 -0
  302. package/dist/esm/formBuilder/index.native.js.map +1 -0
  303. package/dist/esm/formBuilder/model.mjs +420 -0
  304. package/dist/esm/formBuilder/model.mjs.map +1 -0
  305. package/dist/esm/formBuilder/model.native.js +665 -0
  306. package/dist/esm/formBuilder/model.native.js.map +1 -0
  307. package/dist/esm/formBuilder/useFormBuilderDrag.mjs +374 -0
  308. package/dist/esm/formBuilder/useFormBuilderDrag.mjs.map +1 -0
  309. package/dist/esm/formBuilder/useFormBuilderDrag.native.js +406 -0
  310. package/dist/esm/formBuilder/useFormBuilderDrag.native.js.map +1 -0
  311. package/dist/esm/i18n/en.mjs +294 -4
  312. package/dist/esm/i18n/en.mjs.map +1 -1
  313. package/dist/esm/i18n/en.native.js +294 -4
  314. package/dist/esm/i18n/en.native.js.map +1 -1
  315. package/dist/esm/index.mjs +3 -2
  316. package/dist/esm/index.mjs.map +1 -1
  317. package/dist/esm/index.native.js +3 -2
  318. package/dist/esm/index.native.js.map +1 -1
  319. package/dist/esm/list/DoctypeListScreen.mjs +150 -46
  320. package/dist/esm/list/DoctypeListScreen.mjs.map +1 -1
  321. package/dist/esm/list/DoctypeListScreen.native.js +167 -59
  322. package/dist/esm/list/DoctypeListScreen.native.js.map +1 -1
  323. package/dist/esm/list/ListFilterBar.mjs +9 -5
  324. package/dist/esm/list/ListFilterBar.mjs.map +1 -1
  325. package/dist/esm/list/ListFilterBar.native.js +9 -5
  326. package/dist/esm/list/ListFilterBar.native.js.map +1 -1
  327. package/dist/esm/list/ListSidebar.mjs +4 -3
  328. package/dist/esm/list/ListSidebar.mjs.map +1 -1
  329. package/dist/esm/list/ListSidebar.native.js +4 -3
  330. package/dist/esm/list/ListSidebar.native.js.map +1 -1
  331. package/dist/esm/list/filter-chips.mjs +10 -4
  332. package/dist/esm/list/filter-chips.mjs.map +1 -1
  333. package/dist/esm/list/filter-chips.native.js +10 -4
  334. package/dist/esm/list/filter-chips.native.js.map +1 -1
  335. package/dist/esm/list/filter-editor.mjs +1 -10
  336. package/dist/esm/list/filter-editor.mjs.map +1 -1
  337. package/dist/esm/list/filter-editor.native.js +1 -10
  338. package/dist/esm/list/filter-editor.native.js.map +1 -1
  339. package/dist/esm/list/filter-saved.mjs +0 -1
  340. package/dist/esm/list/filter-saved.mjs.map +1 -1
  341. package/dist/esm/list/filter-saved.native.js +0 -1
  342. package/dist/esm/list/filter-saved.native.js.map +1 -1
  343. package/dist/esm/list/filter-sort.mjs +0 -1
  344. package/dist/esm/list/filter-sort.mjs.map +1 -1
  345. package/dist/esm/list/filter-sort.native.js +0 -1
  346. package/dist/esm/list/filter-sort.native.js.map +1 -1
  347. package/dist/esm/list/filter-standard.mjs +1 -3
  348. package/dist/esm/list/filter-standard.mjs.map +1 -1
  349. package/dist/esm/list/filter-standard.native.js +1 -3
  350. package/dist/esm/list/filter-standard.native.js.map +1 -1
  351. package/dist/esm/list/list-tools-sheet.mjs +10 -3
  352. package/dist/esm/list/list-tools-sheet.mjs.map +1 -1
  353. package/dist/esm/list/list-tools-sheet.native.js +12 -3
  354. package/dist/esm/list/list-tools-sheet.native.js.map +1 -1
  355. package/dist/esm/navigation/paths.mjs +5 -1
  356. package/dist/esm/navigation/paths.mjs.map +1 -1
  357. package/dist/esm/navigation/paths.native.js +7 -1
  358. package/dist/esm/navigation/paths.native.js.map +1 -1
  359. package/dist/esm/report/QueryReportScreen.mjs +1 -1
  360. package/dist/esm/report/QueryReportScreen.mjs.map +1 -1
  361. package/dist/esm/report/QueryReportScreen.native.js +1 -1
  362. package/dist/esm/report/QueryReportScreen.native.js.map +1 -1
  363. package/dist/esm/report/queryReportFilterBar.mjs +3 -8
  364. package/dist/esm/report/queryReportFilterBar.mjs.map +1 -1
  365. package/dist/esm/report/queryReportFilterBar.native.js +3 -8
  366. package/dist/esm/report/queryReportFilterBar.native.js.map +1 -1
  367. package/dist/esm/shared/sessionUser.mjs +78 -0
  368. package/dist/esm/shared/sessionUser.mjs.map +1 -0
  369. package/dist/esm/shared/sessionUser.native.js +105 -0
  370. package/dist/esm/shared/sessionUser.native.js.map +1 -0
  371. package/dist/esm/shared/useSessionUserId.mjs +2 -26
  372. package/dist/esm/shared/useSessionUserId.mjs.map +1 -1
  373. package/dist/esm/shared/useSessionUserId.native.js +2 -28
  374. package/dist/esm/shared/useSessionUserId.native.js.map +1 -1
  375. package/dist/esm/shell/BackofficeShell.mjs +132 -89
  376. package/dist/esm/shell/BackofficeShell.mjs.map +1 -1
  377. package/dist/esm/shell/BackofficeShell.native.js +149 -102
  378. package/dist/esm/shell/BackofficeShell.native.js.map +1 -1
  379. package/dist/esm/shell/HomeRedirect.mjs +20 -24
  380. package/dist/esm/shell/HomeRedirect.mjs.map +1 -1
  381. package/dist/esm/shell/HomeRedirect.native.js +20 -23
  382. package/dist/esm/shell/HomeRedirect.native.js.map +1 -1
  383. package/dist/esm/shell/WorkspaceSidebar.mjs +55 -27
  384. package/dist/esm/shell/WorkspaceSidebar.mjs.map +1 -1
  385. package/dist/esm/shell/WorkspaceSidebar.native.js +57 -27
  386. package/dist/esm/shell/WorkspaceSidebar.native.js.map +1 -1
  387. package/dist/esm/shell/shellSidebarSlot.mjs +3 -0
  388. package/dist/esm/shell/shellSidebarSlot.mjs.map +1 -0
  389. package/dist/esm/shell/shellSidebarSlot.native.js +3 -0
  390. package/dist/esm/shell/shellSidebarSlot.native.js.map +1 -0
  391. package/dist/esm/shell/useWorkspaces.mjs +28 -40
  392. package/dist/esm/shell/useWorkspaces.mjs.map +1 -1
  393. package/dist/esm/shell/useWorkspaces.native.js +30 -44
  394. package/dist/esm/shell/useWorkspaces.native.js.map +1 -1
  395. package/dist/esm/views/DashboardView.mjs +2 -2
  396. package/dist/esm/views/DashboardView.mjs.map +1 -1
  397. package/dist/esm/views/DashboardView.native.js +2 -2
  398. package/dist/esm/views/DashboardView.native.js.map +1 -1
  399. package/dist/esm/views/ImageView.mjs +15 -6
  400. package/dist/esm/views/ImageView.mjs.map +1 -1
  401. package/dist/esm/views/ImageView.native.js +15 -6
  402. package/dist/esm/views/ImageView.native.js.map +1 -1
  403. package/dist/esm/views/ViewHeader.mjs +18 -7
  404. package/dist/esm/views/ViewHeader.mjs.map +1 -1
  405. package/dist/esm/views/ViewHeader.native.js +18 -7
  406. package/dist/esm/views/ViewHeader.native.js.map +1 -1
  407. package/dist/esm/views/ViewSwitcherMenu.mjs +11 -10
  408. package/dist/esm/views/ViewSwitcherMenu.mjs.map +1 -1
  409. package/dist/esm/views/ViewSwitcherMenu.native.js +11 -10
  410. package/dist/esm/views/ViewSwitcherMenu.native.js.map +1 -1
  411. package/dist/esm/views/viewAvailability.mjs +17 -9
  412. package/dist/esm/views/viewAvailability.mjs.map +1 -1
  413. package/dist/esm/views/viewAvailability.native.js +18 -8
  414. package/dist/esm/views/viewAvailability.native.js.map +1 -1
  415. package/dist/esm/views/viewMeta.mjs +23 -1
  416. package/dist/esm/views/viewMeta.mjs.map +1 -1
  417. package/dist/esm/views/viewMeta.native.js +29 -1
  418. package/dist/esm/views/viewMeta.native.js.map +1 -1
  419. package/dist/esm/workspace/WorkspaceChartBlock.mjs +1 -1
  420. package/dist/esm/workspace/WorkspaceChartBlock.mjs.map +1 -1
  421. package/dist/esm/workspace/WorkspaceChartBlock.native.js +1 -1
  422. package/dist/esm/workspace/WorkspaceChartBlock.native.js.map +1 -1
  423. package/dist/esm/workspace/WorkspaceLinkDirectory.mjs +2 -2
  424. package/dist/esm/workspace/WorkspaceLinkDirectory.mjs.map +1 -1
  425. package/dist/esm/workspace/WorkspaceLinkDirectory.native.js +2 -2
  426. package/dist/esm/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
  427. package/dist/esm/workspace/WorkspaceRecents.mjs +2 -2
  428. package/dist/esm/workspace/WorkspaceRecents.mjs.map +1 -1
  429. package/dist/esm/workspace/WorkspaceRecents.native.js +2 -2
  430. package/dist/esm/workspace/WorkspaceRecents.native.js.map +1 -1
  431. package/dist/esm/workspace/WorkspaceShortcut.mjs +2 -2
  432. package/dist/esm/workspace/WorkspaceShortcut.mjs.map +1 -1
  433. package/dist/esm/workspace/WorkspaceShortcut.native.js +2 -2
  434. package/dist/esm/workspace/WorkspaceShortcut.native.js.map +1 -1
  435. package/dist/jsx/chrome/BackofficeAwesomebar.mjs +15 -8
  436. package/dist/jsx/chrome/BackofficeAwesomebar.mjs.map +1 -1
  437. package/dist/jsx/chrome/BackofficeAwesomebar.native.js +14 -7
  438. package/dist/jsx/chrome/BackofficeAwesomebar.native.js.map +1 -1
  439. package/dist/jsx/chrome/CommandPalette.mjs +25 -19
  440. package/dist/jsx/chrome/CommandPalette.mjs.map +1 -1
  441. package/dist/jsx/chrome/CommandPalette.native.js +25 -17
  442. package/dist/jsx/chrome/CommandPalette.native.js.map +1 -1
  443. package/dist/jsx/chrome/NotificationsButton.mjs +4 -2
  444. package/dist/jsx/chrome/NotificationsButton.mjs.map +1 -1
  445. package/dist/jsx/chrome/NotificationsButton.native.js +3 -1
  446. package/dist/jsx/chrome/NotificationsButton.native.js.map +1 -1
  447. package/dist/jsx/chrome/UserMenu.mjs +146 -80
  448. package/dist/jsx/chrome/UserMenu.mjs.map +1 -1
  449. package/dist/jsx/chrome/UserMenu.native.js +158 -91
  450. package/dist/jsx/chrome/UserMenu.native.js.map +1 -1
  451. package/dist/jsx/chrome/awesomebar-data.mjs +45 -18
  452. package/dist/jsx/chrome/awesomebar-data.mjs.map +1 -1
  453. package/dist/jsx/chrome/awesomebar-data.native.js +45 -17
  454. package/dist/jsx/chrome/awesomebar-data.native.js.map +1 -1
  455. package/dist/jsx/chrome/command-palette-model.mjs +8 -7
  456. package/dist/jsx/chrome/command-palette-model.mjs.map +1 -1
  457. package/dist/jsx/chrome/command-palette-model.native.js +10 -7
  458. package/dist/jsx/chrome/command-palette-model.native.js.map +1 -1
  459. package/dist/jsx/chrome/notifications-data.mjs +3 -39
  460. package/dist/jsx/chrome/notifications-data.mjs.map +1 -1
  461. package/dist/jsx/chrome/notifications-data.native.js +2 -39
  462. package/dist/jsx/chrome/notifications-data.native.js.map +1 -1
  463. package/dist/jsx/chrome/notifications-panel.mjs +4 -5
  464. package/dist/jsx/chrome/notifications-panel.mjs.map +1 -1
  465. package/dist/jsx/chrome/notifications-panel.native.js +3 -4
  466. package/dist/jsx/chrome/notifications-panel.native.js.map +1 -1
  467. package/dist/jsx/chrome/user-session.mjs +20 -11
  468. package/dist/jsx/chrome/user-session.mjs.map +1 -1
  469. package/dist/jsx/chrome/user-session.native.js +21 -13
  470. package/dist/jsx/chrome/user-session.native.js.map +1 -1
  471. package/dist/jsx/config/BackofficeProvider.mjs +3 -1
  472. package/dist/jsx/config/BackofficeProvider.mjs.map +1 -1
  473. package/dist/jsx/config/BackofficeProvider.native.js +3 -1
  474. package/dist/jsx/config/BackofficeProvider.native.js.map +1 -1
  475. package/dist/jsx/config/capabilities.mjs +3 -0
  476. package/dist/jsx/config/capabilities.mjs.map +1 -1
  477. package/dist/jsx/config/capabilities.native.js +3 -0
  478. package/dist/jsx/config/capabilities.native.js.map +1 -1
  479. package/dist/jsx/desk/Desk.mjs +17 -0
  480. package/dist/jsx/desk/Desk.mjs.map +1 -1
  481. package/dist/jsx/desk/Desk.native.js +17 -0
  482. package/dist/jsx/desk/Desk.native.js.map +1 -1
  483. package/dist/jsx/desk/DeskSurface.mjs +10 -0
  484. package/dist/jsx/desk/DeskSurface.mjs.map +1 -1
  485. package/dist/jsx/desk/DeskSurface.native.js +10 -0
  486. package/dist/jsx/desk/DeskSurface.native.js.map +1 -1
  487. package/dist/jsx/desk/resolveDeskPath.mjs +6 -0
  488. package/dist/jsx/desk/resolveDeskPath.mjs.map +1 -1
  489. package/dist/jsx/desk/resolveDeskPath.native.js +6 -0
  490. package/dist/jsx/desk/resolveDeskPath.native.js.map +1 -1
  491. package/dist/jsx/desk/target.mjs +5 -0
  492. package/dist/jsx/desk/target.mjs.map +1 -1
  493. package/dist/jsx/desk/target.native.js +5 -0
  494. package/dist/jsx/desk/target.native.js.map +1 -1
  495. package/dist/jsx/form/DocFormScreen.mjs +24 -3
  496. package/dist/jsx/form/DocFormScreen.mjs.map +1 -1
  497. package/dist/jsx/form/DocFormScreen.native.js +27 -6
  498. package/dist/jsx/form/DocFormScreen.native.js.map +1 -1
  499. package/dist/jsx/form/FormConnections.mjs +2 -2
  500. package/dist/jsx/form/FormConnections.mjs.map +1 -1
  501. package/dist/jsx/form/FormConnections.native.js +2 -2
  502. package/dist/jsx/form/FormConnections.native.js.map +1 -1
  503. package/dist/jsx/form/FormErrorBoundary.mjs +1 -1
  504. package/dist/jsx/form/FormErrorBoundary.mjs.map +1 -1
  505. package/dist/jsx/form/FormErrorBoundary.native.js +1 -1
  506. package/dist/jsx/form/FormErrorBoundary.native.js.map +1 -1
  507. package/dist/jsx/form/FormSidebarPanel.mjs +1 -1
  508. package/dist/jsx/form/FormSidebarPanel.mjs.map +1 -1
  509. package/dist/jsx/form/FormSidebarPanel.native.js +1 -1
  510. package/dist/jsx/form/FormSidebarPanel.native.js.map +1 -1
  511. package/dist/jsx/form/FormTimeline.mjs +1 -2
  512. package/dist/jsx/form/FormTimeline.mjs.map +1 -1
  513. package/dist/jsx/form/FormTimeline.native.js +1 -2
  514. package/dist/jsx/form/FormTimeline.native.js.map +1 -1
  515. package/dist/jsx/form/FormToolbar.mjs +99 -89
  516. package/dist/jsx/form/FormToolbar.mjs.map +1 -1
  517. package/dist/jsx/form/FormToolbar.native.js +98 -94
  518. package/dist/jsx/form/FormToolbar.native.js.map +1 -1
  519. package/dist/jsx/formBuilder/DoctypePicker.mjs +64 -0
  520. package/dist/jsx/formBuilder/DoctypePicker.mjs.map +1 -0
  521. package/dist/jsx/formBuilder/DoctypePicker.native.js +98 -0
  522. package/dist/jsx/formBuilder/DoctypePicker.native.js.map +1 -0
  523. package/dist/jsx/formBuilder/FieldPalette.mjs +123 -0
  524. package/dist/jsx/formBuilder/FieldPalette.mjs.map +1 -0
  525. package/dist/jsx/formBuilder/FieldPalette.native.js +165 -0
  526. package/dist/jsx/formBuilder/FieldPalette.native.js.map +1 -0
  527. package/dist/jsx/formBuilder/FieldPropertiesPanel.mjs +161 -0
  528. package/dist/jsx/formBuilder/FieldPropertiesPanel.mjs.map +1 -0
  529. package/dist/jsx/formBuilder/FieldPropertiesPanel.native.js +237 -0
  530. package/dist/jsx/formBuilder/FieldPropertiesPanel.native.js.map +1 -0
  531. package/dist/jsx/formBuilder/FormBuilderCanvas.mjs +382 -0
  532. package/dist/jsx/formBuilder/FormBuilderCanvas.mjs.map +1 -0
  533. package/dist/jsx/formBuilder/FormBuilderCanvas.native.js +472 -0
  534. package/dist/jsx/formBuilder/FormBuilderCanvas.native.js.map +1 -0
  535. package/dist/jsx/formBuilder/FormBuilderScreen.mjs +423 -0
  536. package/dist/jsx/formBuilder/FormBuilderScreen.mjs.map +1 -0
  537. package/dist/jsx/formBuilder/FormBuilderScreen.native.js +537 -0
  538. package/dist/jsx/formBuilder/FormBuilderScreen.native.js.map +1 -0
  539. package/dist/jsx/formBuilder/api.mjs +129 -0
  540. package/dist/jsx/formBuilder/api.mjs.map +1 -0
  541. package/dist/jsx/formBuilder/api.native.js +193 -0
  542. package/dist/jsx/formBuilder/api.native.js.map +1 -0
  543. package/dist/jsx/formBuilder/fieldtypes.mjs +82 -0
  544. package/dist/jsx/formBuilder/fieldtypes.mjs.map +1 -0
  545. package/dist/jsx/formBuilder/fieldtypes.native.js +133 -0
  546. package/dist/jsx/formBuilder/fieldtypes.native.js.map +1 -0
  547. package/dist/jsx/formBuilder/index.mjs +6 -0
  548. package/dist/jsx/formBuilder/index.mjs.map +1 -0
  549. package/dist/jsx/formBuilder/index.native.js +71 -0
  550. package/dist/jsx/formBuilder/index.native.js.map +1 -0
  551. package/dist/jsx/formBuilder/model.mjs +420 -0
  552. package/dist/jsx/formBuilder/model.mjs.map +1 -0
  553. package/dist/jsx/formBuilder/model.native.js +714 -0
  554. package/dist/jsx/formBuilder/model.native.js.map +1 -0
  555. package/dist/jsx/formBuilder/useFormBuilderDrag.mjs +374 -0
  556. package/dist/jsx/formBuilder/useFormBuilderDrag.mjs.map +1 -0
  557. package/dist/jsx/formBuilder/useFormBuilderDrag.native.js +434 -0
  558. package/dist/jsx/formBuilder/useFormBuilderDrag.native.js.map +1 -0
  559. package/dist/jsx/i18n/en.mjs +294 -4
  560. package/dist/jsx/i18n/en.mjs.map +1 -1
  561. package/dist/jsx/i18n/en.native.js +294 -4
  562. package/dist/jsx/i18n/en.native.js.map +1 -1
  563. package/dist/jsx/index.js +3 -2
  564. package/dist/jsx/index.js.map +1 -1
  565. package/dist/jsx/index.mjs +3 -2
  566. package/dist/jsx/index.mjs.map +1 -1
  567. package/dist/jsx/index.native.js +40 -0
  568. package/dist/jsx/index.native.js.map +1 -1
  569. package/dist/jsx/list/DoctypeListScreen.mjs +150 -46
  570. package/dist/jsx/list/DoctypeListScreen.mjs.map +1 -1
  571. package/dist/jsx/list/DoctypeListScreen.native.js +164 -56
  572. package/dist/jsx/list/DoctypeListScreen.native.js.map +1 -1
  573. package/dist/jsx/list/ListFilterBar.mjs +9 -5
  574. package/dist/jsx/list/ListFilterBar.mjs.map +1 -1
  575. package/dist/jsx/list/ListFilterBar.native.js +8 -4
  576. package/dist/jsx/list/ListFilterBar.native.js.map +1 -1
  577. package/dist/jsx/list/ListSidebar.mjs +4 -3
  578. package/dist/jsx/list/ListSidebar.mjs.map +1 -1
  579. package/dist/jsx/list/ListSidebar.native.js +4 -3
  580. package/dist/jsx/list/ListSidebar.native.js.map +1 -1
  581. package/dist/jsx/list/filter-chips.mjs +10 -4
  582. package/dist/jsx/list/filter-chips.mjs.map +1 -1
  583. package/dist/jsx/list/filter-chips.native.js +10 -4
  584. package/dist/jsx/list/filter-chips.native.js.map +1 -1
  585. package/dist/jsx/list/filter-editor.mjs +1 -10
  586. package/dist/jsx/list/filter-editor.mjs.map +1 -1
  587. package/dist/jsx/list/filter-editor.native.js +1 -10
  588. package/dist/jsx/list/filter-editor.native.js.map +1 -1
  589. package/dist/jsx/list/filter-saved.mjs +0 -1
  590. package/dist/jsx/list/filter-saved.mjs.map +1 -1
  591. package/dist/jsx/list/filter-saved.native.js +0 -1
  592. package/dist/jsx/list/filter-saved.native.js.map +1 -1
  593. package/dist/jsx/list/filter-sort.mjs +0 -1
  594. package/dist/jsx/list/filter-sort.mjs.map +1 -1
  595. package/dist/jsx/list/filter-sort.native.js +0 -1
  596. package/dist/jsx/list/filter-sort.native.js.map +1 -1
  597. package/dist/jsx/list/filter-standard.mjs +1 -3
  598. package/dist/jsx/list/filter-standard.mjs.map +1 -1
  599. package/dist/jsx/list/filter-standard.native.js +1 -3
  600. package/dist/jsx/list/filter-standard.native.js.map +1 -1
  601. package/dist/jsx/list/list-tools-sheet.mjs +10 -3
  602. package/dist/jsx/list/list-tools-sheet.mjs.map +1 -1
  603. package/dist/jsx/list/list-tools-sheet.native.js +12 -3
  604. package/dist/jsx/list/list-tools-sheet.native.js.map +1 -1
  605. package/dist/jsx/navigation/paths.mjs +5 -1
  606. package/dist/jsx/navigation/paths.mjs.map +1 -1
  607. package/dist/jsx/navigation/paths.native.js +7 -0
  608. package/dist/jsx/navigation/paths.native.js.map +1 -1
  609. package/dist/jsx/report/QueryReportScreen.mjs +1 -1
  610. package/dist/jsx/report/QueryReportScreen.mjs.map +1 -1
  611. package/dist/jsx/report/QueryReportScreen.native.js +1 -1
  612. package/dist/jsx/report/QueryReportScreen.native.js.map +1 -1
  613. package/dist/jsx/report/queryReportFilterBar.mjs +3 -8
  614. package/dist/jsx/report/queryReportFilterBar.mjs.map +1 -1
  615. package/dist/jsx/report/queryReportFilterBar.native.js +3 -8
  616. package/dist/jsx/report/queryReportFilterBar.native.js.map +1 -1
  617. package/dist/jsx/shared/sessionUser.mjs +78 -0
  618. package/dist/jsx/shared/sessionUser.mjs.map +1 -0
  619. package/dist/jsx/shared/sessionUser.native.js +137 -0
  620. package/dist/jsx/shared/sessionUser.native.js.map +1 -0
  621. package/dist/jsx/shared/useSessionUserId.mjs +2 -26
  622. package/dist/jsx/shared/useSessionUserId.mjs.map +1 -1
  623. package/dist/jsx/shared/useSessionUserId.native.js +2 -28
  624. package/dist/jsx/shared/useSessionUserId.native.js.map +1 -1
  625. package/dist/jsx/shell/BackofficeShell.mjs +132 -89
  626. package/dist/jsx/shell/BackofficeShell.mjs.map +1 -1
  627. package/dist/jsx/shell/BackofficeShell.native.js +146 -99
  628. package/dist/jsx/shell/BackofficeShell.native.js.map +1 -1
  629. package/dist/jsx/shell/HomeRedirect.mjs +20 -24
  630. package/dist/jsx/shell/HomeRedirect.mjs.map +1 -1
  631. package/dist/jsx/shell/HomeRedirect.native.js +17 -20
  632. package/dist/jsx/shell/HomeRedirect.native.js.map +1 -1
  633. package/dist/jsx/shell/WorkspaceSidebar.mjs +55 -27
  634. package/dist/jsx/shell/WorkspaceSidebar.mjs.map +1 -1
  635. package/dist/jsx/shell/WorkspaceSidebar.native.js +55 -25
  636. package/dist/jsx/shell/WorkspaceSidebar.native.js.map +1 -1
  637. package/dist/jsx/shell/shellSidebarSlot.mjs +3 -0
  638. package/dist/jsx/shell/shellSidebarSlot.mjs.map +1 -0
  639. package/dist/jsx/shell/shellSidebarSlot.native.js +34 -0
  640. package/dist/jsx/shell/shellSidebarSlot.native.js.map +1 -0
  641. package/dist/jsx/shell/useWorkspaces.mjs +28 -40
  642. package/dist/jsx/shell/useWorkspaces.mjs.map +1 -1
  643. package/dist/jsx/shell/useWorkspaces.native.js +27 -41
  644. package/dist/jsx/shell/useWorkspaces.native.js.map +1 -1
  645. package/dist/jsx/views/DashboardView.mjs +2 -2
  646. package/dist/jsx/views/DashboardView.mjs.map +1 -1
  647. package/dist/jsx/views/DashboardView.native.js +2 -2
  648. package/dist/jsx/views/DashboardView.native.js.map +1 -1
  649. package/dist/jsx/views/ImageView.mjs +15 -6
  650. package/dist/jsx/views/ImageView.mjs.map +1 -1
  651. package/dist/jsx/views/ImageView.native.js +14 -5
  652. package/dist/jsx/views/ImageView.native.js.map +1 -1
  653. package/dist/jsx/views/ViewHeader.mjs +18 -7
  654. package/dist/jsx/views/ViewHeader.mjs.map +1 -1
  655. package/dist/jsx/views/ViewHeader.native.js +17 -6
  656. package/dist/jsx/views/ViewHeader.native.js.map +1 -1
  657. package/dist/jsx/views/ViewSwitcherMenu.mjs +11 -10
  658. package/dist/jsx/views/ViewSwitcherMenu.mjs.map +1 -1
  659. package/dist/jsx/views/ViewSwitcherMenu.native.js +10 -9
  660. package/dist/jsx/views/ViewSwitcherMenu.native.js.map +1 -1
  661. package/dist/jsx/views/viewAvailability.mjs +17 -9
  662. package/dist/jsx/views/viewAvailability.mjs.map +1 -1
  663. package/dist/jsx/views/viewAvailability.native.js +18 -8
  664. package/dist/jsx/views/viewAvailability.native.js.map +1 -1
  665. package/dist/jsx/views/viewMeta.mjs +23 -1
  666. package/dist/jsx/views/viewMeta.mjs.map +1 -1
  667. package/dist/jsx/views/viewMeta.native.js +30 -1
  668. package/dist/jsx/views/viewMeta.native.js.map +1 -1
  669. package/dist/jsx/workspace/WorkspaceChartBlock.mjs +1 -1
  670. package/dist/jsx/workspace/WorkspaceChartBlock.mjs.map +1 -1
  671. package/dist/jsx/workspace/WorkspaceChartBlock.native.js +1 -1
  672. package/dist/jsx/workspace/WorkspaceChartBlock.native.js.map +1 -1
  673. package/dist/jsx/workspace/WorkspaceLinkDirectory.mjs +2 -2
  674. package/dist/jsx/workspace/WorkspaceLinkDirectory.mjs.map +1 -1
  675. package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js +2 -2
  676. package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
  677. package/dist/jsx/workspace/WorkspaceRecents.mjs +2 -2
  678. package/dist/jsx/workspace/WorkspaceRecents.mjs.map +1 -1
  679. package/dist/jsx/workspace/WorkspaceRecents.native.js +1 -1
  680. package/dist/jsx/workspace/WorkspaceRecents.native.js.map +1 -1
  681. package/dist/jsx/workspace/WorkspaceShortcut.mjs +2 -2
  682. package/dist/jsx/workspace/WorkspaceShortcut.mjs.map +1 -1
  683. package/dist/jsx/workspace/WorkspaceShortcut.native.js +1 -1
  684. package/dist/jsx/workspace/WorkspaceShortcut.native.js.map +1 -1
  685. package/package.json +12 -12
  686. package/src/backofficeScreens.designLaw.spec.ts +27 -0
  687. package/src/chrome/BackofficeAwesomebar.tsx +18 -9
  688. package/src/chrome/CommandPalette.spec.tsx +31 -0
  689. package/src/chrome/CommandPalette.tsx +47 -31
  690. package/src/chrome/NotificationsButton.screen.spec.tsx +1 -0
  691. package/src/chrome/NotificationsButton.tsx +4 -2
  692. package/src/chrome/UserMenu.screen.spec.tsx +76 -6
  693. package/src/chrome/UserMenu.tsx +174 -110
  694. package/src/chrome/awesomebar-data.tsx +28 -19
  695. package/src/chrome/command-palette-model.spec.tsx +148 -0
  696. package/src/chrome/command-palette-model.ts +13 -5
  697. package/src/chrome/notifications-data.tsx +3 -50
  698. package/src/chrome/notifications-panel.tsx +3 -6
  699. package/src/chrome/user-session.tsx +26 -15
  700. package/src/config/BackofficeProvider.spec.tsx +6 -2
  701. package/src/config/BackofficeProvider.tsx +10 -0
  702. package/src/config/capabilities.spec.ts +13 -0
  703. package/src/config/capabilities.ts +4 -0
  704. package/src/desk/Desk.spec.tsx +48 -0
  705. package/src/desk/Desk.tsx +25 -1
  706. package/src/desk/DeskSurface.spec.tsx +2 -0
  707. package/src/desk/DeskSurface.tsx +8 -0
  708. package/src/desk/resolveDeskPath.spec.ts +20 -0
  709. package/src/desk/resolveDeskPath.ts +6 -1
  710. package/src/desk/target.ts +3 -0
  711. package/src/form/DocFormScreen.guest.screen.spec.tsx +7 -3
  712. package/src/form/DocFormScreen.rights.spec.tsx +113 -8
  713. package/src/form/DocFormScreen.tsx +65 -44
  714. package/src/form/FormConnections.tsx +2 -2
  715. package/src/form/FormErrorBoundary.spec.tsx +2 -3
  716. package/src/form/FormErrorBoundary.tsx +1 -1
  717. package/src/form/FormSidebarPanel.tsx +1 -1
  718. package/src/form/FormTimeline.tsx +0 -1
  719. package/src/form/FormToolbar.screen.spec.tsx +90 -29
  720. package/src/form/FormToolbar.tsx +98 -132
  721. package/src/formBuilder/DoctypePicker.tsx +72 -0
  722. package/src/formBuilder/FieldPalette.tsx +119 -0
  723. package/src/formBuilder/FieldPropertiesPanel.tsx +213 -0
  724. package/src/formBuilder/FormBuilderCanvas.tsx +468 -0
  725. package/src/formBuilder/FormBuilderScreen.screen.spec.tsx +392 -0
  726. package/src/formBuilder/FormBuilderScreen.stories.tsx +122 -0
  727. package/src/formBuilder/FormBuilderScreen.tsx +491 -0
  728. package/src/formBuilder/api.spec.ts +301 -0
  729. package/src/formBuilder/api.ts +198 -0
  730. package/src/formBuilder/fieldtypes.ts +140 -0
  731. package/src/formBuilder/index.ts +58 -0
  732. package/src/formBuilder/model.spec.ts +401 -0
  733. package/src/formBuilder/model.ts +522 -0
  734. package/src/formBuilder/useFormBuilderDrag.spec.tsx +170 -0
  735. package/src/formBuilder/useFormBuilderDrag.ts +498 -0
  736. package/src/i18n/en.ts +293 -3
  737. package/src/index.ts +58 -1
  738. package/src/list/DoctypeListScreen.guest.screen.spec.tsx +144 -4
  739. package/src/list/DoctypeListScreen.tsx +213 -88
  740. package/src/list/ListFilterBar.screen.spec.tsx +1 -1
  741. package/src/list/ListFilterBar.tsx +16 -6
  742. package/src/list/ListSidebar.tsx +11 -2
  743. package/src/list/filter-chips.tsx +19 -4
  744. package/src/list/filter-editor.tsx +1 -10
  745. package/src/list/filter-saved.tsx +0 -1
  746. package/src/list/filter-sort.tsx +0 -1
  747. package/src/list/filter-standard.tsx +1 -3
  748. package/src/list/list-tools-sheet.tsx +32 -13
  749. package/src/navigation/paths.spec.ts +19 -0
  750. package/src/navigation/paths.ts +8 -0
  751. package/src/report/DoctypeReportView.screen.spec.tsx +12 -0
  752. package/src/report/QueryReportScreen.tsx +1 -1
  753. package/src/report/queryReportFilterBar.tsx +0 -5
  754. package/src/shared/sessionUser.spec.tsx +119 -0
  755. package/src/shared/sessionUser.ts +80 -0
  756. package/src/shared/useSessionUserId.ts +2 -40
  757. package/src/shell/BackofficeShell.spec.tsx +115 -3
  758. package/src/shell/BackofficeShell.tsx +186 -116
  759. package/src/shell/HomeRedirect.spec.tsx +89 -0
  760. package/src/shell/HomeRedirect.tsx +31 -20
  761. package/src/shell/WorkspaceSidebar.spec.tsx +15 -0
  762. package/src/shell/WorkspaceSidebar.tsx +58 -29
  763. package/src/shell/shellSidebarSlot.spec.tsx +178 -0
  764. package/src/shell/shellSidebarSlot.tsx +7 -0
  765. package/src/shell/useWorkspaces.spec.tsx +45 -0
  766. package/src/shell/useWorkspaces.ts +27 -62
  767. package/src/views/DashboardView.tsx +2 -2
  768. package/src/views/ImageView.tsx +19 -3
  769. package/src/views/ViewHeader.tsx +13 -14
  770. package/src/views/ViewSwitcherMenu.spec.tsx +3 -0
  771. package/src/views/ViewSwitcherMenu.tsx +11 -10
  772. package/src/views/viewAvailability.spec.ts +45 -12
  773. package/src/views/viewAvailability.ts +27 -24
  774. package/src/views/viewMeta.ts +30 -0
  775. package/src/workspace/WorkspaceChartBlock.tsx +1 -1
  776. package/src/workspace/WorkspaceLinkDirectory.tsx +2 -2
  777. package/src/workspace/WorkspaceRecents.tsx +9 -2
  778. package/src/workspace/WorkspaceShortcut.tsx +12 -2
  779. package/types/chrome/BackofficeAwesomebar.d.ts.map +1 -1
  780. package/types/chrome/CommandPalette.d.ts +7 -1
  781. package/types/chrome/CommandPalette.d.ts.map +1 -1
  782. package/types/chrome/NotificationsButton.d.ts.map +1 -1
  783. package/types/chrome/UserMenu.d.ts.map +1 -1
  784. package/types/chrome/awesomebar-data.d.ts +4 -3
  785. package/types/chrome/awesomebar-data.d.ts.map +1 -1
  786. package/types/chrome/command-palette-model.d.ts +1 -0
  787. package/types/chrome/command-palette-model.d.ts.map +1 -1
  788. package/types/chrome/notifications-data.d.ts.map +1 -1
  789. package/types/chrome/notifications-panel.d.ts.map +1 -1
  790. package/types/chrome/user-session.d.ts.map +1 -1
  791. package/types/config/BackofficeProvider.d.ts +7 -1
  792. package/types/config/BackofficeProvider.d.ts.map +1 -1
  793. package/types/config/capabilities.d.ts +3 -0
  794. package/types/config/capabilities.d.ts.map +1 -1
  795. package/types/desk/Desk.d.ts +2 -1
  796. package/types/desk/Desk.d.ts.map +1 -1
  797. package/types/desk/DeskSurface.d.ts.map +1 -1
  798. package/types/desk/resolveDeskPath.d.ts +4 -1
  799. package/types/desk/resolveDeskPath.d.ts.map +1 -1
  800. package/types/desk/target.d.ts +3 -0
  801. package/types/desk/target.d.ts.map +1 -1
  802. package/types/form/DocFormScreen.d.ts +1 -1
  803. package/types/form/DocFormScreen.d.ts.map +1 -1
  804. package/types/form/FormTimeline.d.ts.map +1 -1
  805. package/types/form/FormToolbar.d.ts +5 -32
  806. package/types/form/FormToolbar.d.ts.map +1 -1
  807. package/types/formBuilder/DoctypePicker.d.ts +2 -0
  808. package/types/formBuilder/DoctypePicker.d.ts.map +1 -0
  809. package/types/formBuilder/FieldPalette.d.ts +6 -0
  810. package/types/formBuilder/FieldPalette.d.ts.map +1 -0
  811. package/types/formBuilder/FieldPropertiesPanel.d.ts +10 -0
  812. package/types/formBuilder/FieldPropertiesPanel.d.ts.map +1 -0
  813. package/types/formBuilder/FormBuilderCanvas.d.ts +17 -0
  814. package/types/formBuilder/FormBuilderCanvas.d.ts.map +1 -0
  815. package/types/formBuilder/FormBuilderScreen.d.ts +7 -0
  816. package/types/formBuilder/FormBuilderScreen.d.ts.map +1 -0
  817. package/types/formBuilder/api.d.ts +32 -0
  818. package/types/formBuilder/api.d.ts.map +1 -0
  819. package/types/formBuilder/fieldtypes.d.ts +21 -0
  820. package/types/formBuilder/fieldtypes.d.ts.map +1 -0
  821. package/types/formBuilder/index.d.ts +5 -0
  822. package/types/formBuilder/index.d.ts.map +1 -0
  823. package/types/formBuilder/model.d.ts +76 -0
  824. package/types/formBuilder/model.d.ts.map +1 -0
  825. package/types/formBuilder/useFormBuilderDrag.d.ts +44 -0
  826. package/types/formBuilder/useFormBuilderDrag.d.ts.map +1 -0
  827. package/types/i18n/en.d.ts +293 -3
  828. package/types/i18n/en.d.ts.map +1 -1
  829. package/types/index.d.ts +4 -3
  830. package/types/index.d.ts.map +1 -1
  831. package/types/list/DoctypeListScreen.d.ts.map +1 -1
  832. package/types/list/ListFilterBar.d.ts +10 -4
  833. package/types/list/ListFilterBar.d.ts.map +1 -1
  834. package/types/list/ListSidebar.d.ts +7 -1
  835. package/types/list/ListSidebar.d.ts.map +1 -1
  836. package/types/list/filter-chips.d.ts +9 -1
  837. package/types/list/filter-chips.d.ts.map +1 -1
  838. package/types/list/filter-saved.d.ts.map +1 -1
  839. package/types/list/filter-sort.d.ts.map +1 -1
  840. package/types/list/list-tools-sheet.d.ts +9 -1
  841. package/types/list/list-tools-sheet.d.ts.map +1 -1
  842. package/types/navigation/paths.d.ts +3 -0
  843. package/types/navigation/paths.d.ts.map +1 -1
  844. package/types/report/queryReportFilterBar.d.ts.map +1 -1
  845. package/types/shared/sessionUser.d.ts +10 -0
  846. package/types/shared/sessionUser.d.ts.map +1 -0
  847. package/types/shared/useSessionUserId.d.ts +0 -4
  848. package/types/shared/useSessionUserId.d.ts.map +1 -1
  849. package/types/shell/BackofficeShell.d.ts +6 -1
  850. package/types/shell/BackofficeShell.d.ts.map +1 -1
  851. package/types/shell/HomeRedirect.d.ts +3 -1
  852. package/types/shell/HomeRedirect.d.ts.map +1 -1
  853. package/types/shell/WorkspaceSidebar.d.ts.map +1 -1
  854. package/types/shell/shellSidebarSlot.d.ts +2 -0
  855. package/types/shell/shellSidebarSlot.d.ts.map +1 -0
  856. package/types/shell/useWorkspaces.d.ts +4 -5
  857. package/types/shell/useWorkspaces.d.ts.map +1 -1
  858. package/types/views/ImageView.d.ts.map +1 -1
  859. package/types/views/ViewHeader.d.ts +1 -10
  860. package/types/views/ViewHeader.d.ts.map +1 -1
  861. package/types/views/ViewSwitcherMenu.d.ts.map +1 -1
  862. package/types/views/viewAvailability.d.ts +12 -15
  863. package/types/views/viewAvailability.d.ts.map +1 -1
  864. package/types/views/viewMeta.d.ts +10 -0
  865. package/types/views/viewMeta.d.ts.map +1 -1
  866. package/types/workspace/WorkspaceRecents.d.ts.map +1 -1
  867. package/types/workspace/WorkspaceShortcut.d.ts.map +1 -1
@@ -1,8 +1,9 @@
1
- import { Avatar, DropdownMenu, SizableText, YStack, isWeb } from "@multiplatform.one/components";
1
+ import { Avatar, DropdownMenu, SizableText, Skeleton, YStack, isWeb, Dialog, DialogContent } from "@multiplatform.one/components";
2
2
  import { Button } from "@multiplatform.one/forms";
3
3
  import { useFrappeConfig } from "@multiplatform.one/frappe-ui";
4
4
  import { useResolvedKnobs } from "@multiplatform.one/theme";
5
- import { useCallback } from "react";
5
+ import { openUrl } from "@multiplatform.one/platform";
6
+ import { useCallback, useRef, useState } from "react";
6
7
  import { useTranslation } from "react-i18next";
7
8
  import { useBackofficeCapabilities, useBackofficeConfig, useBackofficeNavigator, useBackofficePaths } from "../config/BackofficeProvider.mjs";
8
9
  import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.mjs";
@@ -21,24 +22,60 @@ function UserMenu({
21
22
  const navigator = useBackofficeNavigator();
22
23
  const paths = useBackofficePaths();
23
24
  const {
24
- appearance
25
+ appearance,
26
+ auth,
27
+ emitEvent
25
28
  } = useBackofficeConfig();
29
+ const acting = useRef(false);
30
+ const [busy, setBusy] = useState(false);
31
+ const [actionError, setActionError] = useState(false);
26
32
  const {
27
33
  userMenu
28
34
  } = useBackofficeCapabilities();
29
35
  const app = useFrappeApp();
30
36
  const frappeConfig = useFrappeConfig();
31
37
  const {
32
- info
38
+ info,
39
+ loading
33
40
  } = useSessionUserInfo();
34
- const sessionUser = info?.user;
35
- const handleLogout = useCallback(async () => {
41
+ const sessionUser = info?.user === "Guest" ? void 0 : info?.user;
42
+ const runAuthAction = useCallback(async action => {
43
+ if (acting.current) return;
44
+ acting.current = true;
45
+ setBusy(true);
46
+ setActionError(false);
47
+ try {
48
+ await action();
49
+ clearSessionUserCache();
50
+ } catch (error) {
51
+ setActionError(true);
52
+ emitEvent({
53
+ type: "error",
54
+ error,
55
+ context: "user-menu-auth"
56
+ });
57
+ } finally {
58
+ acting.current = false;
59
+ setBusy(false);
60
+ }
61
+ }, [emitEvent]);
62
+ const handleLogout = useCallback(() => runAuthAction(async () => {
36
63
  try {
37
64
  await app?.auth().logout();
38
- } catch {}
39
- clearSessionUserCache();
65
+ } catch (error) {
66
+ emitEvent({
67
+ type: "error",
68
+ error,
69
+ context: "frappe-logout"
70
+ });
71
+ }
72
+ await auth?.logout?.();
40
73
  navigator.replace(paths.home());
41
- }, [app, navigator, paths]);
74
+ }), [app, auth, emitEvent, navigator, paths, runAuthAction]);
75
+ const handleLogin = useCallback(() => runAuthAction(() => {
76
+ if (auth) return auth.login();
77
+ if (frappeConfig?.baseURL) return openUrl(`${frappeConfig.baseURL.replace(/\/+$/, "")}/login`);
78
+ }), [auth, frappeConfig?.baseURL, runAuthAction]);
42
79
  const handleReload = useCallback(() => {
43
80
  if (typeof location !== "undefined" && typeof location.reload === "function") {
44
81
  location.reload();
@@ -58,80 +95,109 @@ function UserMenu({
58
95
  const handleExitToSite = useCallback(() => {
59
96
  navigator.navigate(exitToSite.path);
60
97
  }, [navigator, exitToSite.path]);
61
- const sessionGate = sessionUser ? {} : {
62
- disabled: true,
63
- disabledReason: t("userMenu.sessionUnavailable", "Session not loaded")
64
- };
65
- return /* @__PURE__ */jsxs(DropdownMenu, {
66
- placement: "bottom-end",
67
- defaultOpen,
68
- children: [/* @__PURE__ */jsx(DropdownMenu.Trigger, {
69
- asChild: true,
70
- children: /* @__PURE__ */jsx(Button, {
98
+ const errorDialog = actionError ? /* @__PURE__ */jsx(Dialog, {
99
+ modal: true,
100
+ open: true,
101
+ onOpenChange: setActionError,
102
+ children: /* @__PURE__ */jsxs(Dialog.Portal, {
103
+ children: [/* @__PURE__ */jsx(Dialog.Overlay, {
104
+ backgroundColor: "$shadow6"
105
+ }), /* @__PURE__ */jsxs(DialogContent, {
106
+ children: [/* @__PURE__ */jsx(Dialog.Title, {
107
+ children: t("userMenu.authFailedTitle", "Account unavailable")
108
+ }), /* @__PURE__ */jsx(Dialog.Description, {
109
+ children: t("userMenu.authFailed", "Unable to complete sign-in or sign-out. Try again.")
110
+ }), /* @__PURE__ */jsx(Dialog.Close, {
111
+ asChild: true,
112
+ children: /* @__PURE__ */jsx(Button, {
113
+ children: t("userMenu.close", "Close")
114
+ })
115
+ })]
116
+ })]
117
+ })
118
+ }) : null;
119
+ if (loading) {
120
+ return /* @__PURE__ */jsx(Skeleton, {
121
+ width: knobProps.sizeToken,
122
+ height: knobProps.sizeToken
123
+ });
124
+ }
125
+ if (!sessionUser) {
126
+ return /* @__PURE__ */jsxs(Fragment, {
127
+ children: [/* @__PURE__ */jsx(Button, {
71
128
  chromeless: true,
72
- circular: true,
73
129
  size: knobProps.sizeToken,
74
- "aria-label": t("userMenu.label", "User menu"),
75
- children: /* @__PURE__ */jsx(Avatar, {
76
- size: knobProps.sizeToken === "$5" ? "$3" : knobProps.sizeToken === "$3" ? "$1" : "$2",
77
- src: info?.imageUrl,
78
- name: info?.fullName ?? info?.user
130
+ loading: busy,
131
+ onPress: handleLogin,
132
+ children: t("userMenu.logIn", "Log in")
133
+ }), errorDialog]
134
+ });
135
+ }
136
+ return /* @__PURE__ */jsxs(Fragment, {
137
+ children: [/* @__PURE__ */jsxs(DropdownMenu, {
138
+ placement: "bottom-end",
139
+ defaultOpen,
140
+ children: [/* @__PURE__ */jsx(DropdownMenu.Trigger, {
141
+ asChild: true,
142
+ children: /* @__PURE__ */jsx(Button, {
143
+ chromeless: true,
144
+ circular: true,
145
+ size: knobProps.sizeToken,
146
+ "aria-label": t("userMenu.label", "User menu"),
147
+ children: /* @__PURE__ */jsx(Avatar, {
148
+ size: knobProps.sizeToken === "$5" ? "$3" : knobProps.sizeToken === "$3" ? "$1" : "$2",
149
+ src: info?.imageUrl,
150
+ name: info?.fullName ?? info?.user
151
+ })
79
152
  })
80
- })
81
- }), /* @__PURE__ */jsxs(DropdownMenu.Content, {
82
- minWidth: 240,
83
- children: [info ? /* @__PURE__ */jsxs(Fragment, {
84
- children: [/* @__PURE__ */jsxs(YStack, {
85
- ...knobProps.panelPadding,
86
- ...knobProps.gap,
87
- paddingVertical: "$2",
88
- children: [/* @__PURE__ */jsx(SizableText, {
89
- ...knobProps.label,
90
- fontWeight: "400",
91
- numberOfLines: 1,
92
- children: info.fullName
93
- }), info.email ? /* @__PURE__ */jsx(SizableText, {
94
- size: "$2",
95
- color: "$color10",
96
- numberOfLines: 1,
97
- children: info.email
98
- }) : null]
99
- }), /* @__PURE__ */jsx(DropdownMenu.Separator, {})]
100
- }) : null, /* @__PURE__ */jsx(DropdownMenu.Item, {
101
- ...sessionGate,
102
- onSelect: () => sessionUser && navigator.navigate(paths.form("User", sessionUser)),
103
- children: t("userMenu.myProfile", "My Profile")
104
- }), /* @__PURE__ */jsx(DropdownMenu.Item, {
105
- ...sessionGate,
106
- onSelect: () => sessionUser && navigator.navigate(paths.form("User", sessionUser)),
107
- children: t("userMenu.mySettings", "My Settings")
108
- }), /* @__PURE__ */jsx(DropdownMenu.Item, {
109
- disabled: true,
110
- disabledReason: t("userMenu.sessionDefaultsGap", "Not implemented yet"),
111
- children: t("userMenu.sessionDefaults", "Session Defaults")
112
- }), isWeb ? /* @__PURE__ */jsx(DropdownMenu.Item, {
113
- onSelect: handleReload,
114
- children: t("userMenu.reload", "Reload")
115
- }) : null, userMenu.themeToggle ? /* @__PURE__ */jsx(DropdownMenu.Item, {
116
- ...(appearance ? {} : {
117
- disabled: true,
118
- disabledReason: t("userMenu.themeUnavailable", "Theme switching is unavailable on this platform")
119
- }),
120
- onSelect: handleToggleTheme,
121
- children: t("userMenu.toggleTheme", "Toggle Theme")
122
- }) : null, isWeb && websiteURL ? /* @__PURE__ */jsx(DropdownMenu.Item, {
123
- onSelect: handleViewWebsite,
124
- children: t("userMenu.viewWebsite", "View Website")
125
- }) : null, isWeb && exitToSite.enabled ? /* @__PURE__ */jsx(DropdownMenu.Item, {
126
- onSelect: handleExitToSite,
127
- children: exitToSite.label ?? t("userMenu.exitToSite", "\u2190 multiplatform.one")
128
- }) : null, userMenu.logout ? /* @__PURE__ */jsxs(Fragment, {
129
- children: [/* @__PURE__ */jsx(DropdownMenu.Separator, {}), /* @__PURE__ */jsx(DropdownMenu.Item, {
130
- onSelect: handleLogout,
131
- children: t("userMenu.logOut", "Log Out")
132
- })]
133
- }) : null]
134
- })]
153
+ }), /* @__PURE__ */jsxs(DropdownMenu.Content, {
154
+ children: [info ? /* @__PURE__ */jsxs(Fragment, {
155
+ children: [/* @__PURE__ */jsxs(YStack, {
156
+ ...knobProps.panelPadding,
157
+ ...knobProps.gap,
158
+ paddingVertical: "$2",
159
+ children: [/* @__PURE__ */jsx(SizableText, {
160
+ ...knobProps.label,
161
+ fontWeight: "400",
162
+ numberOfLines: 1,
163
+ children: info.fullName
164
+ }), info.email ? /* @__PURE__ */jsx(SizableText, {
165
+ size: "$2",
166
+ color: "$color10",
167
+ numberOfLines: 1,
168
+ children: info.email
169
+ }) : null]
170
+ }), /* @__PURE__ */jsx(DropdownMenu.Separator, {})]
171
+ }) : null, /* @__PURE__ */jsx(DropdownMenu.Item, {
172
+ onSelect: () => sessionUser && navigator.navigate(paths.form("User", sessionUser)),
173
+ children: t("userMenu.myProfile", "My Profile")
174
+ }), /* @__PURE__ */jsx(DropdownMenu.Item, {
175
+ onSelect: () => sessionUser && navigator.navigate(paths.form("User", sessionUser)),
176
+ children: t("userMenu.mySettings", "My Settings")
177
+ }), isWeb ? /* @__PURE__ */jsx(DropdownMenu.Item, {
178
+ onSelect: handleReload,
179
+ children: t("userMenu.reload", "Reload")
180
+ }) : null, userMenu.themeToggle ? /* @__PURE__ */jsx(DropdownMenu.Item, {
181
+ ...(appearance ? {} : {
182
+ disabled: true,
183
+ disabledReason: t("userMenu.themeUnavailable", "Theme switching is unavailable on this platform")
184
+ }),
185
+ onSelect: handleToggleTheme,
186
+ children: t("userMenu.toggleTheme", "Toggle Theme")
187
+ }) : null, isWeb && websiteURL ? /* @__PURE__ */jsx(DropdownMenu.Item, {
188
+ onSelect: handleViewWebsite,
189
+ children: t("userMenu.viewWebsite", "View Website")
190
+ }) : null, isWeb && exitToSite.enabled ? /* @__PURE__ */jsx(DropdownMenu.Item, {
191
+ onSelect: handleExitToSite,
192
+ children: exitToSite.label ?? t("userMenu.exitToSite", "\u2190 multiplatform.one")
193
+ }) : null, userMenu.logout ? /* @__PURE__ */jsxs(Fragment, {
194
+ children: [/* @__PURE__ */jsx(DropdownMenu.Separator, {}), /* @__PURE__ */jsx(DropdownMenu.Item, {
195
+ onSelect: handleLogout,
196
+ children: t("userMenu.logOut", "Log Out")
197
+ })]
198
+ }) : null]
199
+ })]
200
+ }), errorDialog]
135
201
  });
136
202
  }
137
203
  export { UserMenu };
@@ -1 +1 @@
1
- {"version":3,"names":["Avatar","DropdownMenu","SizableText","YStack","isWeb","Button","useFrappeConfig","useResolvedKnobs","useCallback","useTranslation","useBackofficeCapabilities","useBackofficeConfig","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","useFrappeApp","clearSessionUserCache","useSessionUserInfo","Fragment","jsx","jsxs","UserMenu","defaultOpen","t","knobProps","navigator","paths","appearance","userMenu","app","frappeConfig","info","sessionUser","user","handleLogout","auth","logout","replace","home","handleReload","location","reload","websiteURL","baseURL","handleViewWebsite","window","open","handleToggleTheme","setScheme","scheme","exitToSite","handleExitToSite","navigate","path","sessionGate","disabled","disabledReason","placement","children","Trigger","asChild","chromeless","circular","size","sizeToken","src","imageUrl","name","fullName","Content","minWidth","panelPadding","gap","paddingVertical","label","fontWeight","numberOfLines","email","color","Separator","Item","onSelect","form","themeToggle","enabled"],"sources":["../../../src/chrome/UserMenu.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["Avatar","DropdownMenu","SizableText","Skeleton","YStack","isWeb","Dialog","DialogContent","Button","useFrappeConfig","useResolvedKnobs","openUrl","useCallback","useRef","useState","useTranslation","useBackofficeCapabilities","useBackofficeConfig","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","useFrappeApp","clearSessionUserCache","useSessionUserInfo","Fragment","jsx","jsxs","UserMenu","defaultOpen","t","knobProps","navigator","paths","appearance","auth","emitEvent","acting","busy","setBusy","actionError","setActionError","userMenu","app","frappeConfig","info","loading","sessionUser","user","runAuthAction","action","current","error","type","context","handleLogout","logout","replace","home","handleLogin","login","baseURL","handleReload","location","reload","websiteURL","handleViewWebsite","window","open","handleToggleTheme","setScheme","scheme","exitToSite","handleExitToSite","navigate","path","errorDialog","modal","onOpenChange","children","Portal","Overlay","backgroundColor","Title","Description","Close","asChild","width","sizeToken","height","chromeless","size","onPress","placement","Trigger","circular","src","imageUrl","name","fullName","Content","panelPadding","gap","paddingVertical","label","fontWeight","numberOfLines","email","color","Separator","Item","onSelect","form","themeToggle","disabled","disabledReason","enabled"],"sources":["../../../src/chrome/UserMenu.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
@@ -1,10 +1,11 @@
1
1
  import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
2
  import React from "react";
3
- import { Avatar, DropdownMenu, SizableText, YStack, isWeb } from "@multiplatform.one/components";
3
+ import { Avatar, DropdownMenu, SizableText, Skeleton, YStack, isWeb, Dialog, DialogContent } from "@multiplatform.one/components";
4
4
  import { Button } from "@multiplatform.one/forms";
5
5
  import { useFrappeConfig } from "@multiplatform.one/frappe-ui";
6
6
  import { useResolvedKnobs } from "@multiplatform.one/theme";
7
- import { useCallback } from "react";
7
+ import { openUrl } from "@multiplatform.one/platform";
8
+ import { useCallback, useRef, useState } from "react";
8
9
  import { useTranslation } from "react-i18next";
9
10
  import { useBackofficeCapabilities, useBackofficeConfig, useBackofficeNavigator, useBackofficePaths } from "../config/BackofficeProvider.native.js";
10
11
  import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.native.js";
@@ -24,24 +25,65 @@ function UserMenu() {
24
25
  var navigator = useBackofficeNavigator();
25
26
  var paths = useBackofficePaths();
26
27
  var {
27
- appearance
28
+ appearance,
29
+ auth,
30
+ emitEvent
28
31
  } = useBackofficeConfig();
32
+ var acting = useRef(false);
33
+ var [busy, setBusy] = useState(false);
34
+ var [actionError, setActionError] = useState(false);
29
35
  var {
30
36
  userMenu
31
37
  } = useBackofficeCapabilities();
32
38
  var app = useFrappeApp();
33
39
  var frappeConfig = useFrappeConfig();
34
40
  var {
35
- info
41
+ info,
42
+ loading
36
43
  } = useSessionUserInfo();
37
- var sessionUser = info === null || info === void 0 ? void 0 : info.user;
38
- var handleLogout = useCallback(async function () {
44
+ var sessionUser = (info === null || info === void 0 ? void 0 : info.user) === "Guest" ? void 0 : info === null || info === void 0 ? void 0 : info.user;
45
+ var runAuthAction = useCallback(async function (action) {
46
+ if (acting.current) return;
47
+ acting.current = true;
48
+ setBusy(true);
49
+ setActionError(false);
39
50
  try {
40
- await (app === null || app === void 0 ? void 0 : app.auth().logout());
41
- } catch (unused) {}
42
- clearSessionUserCache();
43
- navigator.replace(paths.home());
44
- }, [app, navigator, paths]);
51
+ await action();
52
+ clearSessionUserCache();
53
+ } catch (error) {
54
+ setActionError(true);
55
+ emitEvent({
56
+ type: "error",
57
+ error,
58
+ context: "user-menu-auth"
59
+ });
60
+ } finally {
61
+ acting.current = false;
62
+ setBusy(false);
63
+ }
64
+ }, [emitEvent]);
65
+ var handleLogout = useCallback(function () {
66
+ return runAuthAction(async function () {
67
+ var _auth_logout;
68
+ try {
69
+ await (app === null || app === void 0 ? void 0 : app.auth().logout());
70
+ } catch (error) {
71
+ emitEvent({
72
+ type: "error",
73
+ error,
74
+ context: "frappe-logout"
75
+ });
76
+ }
77
+ await (auth === null || auth === void 0 ? void 0 : (_auth_logout = auth.logout) === null || _auth_logout === void 0 ? void 0 : _auth_logout.call(auth));
78
+ navigator.replace(paths.home());
79
+ });
80
+ }, [app, auth, emitEvent, navigator, paths, runAuthAction]);
81
+ var handleLogin = useCallback(function () {
82
+ return runAuthAction(function () {
83
+ if (auth) return auth.login();
84
+ if (frappeConfig === null || frappeConfig === void 0 ? void 0 : frappeConfig.baseURL) return openUrl(`${frappeConfig.baseURL.replace(/\/+$/, "")}/login`);
85
+ });
86
+ }, [auth, frappeConfig === null || frappeConfig === void 0 ? void 0 : frappeConfig.baseURL, runAuthAction]);
45
87
  var handleReload = useCallback(function () {
46
88
  if (typeof location !== "undefined" && typeof location.reload === "function") {
47
89
  location.reload();
@@ -61,91 +103,116 @@ function UserMenu() {
61
103
  var handleExitToSite = useCallback(function () {
62
104
  navigator.navigate(exitToSite.path);
63
105
  }, [navigator, exitToSite.path]);
64
- var sessionGate = sessionUser ? {} : {
65
- disabled: true,
66
- disabledReason: t("userMenu.sessionUnavailable", "Session not loaded")
67
- };
68
- return /* @__PURE__ */_jsxs(DropdownMenu, {
69
- placement: "bottom-end",
70
- defaultOpen,
71
- children: [/* @__PURE__ */_jsx(DropdownMenu.Trigger, {
72
- asChild: true,
73
- children: /* @__PURE__ */_jsx(Button, {
106
+ var errorDialog = actionError ? /* @__PURE__ */_jsx(Dialog, {
107
+ modal: true,
108
+ open: true,
109
+ onOpenChange: setActionError,
110
+ children: /* @__PURE__ */_jsxs(Dialog.Portal, {
111
+ children: [/* @__PURE__ */_jsx(Dialog.Overlay, {
112
+ backgroundColor: "$shadow6"
113
+ }), /* @__PURE__ */_jsxs(DialogContent, {
114
+ children: [/* @__PURE__ */_jsx(Dialog.Title, {
115
+ children: t("userMenu.authFailedTitle", "Account unavailable")
116
+ }), /* @__PURE__ */_jsx(Dialog.Description, {
117
+ children: t("userMenu.authFailed", "Unable to complete sign-in or sign-out. Try again.")
118
+ }), /* @__PURE__ */_jsx(Dialog.Close, {
119
+ asChild: true,
120
+ children: /* @__PURE__ */_jsx(Button, {
121
+ children: t("userMenu.close", "Close")
122
+ })
123
+ })]
124
+ })]
125
+ })
126
+ }) : null;
127
+ if (loading) {
128
+ return /* @__PURE__ */_jsx(Skeleton, {
129
+ width: knobProps.sizeToken,
130
+ height: knobProps.sizeToken
131
+ });
132
+ }
133
+ if (!sessionUser) {
134
+ return /* @__PURE__ */_jsxs(_Fragment, {
135
+ children: [/* @__PURE__ */_jsx(Button, {
74
136
  chromeless: true,
75
- circular: true,
76
137
  size: knobProps.sizeToken,
77
- "aria-label": t("userMenu.label", "User menu"),
78
- children: /* @__PURE__ */_jsx(Avatar, {
79
- size: knobProps.sizeToken === "$5" ? "$3" : knobProps.sizeToken === "$3" ? "$1" : "$2",
80
- src: info === null || info === void 0 ? void 0 : info.imageUrl,
81
- name: (_ref = info === null || info === void 0 ? void 0 : info.fullName) !== null && _ref !== void 0 ? _ref : info === null || info === void 0 ? void 0 : info.user
138
+ loading: busy,
139
+ onPress: handleLogin,
140
+ children: t("userMenu.logIn", "Log in")
141
+ }), errorDialog]
142
+ });
143
+ }
144
+ return /* @__PURE__ */_jsxs(_Fragment, {
145
+ children: [/* @__PURE__ */_jsxs(DropdownMenu, {
146
+ placement: "bottom-end",
147
+ defaultOpen,
148
+ children: [/* @__PURE__ */_jsx(DropdownMenu.Trigger, {
149
+ asChild: true,
150
+ children: /* @__PURE__ */_jsx(Button, {
151
+ chromeless: true,
152
+ circular: true,
153
+ size: knobProps.sizeToken,
154
+ "aria-label": t("userMenu.label", "User menu"),
155
+ children: /* @__PURE__ */_jsx(Avatar, {
156
+ size: knobProps.sizeToken === "$5" ? "$3" : knobProps.sizeToken === "$3" ? "$1" : "$2",
157
+ src: info === null || info === void 0 ? void 0 : info.imageUrl,
158
+ name: (_ref = info === null || info === void 0 ? void 0 : info.fullName) !== null && _ref !== void 0 ? _ref : info === null || info === void 0 ? void 0 : info.user
159
+ })
82
160
  })
83
- })
84
- }), /* @__PURE__ */_jsxs(DropdownMenu.Content, {
85
- minWidth: 240,
86
- children: [info ? /* @__PURE__ */_jsxs(_Fragment, {
87
- children: [/* @__PURE__ */_jsxs(YStack, {
88
- ...knobProps.panelPadding,
89
- ...knobProps.gap,
90
- paddingVertical: "$2",
91
- children: [/* @__PURE__ */_jsx(SizableText, {
92
- ...knobProps.label,
93
- fontWeight: "400",
94
- numberOfLines: 1,
95
- children: info.fullName
96
- }), info.email ? /* @__PURE__ */_jsx(SizableText, {
97
- size: "$2",
98
- color: "$color10",
99
- numberOfLines: 1,
100
- children: info.email
101
- }) : null]
102
- }), /* @__PURE__ */_jsx(DropdownMenu.Separator, {})]
103
- }) : null, /* @__PURE__ */_jsx(DropdownMenu.Item, {
104
- ...sessionGate,
105
- onSelect: function onSelect() {
106
- return sessionUser && navigator.navigate(paths.form("User", sessionUser));
107
- },
108
- children: t("userMenu.myProfile", "My Profile")
109
- }), /* @__PURE__ */_jsx(DropdownMenu.Item, {
110
- ...sessionGate,
111
- onSelect: function onSelect() {
112
- return sessionUser && navigator.navigate(paths.form("User", sessionUser));
113
- },
114
- children: t("userMenu.mySettings", "My Settings")
115
- }),
116
- /* GAP: desk's Session Defaults dialog (frappe.core.doctype.session_default_settings)
117
- has no backoffice surface yet — placeholder until a dialog exists. */
118
- /* @__PURE__ */
119
- _jsx(DropdownMenu.Item, {
120
- disabled: true,
121
- disabledReason: t("userMenu.sessionDefaultsGap", "Not implemented yet"),
122
- children: t("userMenu.sessionDefaults", "Session Defaults")
123
- }), isWeb ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
124
- onSelect: handleReload,
125
- children: t("userMenu.reload", "Reload")
126
- }) : null, userMenu.themeToggle ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
127
- ...(appearance ? {} : {
128
- disabled: true,
129
- disabledReason: t("userMenu.themeUnavailable", "Theme switching is unavailable on this platform")
130
- }),
131
- onSelect: handleToggleTheme,
132
- children: t("userMenu.toggleTheme", "Toggle Theme")
133
- }) : null, isWeb && websiteURL ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
134
- onSelect: handleViewWebsite,
135
- children: t("userMenu.viewWebsite", "View Website")
136
- }) : null,
137
- /* MOD-02: embedded shells are full-bleed (no host navbar), so the
138
- way back into the host app lives here. */
139
- isWeb && exitToSite.enabled ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
140
- onSelect: handleExitToSite,
141
- children: (_exitToSite_label = exitToSite.label) !== null && _exitToSite_label !== void 0 ? _exitToSite_label : t("userMenu.exitToSite", "\u2190 multiplatform.one")
142
- }) : null, userMenu.logout ? /* @__PURE__ */_jsxs(_Fragment, {
143
- children: [/* @__PURE__ */_jsx(DropdownMenu.Separator, {}), /* @__PURE__ */_jsx(DropdownMenu.Item, {
144
- onSelect: handleLogout,
145
- children: t("userMenu.logOut", "Log Out")
146
- })]
147
- }) : null]
148
- })]
161
+ }), /* @__PURE__ */_jsxs(DropdownMenu.Content, {
162
+ children: [info ? /* @__PURE__ */_jsxs(_Fragment, {
163
+ children: [/* @__PURE__ */_jsxs(YStack, {
164
+ ...knobProps.panelPadding,
165
+ ...knobProps.gap,
166
+ paddingVertical: "$2",
167
+ children: [/* @__PURE__ */_jsx(SizableText, {
168
+ ...knobProps.label,
169
+ fontWeight: "400",
170
+ numberOfLines: 1,
171
+ children: info.fullName
172
+ }), info.email ? /* @__PURE__ */_jsx(SizableText, {
173
+ size: "$2",
174
+ color: "$color10",
175
+ numberOfLines: 1,
176
+ children: info.email
177
+ }) : null]
178
+ }), /* @__PURE__ */_jsx(DropdownMenu.Separator, {})]
179
+ }) : null, /* @__PURE__ */_jsx(DropdownMenu.Item, {
180
+ onSelect: function onSelect() {
181
+ return sessionUser && navigator.navigate(paths.form("User", sessionUser));
182
+ },
183
+ children: t("userMenu.myProfile", "My Profile")
184
+ }), /* @__PURE__ */_jsx(DropdownMenu.Item, {
185
+ onSelect: function onSelect() {
186
+ return sessionUser && navigator.navigate(paths.form("User", sessionUser));
187
+ },
188
+ children: t("userMenu.mySettings", "My Settings")
189
+ }), isWeb ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
190
+ onSelect: handleReload,
191
+ children: t("userMenu.reload", "Reload")
192
+ }) : null, userMenu.themeToggle ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
193
+ ...(appearance ? {} : {
194
+ disabled: true,
195
+ disabledReason: t("userMenu.themeUnavailable", "Theme switching is unavailable on this platform")
196
+ }),
197
+ onSelect: handleToggleTheme,
198
+ children: t("userMenu.toggleTheme", "Toggle Theme")
199
+ }) : null, isWeb && websiteURL ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
200
+ onSelect: handleViewWebsite,
201
+ children: t("userMenu.viewWebsite", "View Website")
202
+ }) : null,
203
+ /* MOD-02: embedded shells are full-bleed (no host navbar), so the
204
+ way back into the host app lives here. */
205
+ isWeb && exitToSite.enabled ? /* @__PURE__ */_jsx(DropdownMenu.Item, {
206
+ onSelect: handleExitToSite,
207
+ children: (_exitToSite_label = exitToSite.label) !== null && _exitToSite_label !== void 0 ? _exitToSite_label : t("userMenu.exitToSite", "\u2190 multiplatform.one")
208
+ }) : null, userMenu.logout ? /* @__PURE__ */_jsxs(_Fragment, {
209
+ children: [/* @__PURE__ */_jsx(DropdownMenu.Separator, {}), /* @__PURE__ */_jsx(DropdownMenu.Item, {
210
+ onSelect: handleLogout,
211
+ children: t("userMenu.logOut", "Log Out")
212
+ })]
213
+ }) : null]
214
+ })]
215
+ }), errorDialog]
149
216
  });
150
217
  }
151
218
  export { UserMenu };