@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,448 +1,3 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import { useCallback, useEffect, useMemo, useRef, useState } from "react";
|
|
3
|
-
import { cancelDoc, createHttpClient, getLoggedUser, insertDoc, submitDoc, validateLink } from "./formActions.native.js";
|
|
4
|
-
import { buildCreateDefaults, isPromptNamed } from "./formLayout.native.js";
|
|
5
|
-
import { takeCreatePrefill } from "./createPrefill.native.js";
|
|
6
|
-
import { evaluateDependsOn } from "./dependsOn.native.js";
|
|
7
|
-
import { computeDirtyFields, isEmptyValue, isSameValue } from "./dirtyTracking.native.js";
|
|
8
|
-
import { applyFetchedValues, buildFetchMap } from "./fetchFrom.native.js";
|
|
9
|
-
var LAYOUT_TYPES = /* @__PURE__ */new Set(["Section Break", "Column Break", "Tab Break", "Fold"]);
|
|
10
|
-
function isConflictError(err) {
|
|
11
|
-
var _e_message;
|
|
12
|
-
var e = err;
|
|
13
|
-
if (!e) return false;
|
|
14
|
-
if (e.status === 409) return true;
|
|
15
|
-
if (e.exc_type === "TimestampMismatchError") return true;
|
|
16
|
-
return /TimestampMismatch|has been modified/i.test((_e_message = e.message) !== null && _e_message !== void 0 ? _e_message : "");
|
|
17
|
-
}
|
|
18
|
-
function extractServerError(err, fallback) {
|
|
19
|
-
var e = err;
|
|
20
|
-
if (e === null || e === void 0 ? void 0 : e._server_messages) {
|
|
21
|
-
try {
|
|
22
|
-
var messages = JSON.parse(e._server_messages);
|
|
23
|
-
var parsed = messages.map(function (msg) {
|
|
24
|
-
try {
|
|
25
|
-
var _JSON_parse_message;
|
|
26
|
-
return (_JSON_parse_message = JSON.parse(msg).message) !== null && _JSON_parse_message !== void 0 ? _JSON_parse_message : "";
|
|
27
|
-
} catch (unused) {
|
|
28
|
-
return msg;
|
|
29
|
-
}
|
|
30
|
-
}).filter(Boolean);
|
|
31
|
-
if (parsed.length > 0) return parsed.join("\n");
|
|
32
|
-
} catch (unused) {}
|
|
33
|
-
}
|
|
34
|
-
return (e === null || e === void 0 ? void 0 : e.message) || fallback;
|
|
35
|
-
}
|
|
36
|
-
function useFormEngine(connection, doctype, name, meta, translate) {
|
|
37
|
-
var _ref;
|
|
38
|
-
var isCreate = !name;
|
|
39
|
-
var [localDoc, setLocalDoc] = useState({});
|
|
40
|
-
var [baseline, setBaseline] = useState(void 0);
|
|
41
|
-
var [isSaving, setIsSaving] = useState(false);
|
|
42
|
-
var [errors, setErrors] = useState({});
|
|
43
|
-
var [conflict, setConflict] = useState(false);
|
|
44
|
-
var [wasDeleted, setWasDeleted] = useState(false);
|
|
45
|
-
var [currentUser, setCurrentUser] = useState("");
|
|
46
|
-
var everLoadedRef = useRef(false);
|
|
47
|
-
var seededRef = useRef(false);
|
|
48
|
-
var localDocRef = useRef(localDoc);
|
|
49
|
-
localDocRef.current = localDoc;
|
|
50
|
-
var baselineRef = useRef(baseline);
|
|
51
|
-
baselineRef.current = baseline;
|
|
52
|
-
var docCollection = useFrappeCollection(name ? connection : void 0, doctype, {
|
|
53
|
-
filters: name ? {
|
|
54
|
-
name
|
|
55
|
-
} : void 0
|
|
56
|
-
});
|
|
57
|
-
var {
|
|
58
|
-
data: rawDocData,
|
|
59
|
-
isLoading: isDocLoading
|
|
60
|
-
} = useLiveQuery(function (q) {
|
|
61
|
-
if (!docCollection || !name) return null;
|
|
62
|
-
return q.from({
|
|
63
|
-
_doc: docCollection
|
|
64
|
-
}).where(function (param) {
|
|
65
|
-
var {
|
|
66
|
-
_doc
|
|
67
|
-
} = param;
|
|
68
|
-
return eq(_doc.name, name);
|
|
69
|
-
});
|
|
70
|
-
}, [docCollection, name]);
|
|
71
|
-
var liveDoc = useMemo(function () {
|
|
72
|
-
var _arr_;
|
|
73
|
-
var arr = Array.isArray(rawDocData) ? rawDocData : rawDocData ? [rawDocData] : [];
|
|
74
|
-
return (_arr_ = arr[0]) !== null && _arr_ !== void 0 ? _arr_ : null;
|
|
75
|
-
}, [rawDocData]);
|
|
76
|
-
useEffect(function () {
|
|
77
|
-
if (!connection) return;
|
|
78
|
-
var cancelled = false;
|
|
79
|
-
getLoggedUser(createHttpClient(connection)).then(function (user) {
|
|
80
|
-
if (!cancelled) setCurrentUser(user);
|
|
81
|
-
}).catch(function () {});
|
|
82
|
-
return function () {
|
|
83
|
-
cancelled = true;
|
|
84
|
-
};
|
|
85
|
-
}, [connection === null || connection === void 0 ? void 0 : connection.baseURL]);
|
|
86
|
-
useEffect(function () {
|
|
87
|
-
everLoadedRef.current = false;
|
|
88
|
-
seededRef.current = false;
|
|
89
|
-
setWasDeleted(false);
|
|
90
|
-
setConflict(false);
|
|
91
|
-
setErrors({});
|
|
92
|
-
setBaseline(void 0);
|
|
93
|
-
setLocalDoc({});
|
|
94
|
-
}, [doctype, name]);
|
|
95
|
-
useEffect(function () {
|
|
96
|
-
if (!isCreate || !meta || seededRef.current) return;
|
|
97
|
-
seededRef.current = true;
|
|
98
|
-
var defaults = buildCreateDefaults(meta.fields, currentUser || void 0);
|
|
99
|
-
var prefill = takeCreatePrefill(doctype);
|
|
100
|
-
setLocalDoc({
|
|
101
|
-
...defaults,
|
|
102
|
-
...prefill,
|
|
103
|
-
doctype
|
|
104
|
-
});
|
|
105
|
-
},
|
|
106
|
-
// currentUser intentionally not a dep: seeding happens once per mount;
|
|
107
|
-
// a late-resolving user only matters for brand-new blank forms where
|
|
108
|
-
// the meta usually arrives later anyway.
|
|
109
|
-
[isCreate, meta, doctype]);
|
|
110
|
-
useEffect(function () {
|
|
111
|
-
if (!name) return;
|
|
112
|
-
if (liveDoc) {
|
|
113
|
-
everLoadedRef.current = true;
|
|
114
|
-
setWasDeleted(false);
|
|
115
|
-
var incoming = liveDoc;
|
|
116
|
-
var prevBaseline = baselineRef.current;
|
|
117
|
-
if (!prevBaseline) {
|
|
118
|
-
setBaseline(incoming);
|
|
119
|
-
setLocalDoc(incoming);
|
|
120
|
-
return;
|
|
121
|
-
}
|
|
122
|
-
var local = localDocRef.current;
|
|
123
|
-
var merged = {
|
|
124
|
-
...incoming
|
|
125
|
-
};
|
|
126
|
-
var _iteratorNormalCompletion = true,
|
|
127
|
-
_didIteratorError = false,
|
|
128
|
-
_iteratorError = void 0;
|
|
129
|
-
try {
|
|
130
|
-
for (var _iterator = Object.keys(local)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
131
|
-
var key = _step.value;
|
|
132
|
-
if (!isSameValue(local[key], prevBaseline[key])) merged[key] = local[key];
|
|
133
|
-
}
|
|
134
|
-
} catch (err) {
|
|
135
|
-
_didIteratorError = true;
|
|
136
|
-
_iteratorError = err;
|
|
137
|
-
} finally {
|
|
138
|
-
try {
|
|
139
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
140
|
-
_iterator.return();
|
|
141
|
-
}
|
|
142
|
-
} finally {
|
|
143
|
-
if (_didIteratorError) {
|
|
144
|
-
throw _iteratorError;
|
|
145
|
-
}
|
|
146
|
-
}
|
|
147
|
-
}
|
|
148
|
-
setBaseline(incoming);
|
|
149
|
-
setLocalDoc(merged);
|
|
150
|
-
} else if (everLoadedRef.current && !isDocLoading) {
|
|
151
|
-
setWasDeleted(true);
|
|
152
|
-
}
|
|
153
|
-
}, [liveDoc, isDocLoading, name]);
|
|
154
|
-
var dirtyFields = useMemo(function () {
|
|
155
|
-
return computeDirtyFields(localDoc, baseline);
|
|
156
|
-
}, [localDoc, baseline]);
|
|
157
|
-
var isDirty = dirtyFields.length > 0;
|
|
158
|
-
var fetchMap = useMemo(function () {
|
|
159
|
-
return meta ? buildFetchMap(meta.fields) : void 0;
|
|
160
|
-
}, [meta]);
|
|
161
|
-
var fetchStateRef = useRef({
|
|
162
|
-
meta: void 0,
|
|
163
|
-
connection: void 0
|
|
164
|
-
});
|
|
165
|
-
fetchStateRef.current = {
|
|
166
|
-
meta,
|
|
167
|
-
connection
|
|
168
|
-
};
|
|
169
|
-
var fetchMapRef = useRef(fetchMap);
|
|
170
|
-
fetchMapRef.current = fetchMap;
|
|
171
|
-
var runFetchFrom = useCallback(function (field, value) {
|
|
172
|
-
var _fetchMapRef_current;
|
|
173
|
-
var rules = (_fetchMapRef_current = fetchMapRef.current) === null || _fetchMapRef_current === void 0 ? void 0 : _fetchMapRef_current.get(field);
|
|
174
|
-
if (!rules || rules.length === 0) return;
|
|
175
|
-
var {
|
|
176
|
-
meta: currentMeta,
|
|
177
|
-
connection: currentConnection
|
|
178
|
-
} = fetchStateRef.current;
|
|
179
|
-
var linkField = currentMeta === null || currentMeta === void 0 ? void 0 : currentMeta.fields.find(function (f) {
|
|
180
|
-
return f.fieldname === field;
|
|
181
|
-
});
|
|
182
|
-
var targetDoctype = typeof (linkField === null || linkField === void 0 ? void 0 : linkField.options) === "string" ? linkField.options : "";
|
|
183
|
-
var applyPatch = function applyPatch2(fetched) {
|
|
184
|
-
setLocalDoc(function (prev) {
|
|
185
|
-
if (prev[field] !== value) return prev;
|
|
186
|
-
var patch = applyFetchedValues(rules, fetched, prev);
|
|
187
|
-
return Object.keys(patch).length > 0 ? {
|
|
188
|
-
...prev,
|
|
189
|
-
...patch
|
|
190
|
-
} : prev;
|
|
191
|
-
});
|
|
192
|
-
};
|
|
193
|
-
if (value === void 0 || value === null || value === "") {
|
|
194
|
-
applyPatch({});
|
|
195
|
-
return;
|
|
196
|
-
}
|
|
197
|
-
if (!currentConnection || !targetDoctype || currentConnection.fixtures) return;
|
|
198
|
-
var sources = Array.from(new Set(rules.map(function (rule) {
|
|
199
|
-
return rule.source;
|
|
200
|
-
})));
|
|
201
|
-
validateLink(createHttpClient(currentConnection), targetDoctype, String(value), sources).then(applyPatch).catch(function () {});
|
|
202
|
-
},
|
|
203
|
-
// Invalid link / no read perm on source — leave targets as-is;
|
|
204
|
-
// the server re-validates on save.
|
|
205
|
-
[]);
|
|
206
|
-
var setValue = useCallback(function (field, value) {
|
|
207
|
-
setLocalDoc(function (prev) {
|
|
208
|
-
return {
|
|
209
|
-
...prev,
|
|
210
|
-
[field]: value
|
|
211
|
-
};
|
|
212
|
-
});
|
|
213
|
-
setErrors(function (prev) {
|
|
214
|
-
if (!(field in prev)) return prev;
|
|
215
|
-
var next = {
|
|
216
|
-
...prev
|
|
217
|
-
};
|
|
218
|
-
delete next[field];
|
|
219
|
-
return next;
|
|
220
|
-
});
|
|
221
|
-
runFetchFrom(field, value);
|
|
222
|
-
}, [runFetchFrom]);
|
|
223
|
-
var validate = useCallback(function () {
|
|
224
|
-
if (!meta) return {};
|
|
225
|
-
var doc = {
|
|
226
|
-
...localDocRef.current,
|
|
227
|
-
__islocal: isCreate ? 1 : 0,
|
|
228
|
-
...(currentUser ? {
|
|
229
|
-
__session_user: currentUser
|
|
230
|
-
} : {})
|
|
231
|
-
};
|
|
232
|
-
var validationErrors = {};
|
|
233
|
-
if (isCreate && isPromptNamed(meta.autoname, meta.naming_rule) && isEmptyValue(doc.name)) {
|
|
234
|
-
validationErrors.name = translate("nameRequired", {
|
|
235
|
-
defaultValue: "Name is required"
|
|
236
|
-
});
|
|
237
|
-
}
|
|
238
|
-
var _iteratorNormalCompletion = true,
|
|
239
|
-
_didIteratorError = false,
|
|
240
|
-
_iteratorError = void 0;
|
|
241
|
-
try {
|
|
242
|
-
for (var _iterator = meta.fields[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
243
|
-
var field = _step.value;
|
|
244
|
-
if (field.hidden || LAYOUT_TYPES.has(field.fieldtype)) continue;
|
|
245
|
-
if (!evaluateDependsOn(field.depends_on, doc, true)) continue;
|
|
246
|
-
var required = !!field.reqd || !!field.mandatory_depends_on && evaluateDependsOn(field.mandatory_depends_on, doc, false);
|
|
247
|
-
if (!required) continue;
|
|
248
|
-
if (isEmptyValue(doc[field.fieldname])) {
|
|
249
|
-
validationErrors[field.fieldname] = translate("fieldRequired", {
|
|
250
|
-
defaultValue: "{{label}} is required",
|
|
251
|
-
label: field.label || field.fieldname
|
|
252
|
-
});
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
} catch (err) {
|
|
256
|
-
_didIteratorError = true;
|
|
257
|
-
_iteratorError = err;
|
|
258
|
-
} finally {
|
|
259
|
-
try {
|
|
260
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
261
|
-
_iterator.return();
|
|
262
|
-
}
|
|
263
|
-
} finally {
|
|
264
|
-
if (_didIteratorError) {
|
|
265
|
-
throw _iteratorError;
|
|
266
|
-
}
|
|
267
|
-
}
|
|
268
|
-
}
|
|
269
|
-
return validationErrors;
|
|
270
|
-
}, [meta, isCreate, currentUser, translate]);
|
|
271
|
-
var save = useCallback(async function () {
|
|
272
|
-
if (wasDeleted || !connection) return void 0;
|
|
273
|
-
var requiredErrors = validate();
|
|
274
|
-
if (Object.keys(requiredErrors).length > 0) {
|
|
275
|
-
setErrors(requiredErrors);
|
|
276
|
-
return void 0;
|
|
277
|
-
}
|
|
278
|
-
setIsSaving(true);
|
|
279
|
-
setErrors({});
|
|
280
|
-
try {
|
|
281
|
-
var _created_name;
|
|
282
|
-
if (name) {
|
|
283
|
-
var _baselineRef_current;
|
|
284
|
-
if (!docCollection) return void 0;
|
|
285
|
-
var local = localDocRef.current;
|
|
286
|
-
var base = (_baselineRef_current = baselineRef.current) !== null && _baselineRef_current !== void 0 ? _baselineRef_current : {};
|
|
287
|
-
var changed = Object.keys(local).filter(function (key) {
|
|
288
|
-
return key !== "doctype" && key !== "name" && !isSameValue(local[key], base[key]);
|
|
289
|
-
});
|
|
290
|
-
if (changed.length > 0) {
|
|
291
|
-
var tx = docCollection.update(name, function (draft) {
|
|
292
|
-
var _iteratorNormalCompletion = true,
|
|
293
|
-
_didIteratorError = false,
|
|
294
|
-
_iteratorError = void 0;
|
|
295
|
-
try {
|
|
296
|
-
for (var _iterator = changed[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
297
|
-
var key = _step.value;
|
|
298
|
-
draft[key] = local[key];
|
|
299
|
-
}
|
|
300
|
-
} catch (err) {
|
|
301
|
-
_didIteratorError = true;
|
|
302
|
-
_iteratorError = err;
|
|
303
|
-
} finally {
|
|
304
|
-
try {
|
|
305
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
306
|
-
_iterator.return();
|
|
307
|
-
}
|
|
308
|
-
} finally {
|
|
309
|
-
if (_didIteratorError) {
|
|
310
|
-
throw _iteratorError;
|
|
311
|
-
}
|
|
312
|
-
}
|
|
313
|
-
}
|
|
314
|
-
});
|
|
315
|
-
await tx.isPersisted.promise;
|
|
316
|
-
}
|
|
317
|
-
setConflict(false);
|
|
318
|
-
return name;
|
|
319
|
-
}
|
|
320
|
-
var {
|
|
321
|
-
doctype: _dt,
|
|
322
|
-
name: newName,
|
|
323
|
-
...values
|
|
324
|
-
} = localDocRef.current;
|
|
325
|
-
if (typeof newName === "string" && newName.trim()) {
|
|
326
|
-
values.name = newName.trim();
|
|
327
|
-
}
|
|
328
|
-
var created = await insertDoc(createHttpClient(connection), doctype, values);
|
|
329
|
-
return String((_created_name = created.name) !== null && _created_name !== void 0 ? _created_name : "");
|
|
330
|
-
} catch (err) {
|
|
331
|
-
if (isConflictError(err)) {
|
|
332
|
-
setConflict(true);
|
|
333
|
-
setErrors({
|
|
334
|
-
general: translate("conflictError", {
|
|
335
|
-
defaultValue: "This document was modified on the server after you opened it. Reload to get the latest version \u2014 your unsaved edits will be discarded."
|
|
336
|
-
})
|
|
337
|
-
});
|
|
338
|
-
} else {
|
|
339
|
-
setErrors({
|
|
340
|
-
general: extractServerError(err, translate("saveFailed", {
|
|
341
|
-
defaultValue: "Failed to save"
|
|
342
|
-
}))
|
|
343
|
-
});
|
|
344
|
-
}
|
|
345
|
-
return void 0;
|
|
346
|
-
} finally {
|
|
347
|
-
setIsSaving(false);
|
|
348
|
-
}
|
|
349
|
-
}, [wasDeleted, connection, validate, name, docCollection, doctype, translate]);
|
|
350
|
-
var submit = useCallback(async function () {
|
|
351
|
-
if (!connection || !name) return false;
|
|
352
|
-
setIsSaving(true);
|
|
353
|
-
setErrors({});
|
|
354
|
-
try {
|
|
355
|
-
var base = baselineRef.current;
|
|
356
|
-
if (!base) return false;
|
|
357
|
-
await submitDoc(createHttpClient(connection), {
|
|
358
|
-
...base,
|
|
359
|
-
doctype
|
|
360
|
-
});
|
|
361
|
-
return true;
|
|
362
|
-
} catch (err) {
|
|
363
|
-
if (isConflictError(err)) setConflict(true);
|
|
364
|
-
setErrors({
|
|
365
|
-
general: extractServerError(err, translate("submitFailed", {
|
|
366
|
-
defaultValue: "Failed to submit"
|
|
367
|
-
}))
|
|
368
|
-
});
|
|
369
|
-
return false;
|
|
370
|
-
} finally {
|
|
371
|
-
setIsSaving(false);
|
|
372
|
-
}
|
|
373
|
-
}, [connection, name, doctype, translate]);
|
|
374
|
-
var cancel = useCallback(async function () {
|
|
375
|
-
if (!connection || !name) return false;
|
|
376
|
-
setIsSaving(true);
|
|
377
|
-
setErrors({});
|
|
378
|
-
try {
|
|
379
|
-
await cancelDoc(createHttpClient(connection), doctype, name);
|
|
380
|
-
return true;
|
|
381
|
-
} catch (err) {
|
|
382
|
-
setErrors({
|
|
383
|
-
general: extractServerError(err, translate("cancelFailed", {
|
|
384
|
-
defaultValue: "Failed to cancel"
|
|
385
|
-
}))
|
|
386
|
-
});
|
|
387
|
-
return false;
|
|
388
|
-
} finally {
|
|
389
|
-
setIsSaving(false);
|
|
390
|
-
}
|
|
391
|
-
}, [connection, name, doctype, translate]);
|
|
392
|
-
var remove = useCallback(async function () {
|
|
393
|
-
if (!docCollection || !name || wasDeleted) return false;
|
|
394
|
-
setIsSaving(true);
|
|
395
|
-
setErrors({});
|
|
396
|
-
try {
|
|
397
|
-
var tx = docCollection.delete(name);
|
|
398
|
-
await tx.isPersisted.promise;
|
|
399
|
-
return true;
|
|
400
|
-
} catch (err) {
|
|
401
|
-
setErrors({
|
|
402
|
-
general: extractServerError(err, translate("deleteFailed", {
|
|
403
|
-
defaultValue: "Failed to delete"
|
|
404
|
-
}))
|
|
405
|
-
});
|
|
406
|
-
return false;
|
|
407
|
-
} finally {
|
|
408
|
-
setIsSaving(false);
|
|
409
|
-
}
|
|
410
|
-
}, [docCollection, name, wasDeleted, translate]);
|
|
411
|
-
var reload = useCallback(function () {
|
|
412
|
-
setConflict(false);
|
|
413
|
-
setErrors({});
|
|
414
|
-
if (baselineRef.current) {
|
|
415
|
-
setLocalDoc(baselineRef.current);
|
|
416
|
-
} else if (!name) {
|
|
417
|
-
seededRef.current = false;
|
|
418
|
-
setLocalDoc({
|
|
419
|
-
doctype
|
|
420
|
-
});
|
|
421
|
-
}
|
|
422
|
-
}, [doctype, name]);
|
|
423
|
-
var docstatus = Number((_ref = baseline === null || baseline === void 0 ? void 0 : baseline.docstatus) !== null && _ref !== void 0 ? _ref : 0);
|
|
424
|
-
return {
|
|
425
|
-
doc: localDoc,
|
|
426
|
-
baseline,
|
|
427
|
-
isLoading: !!name && isDocLoading && !everLoadedRef.current,
|
|
428
|
-
notFound: !!name && !isDocLoading && !liveDoc && !everLoadedRef.current,
|
|
429
|
-
wasDeleted,
|
|
430
|
-
isCreate,
|
|
431
|
-
isDirty,
|
|
432
|
-
dirtyFields,
|
|
433
|
-
isSaving,
|
|
434
|
-
errors,
|
|
435
|
-
conflict,
|
|
436
|
-
currentUser,
|
|
437
|
-
docstatus,
|
|
438
|
-
setValue,
|
|
439
|
-
save,
|
|
440
|
-
submit,
|
|
441
|
-
cancel,
|
|
442
|
-
remove,
|
|
443
|
-
reload,
|
|
444
|
-
validate
|
|
445
|
-
};
|
|
446
|
-
}
|
|
1
|
+
import { useFormEngine } from "@multiplatform.one/frappe-ui";
|
|
447
2
|
export { useFormEngine };
|
|
448
3
|
//# sourceMappingURL=useFormEngine.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["eq","useFrappeCollection","useLiveQuery","useCallback","useEffect","useMemo","useRef","useState","cancelDoc","createHttpClient","getLoggedUser","insertDoc","submitDoc","validateLink","buildCreateDefaults","isPromptNamed","takeCreatePrefill","evaluateDependsOn","computeDirtyFields","isEmptyValue","isSameValue","applyFetchedValues","buildFetchMap","LAYOUT_TYPES","Set","isConflictError","err","_e_message","e","status","exc_type","test","message","extractServerError","fallback","_server_messages","messages","JSON","parse","parsed","map","msg","_JSON_parse_message","unused","filter","Boolean","length","join","useFormEngine","connection","doctype","name","meta","translate","_ref","isCreate","localDoc","setLocalDoc","baseline","setBaseline","isSaving","setIsSaving","errors","setErrors","conflict","setConflict","wasDeleted","setWasDeleted","currentUser","setCurrentUser","everLoadedRef","seededRef","localDocRef","current","baselineRef","docCollection","filters","data","rawDocData","isLoading","isDocLoading","q","from","_doc","where","param","liveDoc","_arr_","arr","Array","isArray","cancelled","then","user","catch","baseURL","defaults","fields","prefill","incoming","prevBaseline","local","merged","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","Object","keys","Symbol","iterator","_step","next","done","key","value","return","dirtyFields","isDirty","fetchMap","fetchStateRef","fetchMapRef","runFetchFrom","field","_fetchMapRef_current","rules","get","currentMeta","currentConnection","linkField","find","f","fieldname","targetDoctype","options","applyPatch","applyPatch2","fetched","prev","patch","fixtures","sources","rule","source","String","setValue","validate","doc","__islocal","__session_user","validationErrors","autoname","naming_rule","defaultValue","hidden","has","fieldtype","depends_on","required","reqd","mandatory_depends_on","label","save","requiredErrors","_created_name","_baselineRef_current","base","changed","tx","update","draft","isPersisted","promise","_dt","newName","values","trim","created","general","submit","cancel","remove","delete","reload","docstatus","Number","notFound"],"sources":["useFormEngine.native.js"],"sourcesContent":["import { eq, useFrappeCollection, useLiveQuery } from \"@multiplatform.one/frappe\";\nimport { useCallback, useEffect, useMemo, useRef, useState } from \"react\";\nimport { cancelDoc, createHttpClient, getLoggedUser, insertDoc, submitDoc, validateLink } from \"./formActions\";\nimport { buildCreateDefaults, isPromptNamed } from \"./formLayout\";\nimport { takeCreatePrefill } from \"./createPrefill\";\nimport { evaluateDependsOn } from \"./dependsOn\";\nimport { computeDirtyFields, isEmptyValue, isSameValue } from \"./dirtyTracking\";\nimport { applyFetchedValues, buildFetchMap } from \"./fetchFrom\";\nvar LAYOUT_TYPES = /* @__PURE__ */ new Set([\n \"Section Break\",\n \"Column Break\",\n \"Tab Break\",\n \"Fold\"\n]);\nfunction isConflictError(err) {\n var _e_message;\n var e = err;\n if (!e) return false;\n if (e.status === 409) return true;\n if (e.exc_type === \"TimestampMismatchError\") return true;\n return /TimestampMismatch|has been modified/i.test((_e_message = e.message) !== null && _e_message !== void 0 ? _e_message : \"\");\n}\nfunction extractServerError(err, fallback) {\n var e = err;\n if (e === null || e === void 0 ? void 0 : e._server_messages) {\n try {\n var messages = JSON.parse(e._server_messages);\n var parsed = messages.map(function(msg) {\n try {\n var _JSON_parse_message;\n return (_JSON_parse_message = JSON.parse(msg).message) !== null && _JSON_parse_message !== void 0 ? _JSON_parse_message : \"\";\n } catch (unused) {\n return msg;\n }\n }).filter(Boolean);\n if (parsed.length > 0) return parsed.join(\"\\n\");\n } catch (unused) {\n }\n }\n return (e === null || e === void 0 ? void 0 : e.message) || fallback;\n}\nfunction useFormEngine(connection, doctype, name, meta, translate) {\n var _ref;\n var isCreate = !name;\n var [localDoc, setLocalDoc] = useState({});\n var [baseline, setBaseline] = useState(void 0);\n var [isSaving, setIsSaving] = useState(false);\n var [errors, setErrors] = useState({});\n var [conflict, setConflict] = useState(false);\n var [wasDeleted, setWasDeleted] = useState(false);\n var [currentUser, setCurrentUser] = useState(\"\");\n var everLoadedRef = useRef(false);\n var seededRef = useRef(false);\n var localDocRef = useRef(localDoc);\n localDocRef.current = localDoc;\n var baselineRef = useRef(baseline);\n baselineRef.current = baseline;\n var docCollection = useFrappeCollection(name ? connection : void 0, doctype, {\n filters: name ? {\n name\n } : void 0\n });\n var { data: rawDocData, isLoading: isDocLoading } = useLiveQuery(function(q) {\n if (!docCollection || !name) return null;\n return q.from({\n _doc: docCollection\n }).where(function(param) {\n var { _doc } = param;\n return eq(_doc.name, name);\n });\n }, [\n docCollection,\n name\n ]);\n var liveDoc = useMemo(function() {\n var _arr_;\n var arr = Array.isArray(rawDocData) ? rawDocData : rawDocData ? [\n rawDocData\n ] : [];\n return (_arr_ = arr[0]) !== null && _arr_ !== void 0 ? _arr_ : null;\n }, [\n rawDocData\n ]);\n useEffect(function() {\n if (!connection) return;\n var cancelled = false;\n getLoggedUser(createHttpClient(connection)).then(function(user) {\n if (!cancelled) setCurrentUser(user);\n }).catch(function() {\n });\n return function() {\n cancelled = true;\n };\n }, [\n connection === null || connection === void 0 ? void 0 : connection.baseURL\n ]);\n useEffect(function() {\n everLoadedRef.current = false;\n seededRef.current = false;\n setWasDeleted(false);\n setConflict(false);\n setErrors({});\n setBaseline(void 0);\n setLocalDoc({});\n }, [\n doctype,\n name\n ]);\n useEffect(\n function() {\n if (!isCreate || !meta || seededRef.current) return;\n seededRef.current = true;\n var defaults = buildCreateDefaults(meta.fields, currentUser || void 0);\n var prefill = takeCreatePrefill(doctype);\n setLocalDoc({\n ...defaults,\n ...prefill,\n doctype\n });\n },\n // currentUser intentionally not a dep: seeding happens once per mount;\n // a late-resolving user only matters for brand-new blank forms where\n // the meta usually arrives later anyway.\n [\n isCreate,\n meta,\n doctype\n ]\n );\n useEffect(function() {\n if (!name) return;\n if (liveDoc) {\n everLoadedRef.current = true;\n setWasDeleted(false);\n var incoming = liveDoc;\n var prevBaseline = baselineRef.current;\n if (!prevBaseline) {\n setBaseline(incoming);\n setLocalDoc(incoming);\n return;\n }\n var local = localDocRef.current;\n var merged = {\n ...incoming\n };\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = Object.keys(local)[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n if (!isSameValue(local[key], prevBaseline[key])) merged[key] = local[key];\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n setBaseline(incoming);\n setLocalDoc(merged);\n } else if (everLoadedRef.current && !isDocLoading) {\n setWasDeleted(true);\n }\n }, [\n liveDoc,\n isDocLoading,\n name\n ]);\n var dirtyFields = useMemo(function() {\n return computeDirtyFields(localDoc, baseline);\n }, [\n localDoc,\n baseline\n ]);\n var isDirty = dirtyFields.length > 0;\n var fetchMap = useMemo(function() {\n return meta ? buildFetchMap(meta.fields) : void 0;\n }, [\n meta\n ]);\n var fetchStateRef = useRef({\n meta: void 0,\n connection: void 0\n });\n fetchStateRef.current = {\n meta,\n connection\n };\n var fetchMapRef = useRef(fetchMap);\n fetchMapRef.current = fetchMap;\n var runFetchFrom = useCallback(\n function(field, value) {\n var _fetchMapRef_current;\n var rules = (_fetchMapRef_current = fetchMapRef.current) === null || _fetchMapRef_current === void 0 ? void 0 : _fetchMapRef_current.get(field);\n if (!rules || rules.length === 0) return;\n var { meta: currentMeta, connection: currentConnection } = fetchStateRef.current;\n var linkField = currentMeta === null || currentMeta === void 0 ? void 0 : currentMeta.fields.find(function(f) {\n return f.fieldname === field;\n });\n var targetDoctype = typeof (linkField === null || linkField === void 0 ? void 0 : linkField.options) === \"string\" ? linkField.options : \"\";\n var applyPatch = function applyPatch2(fetched) {\n setLocalDoc(function(prev) {\n if (prev[field] !== value) return prev;\n var patch = applyFetchedValues(rules, fetched, prev);\n return Object.keys(patch).length > 0 ? {\n ...prev,\n ...patch\n } : prev;\n });\n };\n if (value === void 0 || value === null || value === \"\") {\n applyPatch({});\n return;\n }\n if (!currentConnection || !targetDoctype || currentConnection.fixtures) return;\n var sources = Array.from(new Set(rules.map(function(rule) {\n return rule.source;\n })));\n validateLink(createHttpClient(currentConnection), targetDoctype, String(value), sources).then(applyPatch).catch(function() {\n });\n },\n // Invalid link / no read perm on source — leave targets as-is;\n // the server re-validates on save.\n []\n );\n var setValue = useCallback(function(field, value) {\n setLocalDoc(function(prev) {\n return {\n ...prev,\n [field]: value\n };\n });\n setErrors(function(prev) {\n if (!(field in prev)) return prev;\n var next = {\n ...prev\n };\n delete next[field];\n return next;\n });\n runFetchFrom(field, value);\n }, [\n runFetchFrom\n ]);\n var validate = useCallback(function() {\n if (!meta) return {};\n var doc = {\n ...localDocRef.current,\n __islocal: isCreate ? 1 : 0,\n ...currentUser ? {\n __session_user: currentUser\n } : {}\n };\n var validationErrors = {};\n if (isCreate && isPromptNamed(meta.autoname, meta.naming_rule) && isEmptyValue(doc.name)) {\n validationErrors.name = translate(\"nameRequired\", {\n defaultValue: \"Name is required\"\n });\n }\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = meta.fields[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var field = _step.value;\n if (field.hidden || LAYOUT_TYPES.has(field.fieldtype)) continue;\n if (!evaluateDependsOn(field.depends_on, doc, true)) continue;\n var required = !!field.reqd || !!field.mandatory_depends_on && evaluateDependsOn(field.mandatory_depends_on, doc, false);\n if (!required) continue;\n if (isEmptyValue(doc[field.fieldname])) {\n validationErrors[field.fieldname] = translate(\"fieldRequired\", {\n defaultValue: \"{{label}} is required\",\n label: field.label || field.fieldname\n });\n }\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n return validationErrors;\n }, [\n meta,\n isCreate,\n currentUser,\n translate\n ]);\n var save = useCallback(async function() {\n if (wasDeleted || !connection) return void 0;\n var requiredErrors = validate();\n if (Object.keys(requiredErrors).length > 0) {\n setErrors(requiredErrors);\n return void 0;\n }\n setIsSaving(true);\n setErrors({});\n try {\n var _created_name;\n if (name) {\n var _baselineRef_current;\n if (!docCollection) return void 0;\n var local = localDocRef.current;\n var base = (_baselineRef_current = baselineRef.current) !== null && _baselineRef_current !== void 0 ? _baselineRef_current : {};\n var changed = Object.keys(local).filter(function(key) {\n return key !== \"doctype\" && key !== \"name\" && !isSameValue(local[key], base[key]);\n });\n if (changed.length > 0) {\n var tx = docCollection.update(name, function(draft) {\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = changed[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var key = _step.value;\n draft[key] = local[key];\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n });\n await tx.isPersisted.promise;\n }\n setConflict(false);\n return name;\n }\n var { doctype: _dt, name: newName, ...values } = localDocRef.current;\n if (typeof newName === \"string\" && newName.trim()) {\n values.name = newName.trim();\n }\n var created = await insertDoc(createHttpClient(connection), doctype, values);\n return String((_created_name = created.name) !== null && _created_name !== void 0 ? _created_name : \"\");\n } catch (err) {\n if (isConflictError(err)) {\n setConflict(true);\n setErrors({\n general: translate(\"conflictError\", {\n defaultValue: \"This document was modified on the server after you opened it. Reload to get the latest version \\u2014 your unsaved edits will be discarded.\"\n })\n });\n } else {\n setErrors({\n general: extractServerError(err, translate(\"saveFailed\", {\n defaultValue: \"Failed to save\"\n }))\n });\n }\n return void 0;\n } finally {\n setIsSaving(false);\n }\n }, [\n wasDeleted,\n connection,\n validate,\n name,\n docCollection,\n doctype,\n translate\n ]);\n var submit = useCallback(async function() {\n if (!connection || !name) return false;\n setIsSaving(true);\n setErrors({});\n try {\n var base = baselineRef.current;\n if (!base) return false;\n await submitDoc(createHttpClient(connection), {\n ...base,\n doctype\n });\n return true;\n } catch (err) {\n if (isConflictError(err)) setConflict(true);\n setErrors({\n general: extractServerError(err, translate(\"submitFailed\", {\n defaultValue: \"Failed to submit\"\n }))\n });\n return false;\n } finally {\n setIsSaving(false);\n }\n }, [\n connection,\n name,\n doctype,\n translate\n ]);\n var cancel = useCallback(async function() {\n if (!connection || !name) return false;\n setIsSaving(true);\n setErrors({});\n try {\n await cancelDoc(createHttpClient(connection), doctype, name);\n return true;\n } catch (err) {\n setErrors({\n general: extractServerError(err, translate(\"cancelFailed\", {\n defaultValue: \"Failed to cancel\"\n }))\n });\n return false;\n } finally {\n setIsSaving(false);\n }\n }, [\n connection,\n name,\n doctype,\n translate\n ]);\n var remove = useCallback(async function() {\n if (!docCollection || !name || wasDeleted) return false;\n setIsSaving(true);\n setErrors({});\n try {\n var tx = docCollection.delete(name);\n await tx.isPersisted.promise;\n return true;\n } catch (err) {\n setErrors({\n general: extractServerError(err, translate(\"deleteFailed\", {\n defaultValue: \"Failed to delete\"\n }))\n });\n return false;\n } finally {\n setIsSaving(false);\n }\n }, [\n docCollection,\n name,\n wasDeleted,\n translate\n ]);\n var reload = useCallback(function() {\n setConflict(false);\n setErrors({});\n if (baselineRef.current) {\n setLocalDoc(baselineRef.current);\n } else if (!name) {\n seededRef.current = false;\n setLocalDoc({\n doctype\n });\n }\n }, [\n doctype,\n name\n ]);\n var docstatus = Number((_ref = baseline === null || baseline === void 0 ? void 0 : baseline.docstatus) !== null && _ref !== void 0 ? _ref : 0);\n return {\n doc: localDoc,\n baseline,\n isLoading: !!name && isDocLoading && !everLoadedRef.current,\n notFound: !!name && !isDocLoading && !liveDoc && !everLoadedRef.current,\n wasDeleted,\n isCreate,\n isDirty,\n dirtyFields,\n isSaving,\n errors,\n conflict,\n currentUser,\n docstatus,\n setValue,\n save,\n submit,\n cancel,\n remove,\n reload,\n validate\n };\n}\nexport {\n useFormEngine\n};\n//# sourceMappingURL=useFormEngine.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["useFormEngine"],"sources":["../../../src/form/useFormEngine.ts"],"sourcesContent":[null],"mappings":"AAMA,SAASA,aAAA,QAAqB","ignoreList":[]}
|