@multiplatform.one/backoffice 7.34.4 → 7.36.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.
- package/dist/cjs/chrome/BackofficeAwesomebar.cjs +8 -3
- package/dist/cjs/chrome/BackofficeAwesomebar.native.js +8 -3
- package/dist/cjs/chrome/BackofficeAwesomebar.native.js.map +1 -1
- package/dist/cjs/chrome/CommandPalette.cjs +19 -15
- package/dist/cjs/chrome/CommandPalette.native.js +21 -15
- package/dist/cjs/chrome/CommandPalette.native.js.map +1 -1
- package/dist/cjs/chrome/NotificationsButton.cjs +2 -1
- package/dist/cjs/chrome/NotificationsButton.native.js +2 -1
- package/dist/cjs/chrome/NotificationsButton.native.js.map +1 -1
- package/dist/cjs/chrome/UserMenu.cjs +143 -77
- package/dist/cjs/chrome/UserMenu.native.js +157 -90
- package/dist/cjs/chrome/UserMenu.native.js.map +1 -1
- package/dist/cjs/chrome/notifications-panel.cjs +3 -4
- package/dist/cjs/chrome/notifications-panel.native.js +3 -4
- package/dist/cjs/chrome/notifications-panel.native.js.map +1 -1
- package/dist/cjs/chrome/user-session.cjs +2 -1
- package/dist/cjs/chrome/user-session.native.js +2 -1
- package/dist/cjs/chrome/user-session.native.js.map +1 -1
- package/dist/cjs/config/BackofficeProvider.cjs +3 -1
- package/dist/cjs/config/BackofficeProvider.native.js +3 -1
- package/dist/cjs/config/BackofficeProvider.native.js.map +1 -1
- package/dist/cjs/config/capabilities.cjs +3 -0
- package/dist/cjs/config/capabilities.native.js +3 -0
- package/dist/cjs/config/capabilities.native.js.map +1 -1
- package/dist/cjs/desk/Desk.cjs +17 -0
- package/dist/cjs/desk/Desk.native.js +17 -0
- package/dist/cjs/desk/Desk.native.js.map +1 -1
- package/dist/cjs/desk/DeskSurface.cjs +10 -0
- package/dist/cjs/desk/DeskSurface.native.js +10 -0
- package/dist/cjs/desk/DeskSurface.native.js.map +1 -1
- package/dist/cjs/desk/resolveDeskPath.cjs +6 -0
- package/dist/cjs/desk/resolveDeskPath.native.js +6 -0
- package/dist/cjs/desk/resolveDeskPath.native.js.map +1 -1
- package/dist/cjs/desk/target.cjs +5 -0
- package/dist/cjs/desk/target.native.js +5 -0
- package/dist/cjs/desk/target.native.js.map +1 -1
- package/dist/cjs/form/DocFormScreen.cjs +24 -3
- package/dist/cjs/form/DocFormScreen.native.js +27 -6
- package/dist/cjs/form/DocFormScreen.native.js.map +1 -1
- package/dist/cjs/form/FormConnections.cjs +2 -2
- package/dist/cjs/form/FormConnections.native.js +2 -2
- package/dist/cjs/form/FormConnections.native.js.map +1 -1
- package/dist/cjs/form/FormErrorBoundary.cjs +1 -1
- package/dist/cjs/form/FormErrorBoundary.native.js +1 -1
- package/dist/cjs/form/FormErrorBoundary.native.js.map +1 -1
- package/dist/cjs/form/FormSidebarPanel.cjs +1 -1
- package/dist/cjs/form/FormSidebarPanel.native.js +1 -1
- package/dist/cjs/form/FormSidebarPanel.native.js.map +1 -1
- package/dist/cjs/form/FormTimeline.cjs +1 -2
- package/dist/cjs/form/FormTimeline.native.js +1 -2
- package/dist/cjs/form/FormTimeline.native.js.map +1 -1
- package/dist/cjs/form/FormToolbar.cjs +97 -87
- package/dist/cjs/form/FormToolbar.native.js +98 -94
- package/dist/cjs/form/FormToolbar.native.js.map +1 -1
- package/dist/cjs/formBuilder/DoctypePicker.cjs +89 -0
- package/dist/cjs/formBuilder/DoctypePicker.native.js +98 -0
- package/dist/cjs/formBuilder/DoctypePicker.native.js.map +1 -0
- package/dist/cjs/formBuilder/FieldPalette.cjs +148 -0
- package/dist/cjs/formBuilder/FieldPalette.native.js +165 -0
- package/dist/cjs/formBuilder/FieldPalette.native.js.map +1 -0
- package/dist/cjs/formBuilder/FieldPropertiesPanel.cjs +186 -0
- package/dist/cjs/formBuilder/FieldPropertiesPanel.native.js +237 -0
- package/dist/cjs/formBuilder/FieldPropertiesPanel.native.js.map +1 -0
- package/dist/cjs/formBuilder/FormBuilderCanvas.cjs +407 -0
- package/dist/cjs/formBuilder/FormBuilderCanvas.native.js +472 -0
- package/dist/cjs/formBuilder/FormBuilderCanvas.native.js.map +1 -0
- package/dist/cjs/formBuilder/FormBuilderScreen.cjs +448 -0
- package/dist/cjs/formBuilder/FormBuilderScreen.native.js +537 -0
- package/dist/cjs/formBuilder/FormBuilderScreen.native.js.map +1 -0
- package/dist/cjs/formBuilder/api.cjs +160 -0
- package/dist/cjs/formBuilder/api.native.js +193 -0
- package/dist/cjs/formBuilder/api.native.js.map +1 -0
- package/dist/cjs/formBuilder/fieldtypes.cjs +114 -0
- package/dist/cjs/formBuilder/fieldtypes.native.js +133 -0
- package/dist/cjs/formBuilder/fieldtypes.native.js.map +1 -0
- package/dist/cjs/formBuilder/index.cjs +68 -0
- package/dist/cjs/formBuilder/index.native.js +71 -0
- package/dist/cjs/formBuilder/index.native.js.map +1 -0
- package/dist/cjs/formBuilder/model.cjs +466 -0
- package/dist/cjs/formBuilder/model.native.js +714 -0
- package/dist/cjs/formBuilder/model.native.js.map +1 -0
- package/dist/cjs/formBuilder/useFormBuilderDrag.cjs +399 -0
- package/dist/cjs/formBuilder/useFormBuilderDrag.native.js +434 -0
- package/dist/cjs/formBuilder/useFormBuilderDrag.native.js.map +1 -0
- package/dist/cjs/i18n/en.cjs +294 -4
- package/dist/cjs/i18n/en.native.js +294 -4
- package/dist/cjs/i18n/en.native.js.map +1 -1
- package/dist/cjs/index.cjs +41 -1
- package/dist/cjs/index.native.js +40 -0
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/list/DoctypeListScreen.cjs +138 -40
- package/dist/cjs/list/DoctypeListScreen.native.js +155 -55
- package/dist/cjs/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/cjs/list/ListFilterBar.cjs +8 -4
- package/dist/cjs/list/ListFilterBar.native.js +8 -4
- package/dist/cjs/list/ListFilterBar.native.js.map +1 -1
- package/dist/cjs/list/ListSidebar.cjs +4 -3
- package/dist/cjs/list/ListSidebar.native.js +4 -3
- package/dist/cjs/list/ListSidebar.native.js.map +1 -1
- package/dist/cjs/list/filter-chips.cjs +10 -4
- package/dist/cjs/list/filter-chips.native.js +10 -4
- package/dist/cjs/list/filter-chips.native.js.map +1 -1
- package/dist/cjs/list/filter-editor.cjs +1 -10
- package/dist/cjs/list/filter-editor.native.js +1 -10
- package/dist/cjs/list/filter-editor.native.js.map +1 -1
- package/dist/cjs/list/filter-saved.cjs +0 -1
- package/dist/cjs/list/filter-saved.native.js +0 -1
- package/dist/cjs/list/filter-saved.native.js.map +1 -1
- package/dist/cjs/list/filter-sort.cjs +0 -1
- package/dist/cjs/list/filter-sort.native.js +0 -1
- package/dist/cjs/list/filter-sort.native.js.map +1 -1
- package/dist/cjs/list/filter-standard.cjs +1 -3
- package/dist/cjs/list/filter-standard.native.js +1 -3
- package/dist/cjs/list/filter-standard.native.js.map +1 -1
- package/dist/cjs/list/list-tools-sheet.cjs +10 -3
- package/dist/cjs/list/list-tools-sheet.native.js +12 -3
- package/dist/cjs/list/list-tools-sheet.native.js.map +1 -1
- package/dist/cjs/navigation/paths.cjs +5 -0
- package/dist/cjs/navigation/paths.native.js +7 -0
- package/dist/cjs/navigation/paths.native.js.map +1 -1
- package/dist/cjs/report/QueryReportScreen.cjs +1 -1
- package/dist/cjs/report/QueryReportScreen.native.js +1 -1
- package/dist/cjs/report/QueryReportScreen.native.js.map +1 -1
- package/dist/cjs/report/queryReportFilterBar.cjs +3 -8
- package/dist/cjs/report/queryReportFilterBar.native.js +3 -8
- package/dist/cjs/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/cjs/shared/sessionUser.cjs +21 -3
- package/dist/cjs/shared/sessionUser.native.js +44 -3
- package/dist/cjs/shared/sessionUser.native.js.map +1 -1
- package/dist/cjs/shell/BackofficeShell.cjs +127 -88
- package/dist/cjs/shell/BackofficeShell.native.js +144 -101
- package/dist/cjs/shell/BackofficeShell.native.js.map +1 -1
- package/dist/cjs/shell/HomeRedirect.cjs +17 -21
- package/dist/cjs/shell/HomeRedirect.native.js +17 -20
- package/dist/cjs/shell/HomeRedirect.native.js.map +1 -1
- package/dist/cjs/shell/WorkspaceSidebar.cjs +53 -25
- package/dist/cjs/shell/WorkspaceSidebar.native.js +55 -25
- package/dist/cjs/shell/WorkspaceSidebar.native.js.map +1 -1
- package/dist/cjs/shell/shellSidebarSlot.cjs +31 -0
- package/dist/cjs/shell/shellSidebarSlot.native.js +34 -0
- package/dist/cjs/shell/shellSidebarSlot.native.js.map +1 -0
- package/dist/cjs/shell/useWorkspaces.cjs +23 -6
- package/dist/cjs/shell/useWorkspaces.native.js +25 -6
- package/dist/cjs/shell/useWorkspaces.native.js.map +1 -1
- package/dist/cjs/views/DashboardView.cjs +2 -2
- package/dist/cjs/views/DashboardView.native.js +2 -2
- package/dist/cjs/views/DashboardView.native.js.map +1 -1
- package/dist/cjs/views/ImageView.cjs +14 -5
- package/dist/cjs/views/ImageView.native.js +14 -5
- package/dist/cjs/views/ImageView.native.js.map +1 -1
- package/dist/cjs/views/ViewHeader.cjs +17 -6
- package/dist/cjs/views/ViewHeader.native.js +17 -6
- package/dist/cjs/views/ViewHeader.native.js.map +1 -1
- package/dist/cjs/views/ViewSwitcherMenu.cjs +10 -9
- package/dist/cjs/views/ViewSwitcherMenu.native.js +10 -9
- package/dist/cjs/views/ViewSwitcherMenu.native.js.map +1 -1
- package/dist/cjs/views/viewAvailability.cjs +17 -9
- package/dist/cjs/views/viewAvailability.native.js +18 -8
- package/dist/cjs/views/viewAvailability.native.js.map +1 -1
- package/dist/cjs/views/viewMeta.cjs +24 -1
- package/dist/cjs/views/viewMeta.native.js +30 -1
- package/dist/cjs/views/viewMeta.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceChartBlock.cjs +1 -1
- package/dist/cjs/workspace/WorkspaceChartBlock.native.js +1 -1
- package/dist/cjs/workspace/WorkspaceChartBlock.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceLinkDirectory.cjs +2 -2
- package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js +2 -2
- package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceRecents.cjs +1 -1
- package/dist/cjs/workspace/WorkspaceRecents.native.js +1 -1
- package/dist/cjs/workspace/WorkspaceRecents.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceShortcut.cjs +1 -1
- package/dist/cjs/workspace/WorkspaceShortcut.native.js +1 -1
- package/dist/cjs/workspace/WorkspaceShortcut.native.js.map +1 -1
- package/dist/esm/chrome/BackofficeAwesomebar.mjs +9 -4
- package/dist/esm/chrome/BackofficeAwesomebar.mjs.map +1 -1
- package/dist/esm/chrome/BackofficeAwesomebar.native.js +9 -4
- package/dist/esm/chrome/BackofficeAwesomebar.native.js.map +1 -1
- package/dist/esm/chrome/CommandPalette.mjs +21 -17
- package/dist/esm/chrome/CommandPalette.mjs.map +1 -1
- package/dist/esm/chrome/CommandPalette.native.js +23 -17
- package/dist/esm/chrome/CommandPalette.native.js.map +1 -1
- package/dist/esm/chrome/NotificationsButton.mjs +3 -2
- package/dist/esm/chrome/NotificationsButton.mjs.map +1 -1
- package/dist/esm/chrome/NotificationsButton.native.js +3 -2
- package/dist/esm/chrome/NotificationsButton.native.js.map +1 -1
- package/dist/esm/chrome/UserMenu.mjs +145 -79
- package/dist/esm/chrome/UserMenu.mjs.map +1 -1
- package/dist/esm/chrome/UserMenu.native.js +159 -92
- package/dist/esm/chrome/UserMenu.native.js.map +1 -1
- package/dist/esm/chrome/notifications-panel.mjs +4 -5
- package/dist/esm/chrome/notifications-panel.mjs.map +1 -1
- package/dist/esm/chrome/notifications-panel.native.js +4 -5
- package/dist/esm/chrome/notifications-panel.native.js.map +1 -1
- package/dist/esm/chrome/user-session.mjs +3 -2
- package/dist/esm/chrome/user-session.mjs.map +1 -1
- package/dist/esm/chrome/user-session.native.js +3 -2
- package/dist/esm/chrome/user-session.native.js.map +1 -1
- package/dist/esm/config/BackofficeProvider.mjs +3 -1
- package/dist/esm/config/BackofficeProvider.mjs.map +1 -1
- package/dist/esm/config/BackofficeProvider.native.js +3 -1
- package/dist/esm/config/BackofficeProvider.native.js.map +1 -1
- package/dist/esm/config/capabilities.mjs +3 -0
- package/dist/esm/config/capabilities.mjs.map +1 -1
- package/dist/esm/config/capabilities.native.js +3 -0
- package/dist/esm/config/capabilities.native.js.map +1 -1
- package/dist/esm/desk/Desk.mjs +17 -0
- package/dist/esm/desk/Desk.mjs.map +1 -1
- package/dist/esm/desk/Desk.native.js +17 -0
- package/dist/esm/desk/Desk.native.js.map +1 -1
- package/dist/esm/desk/DeskSurface.mjs +10 -0
- package/dist/esm/desk/DeskSurface.mjs.map +1 -1
- package/dist/esm/desk/DeskSurface.native.js +10 -0
- package/dist/esm/desk/DeskSurface.native.js.map +1 -1
- package/dist/esm/desk/resolveDeskPath.mjs +6 -0
- package/dist/esm/desk/resolveDeskPath.mjs.map +1 -1
- package/dist/esm/desk/resolveDeskPath.native.js +6 -0
- package/dist/esm/desk/resolveDeskPath.native.js.map +1 -1
- package/dist/esm/desk/target.mjs +5 -0
- package/dist/esm/desk/target.mjs.map +1 -1
- package/dist/esm/desk/target.native.js +5 -0
- package/dist/esm/desk/target.native.js.map +1 -1
- package/dist/esm/form/DocFormScreen.mjs +24 -3
- package/dist/esm/form/DocFormScreen.mjs.map +1 -1
- package/dist/esm/form/DocFormScreen.native.js +27 -6
- package/dist/esm/form/DocFormScreen.native.js.map +1 -1
- package/dist/esm/form/FormConnections.mjs +2 -2
- package/dist/esm/form/FormConnections.mjs.map +1 -1
- package/dist/esm/form/FormConnections.native.js +2 -2
- package/dist/esm/form/FormConnections.native.js.map +1 -1
- package/dist/esm/form/FormErrorBoundary.mjs +1 -1
- package/dist/esm/form/FormErrorBoundary.mjs.map +1 -1
- package/dist/esm/form/FormErrorBoundary.native.js +1 -1
- package/dist/esm/form/FormErrorBoundary.native.js.map +1 -1
- package/dist/esm/form/FormSidebarPanel.mjs +1 -1
- package/dist/esm/form/FormSidebarPanel.mjs.map +1 -1
- package/dist/esm/form/FormSidebarPanel.native.js +1 -1
- package/dist/esm/form/FormSidebarPanel.native.js.map +1 -1
- package/dist/esm/form/FormTimeline.mjs +1 -2
- package/dist/esm/form/FormTimeline.mjs.map +1 -1
- package/dist/esm/form/FormTimeline.native.js +1 -2
- package/dist/esm/form/FormTimeline.native.js.map +1 -1
- package/dist/esm/form/FormToolbar.mjs +99 -89
- package/dist/esm/form/FormToolbar.mjs.map +1 -1
- package/dist/esm/form/FormToolbar.native.js +100 -96
- package/dist/esm/form/FormToolbar.native.js.map +1 -1
- package/dist/esm/formBuilder/DoctypePicker.mjs +64 -0
- package/dist/esm/formBuilder/DoctypePicker.mjs.map +1 -0
- package/dist/esm/formBuilder/DoctypePicker.native.js +70 -0
- package/dist/esm/formBuilder/DoctypePicker.native.js.map +1 -0
- package/dist/esm/formBuilder/FieldPalette.mjs +123 -0
- package/dist/esm/formBuilder/FieldPalette.mjs.map +1 -0
- package/dist/esm/formBuilder/FieldPalette.native.js +137 -0
- package/dist/esm/formBuilder/FieldPalette.native.js.map +1 -0
- package/dist/esm/formBuilder/FieldPropertiesPanel.mjs +161 -0
- package/dist/esm/formBuilder/FieldPropertiesPanel.mjs.map +1 -0
- package/dist/esm/formBuilder/FieldPropertiesPanel.native.js +209 -0
- package/dist/esm/formBuilder/FieldPropertiesPanel.native.js.map +1 -0
- package/dist/esm/formBuilder/FormBuilderCanvas.mjs +382 -0
- package/dist/esm/formBuilder/FormBuilderCanvas.mjs.map +1 -0
- package/dist/esm/formBuilder/FormBuilderCanvas.native.js +444 -0
- package/dist/esm/formBuilder/FormBuilderCanvas.native.js.map +1 -0
- package/dist/esm/formBuilder/FormBuilderScreen.mjs +423 -0
- package/dist/esm/formBuilder/FormBuilderScreen.mjs.map +1 -0
- package/dist/esm/formBuilder/FormBuilderScreen.native.js +509 -0
- package/dist/esm/formBuilder/FormBuilderScreen.native.js.map +1 -0
- package/dist/esm/formBuilder/api.mjs +129 -0
- package/dist/esm/formBuilder/api.mjs.map +1 -0
- package/dist/esm/formBuilder/api.native.js +159 -0
- package/dist/esm/formBuilder/api.native.js.map +1 -0
- package/dist/esm/formBuilder/fieldtypes.mjs +82 -0
- package/dist/esm/formBuilder/fieldtypes.mjs.map +1 -0
- package/dist/esm/formBuilder/fieldtypes.native.js +98 -0
- package/dist/esm/formBuilder/fieldtypes.native.js.map +1 -0
- package/dist/esm/formBuilder/index.mjs +6 -0
- package/dist/esm/formBuilder/index.mjs.map +1 -0
- package/dist/esm/formBuilder/index.native.js +6 -0
- package/dist/esm/formBuilder/index.native.js.map +1 -0
- package/dist/esm/formBuilder/model.mjs +420 -0
- package/dist/esm/formBuilder/model.mjs.map +1 -0
- package/dist/esm/formBuilder/model.native.js +665 -0
- package/dist/esm/formBuilder/model.native.js.map +1 -0
- package/dist/esm/formBuilder/useFormBuilderDrag.mjs +374 -0
- package/dist/esm/formBuilder/useFormBuilderDrag.mjs.map +1 -0
- package/dist/esm/formBuilder/useFormBuilderDrag.native.js +406 -0
- package/dist/esm/formBuilder/useFormBuilderDrag.native.js.map +1 -0
- package/dist/esm/i18n/en.mjs +294 -4
- package/dist/esm/i18n/en.mjs.map +1 -1
- package/dist/esm/i18n/en.native.js +294 -4
- package/dist/esm/i18n/en.native.js.map +1 -1
- package/dist/esm/index.mjs +3 -2
- package/dist/esm/index.mjs.map +1 -1
- package/dist/esm/index.native.js +3 -2
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/list/DoctypeListScreen.mjs +141 -43
- package/dist/esm/list/DoctypeListScreen.mjs.map +1 -1
- package/dist/esm/list/DoctypeListScreen.native.js +158 -58
- package/dist/esm/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/esm/list/ListFilterBar.mjs +9 -5
- package/dist/esm/list/ListFilterBar.mjs.map +1 -1
- package/dist/esm/list/ListFilterBar.native.js +9 -5
- package/dist/esm/list/ListFilterBar.native.js.map +1 -1
- package/dist/esm/list/ListSidebar.mjs +4 -3
- package/dist/esm/list/ListSidebar.mjs.map +1 -1
- package/dist/esm/list/ListSidebar.native.js +4 -3
- package/dist/esm/list/ListSidebar.native.js.map +1 -1
- package/dist/esm/list/filter-chips.mjs +10 -4
- package/dist/esm/list/filter-chips.mjs.map +1 -1
- package/dist/esm/list/filter-chips.native.js +10 -4
- package/dist/esm/list/filter-chips.native.js.map +1 -1
- package/dist/esm/list/filter-editor.mjs +1 -10
- package/dist/esm/list/filter-editor.mjs.map +1 -1
- package/dist/esm/list/filter-editor.native.js +1 -10
- package/dist/esm/list/filter-editor.native.js.map +1 -1
- package/dist/esm/list/filter-saved.mjs +0 -1
- package/dist/esm/list/filter-saved.mjs.map +1 -1
- package/dist/esm/list/filter-saved.native.js +0 -1
- package/dist/esm/list/filter-saved.native.js.map +1 -1
- package/dist/esm/list/filter-sort.mjs +0 -1
- package/dist/esm/list/filter-sort.mjs.map +1 -1
- package/dist/esm/list/filter-sort.native.js +0 -1
- package/dist/esm/list/filter-sort.native.js.map +1 -1
- package/dist/esm/list/filter-standard.mjs +1 -3
- package/dist/esm/list/filter-standard.mjs.map +1 -1
- package/dist/esm/list/filter-standard.native.js +1 -3
- package/dist/esm/list/filter-standard.native.js.map +1 -1
- package/dist/esm/list/list-tools-sheet.mjs +10 -3
- package/dist/esm/list/list-tools-sheet.mjs.map +1 -1
- package/dist/esm/list/list-tools-sheet.native.js +12 -3
- package/dist/esm/list/list-tools-sheet.native.js.map +1 -1
- package/dist/esm/navigation/paths.mjs +5 -1
- package/dist/esm/navigation/paths.mjs.map +1 -1
- package/dist/esm/navigation/paths.native.js +7 -1
- package/dist/esm/navigation/paths.native.js.map +1 -1
- package/dist/esm/report/QueryReportScreen.mjs +1 -1
- package/dist/esm/report/QueryReportScreen.mjs.map +1 -1
- package/dist/esm/report/QueryReportScreen.native.js +1 -1
- package/dist/esm/report/QueryReportScreen.native.js.map +1 -1
- package/dist/esm/report/queryReportFilterBar.mjs +3 -8
- package/dist/esm/report/queryReportFilterBar.mjs.map +1 -1
- package/dist/esm/report/queryReportFilterBar.native.js +3 -8
- package/dist/esm/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/esm/shared/sessionUser.mjs +21 -4
- package/dist/esm/shared/sessionUser.mjs.map +1 -1
- package/dist/esm/shared/sessionUser.native.js +44 -4
- package/dist/esm/shared/sessionUser.native.js.map +1 -1
- package/dist/esm/shell/BackofficeShell.mjs +130 -91
- package/dist/esm/shell/BackofficeShell.mjs.map +1 -1
- package/dist/esm/shell/BackofficeShell.native.js +147 -104
- package/dist/esm/shell/BackofficeShell.native.js.map +1 -1
- package/dist/esm/shell/HomeRedirect.mjs +20 -24
- package/dist/esm/shell/HomeRedirect.mjs.map +1 -1
- package/dist/esm/shell/HomeRedirect.native.js +20 -23
- package/dist/esm/shell/HomeRedirect.native.js.map +1 -1
- package/dist/esm/shell/WorkspaceSidebar.mjs +55 -27
- package/dist/esm/shell/WorkspaceSidebar.mjs.map +1 -1
- package/dist/esm/shell/WorkspaceSidebar.native.js +57 -27
- package/dist/esm/shell/WorkspaceSidebar.native.js.map +1 -1
- package/dist/esm/shell/shellSidebarSlot.mjs +3 -0
- package/dist/esm/shell/shellSidebarSlot.mjs.map +1 -0
- package/dist/esm/shell/shellSidebarSlot.native.js +3 -0
- package/dist/esm/shell/shellSidebarSlot.native.js.map +1 -0
- package/dist/esm/shell/useWorkspaces.mjs +25 -8
- package/dist/esm/shell/useWorkspaces.mjs.map +1 -1
- package/dist/esm/shell/useWorkspaces.native.js +27 -8
- package/dist/esm/shell/useWorkspaces.native.js.map +1 -1
- package/dist/esm/views/DashboardView.mjs +2 -2
- package/dist/esm/views/DashboardView.mjs.map +1 -1
- package/dist/esm/views/DashboardView.native.js +2 -2
- package/dist/esm/views/DashboardView.native.js.map +1 -1
- package/dist/esm/views/ImageView.mjs +15 -6
- package/dist/esm/views/ImageView.mjs.map +1 -1
- package/dist/esm/views/ImageView.native.js +15 -6
- package/dist/esm/views/ImageView.native.js.map +1 -1
- package/dist/esm/views/ViewHeader.mjs +18 -7
- package/dist/esm/views/ViewHeader.mjs.map +1 -1
- package/dist/esm/views/ViewHeader.native.js +18 -7
- package/dist/esm/views/ViewHeader.native.js.map +1 -1
- package/dist/esm/views/ViewSwitcherMenu.mjs +11 -10
- package/dist/esm/views/ViewSwitcherMenu.mjs.map +1 -1
- package/dist/esm/views/ViewSwitcherMenu.native.js +11 -10
- package/dist/esm/views/ViewSwitcherMenu.native.js.map +1 -1
- package/dist/esm/views/viewAvailability.mjs +17 -9
- package/dist/esm/views/viewAvailability.mjs.map +1 -1
- package/dist/esm/views/viewAvailability.native.js +18 -8
- package/dist/esm/views/viewAvailability.native.js.map +1 -1
- package/dist/esm/views/viewMeta.mjs +23 -1
- package/dist/esm/views/viewMeta.mjs.map +1 -1
- package/dist/esm/views/viewMeta.native.js +29 -1
- package/dist/esm/views/viewMeta.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceChartBlock.mjs +1 -1
- package/dist/esm/workspace/WorkspaceChartBlock.mjs.map +1 -1
- package/dist/esm/workspace/WorkspaceChartBlock.native.js +1 -1
- package/dist/esm/workspace/WorkspaceChartBlock.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceLinkDirectory.mjs +2 -2
- package/dist/esm/workspace/WorkspaceLinkDirectory.mjs.map +1 -1
- package/dist/esm/workspace/WorkspaceLinkDirectory.native.js +2 -2
- package/dist/esm/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceRecents.mjs +2 -2
- package/dist/esm/workspace/WorkspaceRecents.mjs.map +1 -1
- package/dist/esm/workspace/WorkspaceRecents.native.js +2 -2
- package/dist/esm/workspace/WorkspaceRecents.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceShortcut.mjs +2 -2
- package/dist/esm/workspace/WorkspaceShortcut.mjs.map +1 -1
- package/dist/esm/workspace/WorkspaceShortcut.native.js +2 -2
- package/dist/esm/workspace/WorkspaceShortcut.native.js.map +1 -1
- package/dist/jsx/chrome/BackofficeAwesomebar.mjs +9 -4
- package/dist/jsx/chrome/BackofficeAwesomebar.mjs.map +1 -1
- package/dist/jsx/chrome/BackofficeAwesomebar.native.js +8 -3
- package/dist/jsx/chrome/BackofficeAwesomebar.native.js.map +1 -1
- package/dist/jsx/chrome/CommandPalette.mjs +21 -17
- package/dist/jsx/chrome/CommandPalette.mjs.map +1 -1
- package/dist/jsx/chrome/CommandPalette.native.js +21 -15
- package/dist/jsx/chrome/CommandPalette.native.js.map +1 -1
- package/dist/jsx/chrome/NotificationsButton.mjs +3 -2
- package/dist/jsx/chrome/NotificationsButton.mjs.map +1 -1
- package/dist/jsx/chrome/NotificationsButton.native.js +2 -1
- package/dist/jsx/chrome/NotificationsButton.native.js.map +1 -1
- package/dist/jsx/chrome/UserMenu.mjs +145 -79
- package/dist/jsx/chrome/UserMenu.mjs.map +1 -1
- package/dist/jsx/chrome/UserMenu.native.js +157 -90
- package/dist/jsx/chrome/UserMenu.native.js.map +1 -1
- package/dist/jsx/chrome/notifications-panel.mjs +4 -5
- package/dist/jsx/chrome/notifications-panel.mjs.map +1 -1
- package/dist/jsx/chrome/notifications-panel.native.js +3 -4
- package/dist/jsx/chrome/notifications-panel.native.js.map +1 -1
- package/dist/jsx/chrome/user-session.mjs +3 -2
- package/dist/jsx/chrome/user-session.mjs.map +1 -1
- package/dist/jsx/chrome/user-session.native.js +2 -1
- package/dist/jsx/chrome/user-session.native.js.map +1 -1
- package/dist/jsx/config/BackofficeProvider.mjs +3 -1
- package/dist/jsx/config/BackofficeProvider.mjs.map +1 -1
- package/dist/jsx/config/BackofficeProvider.native.js +3 -1
- package/dist/jsx/config/BackofficeProvider.native.js.map +1 -1
- package/dist/jsx/config/capabilities.mjs +3 -0
- package/dist/jsx/config/capabilities.mjs.map +1 -1
- package/dist/jsx/config/capabilities.native.js +3 -0
- package/dist/jsx/config/capabilities.native.js.map +1 -1
- package/dist/jsx/desk/Desk.mjs +17 -0
- package/dist/jsx/desk/Desk.mjs.map +1 -1
- package/dist/jsx/desk/Desk.native.js +17 -0
- package/dist/jsx/desk/Desk.native.js.map +1 -1
- package/dist/jsx/desk/DeskSurface.mjs +10 -0
- package/dist/jsx/desk/DeskSurface.mjs.map +1 -1
- package/dist/jsx/desk/DeskSurface.native.js +10 -0
- package/dist/jsx/desk/DeskSurface.native.js.map +1 -1
- package/dist/jsx/desk/resolveDeskPath.mjs +6 -0
- package/dist/jsx/desk/resolveDeskPath.mjs.map +1 -1
- package/dist/jsx/desk/resolveDeskPath.native.js +6 -0
- package/dist/jsx/desk/resolveDeskPath.native.js.map +1 -1
- package/dist/jsx/desk/target.mjs +5 -0
- package/dist/jsx/desk/target.mjs.map +1 -1
- package/dist/jsx/desk/target.native.js +5 -0
- package/dist/jsx/desk/target.native.js.map +1 -1
- package/dist/jsx/form/DocFormScreen.mjs +24 -3
- package/dist/jsx/form/DocFormScreen.mjs.map +1 -1
- package/dist/jsx/form/DocFormScreen.native.js +27 -6
- package/dist/jsx/form/DocFormScreen.native.js.map +1 -1
- package/dist/jsx/form/FormConnections.mjs +2 -2
- package/dist/jsx/form/FormConnections.mjs.map +1 -1
- package/dist/jsx/form/FormConnections.native.js +2 -2
- package/dist/jsx/form/FormConnections.native.js.map +1 -1
- package/dist/jsx/form/FormErrorBoundary.mjs +1 -1
- package/dist/jsx/form/FormErrorBoundary.mjs.map +1 -1
- package/dist/jsx/form/FormErrorBoundary.native.js +1 -1
- package/dist/jsx/form/FormErrorBoundary.native.js.map +1 -1
- package/dist/jsx/form/FormSidebarPanel.mjs +1 -1
- package/dist/jsx/form/FormSidebarPanel.mjs.map +1 -1
- package/dist/jsx/form/FormSidebarPanel.native.js +1 -1
- package/dist/jsx/form/FormSidebarPanel.native.js.map +1 -1
- package/dist/jsx/form/FormTimeline.mjs +1 -2
- package/dist/jsx/form/FormTimeline.mjs.map +1 -1
- package/dist/jsx/form/FormTimeline.native.js +1 -2
- package/dist/jsx/form/FormTimeline.native.js.map +1 -1
- package/dist/jsx/form/FormToolbar.mjs +99 -89
- package/dist/jsx/form/FormToolbar.mjs.map +1 -1
- package/dist/jsx/form/FormToolbar.native.js +98 -94
- package/dist/jsx/form/FormToolbar.native.js.map +1 -1
- package/dist/jsx/formBuilder/DoctypePicker.mjs +64 -0
- package/dist/jsx/formBuilder/DoctypePicker.mjs.map +1 -0
- package/dist/jsx/formBuilder/DoctypePicker.native.js +98 -0
- package/dist/jsx/formBuilder/DoctypePicker.native.js.map +1 -0
- package/dist/jsx/formBuilder/FieldPalette.mjs +123 -0
- package/dist/jsx/formBuilder/FieldPalette.mjs.map +1 -0
- package/dist/jsx/formBuilder/FieldPalette.native.js +165 -0
- package/dist/jsx/formBuilder/FieldPalette.native.js.map +1 -0
- package/dist/jsx/formBuilder/FieldPropertiesPanel.mjs +161 -0
- package/dist/jsx/formBuilder/FieldPropertiesPanel.mjs.map +1 -0
- package/dist/jsx/formBuilder/FieldPropertiesPanel.native.js +237 -0
- package/dist/jsx/formBuilder/FieldPropertiesPanel.native.js.map +1 -0
- package/dist/jsx/formBuilder/FormBuilderCanvas.mjs +382 -0
- package/dist/jsx/formBuilder/FormBuilderCanvas.mjs.map +1 -0
- package/dist/jsx/formBuilder/FormBuilderCanvas.native.js +472 -0
- package/dist/jsx/formBuilder/FormBuilderCanvas.native.js.map +1 -0
- package/dist/jsx/formBuilder/FormBuilderScreen.mjs +423 -0
- package/dist/jsx/formBuilder/FormBuilderScreen.mjs.map +1 -0
- package/dist/jsx/formBuilder/FormBuilderScreen.native.js +537 -0
- package/dist/jsx/formBuilder/FormBuilderScreen.native.js.map +1 -0
- package/dist/jsx/formBuilder/api.mjs +129 -0
- package/dist/jsx/formBuilder/api.mjs.map +1 -0
- package/dist/jsx/formBuilder/api.native.js +193 -0
- package/dist/jsx/formBuilder/api.native.js.map +1 -0
- package/dist/jsx/formBuilder/fieldtypes.mjs +82 -0
- package/dist/jsx/formBuilder/fieldtypes.mjs.map +1 -0
- package/dist/jsx/formBuilder/fieldtypes.native.js +133 -0
- package/dist/jsx/formBuilder/fieldtypes.native.js.map +1 -0
- package/dist/jsx/formBuilder/index.mjs +6 -0
- package/dist/jsx/formBuilder/index.mjs.map +1 -0
- package/dist/jsx/formBuilder/index.native.js +71 -0
- package/dist/jsx/formBuilder/index.native.js.map +1 -0
- package/dist/jsx/formBuilder/model.mjs +420 -0
- package/dist/jsx/formBuilder/model.mjs.map +1 -0
- package/dist/jsx/formBuilder/model.native.js +714 -0
- package/dist/jsx/formBuilder/model.native.js.map +1 -0
- package/dist/jsx/formBuilder/useFormBuilderDrag.mjs +374 -0
- package/dist/jsx/formBuilder/useFormBuilderDrag.mjs.map +1 -0
- package/dist/jsx/formBuilder/useFormBuilderDrag.native.js +434 -0
- package/dist/jsx/formBuilder/useFormBuilderDrag.native.js.map +1 -0
- package/dist/jsx/i18n/en.mjs +294 -4
- package/dist/jsx/i18n/en.mjs.map +1 -1
- package/dist/jsx/i18n/en.native.js +294 -4
- package/dist/jsx/i18n/en.native.js.map +1 -1
- package/dist/jsx/index.js +3 -2
- package/dist/jsx/index.js.map +1 -1
- package/dist/jsx/index.mjs +3 -2
- package/dist/jsx/index.mjs.map +1 -1
- package/dist/jsx/index.native.js +40 -0
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/list/DoctypeListScreen.mjs +141 -43
- package/dist/jsx/list/DoctypeListScreen.mjs.map +1 -1
- package/dist/jsx/list/DoctypeListScreen.native.js +155 -55
- package/dist/jsx/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/jsx/list/ListFilterBar.mjs +9 -5
- package/dist/jsx/list/ListFilterBar.mjs.map +1 -1
- package/dist/jsx/list/ListFilterBar.native.js +8 -4
- package/dist/jsx/list/ListFilterBar.native.js.map +1 -1
- package/dist/jsx/list/ListSidebar.mjs +4 -3
- package/dist/jsx/list/ListSidebar.mjs.map +1 -1
- package/dist/jsx/list/ListSidebar.native.js +4 -3
- package/dist/jsx/list/ListSidebar.native.js.map +1 -1
- package/dist/jsx/list/filter-chips.mjs +10 -4
- package/dist/jsx/list/filter-chips.mjs.map +1 -1
- package/dist/jsx/list/filter-chips.native.js +10 -4
- package/dist/jsx/list/filter-chips.native.js.map +1 -1
- package/dist/jsx/list/filter-editor.mjs +1 -10
- package/dist/jsx/list/filter-editor.mjs.map +1 -1
- package/dist/jsx/list/filter-editor.native.js +1 -10
- package/dist/jsx/list/filter-editor.native.js.map +1 -1
- package/dist/jsx/list/filter-saved.mjs +0 -1
- package/dist/jsx/list/filter-saved.mjs.map +1 -1
- package/dist/jsx/list/filter-saved.native.js +0 -1
- package/dist/jsx/list/filter-saved.native.js.map +1 -1
- package/dist/jsx/list/filter-sort.mjs +0 -1
- package/dist/jsx/list/filter-sort.mjs.map +1 -1
- package/dist/jsx/list/filter-sort.native.js +0 -1
- package/dist/jsx/list/filter-sort.native.js.map +1 -1
- package/dist/jsx/list/filter-standard.mjs +1 -3
- package/dist/jsx/list/filter-standard.mjs.map +1 -1
- package/dist/jsx/list/filter-standard.native.js +1 -3
- package/dist/jsx/list/filter-standard.native.js.map +1 -1
- package/dist/jsx/list/list-tools-sheet.mjs +10 -3
- package/dist/jsx/list/list-tools-sheet.mjs.map +1 -1
- package/dist/jsx/list/list-tools-sheet.native.js +12 -3
- package/dist/jsx/list/list-tools-sheet.native.js.map +1 -1
- package/dist/jsx/navigation/paths.mjs +5 -1
- package/dist/jsx/navigation/paths.mjs.map +1 -1
- package/dist/jsx/navigation/paths.native.js +7 -0
- package/dist/jsx/navigation/paths.native.js.map +1 -1
- package/dist/jsx/report/QueryReportScreen.mjs +1 -1
- package/dist/jsx/report/QueryReportScreen.mjs.map +1 -1
- package/dist/jsx/report/QueryReportScreen.native.js +1 -1
- package/dist/jsx/report/QueryReportScreen.native.js.map +1 -1
- package/dist/jsx/report/queryReportFilterBar.mjs +3 -8
- package/dist/jsx/report/queryReportFilterBar.mjs.map +1 -1
- package/dist/jsx/report/queryReportFilterBar.native.js +3 -8
- package/dist/jsx/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/jsx/shared/sessionUser.mjs +21 -4
- package/dist/jsx/shared/sessionUser.mjs.map +1 -1
- package/dist/jsx/shared/sessionUser.native.js +44 -3
- package/dist/jsx/shared/sessionUser.native.js.map +1 -1
- package/dist/jsx/shell/BackofficeShell.mjs +130 -91
- package/dist/jsx/shell/BackofficeShell.mjs.map +1 -1
- package/dist/jsx/shell/BackofficeShell.native.js +144 -101
- package/dist/jsx/shell/BackofficeShell.native.js.map +1 -1
- package/dist/jsx/shell/HomeRedirect.mjs +20 -24
- package/dist/jsx/shell/HomeRedirect.mjs.map +1 -1
- package/dist/jsx/shell/HomeRedirect.native.js +17 -20
- package/dist/jsx/shell/HomeRedirect.native.js.map +1 -1
- package/dist/jsx/shell/WorkspaceSidebar.mjs +55 -27
- package/dist/jsx/shell/WorkspaceSidebar.mjs.map +1 -1
- package/dist/jsx/shell/WorkspaceSidebar.native.js +55 -25
- package/dist/jsx/shell/WorkspaceSidebar.native.js.map +1 -1
- package/dist/jsx/shell/shellSidebarSlot.mjs +3 -0
- package/dist/jsx/shell/shellSidebarSlot.mjs.map +1 -0
- package/dist/jsx/shell/shellSidebarSlot.native.js +34 -0
- package/dist/jsx/shell/shellSidebarSlot.native.js.map +1 -0
- package/dist/jsx/shell/useWorkspaces.mjs +25 -8
- package/dist/jsx/shell/useWorkspaces.mjs.map +1 -1
- package/dist/jsx/shell/useWorkspaces.native.js +25 -6
- package/dist/jsx/shell/useWorkspaces.native.js.map +1 -1
- package/dist/jsx/views/DashboardView.mjs +2 -2
- package/dist/jsx/views/DashboardView.mjs.map +1 -1
- package/dist/jsx/views/DashboardView.native.js +2 -2
- package/dist/jsx/views/DashboardView.native.js.map +1 -1
- package/dist/jsx/views/ImageView.mjs +15 -6
- package/dist/jsx/views/ImageView.mjs.map +1 -1
- package/dist/jsx/views/ImageView.native.js +14 -5
- package/dist/jsx/views/ImageView.native.js.map +1 -1
- package/dist/jsx/views/ViewHeader.mjs +18 -7
- package/dist/jsx/views/ViewHeader.mjs.map +1 -1
- package/dist/jsx/views/ViewHeader.native.js +17 -6
- package/dist/jsx/views/ViewHeader.native.js.map +1 -1
- package/dist/jsx/views/ViewSwitcherMenu.mjs +11 -10
- package/dist/jsx/views/ViewSwitcherMenu.mjs.map +1 -1
- package/dist/jsx/views/ViewSwitcherMenu.native.js +10 -9
- package/dist/jsx/views/ViewSwitcherMenu.native.js.map +1 -1
- package/dist/jsx/views/viewAvailability.mjs +17 -9
- package/dist/jsx/views/viewAvailability.mjs.map +1 -1
- package/dist/jsx/views/viewAvailability.native.js +18 -8
- package/dist/jsx/views/viewAvailability.native.js.map +1 -1
- package/dist/jsx/views/viewMeta.mjs +23 -1
- package/dist/jsx/views/viewMeta.mjs.map +1 -1
- package/dist/jsx/views/viewMeta.native.js +30 -1
- package/dist/jsx/views/viewMeta.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceChartBlock.mjs +1 -1
- package/dist/jsx/workspace/WorkspaceChartBlock.mjs.map +1 -1
- package/dist/jsx/workspace/WorkspaceChartBlock.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceChartBlock.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceLinkDirectory.mjs +2 -2
- package/dist/jsx/workspace/WorkspaceLinkDirectory.mjs.map +1 -1
- package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js +2 -2
- package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceRecents.mjs +2 -2
- package/dist/jsx/workspace/WorkspaceRecents.mjs.map +1 -1
- package/dist/jsx/workspace/WorkspaceRecents.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceRecents.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceShortcut.mjs +2 -2
- package/dist/jsx/workspace/WorkspaceShortcut.mjs.map +1 -1
- package/dist/jsx/workspace/WorkspaceShortcut.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceShortcut.native.js.map +1 -1
- package/package.json +12 -12
- package/src/backofficeScreens.designLaw.spec.ts +27 -0
- package/src/chrome/BackofficeAwesomebar.tsx +8 -4
- package/src/chrome/CommandPalette.spec.tsx +19 -0
- package/src/chrome/CommandPalette.tsx +38 -24
- package/src/chrome/NotificationsButton.screen.spec.tsx +1 -0
- package/src/chrome/NotificationsButton.tsx +3 -2
- package/src/chrome/UserMenu.screen.spec.tsx +77 -7
- package/src/chrome/UserMenu.tsx +173 -109
- package/src/chrome/notifications-panel.tsx +3 -6
- package/src/chrome/user-session.tsx +8 -2
- package/src/config/BackofficeProvider.spec.tsx +6 -2
- package/src/config/BackofficeProvider.tsx +10 -0
- package/src/config/capabilities.spec.ts +13 -0
- package/src/config/capabilities.ts +4 -0
- package/src/desk/Desk.spec.tsx +48 -0
- package/src/desk/Desk.tsx +25 -1
- package/src/desk/DeskPokemon.stories.tsx +177 -0
- package/src/desk/DeskSurface.spec.tsx +2 -0
- package/src/desk/DeskSurface.tsx +8 -0
- package/src/desk/resolveDeskPath.spec.ts +20 -0
- package/src/desk/resolveDeskPath.ts +6 -1
- package/src/desk/target.ts +3 -0
- package/src/form/DocFormScreen.guest.screen.spec.tsx +4 -0
- package/src/form/DocFormScreen.rights.spec.tsx +113 -8
- package/src/form/DocFormScreen.tsx +65 -44
- package/src/form/FormConnections.tsx +2 -2
- package/src/form/FormErrorBoundary.spec.tsx +2 -3
- package/src/form/FormErrorBoundary.tsx +1 -1
- package/src/form/FormSidebarPanel.tsx +1 -1
- package/src/form/FormTimeline.tsx +0 -1
- package/src/form/FormToolbar.screen.spec.tsx +90 -29
- package/src/form/FormToolbar.tsx +98 -132
- package/src/formBuilder/DoctypePicker.tsx +72 -0
- package/src/formBuilder/FieldPalette.tsx +119 -0
- package/src/formBuilder/FieldPropertiesPanel.tsx +213 -0
- package/src/formBuilder/FormBuilderCanvas.tsx +468 -0
- package/src/formBuilder/FormBuilderScreen.screen.spec.tsx +392 -0
- package/src/formBuilder/FormBuilderScreen.stories.tsx +122 -0
- package/src/formBuilder/FormBuilderScreen.tsx +491 -0
- package/src/formBuilder/api.spec.ts +301 -0
- package/src/formBuilder/api.ts +198 -0
- package/src/formBuilder/fieldtypes.ts +140 -0
- package/src/formBuilder/index.ts +58 -0
- package/src/formBuilder/model.spec.ts +401 -0
- package/src/formBuilder/model.ts +522 -0
- package/src/formBuilder/useFormBuilderDrag.spec.tsx +170 -0
- package/src/formBuilder/useFormBuilderDrag.ts +498 -0
- package/src/i18n/en.ts +293 -3
- package/src/index.ts +58 -1
- package/src/list/DoctypeListScreen.guest.screen.spec.tsx +63 -2
- package/src/list/DoctypeListScreen.tsx +204 -85
- package/src/list/ListFilterBar.screen.spec.tsx +1 -1
- package/src/list/ListFilterBar.tsx +16 -6
- package/src/list/ListSidebar.tsx +11 -2
- package/src/list/filter-chips.tsx +19 -4
- package/src/list/filter-editor.tsx +1 -10
- package/src/list/filter-saved.tsx +0 -1
- package/src/list/filter-sort.tsx +0 -1
- package/src/list/filter-standard.tsx +1 -3
- package/src/list/list-tools-sheet.tsx +32 -13
- package/src/navigation/paths.spec.ts +19 -0
- package/src/navigation/paths.ts +8 -0
- package/src/report/QueryReportScreen.tsx +1 -1
- package/src/report/queryReportFilterBar.tsx +0 -5
- package/src/shared/sessionUser.spec.tsx +14 -1
- package/src/shared/sessionUser.ts +27 -6
- package/src/shell/BackofficeShell.spec.tsx +93 -10
- package/src/shell/BackofficeShell.tsx +184 -116
- package/src/shell/HomeRedirect.spec.tsx +89 -0
- package/src/shell/HomeRedirect.tsx +31 -20
- package/src/shell/WorkspaceSidebar.spec.tsx +15 -0
- package/src/shell/WorkspaceSidebar.tsx +58 -29
- package/src/shell/shellSidebarSlot.spec.tsx +178 -0
- package/src/shell/shellSidebarSlot.tsx +7 -0
- package/src/shell/useWorkspaces.spec.tsx +45 -0
- package/src/shell/useWorkspaces.ts +24 -8
- package/src/views/DashboardView.tsx +2 -2
- package/src/views/ImageView.tsx +19 -3
- package/src/views/ViewHeader.tsx +13 -14
- package/src/views/ViewSwitcherMenu.spec.tsx +3 -0
- package/src/views/ViewSwitcherMenu.tsx +11 -10
- package/src/views/viewAvailability.spec.ts +45 -12
- package/src/views/viewAvailability.ts +27 -24
- package/src/views/viewMeta.ts +30 -0
- package/src/workspace/WorkspaceChartBlock.tsx +1 -1
- package/src/workspace/WorkspaceLinkDirectory.tsx +2 -2
- package/src/workspace/WorkspaceRecents.tsx +9 -2
- package/src/workspace/WorkspaceShortcut.tsx +12 -2
- package/types/chrome/BackofficeAwesomebar.d.ts.map +1 -1
- package/types/chrome/CommandPalette.d.ts +7 -1
- package/types/chrome/CommandPalette.d.ts.map +1 -1
- package/types/chrome/NotificationsButton.d.ts.map +1 -1
- package/types/chrome/UserMenu.d.ts.map +1 -1
- package/types/chrome/notifications-panel.d.ts.map +1 -1
- package/types/chrome/user-session.d.ts.map +1 -1
- package/types/config/BackofficeProvider.d.ts +7 -1
- package/types/config/BackofficeProvider.d.ts.map +1 -1
- package/types/config/capabilities.d.ts +3 -0
- package/types/config/capabilities.d.ts.map +1 -1
- package/types/desk/Desk.d.ts +2 -1
- package/types/desk/Desk.d.ts.map +1 -1
- package/types/desk/DeskSurface.d.ts.map +1 -1
- package/types/desk/resolveDeskPath.d.ts +4 -1
- package/types/desk/resolveDeskPath.d.ts.map +1 -1
- package/types/desk/target.d.ts +3 -0
- package/types/desk/target.d.ts.map +1 -1
- package/types/form/DocFormScreen.d.ts +1 -1
- package/types/form/DocFormScreen.d.ts.map +1 -1
- package/types/form/FormTimeline.d.ts.map +1 -1
- package/types/form/FormToolbar.d.ts +5 -32
- package/types/form/FormToolbar.d.ts.map +1 -1
- package/types/formBuilder/DoctypePicker.d.ts +2 -0
- package/types/formBuilder/DoctypePicker.d.ts.map +1 -0
- package/types/formBuilder/FieldPalette.d.ts +6 -0
- package/types/formBuilder/FieldPalette.d.ts.map +1 -0
- package/types/formBuilder/FieldPropertiesPanel.d.ts +10 -0
- package/types/formBuilder/FieldPropertiesPanel.d.ts.map +1 -0
- package/types/formBuilder/FormBuilderCanvas.d.ts +17 -0
- package/types/formBuilder/FormBuilderCanvas.d.ts.map +1 -0
- package/types/formBuilder/FormBuilderScreen.d.ts +7 -0
- package/types/formBuilder/FormBuilderScreen.d.ts.map +1 -0
- package/types/formBuilder/api.d.ts +32 -0
- package/types/formBuilder/api.d.ts.map +1 -0
- package/types/formBuilder/fieldtypes.d.ts +21 -0
- package/types/formBuilder/fieldtypes.d.ts.map +1 -0
- package/types/formBuilder/index.d.ts +5 -0
- package/types/formBuilder/index.d.ts.map +1 -0
- package/types/formBuilder/model.d.ts +76 -0
- package/types/formBuilder/model.d.ts.map +1 -0
- package/types/formBuilder/useFormBuilderDrag.d.ts +44 -0
- package/types/formBuilder/useFormBuilderDrag.d.ts.map +1 -0
- package/types/i18n/en.d.ts +293 -3
- package/types/i18n/en.d.ts.map +1 -1
- package/types/index.d.ts +4 -3
- package/types/index.d.ts.map +1 -1
- package/types/list/DoctypeListScreen.d.ts.map +1 -1
- package/types/list/ListFilterBar.d.ts +10 -4
- package/types/list/ListFilterBar.d.ts.map +1 -1
- package/types/list/ListSidebar.d.ts +7 -1
- package/types/list/ListSidebar.d.ts.map +1 -1
- package/types/list/filter-chips.d.ts +9 -1
- package/types/list/filter-chips.d.ts.map +1 -1
- package/types/list/filter-saved.d.ts.map +1 -1
- package/types/list/filter-sort.d.ts.map +1 -1
- package/types/list/list-tools-sheet.d.ts +9 -1
- package/types/list/list-tools-sheet.d.ts.map +1 -1
- package/types/navigation/paths.d.ts +3 -0
- package/types/navigation/paths.d.ts.map +1 -1
- package/types/report/queryReportFilterBar.d.ts.map +1 -1
- package/types/shared/sessionUser.d.ts +1 -0
- package/types/shared/sessionUser.d.ts.map +1 -1
- package/types/shell/BackofficeShell.d.ts +6 -1
- package/types/shell/BackofficeShell.d.ts.map +1 -1
- package/types/shell/HomeRedirect.d.ts +3 -1
- package/types/shell/HomeRedirect.d.ts.map +1 -1
- package/types/shell/WorkspaceSidebar.d.ts.map +1 -1
- package/types/shell/shellSidebarSlot.d.ts +2 -0
- package/types/shell/shellSidebarSlot.d.ts.map +1 -0
- package/types/shell/useWorkspaces.d.ts +4 -0
- package/types/shell/useWorkspaces.d.ts.map +1 -1
- package/types/views/ImageView.d.ts.map +1 -1
- package/types/views/ViewHeader.d.ts +1 -10
- package/types/views/ViewHeader.d.ts.map +1 -1
- package/types/views/ViewSwitcherMenu.d.ts.map +1 -1
- package/types/views/viewAvailability.d.ts +12 -15
- package/types/views/viewAvailability.d.ts.map +1 -1
- package/types/views/viewMeta.d.ts +10 -0
- package/types/views/viewMeta.d.ts.map +1 -1
- package/types/workspace/WorkspaceRecents.d.ts.map +1 -1
- package/types/workspace/WorkspaceShortcut.d.ts.map +1 -1
|
@@ -157,7 +157,7 @@ function WorkspaceShortcut(param) {
|
|
|
157
157
|
opacity: target.disabled && !onPress ? 0.5 : 1,
|
|
158
158
|
cursor: target.disabled && !onPress ? "default" : "pointer",
|
|
159
159
|
hoverStyle: target.disabled && !onPress ? void 0 : {
|
|
160
|
-
borderColor:
|
|
160
|
+
borderColor: import_components.componentColors.selection.ring
|
|
161
161
|
},
|
|
162
162
|
pressStyle: target.disabled && !onPress ? void 0 : {
|
|
163
163
|
scale: 0.98
|
|
@@ -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","WorkspaceShortcut_exports","WorkspaceShortcut","resolveShortcutTarget","module","exports","import_jsx_runtime","require","import_react","import_components","import_frappe_ui","import_platform","import_theme","import_react2","import_react_i18next","import_BackofficeProvider","import_i18n","import_paths","import_useSlugTarget","import_parseContent","defaultPaths","createBackofficePaths","uncountableDoctypes","Set","row","paths","arguments","length","link_to","url","prefix","base","type","path","list","externalUrl","disabled","TYPE_ICONS","DocType","ListBulletsIcon","Report","ChartBarIcon","Page","BrowserIcon","Dashboard","GaugeIcon","URL","ArrowSquareOutIcon","param","onPress","_row_link_to","_row_link_to1","_row_link_to2","_TYPE_ICONS_row_type","_knobProps_controlIcon","_theme_color11","navigator","useBackofficeNavigator","useBackofficePaths","config","useFrappeConfig","knobProps","useResolvedKnobs","iconSize","Number","controlIcon","width","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","theme","useTheme","views","useBackofficeCapabilities","isDoctypeAllowed","useIsDoctypeAllowed","iconColor","color11","val","isDoctype","filters","useMemo","parseFrappeFilters","stats_filter","singleDoctypes","useSingleDoctypes","connection","baseURL","fixtures","socketPort","siteName","socketBaseURL","auth","syncOptions","hiddenByScope","hiddenByViews","enabled","isCountable","has","count","isLoading","countLoading","error","countError","useFrappeAggregate","doctype","useEffect","add","handlePress","handlePress2","navigate","openUrl","countLabel","format","replace","String","TypeIcon","SquaresFourIcon","jsx","Card","padding","opacity","cursor","hoverStyle","borderColor","pressStyle","scale","role","label","tabIndex","outlineWidth"],"sources":["../../../src/workspace/WorkspaceShortcut.tsx"],"sourcesContent":[null],"mappings":"AAgBA;;AAAA,IACEA,SAAA,GAAAC,MAAA,CAAAC,cAAA;AAAA,IACAC,gBAAA,GAAAF,MAAA,CAAAG,wBAAA;AAAA,IACAC,iBAAA,GAAAJ,MAAA,CAAAK,mBAAA;AAAA,IACAC,YAAA,GAAAN,MAAA,CAAAO,SAAA,CAAAC,cAAA;AAAA,IACAC,QAAA,GAAAA,CAAAC,MAAA,EAAAC,GAAA;EACA,SAAAC,IAAA,IAAAD,GAAA,EAAAZ,SAEK,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAA;IAAAE,UAAA;EAAA;AACP;
|
|
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","WorkspaceShortcut_exports","WorkspaceShortcut","resolveShortcutTarget","module","exports","import_jsx_runtime","require","import_react","import_components","import_frappe_ui","import_platform","import_theme","import_react2","import_react_i18next","import_BackofficeProvider","import_i18n","import_paths","import_useSlugTarget","import_parseContent","defaultPaths","createBackofficePaths","uncountableDoctypes","Set","row","paths","arguments","length","link_to","url","prefix","base","type","path","list","externalUrl","disabled","TYPE_ICONS","DocType","ListBulletsIcon","Report","ChartBarIcon","Page","BrowserIcon","Dashboard","GaugeIcon","URL","ArrowSquareOutIcon","param","onPress","_row_link_to","_row_link_to1","_row_link_to2","_TYPE_ICONS_row_type","_knobProps_controlIcon","_theme_color11","navigator","useBackofficeNavigator","useBackofficePaths","config","useFrappeConfig","knobProps","useResolvedKnobs","iconSize","Number","controlIcon","width","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","theme","useTheme","views","useBackofficeCapabilities","isDoctypeAllowed","useIsDoctypeAllowed","iconColor","color11","val","isDoctype","filters","useMemo","parseFrappeFilters","stats_filter","singleDoctypes","useSingleDoctypes","connection","baseURL","fixtures","socketPort","siteName","socketBaseURL","auth","syncOptions","hiddenByScope","hiddenByViews","enabled","isCountable","has","count","isLoading","countLoading","error","countError","useFrappeAggregate","doctype","useEffect","add","handlePress","handlePress2","navigate","openUrl","countLabel","format","replace","String","TypeIcon","SquaresFourIcon","jsx","Card","padding","opacity","cursor","hoverStyle","borderColor","componentColors","selection","ring","pressStyle","scale","role","label","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","ensureFocusVisibleRing","children"],"sources":["../../../src/workspace/WorkspaceShortcut.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@multiplatform.one/backoffice",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.36.0",
|
|
4
4
|
"description": "Embeddable Frappe desk recreation (backoffice) for the multiplatform.one stack",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"backoffice",
|
|
@@ -71,21 +71,21 @@
|
|
|
71
71
|
"access": "public"
|
|
72
72
|
},
|
|
73
73
|
"dependencies": {
|
|
74
|
-
"@multiplatform.one/components": "^7.
|
|
75
|
-
"@multiplatform.one/forms": "^7.
|
|
76
|
-
"@multiplatform.one/frappe": "^7.
|
|
77
|
-
"@multiplatform.one/frappe-ui": "^7.
|
|
78
|
-
"@multiplatform.one/i18n": "^7.
|
|
79
|
-
"@multiplatform.one/platform": "^7.
|
|
80
|
-
"@multiplatform.one/store": "^7.
|
|
81
|
-
"@multiplatform.one/table": "^7.
|
|
82
|
-
"@multiplatform.one/theme": "^7.
|
|
74
|
+
"@multiplatform.one/components": "^7.36.0",
|
|
75
|
+
"@multiplatform.one/forms": "^7.36.0",
|
|
76
|
+
"@multiplatform.one/frappe": "^7.36.0",
|
|
77
|
+
"@multiplatform.one/frappe-ui": "^7.36.0",
|
|
78
|
+
"@multiplatform.one/i18n": "^7.36.0",
|
|
79
|
+
"@multiplatform.one/platform": "^7.36.0",
|
|
80
|
+
"@multiplatform.one/store": "^7.36.0",
|
|
81
|
+
"@multiplatform.one/table": "^7.36.0",
|
|
82
|
+
"@multiplatform.one/theme": "^7.36.0",
|
|
83
83
|
"@phosphor-icons/react": "^2.1.10",
|
|
84
84
|
"tamagui": "2.7.6"
|
|
85
85
|
},
|
|
86
86
|
"devDependencies": {
|
|
87
|
-
"@multiplatform.one/config": "7.
|
|
88
|
-
"@multiplatform.one/test-utils": "7.
|
|
87
|
+
"@multiplatform.one/config": "7.36.0",
|
|
88
|
+
"@multiplatform.one/test-utils": "7.36.0",
|
|
89
89
|
"@tamagui/build": "2.7.6",
|
|
90
90
|
"@testing-library/react": "^16.3.3",
|
|
91
91
|
"@types/react-dom": "^19.2.3",
|
|
@@ -71,6 +71,33 @@ describe("Backoffice screens — design-law 100%", () => {
|
|
|
71
71
|
expect(report).toContain("knobProps.gap");
|
|
72
72
|
});
|
|
73
73
|
|
|
74
|
+
it("form builder composes catalog parts and spacing roles with knob-sized icons", () => {
|
|
75
|
+
const screen = read("formBuilder/FormBuilderScreen.tsx");
|
|
76
|
+
expect(screen).toContain("knobProps.panelPadding");
|
|
77
|
+
expect(screen).toContain("knobProps.gapLg");
|
|
78
|
+
expect(screen).toContain("<AsyncBoundary");
|
|
79
|
+
expect(screen).toContain("<AsyncSkeleton");
|
|
80
|
+
expect(screen).toContain("<SheetModal");
|
|
81
|
+
for (const file of [
|
|
82
|
+
"FormBuilderScreen",
|
|
83
|
+
"FormBuilderCanvas",
|
|
84
|
+
"FieldPalette",
|
|
85
|
+
"FieldPropertiesPanel",
|
|
86
|
+
"DoctypePicker",
|
|
87
|
+
]) {
|
|
88
|
+
const source = read(`formBuilder/${file}.tsx`);
|
|
89
|
+
expect(source).toContain("knobProps.gap");
|
|
90
|
+
expect(source).not.toMatch(/fontWeight=|fontSize=|padding=|borderRadius=/);
|
|
91
|
+
expect(source).not.toMatch(/from ["'](?:one|tamagui)["']/);
|
|
92
|
+
}
|
|
93
|
+
for (const file of ["FormBuilderCanvas", "FieldPalette"]) {
|
|
94
|
+
const source = read(`formBuilder/${file}.tsx`);
|
|
95
|
+
expect(source).toContain("knobProps.controlIcon");
|
|
96
|
+
expect(source).toContain("@phosphor-icons/react");
|
|
97
|
+
expect(source).not.toMatch(/size=\{\d+\}/);
|
|
98
|
+
}
|
|
99
|
+
});
|
|
100
|
+
|
|
74
101
|
it("report filter chips are catalog Chip, not a private 999-radius pill", () => {
|
|
75
102
|
const source = read("views/report-controls.tsx");
|
|
76
103
|
expect(source).toContain("<Chip");
|
|
@@ -10,14 +10,17 @@
|
|
|
10
10
|
// a full-height sheet <sm, both fed by one section model
|
|
11
11
|
// (chrome/command-palette-model.ts).
|
|
12
12
|
import { MagnifyingGlassIcon } from "@phosphor-icons/react";
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
13
|
+
import { SizableText, Text, XStack, isWeb, themed } from "@multiplatform.one/components";
|
|
14
|
+
import { Button } from "@multiplatform.one/forms";
|
|
15
|
+
import { useLayoutSizeClass, useResolvedKnobs } from "@multiplatform.one/theme";
|
|
15
16
|
import type { Ref } from "react";
|
|
16
17
|
import { useImperativeHandle, useState } from "react";
|
|
17
18
|
import { useTranslation } from "react-i18next";
|
|
18
19
|
import { BACKOFFICE_I18N_NAMESPACE } from "../i18n";
|
|
19
20
|
import { CommandPalette } from "./CommandPalette";
|
|
20
21
|
|
|
22
|
+
const SearchGlyph = themed(MagnifyingGlassIcon);
|
|
23
|
+
|
|
21
24
|
/** Imperative surface for the shell's global shortcuts (Mod+K / Mod+G). */
|
|
22
25
|
export interface BackofficeAwesomebarHandle {
|
|
23
26
|
/** Open the command palette (focus lands in its search input on web). */
|
|
@@ -43,6 +46,7 @@ function getModLabel(): string {
|
|
|
43
46
|
export function BackofficeAwesomebar({ focusRef }: BackofficeAwesomebarProps = {}) {
|
|
44
47
|
const { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
|
|
45
48
|
const isCompact = useLayoutSizeClass() === "compact";
|
|
49
|
+
const { knobProps } = useResolvedKnobs();
|
|
46
50
|
const [open, setOpen] = useState(false);
|
|
47
51
|
|
|
48
52
|
useImperativeHandle(focusRef, () => ({ focus: () => setOpen(true) }), []);
|
|
@@ -53,14 +57,14 @@ export function BackofficeAwesomebar({ focusRef }: BackofficeAwesomebarProps = {
|
|
|
53
57
|
return (
|
|
54
58
|
<>
|
|
55
59
|
<Button
|
|
56
|
-
size="$3"
|
|
60
|
+
size={isCompact ? knobProps.sizeToken : "$3"}
|
|
57
61
|
flex={isCompact ? undefined : 1}
|
|
58
62
|
flexShrink={0}
|
|
59
63
|
circular={isCompact}
|
|
60
64
|
chromeless={isCompact}
|
|
61
65
|
minWidth={0}
|
|
62
66
|
justifyContent={isCompact ? "center" : "flex-start"}
|
|
63
|
-
icon={
|
|
67
|
+
icon={SearchGlyph}
|
|
64
68
|
aria-label={label}
|
|
65
69
|
aria-haspopup="dialog"
|
|
66
70
|
aria-expanded={open}
|
|
@@ -3,6 +3,7 @@ import { InMemoryFixtureProvider } from "@multiplatform.one/frappe";
|
|
|
3
3
|
import { renderWithProviders } from "@multiplatform.one/test-utils";
|
|
4
4
|
import { fireEvent, screen, waitFor, within } from "@testing-library/react";
|
|
5
5
|
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
|
6
|
+
import { getSizeRecipeFamily } from "@multiplatform.one/theme";
|
|
6
7
|
import { createMemoryNavigator } from "../navigation/navigator";
|
|
7
8
|
import { BackofficeShell } from "../shell/BackofficeShell";
|
|
8
9
|
import { BackofficeProvider, type BackofficeProviderProps } from "../config/BackofficeProvider";
|
|
@@ -187,6 +188,20 @@ describe("CommandPalette sections", () => {
|
|
|
187
188
|
});
|
|
188
189
|
});
|
|
189
190
|
|
|
191
|
+
describe("CommandPalette row pitch", () => {
|
|
192
|
+
it("rows ride the menuRow family, the same min-height as DropdownMenu and Select rows", async () => {
|
|
193
|
+
renderShell();
|
|
194
|
+
const { input } = await openPalette();
|
|
195
|
+
fireEvent.change(input, { target: { value: "note" } });
|
|
196
|
+
const row = await waitFor(() => findOption("New Note"));
|
|
197
|
+
// Opened from the shell's `$3` top bar, the modal still pitches at the
|
|
198
|
+
// default menuRow height: it resets the bar's Surface ceiling.
|
|
199
|
+
const pitch = getSizeRecipeFamily("menuRow").heights.$true;
|
|
200
|
+
expect(pitch).toBe(36);
|
|
201
|
+
expect(row.className).toMatch(new RegExp(`_mih-${pitch}px`));
|
|
202
|
+
});
|
|
203
|
+
});
|
|
204
|
+
|
|
190
205
|
describe("CommandPalette keyboard", () => {
|
|
191
206
|
it("arrows move the roving highlight and Enter navigates via the navigator", async () => {
|
|
192
207
|
const { navigation } = renderShell();
|
|
@@ -237,6 +252,10 @@ describe("CommandPalette keyboard", () => {
|
|
|
237
252
|
await waitFor(() => {
|
|
238
253
|
const selected = document.querySelector('[role="option"][aria-selected="true"]');
|
|
239
254
|
expect(selected).toBe(document.querySelectorAll('[role="option"]')[0]);
|
|
255
|
+
expect(selected?.className).toContain("_bg-color4");
|
|
256
|
+
expect(selected?.className).toContain("_bg-0hover-color5");
|
|
257
|
+
expect(selected?.className).toContain("_bg-0active-color5");
|
|
258
|
+
expect(selected?.querySelector(".is_Text")?.className).toContain("_col-color12");
|
|
240
259
|
});
|
|
241
260
|
});
|
|
242
261
|
|
|
@@ -10,11 +10,12 @@
|
|
|
10
10
|
// ArrowDown / Home / End move one roving highlight across sections, Enter
|
|
11
11
|
// opens, Escape closes and returns focus to the pre-open element (D-22),
|
|
12
12
|
// Mod+K/G toggles closed while the input holds focus (Linear). The highlight
|
|
13
|
-
// is the SELECTED channel
|
|
14
|
-
//
|
|
15
|
-
//
|
|
16
|
-
//
|
|
13
|
+
// is the SELECTED channel: the neutral selection fill, no ring (LC-71/LC-05:
|
|
14
|
+
// focus stays on the SearchInput box). COMMIT-class dismissal (LC-21):
|
|
15
|
+
// picking a row commits and closes; otherwise only backdrop click / Escape /
|
|
16
|
+
// Mod+K dismiss.
|
|
17
17
|
import {
|
|
18
|
+
componentColors,
|
|
18
19
|
Dialog,
|
|
19
20
|
DialogContent,
|
|
20
21
|
ScrollView,
|
|
@@ -29,9 +30,10 @@ import {
|
|
|
29
30
|
import { SearchInput } from "@multiplatform.one/forms";
|
|
30
31
|
import { addToRecent } from "@multiplatform.one/frappe-ui";
|
|
31
32
|
import {
|
|
33
|
+
SurfaceContext,
|
|
34
|
+
transitionProps,
|
|
32
35
|
menuRowFrame,
|
|
33
36
|
useLayoutSizeClass,
|
|
34
|
-
useReadableTextOn,
|
|
35
37
|
useResolvedKnobs,
|
|
36
38
|
} from "@multiplatform.one/theme";
|
|
37
39
|
import type { ComponentProps, ReactNode, RefObject } from "react";
|
|
@@ -52,8 +54,6 @@ import {
|
|
|
52
54
|
|
|
53
55
|
const PANEL_WIDTH = 640;
|
|
54
56
|
const RESULTS_MAX_HEIGHT = 400;
|
|
55
|
-
/** Minimum press target for result rows (house 44px floor). */
|
|
56
|
-
const ROW_MIN_HEIGHT = 44;
|
|
57
57
|
const LISTBOX_ID = "backoffice-command-palette-listbox";
|
|
58
58
|
|
|
59
59
|
const optionId = (index: number) => `backoffice-command-palette-option-${index}`;
|
|
@@ -67,7 +67,21 @@ export interface CommandPaletteProps {
|
|
|
67
67
|
onOpenChange: (open: boolean) => void;
|
|
68
68
|
}
|
|
69
69
|
|
|
70
|
-
|
|
70
|
+
/**
|
|
71
|
+
* The palette is a modal of its own, not a part of the top bar it opens
|
|
72
|
+
* from: it resets the Surface ceiling the bar sets (`bar.sizeToken`, `$3`)
|
|
73
|
+
* so its rows keep the default menuRow pitch shared with DropdownMenu and
|
|
74
|
+
* Select (LC-78 bounds nesting, and a modal does not nest in its trigger).
|
|
75
|
+
*/
|
|
76
|
+
export function CommandPalette(props: CommandPaletteProps) {
|
|
77
|
+
return (
|
|
78
|
+
<SurfaceContext.Provider size="unset">
|
|
79
|
+
<CommandPaletteSurface {...props} />
|
|
80
|
+
</SurfaceContext.Provider>
|
|
81
|
+
);
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
function CommandPaletteSurface({ open, onOpenChange }: CommandPaletteProps) {
|
|
71
85
|
const { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
|
|
72
86
|
const navigator = useBackofficeNavigator();
|
|
73
87
|
const { knobProps } = useResolvedKnobs();
|
|
@@ -326,7 +340,7 @@ export function CommandPalette({ open, onOpenChange }: CommandPaletteProps) {
|
|
|
326
340
|
<Dialog.Overlay
|
|
327
341
|
key="overlay"
|
|
328
342
|
backgroundColor="$shadow6"
|
|
329
|
-
|
|
343
|
+
{...transitionProps(knobProps.motion.scrim)}
|
|
330
344
|
enterStyle={{ opacity: 0 }}
|
|
331
345
|
exitStyle={{ opacity: 0 }}
|
|
332
346
|
/>
|
|
@@ -450,10 +464,7 @@ function PaletteResults({
|
|
|
450
464
|
}: PaletteResultsProps) {
|
|
451
465
|
const { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
|
|
452
466
|
const { knobProps } = useResolvedKnobs();
|
|
453
|
-
// LC-71
|
|
454
|
-
// (combobox focus stays on the search input). Accent + readable ink
|
|
455
|
-
// (LC-05) so selected + unselected stay one emphasis system.
|
|
456
|
-
const onAccent = useReadableTextOn("$accentBackground");
|
|
467
|
+
// LC-71/LC-05: neutral selection fill; keyboard focus stays on the search input.
|
|
457
468
|
const { sections, searching, searchUnavailable, hasQuery, noResults, query } = model;
|
|
458
469
|
|
|
459
470
|
let flatIndex = -1;
|
|
@@ -488,8 +499,8 @@ function PaletteResults({
|
|
|
488
499
|
const index = flatIndex;
|
|
489
500
|
const highlighted = index === highlight;
|
|
490
501
|
const Icon = item.icon;
|
|
491
|
-
const ink = highlighted
|
|
492
|
-
const muted = highlighted
|
|
502
|
+
const ink = highlighted ? componentColors.selection.ink : "$color12";
|
|
503
|
+
const muted = highlighted ? componentColors.selection.ink : "$color10";
|
|
493
504
|
return (
|
|
494
505
|
<XStack
|
|
495
506
|
key={item.id}
|
|
@@ -503,21 +514,24 @@ function PaletteResults({
|
|
|
503
514
|
aria-selected={highlighted}
|
|
504
515
|
data-highlighted={highlighted ? "true" : undefined}
|
|
505
516
|
{...menuRowFrame}
|
|
506
|
-
|
|
517
|
+
// Same pitch as DropdownMenu / Select rows: the menuRow family
|
|
518
|
+
// (the touch floor on touch).
|
|
519
|
+
{...knobProps.menuRow}
|
|
507
520
|
paddingVertical="$2"
|
|
508
|
-
minHeight={ROW_MIN_HEIGHT}
|
|
509
521
|
cursor="pointer"
|
|
510
|
-
backgroundColor={highlighted ?
|
|
522
|
+
backgroundColor={highlighted ? componentColors.selection.background : "transparent"}
|
|
511
523
|
hoverStyle={{
|
|
512
|
-
backgroundColor: highlighted ?
|
|
524
|
+
backgroundColor: highlighted ? componentColors.selection.hover : "$color3",
|
|
525
|
+
}}
|
|
526
|
+
pressStyle={{
|
|
527
|
+
backgroundColor: highlighted ? componentColors.selection.press : "$color4",
|
|
513
528
|
}}
|
|
514
|
-
pressStyle={{ backgroundColor: "$accentBackground" }}
|
|
515
529
|
onPress={() => onActivate(item)}
|
|
516
530
|
onMouseEnter={() => onHighlight(index)}
|
|
517
531
|
>
|
|
518
532
|
{/* LC-08: one uniform leading media slot */}
|
|
519
533
|
<XStack width="$1" justifyContent="center" flexShrink={0}>
|
|
520
|
-
<Icon size={16} color={highlighted
|
|
534
|
+
<Icon size={16} color={highlighted ? componentColors.selection.ink : undefined} />
|
|
521
535
|
</XStack>
|
|
522
536
|
<YStack flex={1} minWidth={0}>
|
|
523
537
|
<HighlightedText text={item.label} query={query} color={ink} fontSize="$3" />
|
|
@@ -534,7 +548,7 @@ function PaletteResults({
|
|
|
534
548
|
{item.badge ? (
|
|
535
549
|
<XStack
|
|
536
550
|
borderWidth={1}
|
|
537
|
-
borderColor={highlighted
|
|
551
|
+
borderColor={highlighted ? componentColors.selection.ink : "$borderColor"}
|
|
538
552
|
borderRadius="$2"
|
|
539
553
|
paddingHorizontal="$1.5"
|
|
540
554
|
paddingVertical="$1"
|
|
@@ -543,7 +557,7 @@ function PaletteResults({
|
|
|
543
557
|
>
|
|
544
558
|
<Text
|
|
545
559
|
fontSize="$1"
|
|
546
|
-
color={highlighted
|
|
560
|
+
color={highlighted ? componentColors.selection.ink : "$color10"}
|
|
547
561
|
{...knobProps.body}
|
|
548
562
|
>
|
|
549
563
|
{item.badge}
|
|
@@ -603,7 +617,7 @@ function KeyCap({ label }: { label: string }) {
|
|
|
603
617
|
paddingHorizontal="$1.5"
|
|
604
618
|
justifyContent="center"
|
|
605
619
|
>
|
|
606
|
-
<SizableText size="$1"
|
|
620
|
+
<SizableText size="$1" color="$color11">
|
|
607
621
|
{label}
|
|
608
622
|
</SizableText>
|
|
609
623
|
</XStack>
|
|
@@ -156,6 +156,7 @@ describe("NotificationsButton", () => {
|
|
|
156
156
|
renderBell([]);
|
|
157
157
|
fireEvent.click(screen.getByTestId("backoffice-notifications-button"));
|
|
158
158
|
expect(await screen.findByText("No new notifications")).toBeTruthy();
|
|
159
|
+
expect(screen.queryByText("Mentions, assignments, and shares will show up here.")).toBeNull();
|
|
159
160
|
expect(rows()).toHaveLength(0);
|
|
160
161
|
expect(badgeCount()).toBeUndefined();
|
|
161
162
|
});
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
// Navbar bell button + notifications panel (Notification Log, unread badge,
|
|
2
2
|
// mark-as-read; desk parity). Self-contained: reads frappe context + the
|
|
3
3
|
// backoffice navigator internally; the shell mounts it props-less.
|
|
4
|
-
import { Badge } from "@multiplatform.one/components";
|
|
4
|
+
import { Badge, themed } from "@multiplatform.one/components";
|
|
5
5
|
// House Button: the raw tamagui Button (components re-export) misses the
|
|
6
6
|
// house 44px press floor; the 36px bell also crowded the count badge into
|
|
7
7
|
// its own glyph (LC-54, LC-53 icon slot).
|
|
@@ -21,6 +21,7 @@ import { NotificationsPanel } from "./notifications-panel";
|
|
|
21
21
|
|
|
22
22
|
/** Fixed content width when the panel floats (sheet mode fills instead). */
|
|
23
23
|
const PANEL_WIDTH = 400;
|
|
24
|
+
const NotificationGlyph = themed(BellIcon);
|
|
24
25
|
|
|
25
26
|
export function NotificationsButton() {
|
|
26
27
|
const { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);
|
|
@@ -74,7 +75,7 @@ export function NotificationsButton() {
|
|
|
74
75
|
chromeless
|
|
75
76
|
circular
|
|
76
77
|
size={knobProps.sizeToken}
|
|
77
|
-
icon={
|
|
78
|
+
icon={NotificationGlyph}
|
|
78
79
|
aria-label={label}
|
|
79
80
|
data-testid="backoffice-notifications-button"
|
|
80
81
|
/>
|
|
@@ -30,10 +30,17 @@ beforeEach(() => {
|
|
|
30
30
|
}
|
|
31
31
|
if (url.pathname === "/api/method/frappe.client.get_value") {
|
|
32
32
|
return json({
|
|
33
|
-
message: {
|
|
33
|
+
message: {
|
|
34
|
+
full_name: "Jane Cooper",
|
|
35
|
+
email: "jane@example.com",
|
|
36
|
+
user_image: "/files/jane.png",
|
|
37
|
+
},
|
|
34
38
|
});
|
|
35
39
|
}
|
|
36
|
-
if (url.pathname === "/api/method/logout")
|
|
40
|
+
if (url.pathname === "/api/method/logout") {
|
|
41
|
+
loggedUser = "Guest";
|
|
42
|
+
return json({ message: "" });
|
|
43
|
+
}
|
|
37
44
|
return json({ data: [] });
|
|
38
45
|
});
|
|
39
46
|
});
|
|
@@ -74,12 +81,63 @@ describe("UserMenu", () => {
|
|
|
74
81
|
expect(navigation.getLocation().path).toBe("/backoffice/user/jane%40example.com");
|
|
75
82
|
});
|
|
76
83
|
|
|
77
|
-
it("
|
|
78
|
-
loggedUser =
|
|
84
|
+
it.each(["Guest", null])("shows Log in without session actions for %s", async (user) => {
|
|
85
|
+
loggedUser = user;
|
|
86
|
+
renderMenu();
|
|
87
|
+
await waitFor(() => expect(calls).toContain("/api/method/frappe.auth.get_logged_user"));
|
|
88
|
+
expect(await screen.findByRole("button", { name: "Log in" })).toBeTruthy();
|
|
89
|
+
for (const label of [
|
|
90
|
+
"Guest",
|
|
91
|
+
"My Profile",
|
|
92
|
+
"My Settings",
|
|
93
|
+
"Log Out",
|
|
94
|
+
"Session Defaults",
|
|
95
|
+
"Session not loaded",
|
|
96
|
+
"Not implemented yet",
|
|
97
|
+
]) {
|
|
98
|
+
expect(screen.queryByText(label)).toBeNull();
|
|
99
|
+
}
|
|
100
|
+
expect(screen.queryByRole("button", { name: "User menu" })).toBeNull();
|
|
101
|
+
});
|
|
102
|
+
|
|
103
|
+
it("keeps login reachable when the session endpoint fails", async () => {
|
|
104
|
+
vi.stubGlobal("fetch", async () => json({}, 500));
|
|
105
|
+
renderMenu();
|
|
106
|
+
expect(await screen.findByRole("button", { name: "Log in" }, { timeout: 10000 })).toBeTruthy();
|
|
107
|
+
expect(screen.queryByRole("button", { name: "User menu" })).toBeNull();
|
|
108
|
+
});
|
|
109
|
+
|
|
110
|
+
it("does not offer login while the identity check is pending", () => {
|
|
111
|
+
vi.stubGlobal("fetch", () => new Promise(() => {}));
|
|
112
|
+
renderMenu();
|
|
113
|
+
expect(screen.queryByRole("button", { name: "Log in" })).toBeNull();
|
|
114
|
+
expect(screen.queryByRole("button", { name: "User menu" })).toBeNull();
|
|
115
|
+
});
|
|
116
|
+
|
|
117
|
+
it("starts the host login flow", async () => {
|
|
118
|
+
loggedUser = "Guest";
|
|
119
|
+
const login = vi.fn();
|
|
120
|
+
renderMenu({ auth: { login } });
|
|
121
|
+
fireEvent.click(await screen.findByRole("button", { name: "Log in" }));
|
|
122
|
+
expect(login).toHaveBeenCalledTimes(1);
|
|
123
|
+
});
|
|
124
|
+
|
|
125
|
+
it("hides unfinished items for signed-in users too", async () => {
|
|
79
126
|
renderMenu();
|
|
80
|
-
await screen.findByText("
|
|
81
|
-
|
|
82
|
-
expect(
|
|
127
|
+
await screen.findByText("Jane Cooper");
|
|
128
|
+
expect(screen.queryByText("Session Defaults")).toBeNull();
|
|
129
|
+
expect(screen.queryByText("Not implemented yet")).toBeNull();
|
|
130
|
+
expect(screen.queryByText("Session not loaded")).toBeNull();
|
|
131
|
+
});
|
|
132
|
+
|
|
133
|
+
it("ends host authentication before returning to the signed-out state", async () => {
|
|
134
|
+
const logout = vi.fn(async () => {});
|
|
135
|
+
renderMenu({ auth: { login: vi.fn(), logout } });
|
|
136
|
+
await screen.findByText("Jane Cooper");
|
|
137
|
+
fireEvent.click(item("Log Out"));
|
|
138
|
+
await waitFor(() => expect(logout).toHaveBeenCalledTimes(1));
|
|
139
|
+
expect(calls).toContain("/api/method/logout");
|
|
140
|
+
expect(await screen.findByRole("button", { name: "Log in" })).toBeTruthy();
|
|
83
141
|
expect(screen.queryByText("Jane Cooper")).toBeNull();
|
|
84
142
|
});
|
|
85
143
|
|
|
@@ -103,5 +161,17 @@ describe("UserMenu", () => {
|
|
|
103
161
|
fireEvent.click(item("Log Out"));
|
|
104
162
|
await waitFor(() => expect(navigation.getLocation().path).toBe("/backoffice"));
|
|
105
163
|
expect(calls).toContain("/api/method/logout");
|
|
164
|
+
expect(await screen.findByRole("button", { name: "Log in" })).toBeTruthy();
|
|
165
|
+
expect(screen.queryByText("Jane Cooper")).toBeNull();
|
|
106
166
|
});
|
|
107
167
|
});
|
|
168
|
+
|
|
169
|
+
it("reports a failed login outside the header and allows dismissal", async () => {
|
|
170
|
+
loggedUser = "Guest";
|
|
171
|
+
renderMenu({ auth: { login: vi.fn().mockRejectedValue(new Error("offline")) } });
|
|
172
|
+
fireEvent.click(await screen.findByRole("button", { name: "Log in" }));
|
|
173
|
+
expect((await screen.findAllByRole("dialog")).length).toBeGreaterThan(0);
|
|
174
|
+
expect(screen.getByText("Unable to complete sign-in or sign-out. Try again.")).toBeTruthy();
|
|
175
|
+
fireEvent.click(screen.getByRole("button", { name: "Close" }));
|
|
176
|
+
await waitFor(() => expect(screen.queryAllByRole("dialog")).toHaveLength(0));
|
|
177
|
+
});
|