@multiplatform.one/backoffice 7.6.3 → 7.7.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.native.js +1 -1
- package/dist/cjs/chrome/BackofficeAwesomebar.native.js.map +1 -1
- package/dist/cjs/chrome/CommandPalette.native.js +1 -1
- package/dist/cjs/chrome/CommandPalette.native.js.map +1 -1
- package/dist/cjs/chrome/HelpMenu.native.js +1 -1
- package/dist/cjs/chrome/HelpMenu.native.js.map +1 -1
- package/dist/cjs/chrome/NotificationsButton.native.js +1 -1
- package/dist/cjs/chrome/NotificationsButton.native.js.map +1 -1
- package/dist/cjs/chrome/UserMenu.native.js +1 -1
- package/dist/cjs/chrome/UserMenu.native.js.map +1 -1
- package/dist/cjs/chrome/awesomebar-data.native.js.map +1 -1
- package/dist/cjs/chrome/command-palette-model.native.js +1 -1
- package/dist/cjs/chrome/command-palette-model.native.js.map +1 -1
- package/dist/cjs/chrome/help-about-dialog.native.js +1 -1
- package/dist/cjs/chrome/help-about-dialog.native.js.map +1 -1
- package/dist/cjs/chrome/help-shortcuts-dialog.native.js +1 -1
- package/dist/cjs/chrome/help-shortcuts-dialog.native.js.map +1 -1
- package/dist/cjs/chrome/notifications-data.native.js.map +1 -1
- package/dist/cjs/chrome/notifications-panel.native.js +1 -1
- package/dist/cjs/chrome/notifications-panel.native.js.map +1 -1
- package/dist/cjs/chrome/notifications-utils.native.js.map +1 -1
- package/dist/cjs/chrome/shortcuts.native.js.map +1 -1
- package/dist/cjs/chrome/user-session.native.js.map +1 -1
- package/dist/cjs/config/BackofficeProvider.native.js +1 -1
- package/dist/cjs/config/BackofficeProvider.native.js.map +1 -1
- package/dist/cjs/config/capabilities.native.js.map +1 -1
- package/dist/cjs/config/events.native.js.map +1 -1
- package/dist/cjs/config/slots.native.js.map +1 -1
- package/dist/cjs/desk/Desk.native.js.map +1 -1
- package/dist/cjs/desk/DeskSurface.native.js.map +1 -1
- package/dist/cjs/desk/resolveDeskPath.native.js.map +1 -1
- package/dist/cjs/desk/scope.native.js.map +1 -1
- package/dist/cjs/desk/target.native.js.map +1 -1
- package/dist/cjs/form/DocFormScreen.native.js +1 -1
- package/dist/cjs/form/DocFormScreen.native.js.map +1 -1
- package/dist/cjs/form/FormConnections.native.js +1 -1
- package/dist/cjs/form/FormConnections.native.js.map +1 -1
- package/dist/cjs/form/FormDialogs.native.js +1 -1
- package/dist/cjs/form/FormDialogs.native.js.map +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/FormHeaderCluster.native.js +1 -1
- package/dist/cjs/form/FormHeaderCluster.native.js.map +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.native.js +1 -1
- package/dist/cjs/form/FormTimeline.native.js.map +1 -1
- package/dist/cjs/form/FormToolbar.native.js +1 -1
- package/dist/cjs/form/FormToolbar.native.js.map +1 -1
- package/dist/cjs/form/connections-data.native.js.map +1 -1
- package/dist/cjs/form/createPrefill.cjs +3 -11
- package/dist/cjs/form/createPrefill.native.js +3 -11
- package/dist/cjs/form/createPrefill.native.js.map +1 -1
- package/dist/cjs/form/dependsOn.native.js.map +1 -1
- package/dist/cjs/form/dirtyTracking.cjs +4 -29
- package/dist/cjs/form/dirtyTracking.native.js +4 -48
- package/dist/cjs/form/dirtyTracking.native.js.map +1 -1
- package/dist/cjs/form/docinfo.native.js.map +1 -1
- package/dist/cjs/form/fetchFrom.cjs +4 -41
- package/dist/cjs/form/fetchFrom.native.js +4 -81
- package/dist/cjs/form/fetchFrom.native.js.map +1 -1
- package/dist/cjs/form/fieldPermissions.cjs +4 -29
- package/dist/cjs/form/fieldPermissions.native.js +4 -51
- package/dist/cjs/form/fieldPermissions.native.js.map +1 -1
- package/dist/cjs/form/formActions.cjs +2 -171
- package/dist/cjs/form/formActions.native.js +2 -178
- package/dist/cjs/form/formActions.native.js.map +1 -1
- package/dist/cjs/form/formLayout.cjs +5 -219
- package/dist/cjs/form/formLayout.native.js +5 -359
- package/dist/cjs/form/formLayout.native.js.map +1 -1
- package/dist/cjs/form/platformHooks.native.js.map +1 -1
- package/dist/cjs/form/sidebar-attachments.native.js +1 -1
- package/dist/cjs/form/sidebar-attachments.native.js.map +1 -1
- package/dist/cjs/form/sidebar-dialogs.native.js +1 -1
- package/dist/cjs/form/sidebar-dialogs.native.js.map +1 -1
- package/dist/cjs/form/sidebar-people.native.js +1 -1
- package/dist/cjs/form/sidebar-people.native.js.map +1 -1
- package/dist/cjs/form/sidebar-rpc.native.js.map +1 -1
- package/dist/cjs/form/sidebar-utils.native.js.map +1 -1
- package/dist/cjs/form/timeline-entries.native.js.map +1 -1
- package/dist/cjs/form/timeline-utils.native.js.map +1 -1
- package/dist/cjs/form/useFormEngine.cjs +2 -361
- package/dist/cjs/form/useFormEngine.native.js +2 -447
- package/dist/cjs/form/useFormEngine.native.js.map +1 -1
- package/dist/cjs/i18n/en.native.js.map +1 -1
- package/dist/cjs/i18n/index.native.js.map +1 -1
- package/dist/cjs/index.native.js +1 -1
- package/dist/cjs/index.native.js.map +1 -1
- package/dist/cjs/list/AddTagsDialog.native.js +1 -1
- package/dist/cjs/list/AddTagsDialog.native.js.map +1 -1
- package/dist/cjs/list/AssignToDialog.native.js +1 -1
- package/dist/cjs/list/AssignToDialog.native.js.map +1 -1
- package/dist/cjs/list/DoctypeListScreen.native.js +1 -1
- package/dist/cjs/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/cjs/list/ListBulkActionsBar.native.js +1 -1
- package/dist/cjs/list/ListBulkActionsBar.native.js.map +1 -1
- package/dist/cjs/list/ListFilterBar.native.js +1 -1
- package/dist/cjs/list/ListFilterBar.native.js.map +1 -1
- package/dist/cjs/list/ListSidebar.native.js +1 -1
- package/dist/cjs/list/ListSidebar.native.js.map +1 -1
- package/dist/cjs/list/bulk-edit-dialog.native.js +1 -1
- package/dist/cjs/list/bulk-edit-dialog.native.js.map +1 -1
- package/dist/cjs/list/bulk-export.native.js.map +1 -1
- package/dist/cjs/list/bulk-submit-cancel.native.js.map +1 -1
- package/dist/cjs/list/bulkActions.native.js.map +1 -1
- package/dist/cjs/list/filter-chips.native.js +1 -1
- package/dist/cjs/list/filter-chips.native.js.map +1 -1
- package/dist/cjs/list/filter-editor.native.js +1 -1
- package/dist/cjs/list/filter-editor.native.js.map +1 -1
- package/dist/cjs/list/filter-fields.native.js.map +1 -1
- package/dist/cjs/list/filter-saved.native.js +1 -1
- package/dist/cjs/list/filter-saved.native.js.map +1 -1
- package/dist/cjs/list/filter-sort.native.js +1 -1
- package/dist/cjs/list/filter-sort.native.js.map +1 -1
- package/dist/cjs/list/filter-standard.native.js.map +1 -1
- package/dist/cjs/list/filterConversion.native.js.map +1 -1
- package/dist/cjs/list/list-tools-sheet.native.js +1 -1
- package/dist/cjs/list/list-tools-sheet.native.js.map +1 -1
- package/dist/cjs/list/listColumns.native.js.map +1 -1
- package/dist/cjs/list/listFields.native.js.map +1 -1
- package/dist/cjs/list/listFormat.native.js.map +1 -1
- package/dist/cjs/list/listUrlState.native.js.map +1 -1
- package/dist/cjs/list/sidebar-section.native.js +1 -1
- package/dist/cjs/list/sidebar-section.native.js.map +1 -1
- package/dist/cjs/list/sidebar-stats.native.js.map +1 -1
- package/dist/cjs/list/statusColors.native.js.map +1 -1
- package/dist/cjs/navigation/navigator.native.js.map +1 -1
- package/dist/cjs/navigation/paths.native.js.map +1 -1
- package/dist/cjs/oneAdapter/index.native.js.map +1 -1
- package/dist/cjs/quickEntry/QuickEntryDialog.native.js +1 -1
- package/dist/cjs/quickEntry/QuickEntryDialog.native.js.map +1 -1
- package/dist/cjs/quickEntry/quickEntryPlan.native.js.map +1 -1
- package/dist/cjs/report/DoctypeReportView.native.js +1 -1
- package/dist/cjs/report/DoctypeReportView.native.js.map +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/queryReportColumns.native.js.map +1 -1
- package/dist/cjs/report/queryReportFilterBar.native.js +1 -1
- package/dist/cjs/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/cjs/report/queryReportUrlState.native.js.map +1 -1
- package/dist/cjs/report/report-grid.native.js +1 -1
- package/dist/cjs/report/report-grid.native.js.map +1 -1
- package/dist/cjs/report/report-toolbar.native.js +1 -1
- package/dist/cjs/report/report-toolbar.native.js.map +1 -1
- package/dist/cjs/report/reportShapes.native.js.map +1 -1
- package/dist/cjs/report/reportViewModel.native.js.map +1 -1
- package/dist/cjs/report/savedReports.native.js.map +1 -1
- package/dist/cjs/report/useQueryReport.native.js.map +1 -1
- package/dist/cjs/shared/deskLinks.native.js.map +1 -1
- package/dist/cjs/shared/listNavContext.native.js.map +1 -1
- package/dist/cjs/shared/types.native.js.map +1 -1
- package/dist/cjs/shared/useDocinfo.native.js.map +1 -1
- package/dist/cjs/shared/useDoctypeMeta.native.js.map +1 -1
- package/dist/cjs/shared/useFrappeApp.native.js.map +1 -1
- package/dist/cjs/shared/useRecentVisit.native.js.map +1 -1
- package/dist/cjs/shared/useSessionUserId.native.js.map +1 -1
- package/dist/cjs/shared/useSlugTarget.native.js.map +1 -1
- package/dist/cjs/shared/useUserRoles.native.js.map +1 -1
- package/dist/cjs/shell/BackofficeShell.native.js +1 -1
- package/dist/cjs/shell/BackofficeShell.native.js.map +1 -1
- package/dist/cjs/shell/HomeRedirect.native.js +1 -1
- package/dist/cjs/shell/HomeRedirect.native.js.map +1 -1
- package/dist/cjs/shell/NotFoundScreen.native.js +1 -1
- package/dist/cjs/shell/NotFoundScreen.native.js.map +1 -1
- package/dist/cjs/shell/SlugScreen.native.js +1 -1
- package/dist/cjs/shell/SlugScreen.native.js.map +1 -1
- package/dist/cjs/shell/WorkspaceSidebar.native.js +1 -1
- package/dist/cjs/shell/WorkspaceSidebar.native.js.map +1 -1
- package/dist/cjs/shell/useWorkspaces.native.js.map +1 -1
- package/dist/cjs/shell/workspaceIcons.native.js.map +1 -1
- package/dist/cjs/views/CalendarView.native.js +1 -1
- package/dist/cjs/views/CalendarView.native.js.map +1 -1
- package/dist/cjs/views/DashboardView.native.js +1 -1
- package/dist/cjs/views/DashboardView.native.js.map +1 -1
- package/dist/cjs/views/DoctypeViewScreen.native.js.map +1 -1
- package/dist/cjs/views/ImageView.native.js +1 -1
- package/dist/cjs/views/ImageView.native.js.map +1 -1
- package/dist/cjs/views/KanbanView.native.js +1 -1
- package/dist/cjs/views/KanbanView.native.js.map +1 -1
- package/dist/cjs/views/ReportView.native.js +1 -1
- package/dist/cjs/views/ReportView.native.js.map +1 -1
- package/dist/cjs/views/TreeView.native.js +1 -1
- package/dist/cjs/views/TreeView.native.js.map +1 -1
- package/dist/cjs/views/ViewHeader.native.js +1 -1
- package/dist/cjs/views/ViewHeader.native.js.map +1 -1
- package/dist/cjs/views/ViewStates.native.js +1 -1
- package/dist/cjs/views/ViewStates.native.js.map +1 -1
- package/dist/cjs/views/ViewSwitcherMenu.native.js +1 -1
- package/dist/cjs/views/ViewSwitcherMenu.native.js.map +1 -1
- package/dist/cjs/views/calendar-field-selector.native.js +1 -1
- package/dist/cjs/views/calendar-field-selector.native.js.map +1 -1
- package/dist/cjs/views/connection.native.js.map +1 -1
- package/dist/cjs/views/dashboard-data.native.js.map +1 -1
- package/dist/cjs/views/deskViewConfigs.native.js.map +1 -1
- package/dist/cjs/views/kanban-board-controls.native.js +1 -1
- package/dist/cjs/views/kanban-board-controls.native.js.map +1 -1
- package/dist/cjs/views/kanban-field-picker.native.js +1 -1
- package/dist/cjs/views/kanban-field-picker.native.js.map +1 -1
- package/dist/cjs/views/kanbanBoardOps.native.js.map +1 -1
- package/dist/cjs/views/report-controls.native.js +1 -1
- package/dist/cjs/views/report-controls.native.js.map +1 -1
- package/dist/cjs/views/viewAvailability.native.js.map +1 -1
- package/dist/cjs/views/viewMeta.native.js.map +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/WorkspaceGrid.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceLinkCard.native.js +1 -1
- package/dist/cjs/workspace/WorkspaceLinkCard.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js +1 -1
- package/dist/cjs/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceNumberCard.native.js +1 -1
- package/dist/cjs/workspace/WorkspaceNumberCard.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceQuickList.cjs +1 -1
- package/dist/cjs/workspace/WorkspaceQuickList.native.js +4 -2
- package/dist/cjs/workspace/WorkspaceQuickList.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceRecents.cjs +1 -3
- package/dist/cjs/workspace/WorkspaceRecents.native.js +4 -4
- package/dist/cjs/workspace/WorkspaceRecents.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceScreen.native.js +1 -1
- package/dist/cjs/workspace/WorkspaceScreen.native.js.map +1 -1
- package/dist/cjs/workspace/WorkspaceShortcut.cjs +1 -3
- package/dist/cjs/workspace/WorkspaceShortcut.native.js +5 -4
- package/dist/cjs/workspace/WorkspaceShortcut.native.js.map +1 -1
- package/dist/cjs/workspace/parseContent.native.js.map +1 -1
- package/dist/cjs/workspace/types.native.js.map +1 -1
- package/dist/cjs/workspace/useDashboardChart.native.js.map +1 -1
- package/dist/cjs/workspace/useWorkspaceDoc.native.js.map +1 -1
- package/dist/esm/chrome/BackofficeAwesomebar.native.js.map +1 -1
- package/dist/esm/chrome/CommandPalette.native.js.map +1 -1
- package/dist/esm/chrome/HelpMenu.native.js.map +1 -1
- package/dist/esm/chrome/NotificationsButton.native.js.map +1 -1
- package/dist/esm/chrome/UserMenu.native.js.map +1 -1
- package/dist/esm/chrome/awesomebar-data.native.js.map +1 -1
- package/dist/esm/chrome/command-palette-model.native.js.map +1 -1
- package/dist/esm/chrome/help-about-dialog.native.js.map +1 -1
- package/dist/esm/chrome/help-shortcuts-dialog.native.js.map +1 -1
- package/dist/esm/chrome/notifications-data.native.js.map +1 -1
- package/dist/esm/chrome/notifications-panel.native.js.map +1 -1
- package/dist/esm/chrome/notifications-utils.native.js.map +1 -1
- package/dist/esm/chrome/shortcuts.native.js.map +1 -1
- package/dist/esm/chrome/user-session.native.js.map +1 -1
- package/dist/esm/config/BackofficeProvider.native.js.map +1 -1
- package/dist/esm/config/capabilities.native.js.map +1 -1
- package/dist/esm/config/events.native.js.map +1 -1
- package/dist/esm/config/slots.native.js.map +1 -1
- package/dist/esm/desk/Desk.native.js.map +1 -1
- package/dist/esm/desk/DeskSurface.mjs.map +1 -1
- package/dist/esm/desk/DeskSurface.native.js.map +1 -1
- package/dist/esm/desk/resolveDeskPath.native.js.map +1 -1
- package/dist/esm/desk/scope.native.js.map +1 -1
- package/dist/esm/desk/target.native.js.map +1 -1
- package/dist/esm/form/DocFormScreen.native.js.map +1 -1
- package/dist/esm/form/FormConnections.native.js.map +1 -1
- package/dist/esm/form/FormDialogs.native.js.map +1 -1
- package/dist/esm/form/FormErrorBoundary.native.js.map +1 -1
- package/dist/esm/form/FormHeaderCluster.native.js.map +1 -1
- package/dist/esm/form/FormSidebarPanel.native.js.map +1 -1
- package/dist/esm/form/FormTimeline.native.js.map +1 -1
- package/dist/esm/form/FormToolbar.native.js.map +1 -1
- package/dist/esm/form/connections-data.native.js.map +1 -1
- package/dist/esm/form/createPrefill.mjs +1 -9
- package/dist/esm/form/createPrefill.mjs.map +1 -1
- package/dist/esm/form/createPrefill.native.js +1 -9
- package/dist/esm/form/createPrefill.native.js.map +1 -1
- package/dist/esm/form/dependsOn.native.js.map +1 -1
- package/dist/esm/form/dirtyTracking.mjs +1 -26
- package/dist/esm/form/dirtyTracking.mjs.map +1 -1
- package/dist/esm/form/dirtyTracking.native.js +1 -45
- package/dist/esm/form/dirtyTracking.native.js.map +1 -1
- package/dist/esm/form/docinfo.native.js.map +1 -1
- package/dist/esm/form/fetchFrom.mjs +1 -38
- package/dist/esm/form/fetchFrom.mjs.map +1 -1
- package/dist/esm/form/fetchFrom.native.js +1 -78
- package/dist/esm/form/fetchFrom.native.js.map +1 -1
- package/dist/esm/form/fieldPermissions.mjs +1 -26
- package/dist/esm/form/fieldPermissions.mjs.map +1 -1
- package/dist/esm/form/fieldPermissions.native.js +1 -48
- package/dist/esm/form/fieldPermissions.native.js.map +1 -1
- package/dist/esm/form/formActions.mjs +1 -145
- package/dist/esm/form/formActions.mjs.map +1 -1
- package/dist/esm/form/formActions.native.js +1 -152
- package/dist/esm/form/formActions.native.js.map +1 -1
- package/dist/esm/form/formLayout.mjs +1 -215
- package/dist/esm/form/formLayout.mjs.map +1 -1
- package/dist/esm/form/formLayout.native.js +1 -355
- package/dist/esm/form/formLayout.native.js.map +1 -1
- package/dist/esm/form/platformHooks.native.js.map +1 -1
- package/dist/esm/form/sidebar-attachments.native.js.map +1 -1
- package/dist/esm/form/sidebar-dialogs.native.js.map +1 -1
- package/dist/esm/form/sidebar-people.native.js.map +1 -1
- package/dist/esm/form/sidebar-rpc.native.js.map +1 -1
- package/dist/esm/form/sidebar-utils.native.js.map +1 -1
- package/dist/esm/form/timeline-entries.native.js.map +1 -1
- package/dist/esm/form/timeline-utils.native.js.map +1 -1
- package/dist/esm/form/useFormEngine.mjs +1 -360
- package/dist/esm/form/useFormEngine.mjs.map +1 -1
- package/dist/esm/form/useFormEngine.native.js +1 -446
- package/dist/esm/form/useFormEngine.native.js.map +1 -1
- package/dist/esm/i18n/en.native.js.map +1 -1
- package/dist/esm/i18n/index.native.js.map +1 -1
- package/dist/esm/index.native.js.map +1 -1
- package/dist/esm/list/AddTagsDialog.native.js.map +1 -1
- package/dist/esm/list/AssignToDialog.native.js.map +1 -1
- package/dist/esm/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/esm/list/ListBulkActionsBar.native.js.map +1 -1
- package/dist/esm/list/ListFilterBar.native.js.map +1 -1
- package/dist/esm/list/ListSidebar.native.js.map +1 -1
- package/dist/esm/list/bulk-edit-dialog.native.js.map +1 -1
- package/dist/esm/list/bulk-export.native.js.map +1 -1
- package/dist/esm/list/bulk-submit-cancel.native.js.map +1 -1
- package/dist/esm/list/bulkActions.native.js.map +1 -1
- package/dist/esm/list/filter-chips.native.js.map +1 -1
- package/dist/esm/list/filter-editor.native.js.map +1 -1
- package/dist/esm/list/filter-fields.native.js.map +1 -1
- package/dist/esm/list/filter-saved.native.js.map +1 -1
- package/dist/esm/list/filter-sort.native.js.map +1 -1
- package/dist/esm/list/filter-standard.native.js.map +1 -1
- package/dist/esm/list/filterConversion.native.js.map +1 -1
- package/dist/esm/list/list-tools-sheet.native.js.map +1 -1
- package/dist/esm/list/listColumns.native.js.map +1 -1
- package/dist/esm/list/listFields.native.js.map +1 -1
- package/dist/esm/list/listFormat.native.js.map +1 -1
- package/dist/esm/list/listUrlState.native.js.map +1 -1
- package/dist/esm/list/sidebar-section.native.js.map +1 -1
- package/dist/esm/list/sidebar-stats.native.js.map +1 -1
- package/dist/esm/list/statusColors.native.js.map +1 -1
- package/dist/esm/navigation/navigator.native.js.map +1 -1
- package/dist/esm/navigation/paths.native.js.map +1 -1
- package/dist/esm/oneAdapter/index.native.js.map +1 -1
- package/dist/esm/quickEntry/QuickEntryDialog.native.js.map +1 -1
- package/dist/esm/quickEntry/quickEntryPlan.native.js.map +1 -1
- package/dist/esm/report/DoctypeReportView.native.js.map +1 -1
- package/dist/esm/report/QueryReportScreen.native.js.map +1 -1
- package/dist/esm/report/queryReportColumns.native.js.map +1 -1
- package/dist/esm/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/esm/report/queryReportUrlState.native.js.map +1 -1
- package/dist/esm/report/report-grid.native.js.map +1 -1
- package/dist/esm/report/report-toolbar.native.js.map +1 -1
- package/dist/esm/report/reportShapes.native.js.map +1 -1
- package/dist/esm/report/reportViewModel.native.js.map +1 -1
- package/dist/esm/report/savedReports.native.js.map +1 -1
- package/dist/esm/report/useQueryReport.native.js.map +1 -1
- package/dist/esm/shared/deskLinks.native.js.map +1 -1
- package/dist/esm/shared/listNavContext.native.js.map +1 -1
- package/dist/esm/shared/types.native.js.map +1 -1
- package/dist/esm/shared/useDocinfo.native.js.map +1 -1
- package/dist/esm/shared/useDoctypeMeta.mjs.map +1 -1
- package/dist/esm/shared/useDoctypeMeta.native.js.map +1 -1
- package/dist/esm/shared/useFrappeApp.native.js.map +1 -1
- package/dist/esm/shared/useRecentVisit.native.js.map +1 -1
- package/dist/esm/shared/useSessionUserId.native.js.map +1 -1
- package/dist/esm/shared/useSlugTarget.native.js.map +1 -1
- package/dist/esm/shared/useUserRoles.native.js.map +1 -1
- package/dist/esm/shell/BackofficeShell.native.js.map +1 -1
- package/dist/esm/shell/HomeRedirect.native.js.map +1 -1
- package/dist/esm/shell/NotFoundScreen.native.js.map +1 -1
- package/dist/esm/shell/SlugScreen.native.js.map +1 -1
- package/dist/esm/shell/WorkspaceSidebar.native.js.map +1 -1
- package/dist/esm/shell/useWorkspaces.native.js.map +1 -1
- package/dist/esm/shell/workspaceIcons.native.js.map +1 -1
- package/dist/esm/views/CalendarView.native.js.map +1 -1
- package/dist/esm/views/DashboardView.native.js.map +1 -1
- package/dist/esm/views/DoctypeViewScreen.native.js.map +1 -1
- package/dist/esm/views/ImageView.native.js.map +1 -1
- package/dist/esm/views/KanbanView.native.js.map +1 -1
- package/dist/esm/views/ReportView.native.js.map +1 -1
- package/dist/esm/views/TreeView.native.js.map +1 -1
- package/dist/esm/views/ViewHeader.native.js.map +1 -1
- package/dist/esm/views/ViewStates.native.js.map +1 -1
- package/dist/esm/views/ViewSwitcherMenu.native.js.map +1 -1
- package/dist/esm/views/calendar-field-selector.native.js.map +1 -1
- package/dist/esm/views/connection.native.js.map +1 -1
- package/dist/esm/views/dashboard-data.native.js.map +1 -1
- package/dist/esm/views/deskViewConfigs.native.js.map +1 -1
- package/dist/esm/views/kanban-board-controls.native.js.map +1 -1
- package/dist/esm/views/kanban-field-picker.native.js.map +1 -1
- package/dist/esm/views/kanbanBoardOps.native.js.map +1 -1
- package/dist/esm/views/report-controls.native.js.map +1 -1
- package/dist/esm/views/viewAvailability.native.js.map +1 -1
- package/dist/esm/views/viewMeta.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceChartBlock.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceGrid.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceLinkCard.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceNumberCard.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceQuickList.mjs +2 -2
- package/dist/esm/workspace/WorkspaceQuickList.mjs.map +1 -1
- package/dist/esm/workspace/WorkspaceQuickList.native.js +4 -2
- package/dist/esm/workspace/WorkspaceQuickList.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceRecents.mjs +1 -3
- package/dist/esm/workspace/WorkspaceRecents.mjs.map +1 -1
- package/dist/esm/workspace/WorkspaceRecents.native.js +3 -3
- package/dist/esm/workspace/WorkspaceRecents.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceScreen.native.js.map +1 -1
- package/dist/esm/workspace/WorkspaceShortcut.mjs +1 -3
- package/dist/esm/workspace/WorkspaceShortcut.mjs.map +1 -1
- package/dist/esm/workspace/WorkspaceShortcut.native.js +4 -3
- package/dist/esm/workspace/WorkspaceShortcut.native.js.map +1 -1
- package/dist/esm/workspace/parseContent.native.js.map +1 -1
- package/dist/esm/workspace/types.native.js.map +1 -1
- package/dist/esm/workspace/useDashboardChart.native.js.map +1 -1
- package/dist/esm/workspace/useWorkspaceDoc.native.js.map +1 -1
- package/dist/jsx/desk/DeskSurface.mjs.map +1 -1
- package/dist/jsx/desk/DeskSurface.native.js.map +1 -1
- package/dist/jsx/form/createPrefill.mjs +1 -9
- package/dist/jsx/form/createPrefill.mjs.map +1 -1
- package/dist/jsx/form/createPrefill.native.js +3 -11
- package/dist/jsx/form/createPrefill.native.js.map +1 -1
- package/dist/jsx/form/dirtyTracking.mjs +1 -26
- package/dist/jsx/form/dirtyTracking.mjs.map +1 -1
- package/dist/jsx/form/dirtyTracking.native.js +4 -48
- package/dist/jsx/form/dirtyTracking.native.js.map +1 -1
- package/dist/jsx/form/fetchFrom.mjs +1 -38
- package/dist/jsx/form/fetchFrom.mjs.map +1 -1
- package/dist/jsx/form/fetchFrom.native.js +4 -81
- package/dist/jsx/form/fetchFrom.native.js.map +1 -1
- package/dist/jsx/form/fieldPermissions.mjs +1 -26
- package/dist/jsx/form/fieldPermissions.mjs.map +1 -1
- package/dist/jsx/form/fieldPermissions.native.js +4 -51
- package/dist/jsx/form/fieldPermissions.native.js.map +1 -1
- package/dist/jsx/form/formActions.mjs +1 -145
- package/dist/jsx/form/formActions.mjs.map +1 -1
- package/dist/jsx/form/formActions.native.js +2 -178
- package/dist/jsx/form/formActions.native.js.map +1 -1
- package/dist/jsx/form/formLayout.mjs +1 -215
- package/dist/jsx/form/formLayout.mjs.map +1 -1
- package/dist/jsx/form/formLayout.native.js +5 -359
- package/dist/jsx/form/formLayout.native.js.map +1 -1
- package/dist/jsx/form/useFormEngine.mjs +1 -360
- package/dist/jsx/form/useFormEngine.mjs.map +1 -1
- package/dist/jsx/form/useFormEngine.native.js +2 -447
- package/dist/jsx/form/useFormEngine.native.js.map +1 -1
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/shared/useDoctypeMeta.mjs.map +1 -1
- package/dist/jsx/shared/useDoctypeMeta.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceQuickList.mjs +2 -2
- package/dist/jsx/workspace/WorkspaceQuickList.mjs.map +1 -1
- package/dist/jsx/workspace/WorkspaceQuickList.native.js +3 -1
- package/dist/jsx/workspace/WorkspaceQuickList.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceRecents.mjs +1 -3
- package/dist/jsx/workspace/WorkspaceRecents.mjs.map +1 -1
- package/dist/jsx/workspace/WorkspaceRecents.native.js +3 -3
- package/dist/jsx/workspace/WorkspaceRecents.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceShortcut.mjs +1 -3
- package/dist/jsx/workspace/WorkspaceShortcut.mjs.map +1 -1
- package/dist/jsx/workspace/WorkspaceShortcut.native.js +4 -3
- package/dist/jsx/workspace/WorkspaceShortcut.native.js.map +1 -1
- package/package.json +12 -13
- package/src/desk/DeskSurface.tsx +8 -4
- package/src/form/createPrefill.ts +5 -25
- package/src/form/dirtyTracking.ts +4 -61
- package/src/form/fetchFrom.ts +5 -108
- package/src/form/fieldPermissions.ts +7 -65
- package/src/form/formActions.ts +10 -281
- package/src/form/formEngineShim.spec.ts +122 -0
- package/src/form/formLayout.ts +15 -387
- package/src/form/useFormEngine.ts +5 -493
- package/src/shared/useDoctypeMeta.ts +12 -100
- package/src/workspace/WorkspaceQuickList.tsx +10 -2
- package/src/workspace/WorkspaceRecents.tsx +3 -1
- package/src/workspace/WorkspaceShortcut.tsx +4 -1
- package/types/desk/DeskSurface.d.ts.map +1 -1
- package/types/form/createPrefill.d.ts +5 -16
- package/types/form/createPrefill.d.ts.map +1 -1
- package/types/form/dirtyTracking.d.ts +4 -33
- package/types/form/dirtyTracking.d.ts.map +1 -1
- package/types/form/fetchFrom.d.ts +5 -40
- package/types/form/fetchFrom.d.ts.map +1 -1
- package/types/form/fieldPermissions.d.ts +7 -35
- package/types/form/fieldPermissions.d.ts.map +1 -1
- package/types/form/formActions.d.ts +6 -91
- package/types/form/formActions.d.ts.map +1 -1
- package/types/form/formLayout.d.ts +12 -89
- package/types/form/formLayout.d.ts.map +1 -1
- package/types/form/useFormEngine.d.ts +5 -58
- package/types/form/useFormEngine.d.ts.map +1 -1
- package/types/shared/useDoctypeMeta.d.ts +2 -100
- package/types/shared/useDoctypeMeta.d.ts.map +1 -1
- package/types/workspace/WorkspaceQuickList.d.ts.map +1 -1
- package/types/workspace/WorkspaceRecents.d.ts.map +1 -1
- package/types/workspace/WorkspaceShortcut.d.ts.map +1 -1
- package/src/form/dirtyTracking.spec.ts +0 -91
- package/src/form/fetchFrom.spec.ts +0 -92
- package/src/form/fieldPermissions.spec.ts +0 -61
- package/src/form/formLayout.spec.ts +0 -373
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Card","Separator","Text","XStack","YStack","FrappeList","ensureFocusVisibleRing","useResolvedKnobs","useMemo","useTranslation","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","parseFrappeFilters","jsx","jsxs","QuickList","QUICK_LIST_HEIGHT","WorkspaceQuickList","row","navigator","paths","knobProps","t","filters","quick_list_filter","title","label","document_type","pad","panelPadding","padding","flexGrow","overflow","children","paddingHorizontal","paddingTop","paddingBottom","gap","justifyContent","alignItems","heading","fontWeight","numberOfLines","flexShrink","color","cursor","role","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","outlineOffset","hoverStyle","onPress","navigate","list","height","doctype","fields","pageSize","estimateSize","renderItem","item","paddingVertical","minHeight","borderRadius","backgroundColor","pressStyle","name","form"],"sources":["../../../src/workspace/WorkspaceQuickList.tsx"],"sourcesContent":[null],"mappings":"AAOA,SAASA,IAAA,EAAMC,SAAA,EAAWC,IAAA,EAAMC,MAAA,EAAQC,MAAA,QAAc;AACtD,SAASC,UAAA,QAAkB;AAC3B,
|
|
1
|
+
{"version":3,"names":["Card","Separator","Text","XStack","YStack","FrappeList","ensureFocusVisibleRing","FOCUS_RING_HALO_OFFSET","useResolvedKnobs","useMemo","useTranslation","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","parseFrappeFilters","jsx","jsxs","QuickList","QUICK_LIST_HEIGHT","WorkspaceQuickList","row","navigator","paths","knobProps","t","filters","quick_list_filter","title","label","document_type","pad","panelPadding","padding","flexGrow","overflow","children","paddingHorizontal","paddingTop","paddingBottom","gap","justifyContent","alignItems","heading","fontWeight","numberOfLines","flexShrink","color","cursor","role","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","outlineOffset","hoverStyle","onPress","navigate","list","height","doctype","fields","pageSize","estimateSize","renderItem","item","paddingVertical","minHeight","borderRadius","backgroundColor","pressStyle","name","form"],"sources":["../../../src/workspace/WorkspaceQuickList.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -90,8 +90,10 @@ function WorkspaceQuickList(param) {
|
|
|
90
90
|
focusStyle: {
|
|
91
91
|
outlineWidth: 0
|
|
92
92
|
},
|
|
93
|
+
// LC-71 §4 halo: inline text link ("View All" sits on the header
|
|
94
|
+
// row beside the section title, not on its own ground).
|
|
93
95
|
focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)({
|
|
94
|
-
outlineOffset:
|
|
96
|
+
outlineOffset: import_theme.FOCUS_RING_HALO_OFFSET
|
|
95
97
|
}),
|
|
96
98
|
hoverStyle: {
|
|
97
99
|
color: "$color12"
|
|
@@ -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","WorkspaceQuickList_exports","WorkspaceQuickList","module","exports","import_jsx_runtime","require","import_components","import_frappe_ui","import_theme","import_react","import_react_i18next","import_BackofficeProvider","import_i18n","import_parseContent","QuickList","FrappeList","QUICK_LIST_HEIGHT","param","row","navigator","useBackofficeNavigator","paths","useBackofficePaths","knobProps","useResolvedKnobs","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","filters","useMemo","parseFrappeFilters","quick_list_filter","title","label","document_type","pad","panelPadding","padding","jsxs","Card","flexGrow","overflow","children","YStack","paddingHorizontal","paddingTop","paddingBottom","gap","XStack","justifyContent","alignItems","jsx","Text","heading","fontWeight","numberOfLines","flexShrink","color","cursor","role","tabIndex","outlineWidth","focusStyle"],"sources":["../../../src/workspace/WorkspaceQuickList.tsx"],"sourcesContent":[null],"mappings":"AAOA,YAAS;;AACT,IAAAA,SAAS,GAAAC,MAAA,CAAAC,cAAkB;AAC3B,IAAAC,
|
|
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","WorkspaceQuickList_exports","WorkspaceQuickList","module","exports","import_jsx_runtime","require","import_components","import_frappe_ui","import_theme","import_react","import_react_i18next","import_BackofficeProvider","import_i18n","import_parseContent","QuickList","FrappeList","QUICK_LIST_HEIGHT","param","row","navigator","useBackofficeNavigator","paths","useBackofficePaths","knobProps","useResolvedKnobs","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","filters","useMemo","parseFrappeFilters","quick_list_filter","title","label","document_type","pad","panelPadding","padding","jsxs","Card","flexGrow","overflow","children","YStack","paddingHorizontal","paddingTop","paddingBottom","gap","XStack","justifyContent","alignItems","jsx","Text","heading","fontWeight","numberOfLines","flexShrink","color","cursor","role","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","ensureFocusVisibleRing","outlineOffset","FOCUS_RING_HALO_OFFSET"],"sources":["../../../src/workspace/WorkspaceQuickList.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -72,9 +72,7 @@ function WorkspaceRecents() {
|
|
|
72
72
|
focusStyle: {
|
|
73
73
|
outlineWidth: 0
|
|
74
74
|
},
|
|
75
|
-
focusVisibleStyle: ensureFocusVisibleRing(
|
|
76
|
-
outlineOffset: 2
|
|
77
|
-
}),
|
|
75
|
+
focusVisibleStyle: ensureFocusVisibleRing(),
|
|
78
76
|
children: /* @__PURE__ */jsxs(XStack, {
|
|
79
77
|
paddingHorizontal: "$3",
|
|
80
78
|
minHeight: 44,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ClockCounterClockwiseIcon","Card","PageSection","Text","XStack","useTheme","ensureFocusVisibleRing","useResolvedKnobs","useCallback","useEffect","useRef","useState","useTranslation","readRecentItems","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","jsx","jsxs","MAX_RECENTS","WorkspaceRecents","navigator","paths","knobProps","iconSize","Number","controlIcon","width","t","theme","iconColor","color11","val","recents","setRecents","mountedRef","current","base","refresh","then","stored","filter","item","path","startsWith","slice","window","addEventListener","onFocus","removeEventListener","length","title","divider","children","flexWrap","gap","map","padding","onPress","navigate","cursor","hoverStyle","borderColor","pressStyle","scale","role","label","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","
|
|
1
|
+
{"version":3,"names":["ClockCounterClockwiseIcon","Card","PageSection","Text","XStack","useTheme","ensureFocusVisibleRing","useResolvedKnobs","useCallback","useEffect","useRef","useState","useTranslation","readRecentItems","useBackofficeNavigator","useBackofficePaths","BACKOFFICE_I18N_NAMESPACE","jsx","jsxs","MAX_RECENTS","WorkspaceRecents","navigator","paths","knobProps","iconSize","Number","controlIcon","width","t","theme","iconColor","color11","val","recents","setRecents","mountedRef","current","base","refresh","then","stored","filter","item","path","startsWith","slice","window","addEventListener","onFocus","removeEventListener","length","title","divider","children","flexWrap","gap","map","padding","onPress","navigate","cursor","hoverStyle","borderColor","pressStyle","scale","role","label","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","paddingHorizontal","minHeight","alignItems","size","color","fontWeight","numberOfLines","flexShrink"],"sources":["../../../src/workspace/WorkspaceRecents.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -113,9 +113,9 @@ function WorkspaceRecents() {
|
|
|
113
113
|
focusStyle: {
|
|
114
114
|
outlineWidth: 0
|
|
115
115
|
},
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
116
|
+
// Default ring (offset 0): a recents card is a standalone
|
|
117
|
+
// rectangle on the page ground, so no LC-71 §4 carve-out (MPO-92).
|
|
118
|
+
focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)(),
|
|
119
119
|
children: /* @__PURE__ */(0, import_jsx_runtime.jsxs)(import_components.XStack, {
|
|
120
120
|
paddingHorizontal: "$3",
|
|
121
121
|
minHeight: 44,
|
|
@@ -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","WorkspaceRecents_exports","WorkspaceRecents","module","exports","import_jsx_runtime","require","import_react","import_components","import_theme","import_react2","import_react_i18next","import_awesomebar_data","import_BackofficeProvider","import_i18n","MAX_RECENTS","_knobProps_controlIcon","_theme_color11","navigator","useBackofficeNavigator","paths","useBackofficePaths","knobProps","useResolvedKnobs","iconSize","Number","controlIcon","width","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","theme","useTheme","iconColor","color11","val","recents","setRecents","useState","mountedRef","useRef","useEffect","current","base","refresh","useCallback","readRecentItems","then","stored","filter","item","path","startsWith","slice","window","addEventListener","onFocus","onFocus2"],"sources":["../../../src/workspace/WorkspaceRecents.tsx"],"sourcesContent":[null],"mappings":"AAaA,YAAS;;AACT,IAAAA,SAAS,GAAMC,MAAA,CAAAC,cAAmB;AAClC,IAAAC,gBAAS,GAAAF,MAAA,CAAAG,wBAAwB;AACjC,IAAAC,iBAAS,GAAaJ,MAAA,CAAAK,mBAAmB;AACzC,IAAAC,YAAS,GAAAN,MAAA,CAAAO,SAAsB,CAAAC,cAAA;AAC/B,IAAAC,QAAS,GAAAA,CAAAC,MAAA,EAAAC,GAAA,KAAwC;EACjD,SAASC,IAAA,IAAAD,GAAA,EACTZ,SAAS,CAAAW,MAAA,EAAAE,IAAA;IAAAC,GAAA,EAAAF,GAAA,CAAAC,IAAiC;IAAAE,UAAA;EAAA;
|
|
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","WorkspaceRecents_exports","WorkspaceRecents","module","exports","import_jsx_runtime","require","import_react","import_components","import_theme","import_react2","import_react_i18next","import_awesomebar_data","import_BackofficeProvider","import_i18n","MAX_RECENTS","_knobProps_controlIcon","_theme_color11","navigator","useBackofficeNavigator","paths","useBackofficePaths","knobProps","useResolvedKnobs","iconSize","Number","controlIcon","width","t","useTranslation","BACKOFFICE_I18N_NAMESPACE","theme","useTheme","iconColor","color11","val","recents","setRecents","useState","mountedRef","useRef","useEffect","current","base","refresh","useCallback","readRecentItems","then","stored","filter","item","path","startsWith","slice","window","addEventListener","onFocus","onFocus2"],"sources":["../../../src/workspace/WorkspaceRecents.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -129,9 +129,7 @@ function WorkspaceShortcut({
|
|
|
129
129
|
focusStyle: {
|
|
130
130
|
outlineWidth: 0
|
|
131
131
|
},
|
|
132
|
-
focusVisibleStyle: ensureFocusVisibleRing(
|
|
133
|
-
outlineOffset: 2
|
|
134
|
-
}),
|
|
132
|
+
focusVisibleStyle: ensureFocusVisibleRing(),
|
|
135
133
|
children: /* @__PURE__ */jsxs(XStack, {
|
|
136
134
|
paddingHorizontal: "$3",
|
|
137
135
|
minHeight: 44,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["ArrowSquareOutIcon","BrowserIcon","ChartBarIcon","GaugeIcon","ListBulletsIcon","SquaresFourIcon","Card","Chip","Skeleton","Text","XStack","useTheme","useFrappeAggregate","useFrappeConfig","openUrl","ensureFocusVisibleRing","useResolvedKnobs","useEffect","useMemo","useTranslation","useBackofficeCapabilities","useBackofficeNavigator","useBackofficePaths","useIsDoctypeAllowed","BACKOFFICE_I18N_NAMESPACE","createBackofficePaths","useSingleDoctypes","parseFrappeFilters","jsx","jsxs","defaultPaths","uncountableDoctypes","Set","resolveShortcutTarget","row","paths","target","link_to","url","prefix","base","type","path","list","externalUrl","disabled","TYPE_ICONS","DocType","Report","Page","Dashboard","URL","WorkspaceShortcut","onPress","navigator","config","knobProps","iconSize","Number","controlIcon","width","t","theme","views","isDoctypeAllowed","iconColor","color11","val","isDoctype","filters","stats_filter","singleDoctypes","connection","baseURL","fixtures","socketPort","siteName","socketBaseURL","auth","syncOptions","hiddenByScope","hiddenByViews","enabled","isCountable","has","value","count","isLoading","countLoading","error","countError","doctype","add","handlePress","navigate","countLabel","format","replace","String","TypeIcon","padding","opacity","cursor","hoverStyle","borderColor","pressStyle","scale","role","label","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","
|
|
1
|
+
{"version":3,"names":["ArrowSquareOutIcon","BrowserIcon","ChartBarIcon","GaugeIcon","ListBulletsIcon","SquaresFourIcon","Card","Chip","Skeleton","Text","XStack","useTheme","useFrappeAggregate","useFrappeConfig","openUrl","ensureFocusVisibleRing","useResolvedKnobs","useEffect","useMemo","useTranslation","useBackofficeCapabilities","useBackofficeNavigator","useBackofficePaths","useIsDoctypeAllowed","BACKOFFICE_I18N_NAMESPACE","createBackofficePaths","useSingleDoctypes","parseFrappeFilters","jsx","jsxs","defaultPaths","uncountableDoctypes","Set","resolveShortcutTarget","row","paths","target","link_to","url","prefix","base","type","path","list","externalUrl","disabled","TYPE_ICONS","DocType","Report","Page","Dashboard","URL","WorkspaceShortcut","onPress","navigator","config","knobProps","iconSize","Number","controlIcon","width","t","theme","views","isDoctypeAllowed","iconColor","color11","val","isDoctype","filters","stats_filter","singleDoctypes","connection","baseURL","fixtures","socketPort","siteName","socketBaseURL","auth","syncOptions","hiddenByScope","hiddenByViews","enabled","isCountable","has","value","count","isLoading","countLoading","error","countError","doctype","add","handlePress","navigate","countLabel","format","replace","String","TypeIcon","padding","opacity","cursor","hoverStyle","borderColor","pressStyle","scale","role","label","tabIndex","outlineWidth","focusStyle","focusVisibleStyle","children","paddingHorizontal","minHeight","alignItems","gap","size","color","fontWeight","numberOfLines","flexShrink","variant","height"],"sources":["../../../src/workspace/WorkspaceShortcut.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -169,9 +169,10 @@ function WorkspaceShortcut(param) {
|
|
|
169
169
|
focusStyle: {
|
|
170
170
|
outlineWidth: 0
|
|
171
171
|
},
|
|
172
|
-
|
|
173
|
-
|
|
174
|
-
|
|
172
|
+
// Default ring (offset 0): a shortcut tile is a standalone rectangle on
|
|
173
|
+
// the page ground, not a thumb or an inline link, so it takes no LC-71 §4
|
|
174
|
+
// carve-out (MPO-92).
|
|
175
|
+
focusVisibleStyle: (0, import_theme.ensureFocusVisibleRing)(),
|
|
175
176
|
children: (
|
|
176
177
|
/* Compact chip anatomy: icon + label + count, ≥44px press target
|
|
177
178
|
(DG-LAY-04), self-sized so the band wraps instead of stretching. */
|
|
@@ -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"],"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;AACA,IAAAC,WAAS,GAAAA,CAAAC,EAAA,EAAAC,IAAA,EAAoBC,MAAA,EAAAC,IAAA;EAC7B,IAAAF,IAAS,WAAAA,IAAe,wBAAAA,IAAA;IACxB,KAAS,IAAAG,GAAA,IAAAhB,iBAAwB,CAAAa,IAAA,GACjC,IAAS,CAAAX,YAAW,CAAAe,IAAA,CAAAL,EAAA,EAAAI,GAAe,KAAAA,GAAA,KAAAF,MAAA,EACnCnB,SAAS,CAAAiB,EAAA,EAAAI,GAAA;MAAAP,GAAsB,EAAAA,CAAA,KAAAI,IAAA,CAAAG,GAAA;MAAAN,UAAA,IAAAK,IAAA,GAAAjB,gBAAA,CAAAe,IAAA,EAAAG,GAAA,MAAAD,IAAA,CAAAL;IAAA;EAC/B;EACE,OAAAE,EAAA;AAAA;AACA,IACAM,YAAA,GAAAC,GAAA,IAAAR,WAAA,CAAAhB,SAAA;EAAAyB,KAAA;AAAA,IAAAD,GAAA;AAAA,IACAE,yBAAA;AAAAhB,QACK,CAAAgB,yBAAA;EACPC,iBAAS,EAAAA,CAAA,KAAAA,iBAAiC;EAC1CC,qBAAS,EAAAA,CAAA,KAAAA;AACT;AACAC,MAAA,CAAAC,OAAS,GAAAP,YAAA,CAAAG,yBAA0B;
|
|
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"],"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.7.0",
|
|
4
4
|
"description": "Embeddable Frappe desk recreation (backoffice) for the multiplatform.one stack",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"backoffice",
|
|
@@ -72,20 +72,19 @@
|
|
|
72
72
|
"dependencies": {
|
|
73
73
|
"@phosphor-icons/react": "^2.1.10",
|
|
74
74
|
"tamagui": "2.7.6",
|
|
75
|
-
"@multiplatform.one/components": "7.
|
|
76
|
-
"@multiplatform.one/forms": "7.
|
|
77
|
-
"@multiplatform.one/frappe": "7.
|
|
78
|
-
"@multiplatform.one/frappe-ui": "7.
|
|
79
|
-
"@multiplatform.one/i18n": "7.
|
|
80
|
-
"@multiplatform.one/platform": "7.
|
|
81
|
-
"@multiplatform.one/store": "7.
|
|
82
|
-
"@multiplatform.one/table": "7.
|
|
83
|
-
"@multiplatform.one/theme": "7.
|
|
75
|
+
"@multiplatform.one/components": "7.7.0",
|
|
76
|
+
"@multiplatform.one/forms": "7.7.0",
|
|
77
|
+
"@multiplatform.one/frappe": "7.7.0",
|
|
78
|
+
"@multiplatform.one/frappe-ui": "7.7.0",
|
|
79
|
+
"@multiplatform.one/i18n": "7.7.0",
|
|
80
|
+
"@multiplatform.one/platform": "7.7.0",
|
|
81
|
+
"@multiplatform.one/store": "7.7.0",
|
|
82
|
+
"@multiplatform.one/table": "7.7.0",
|
|
83
|
+
"@multiplatform.one/theme": "7.7.0"
|
|
84
84
|
},
|
|
85
85
|
"devDependencies": {
|
|
86
86
|
"@tamagui/build": "2.7.6",
|
|
87
87
|
"@testing-library/react": "^16.3.2",
|
|
88
|
-
"@types/react": "~19.2.14",
|
|
89
88
|
"@types/react-dom": "^19.2.3",
|
|
90
89
|
"@vitejs/plugin-react": "^6.0.1",
|
|
91
90
|
"@vitest/coverage-v8": "^4.1.5",
|
|
@@ -95,8 +94,8 @@
|
|
|
95
94
|
"react-dom": "19.2.5",
|
|
96
95
|
"react-i18next": "^16.6.6",
|
|
97
96
|
"vitest": "^4.1.5",
|
|
98
|
-
"@multiplatform.one/config": "7.
|
|
99
|
-
"@multiplatform.one/test-utils": "7.
|
|
97
|
+
"@multiplatform.one/config": "7.7.0",
|
|
98
|
+
"@multiplatform.one/test-utils": "7.7.0"
|
|
100
99
|
},
|
|
101
100
|
"peerDependencies": {
|
|
102
101
|
"i18next": "^25.0.0",
|
package/src/desk/DeskSurface.tsx
CHANGED
|
@@ -110,10 +110,14 @@ export function DeskSurface({
|
|
|
110
110
|
<NewDocSurface doctype={target.doctype} defaults={target.defaults} readOnly={readOnly} />
|
|
111
111
|
);
|
|
112
112
|
case "form":
|
|
113
|
-
// MPO-15: DocFormScreen is the strong form today.
|
|
114
|
-
//
|
|
115
|
-
//
|
|
116
|
-
//
|
|
113
|
+
// MPO-15: DocFormScreen is the strong form today. The engine itself
|
|
114
|
+
// (formLayout + useFormEngine) now lives in frappe-ui, but FrappeForm
|
|
115
|
+
// still builds its schema from the LOSSY normalized meta
|
|
116
|
+
// (frappe/src/doctype.ts parseRawField drops permlevel, fetch_from,
|
|
117
|
+
// set_only_once and the *_depends_on keys), so it cannot render those
|
|
118
|
+
// semantics yet. When that meta model collapses (gap GL-3), the
|
|
119
|
+
// exported FrappeForm becomes this branch's renderer — swap here,
|
|
120
|
+
// nowhere else.
|
|
117
121
|
return <DocFormScreen doctype={target.doctype} name={target.name} readOnly={readOnly} />;
|
|
118
122
|
case "report":
|
|
119
123
|
return <QueryReportScreen reportName={target.reportName} />;
|
|
@@ -1,28 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* -
|
|
6
|
-
* copied values here (in-memory only — a refresh honestly falls back to
|
|
7
|
-
* a blank form; no URL-size limits for large docs).
|
|
8
|
-
* - NewDocRouteScreen stashes parsed `?d=` URL defaults (kanban column "+",
|
|
9
|
-
* calendar day click, connections "+") before rendering the form — those
|
|
10
|
-
* survive refresh because the URL re-stashes them.
|
|
11
|
-
*
|
|
12
|
-
* The create-mode form (useFormEngine seeding) consumes and clears the
|
|
13
|
-
* stash on mount, merging it over meta defaults. Last stash per doctype
|
|
14
|
-
* wins, so a `?d=` navigation cannot double-apply with a stale
|
|
15
|
-
* Duplicate/Amend hand-off.
|
|
2
|
+
* Create-mode prefill handoff — moved to
|
|
3
|
+
* `@multiplatform.one/frappe-ui/src/formEngine/createPrefill` (MPO-15).
|
|
4
|
+
* Re-exported here so existing imports keep resolving (the GNOME shim
|
|
5
|
+
* deep-imports this path).
|
|
16
6
|
*/
|
|
17
7
|
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
export function setCreatePrefill(doctype: string, values: Record<string, unknown>): void {
|
|
21
|
-
prefills.set(doctype, values);
|
|
22
|
-
}
|
|
23
|
-
|
|
24
|
-
export function takeCreatePrefill(doctype: string): Record<string, unknown> | undefined {
|
|
25
|
-
const values = prefills.get(doctype);
|
|
26
|
-
if (values) prefills.delete(doctype);
|
|
27
|
-
return values;
|
|
28
|
-
}
|
|
8
|
+
export { setCreatePrefill, takeCreatePrefill } from "@multiplatform.one/frappe-ui";
|
|
@@ -1,64 +1,7 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Dirty
|
|
3
|
-
*
|
|
4
|
-
*
|
|
5
|
-
* A strict `!==` diff falsely armed Save on untouched documents whenever a
|
|
6
|
-
* field's *representation* of a value differed from the wire format (mount
|
|
7
|
-
* emitters have been fixed at the field level — forms contract: initialization
|
|
8
|
-
* must not emit change events — but the engine stays defensive).
|
|
2
|
+
* Dirty-field diffing — moved to
|
|
3
|
+
* `@multiplatform.one/frappe-ui/src/formEngine/dirtyTracking` (MPO-15).
|
|
4
|
+
* Re-exported here so existing imports keep resolving.
|
|
9
5
|
*/
|
|
10
6
|
|
|
11
|
-
export
|
|
12
|
-
if (value === undefined || value === null) return true;
|
|
13
|
-
if (typeof value === "string" && value.trim() === "") return true;
|
|
14
|
-
if (Array.isArray(value) && value.length === 0) return true;
|
|
15
|
-
return false;
|
|
16
|
-
}
|
|
17
|
-
|
|
18
|
-
/**
|
|
19
|
-
* Init-aware value equality. Two representation classes are folded:
|
|
20
|
-
*
|
|
21
|
-
* - empty: null / undefined / "" / [] are one empty state (a field
|
|
22
|
-
* normalizing null → "" is not an edit)
|
|
23
|
-
* - boolean: Check wires 0/1 but a control may emit true/false
|
|
24
|
-
*
|
|
25
|
-
* Everything else stays strict equality — deliberately shallow and honest
|
|
26
|
-
* (no deep equality): desk parity means an edit reverted to a value that is
|
|
27
|
-
* merely *equivalent* (not identical) may still read dirty, while reverting
|
|
28
|
-
* to the exact original value reads clean.
|
|
29
|
-
*/
|
|
30
|
-
export function isSameValue(a: unknown, b: unknown): boolean {
|
|
31
|
-
if (a === b) return true;
|
|
32
|
-
if (isEmptyValue(a) && isEmptyValue(b)) return true;
|
|
33
|
-
if (typeof a === "boolean" || typeof b === "boolean") {
|
|
34
|
-
const an = a === true ? 1 : a === false ? 0 : a;
|
|
35
|
-
const bn = b === true ? 1 : b === false ? 0 : b;
|
|
36
|
-
return an === bn;
|
|
37
|
-
}
|
|
38
|
-
return false;
|
|
39
|
-
}
|
|
40
|
-
|
|
41
|
-
/**
|
|
42
|
-
* Names of fields whose local value differs from the baseline.
|
|
43
|
-
*
|
|
44
|
-
* - Edit mode (baseline defined): normalization-insensitive diff via
|
|
45
|
-
* `isSameValue` — an untouched doc reads pristine even if a field
|
|
46
|
-
* re-represented its value during initialization.
|
|
47
|
-
* - Create mode (no baseline): any non-empty value counts, defaults included —
|
|
48
|
-
* desk parity, a new doc shows "Not Saved".
|
|
49
|
-
*
|
|
50
|
-
* `doctype` / `name` are bookkeeping, never dirty.
|
|
51
|
-
*/
|
|
52
|
-
export function computeDirtyFields(
|
|
53
|
-
localDoc: Record<string, unknown>,
|
|
54
|
-
baseline: Record<string, unknown> | undefined,
|
|
55
|
-
): string[] {
|
|
56
|
-
const dirty: string[] = [];
|
|
57
|
-
for (const key of Object.keys(localDoc)) {
|
|
58
|
-
if (key === "doctype" || key === "name") continue;
|
|
59
|
-
if (baseline ? !isSameValue(localDoc[key], baseline[key]) : !isEmptyValue(localDoc[key])) {
|
|
60
|
-
dirty.push(key);
|
|
61
|
-
}
|
|
62
|
-
}
|
|
63
|
-
return dirty;
|
|
64
|
-
}
|
|
7
|
+
export { computeDirtyFields, isEmptyValue, isSameValue } from "@multiplatform.one/frappe-ui";
|
package/src/form/fetchFrom.ts
CHANGED
|
@@ -1,111 +1,8 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* fetch_from
|
|
3
|
-
* frappe/
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
* - A field participates when `fetch_from` is "<link_field>.<source_field>"
|
|
7
|
-
* AND (its fieldtype is in the scalar set desk registers, or it is
|
|
8
|
-
* read_only / is_virtual).
|
|
9
|
-
* - When the link field changes to a value, desk calls
|
|
10
|
-
* `frappe.client.validate_link` with the source columns and writes the
|
|
11
|
-
* returned values onto the targets; clearing the link clears the targets.
|
|
12
|
-
* - `fetch_if_empty` targets keep a non-empty existing value (server
|
|
13
|
-
* semantics; desk leaves such fields editable — see
|
|
14
|
-
* `read_only_because_of_fetch_from`, base_input.js:56-66).
|
|
15
|
-
*
|
|
16
|
-
* The server remains authoritative: this is a preview so the user sees the
|
|
17
|
-
* fetched values before save.
|
|
2
|
+
* `fetch_from` map + lock helpers — moved to
|
|
3
|
+
* `@multiplatform.one/frappe-ui/src/formEngine/fetchFrom` (MPO-15).
|
|
4
|
+
* Re-exported here so existing imports keep resolving.
|
|
18
5
|
*/
|
|
19
6
|
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
/** Fieldtypes desk registers for client-side fetch (script_manager.js:196-215). */
|
|
23
|
-
const FETCHABLE_FIELDTYPES = new Set([
|
|
24
|
-
"Data",
|
|
25
|
-
"Read Only",
|
|
26
|
-
"Text",
|
|
27
|
-
"Small Text",
|
|
28
|
-
"Currency",
|
|
29
|
-
"Check",
|
|
30
|
-
"Text Editor",
|
|
31
|
-
"Attach Image",
|
|
32
|
-
"Code",
|
|
33
|
-
"Link",
|
|
34
|
-
"Float",
|
|
35
|
-
"Int",
|
|
36
|
-
"Date",
|
|
37
|
-
"Datetime",
|
|
38
|
-
"Select",
|
|
39
|
-
"Duration",
|
|
40
|
-
"Time",
|
|
41
|
-
]);
|
|
42
|
-
|
|
43
|
-
export interface FetchRule {
|
|
44
|
-
/** Field to populate. */
|
|
45
|
-
target: string;
|
|
46
|
-
/** Column on the linked doc to read. */
|
|
47
|
-
source: string;
|
|
48
|
-
/** Only fill when the target is currently empty; never lock the field. */
|
|
49
|
-
fetchIfEmpty: boolean;
|
|
50
|
-
}
|
|
51
|
-
|
|
52
|
-
/** Map of link fieldname → fetch rules hanging off that link. */
|
|
53
|
-
export type FetchMap = Map<string, FetchRule[]>;
|
|
54
|
-
|
|
55
|
-
export function buildFetchMap(fields: DocFieldMeta[]): FetchMap {
|
|
56
|
-
const map: FetchMap = new Map();
|
|
57
|
-
for (const field of fields) {
|
|
58
|
-
const fetchFrom = typeof field.fetch_from === "string" ? field.fetch_from : "";
|
|
59
|
-
if (!fetchFrom || !fetchFrom.includes(".")) continue;
|
|
60
|
-
const eligible =
|
|
61
|
-
FETCHABLE_FIELDTYPES.has(field.fieldtype) ||
|
|
62
|
-
!!field.read_only ||
|
|
63
|
-
!!(field as { is_virtual?: 0 | 1 }).is_virtual;
|
|
64
|
-
if (!eligible) continue;
|
|
65
|
-
const [linkField, ...rest] = fetchFrom.split(".");
|
|
66
|
-
const source = rest.join(".");
|
|
67
|
-
if (!linkField || !source) continue;
|
|
68
|
-
const rules = map.get(linkField) ?? [];
|
|
69
|
-
rules.push({
|
|
70
|
-
target: field.fieldname,
|
|
71
|
-
source,
|
|
72
|
-
fetchIfEmpty: !!field.fetch_if_empty,
|
|
73
|
-
});
|
|
74
|
-
map.set(linkField, rules);
|
|
75
|
-
}
|
|
76
|
-
return map;
|
|
77
|
-
}
|
|
78
|
-
|
|
79
|
-
function isEmpty(value: unknown): boolean {
|
|
80
|
-
return value === undefined || value === null || value === "";
|
|
81
|
-
}
|
|
82
|
-
|
|
83
|
-
/**
|
|
84
|
-
* Values to patch onto the doc after the linked doc's columns arrive.
|
|
85
|
-
* `fetched` is empty when the link was cleared — desk then blanks the
|
|
86
|
-
* targets; `fetch_if_empty` targets holding a value are left alone in both
|
|
87
|
-
* directions (they belong to the user until the server reconciles).
|
|
88
|
-
*/
|
|
89
|
-
export function applyFetchedValues(
|
|
90
|
-
rules: FetchRule[],
|
|
91
|
-
fetched: Record<string, unknown>,
|
|
92
|
-
currentDoc: Record<string, unknown>,
|
|
93
|
-
): Record<string, unknown> {
|
|
94
|
-
const patch: Record<string, unknown> = {};
|
|
95
|
-
for (const rule of rules) {
|
|
96
|
-
if (rule.fetchIfEmpty && !isEmpty(currentDoc[rule.target])) continue;
|
|
97
|
-
patch[rule.target] = fetched[rule.source] ?? "";
|
|
98
|
-
}
|
|
99
|
-
return patch;
|
|
100
|
-
}
|
|
101
|
-
|
|
102
|
-
/**
|
|
103
|
-
* Desk's `read_only_because_of_fetch_from`: a fetch target without
|
|
104
|
-
* `fetch_if_empty` renders read-only while its source link holds a value.
|
|
105
|
-
*/
|
|
106
|
-
export function isFetchLocked(field: DocFieldMeta, doc: Record<string, unknown>): boolean {
|
|
107
|
-
const fetchFrom = typeof field.fetch_from === "string" ? field.fetch_from : "";
|
|
108
|
-
if (!fetchFrom || !fetchFrom.includes(".") || field.fetch_if_empty) return false;
|
|
109
|
-
const linkField = fetchFrom.split(".")[0];
|
|
110
|
-
return !isEmpty(doc[linkField]);
|
|
111
|
-
}
|
|
7
|
+
export { applyFetchedValues, buildFetchMap, isFetchLocked } from "@multiplatform.one/frappe-ui";
|
|
8
|
+
export type { FetchMap, FetchRule } from "@multiplatform.one/frappe-ui";
|
|
@@ -1,68 +1,10 @@
|
|
|
1
1
|
/**
|
|
2
|
-
*
|
|
3
|
-
* frappe/
|
|
4
|
-
*
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* holds. A field at permlevel L then resolves to:
|
|
8
|
-
* - no read at L → hidden ("None")
|
|
9
|
-
* - read, no write → read-only ("Read")
|
|
10
|
-
* - write → editable ("Write", subject to the other rules)
|
|
11
|
-
*
|
|
12
|
-
* Levels that appear on fields but have no granting rows resolve to
|
|
13
|
-
* {read: false} — desk hides those fields (gap-filled `{}` in perm.js:153).
|
|
14
|
-
* When the caller has no role list (fixtures, roles RPC unavailable) the
|
|
15
|
-
* matrix is undefined and formLayout falls back to the conservative
|
|
16
|
-
* "permlevel > 0 → read-only" rule (never hides, never unlocks).
|
|
2
|
+
* Permlevel matrix helpers — moved to
|
|
3
|
+
* `@multiplatform.one/frappe-ui/src/formEngine/fieldPermissions` (MPO-15),
|
|
4
|
+
* because formLayout consumes them and formLayout now lives there.
|
|
5
|
+
* Re-exported here so existing imports keep resolving (the GNOME shim
|
|
6
|
+
* deep-imports this path).
|
|
17
7
|
*/
|
|
18
8
|
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
export interface LevelPerm {
|
|
22
|
-
read: boolean;
|
|
23
|
-
write: boolean;
|
|
24
|
-
}
|
|
25
|
-
|
|
26
|
-
/** Sparse array indexed by permlevel; missing entries mean "no rights". */
|
|
27
|
-
export type PermLevelMatrix = LevelPerm[];
|
|
28
|
-
|
|
29
|
-
export function buildPermLevelMatrix(
|
|
30
|
-
permissions: DocPermissionRule[] | undefined,
|
|
31
|
-
userRoles: string[] | undefined,
|
|
32
|
-
): PermLevelMatrix | undefined {
|
|
33
|
-
if (!userRoles || !permissions || permissions.length === 0) return undefined;
|
|
34
|
-
const roles = new Set(userRoles);
|
|
35
|
-
const matrix: PermLevelMatrix = [];
|
|
36
|
-
for (const rule of permissions) {
|
|
37
|
-
if (!rule.role || !roles.has(rule.role)) continue;
|
|
38
|
-
const level = Number(rule.permlevel ?? 0) || 0;
|
|
39
|
-
const current = (matrix[level] ??= { read: false, write: false });
|
|
40
|
-
// if_owner rows are unioned in like desk's get_role_permissions — the
|
|
41
|
-
// owner check itself is enforced server-side (and via docinfo at level 0).
|
|
42
|
-
if (rule.read) current.read = true;
|
|
43
|
-
if (rule.write) current.write = true;
|
|
44
|
-
}
|
|
45
|
-
return matrix;
|
|
46
|
-
}
|
|
47
|
-
|
|
48
|
-
/**
|
|
49
|
-
* Read access at a permlevel. Level 0 is implied by having the doc at all
|
|
50
|
-
* (docinfo/doc-level perms govern it — including share/if_owner grants the
|
|
51
|
-
* role matrix can't see), so only higher levels consult the matrix.
|
|
52
|
-
*/
|
|
53
|
-
export function canReadLevel(matrix: PermLevelMatrix | undefined, permlevel: number): boolean {
|
|
54
|
-
if (!permlevel) return true;
|
|
55
|
-
if (!matrix) return true; // caller falls back to the coarse read-only rule
|
|
56
|
-
return !!matrix[permlevel]?.read;
|
|
57
|
-
}
|
|
58
|
-
|
|
59
|
-
/**
|
|
60
|
-
* Write access at a permlevel. Level 0 defers to the doc-level write flag
|
|
61
|
-
* (formReadOnly); higher levels require a granting role row — without a
|
|
62
|
-
* matrix the coarse fallback keeps them read-only (desk-safe direction).
|
|
63
|
-
*/
|
|
64
|
-
export function canWriteLevel(matrix: PermLevelMatrix | undefined, permlevel: number): boolean {
|
|
65
|
-
if (!permlevel) return true;
|
|
66
|
-
if (!matrix) return false;
|
|
67
|
-
return !!matrix[permlevel]?.write;
|
|
68
|
-
}
|
|
9
|
+
export { buildPermLevelMatrix, canReadLevel, canWriteLevel } from "@multiplatform.one/frappe-ui";
|
|
10
|
+
export type { LevelPerm, PermLevelMatrix } from "@multiplatform.one/frappe-ui";
|