@multiplatform.one/backoffice 7.22.0 → 7.23.1
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/list/DoctypeListScreen.cjs +4 -42
- package/dist/cjs/list/DoctypeListScreen.native.js +5 -43
- package/dist/cjs/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/cjs/list/filter-chips.cjs +3 -3
- package/dist/cjs/list/filter-chips.native.js +3 -3
- package/dist/cjs/list/filter-chips.native.js.map +1 -1
- package/dist/cjs/list/filter-editor.cjs +10 -11
- package/dist/cjs/list/filter-editor.native.js +10 -11
- package/dist/cjs/list/filter-editor.native.js.map +1 -1
- package/dist/cjs/list/filter-fields.cjs +15 -267
- package/dist/cjs/list/filter-fields.native.js +15 -337
- package/dist/cjs/list/filter-fields.native.js.map +1 -1
- package/dist/cjs/list/filter-standard.cjs +5 -6
- package/dist/cjs/list/filter-standard.native.js +5 -6
- package/dist/cjs/list/filter-standard.native.js.map +1 -1
- package/dist/cjs/list/list-tools-sheet.cjs +2 -2
- package/dist/cjs/list/list-tools-sheet.native.js +2 -2
- package/dist/cjs/list/list-tools-sheet.native.js.map +1 -1
- package/dist/cjs/list/listColumns.cjs +2 -371
- package/dist/cjs/list/listColumns.native.js +2 -418
- package/dist/cjs/list/listColumns.native.js.map +1 -1
- package/dist/cjs/list/listFields.cjs +4 -24
- package/dist/cjs/list/listFields.native.js +4 -50
- package/dist/cjs/list/listFields.native.js.map +1 -1
- package/dist/cjs/list/listFormat.cjs +7 -42
- package/dist/cjs/list/listFormat.native.js +7 -45
- package/dist/cjs/list/listFormat.native.js.map +1 -1
- package/dist/cjs/list/statusColors.cjs +2 -76
- package/dist/cjs/list/statusColors.native.js +2 -80
- package/dist/cjs/list/statusColors.native.js.map +1 -1
- package/dist/cjs/report/queryReportColumns.cjs +2 -2
- package/dist/cjs/report/queryReportColumns.native.js +2 -2
- package/dist/cjs/report/queryReportColumns.native.js.map +1 -1
- package/dist/cjs/report/queryReportFilterBar.cjs +5 -6
- package/dist/cjs/report/queryReportFilterBar.native.js +5 -6
- package/dist/cjs/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/cjs/report/report-grid.cjs +2 -2
- package/dist/cjs/report/report-grid.native.js +2 -2
- package/dist/cjs/report/report-grid.native.js.map +1 -1
- package/dist/cjs/report/report-toolbar.cjs +2 -2
- package/dist/cjs/report/report-toolbar.native.js +2 -2
- package/dist/cjs/report/report-toolbar.native.js.map +1 -1
- package/dist/cjs/report/reportViewModel.cjs +3 -3
- package/dist/cjs/report/reportViewModel.native.js +3 -3
- package/dist/cjs/report/reportViewModel.native.js.map +1 -1
- package/dist/esm/list/DoctypeListScreen.mjs +3 -41
- package/dist/esm/list/DoctypeListScreen.mjs.map +1 -1
- package/dist/esm/list/DoctypeListScreen.native.js +4 -42
- package/dist/esm/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/esm/list/filter-chips.mjs +1 -1
- package/dist/esm/list/filter-chips.native.js +1 -1
- package/dist/esm/list/filter-chips.native.js.map +1 -1
- package/dist/esm/list/filter-editor.mjs +1 -2
- package/dist/esm/list/filter-editor.mjs.map +1 -1
- package/dist/esm/list/filter-editor.native.js +1 -2
- package/dist/esm/list/filter-editor.native.js.map +1 -1
- package/dist/esm/list/filter-fields.mjs +1 -253
- package/dist/esm/list/filter-fields.mjs.map +1 -1
- package/dist/esm/list/filter-fields.native.js +1 -323
- package/dist/esm/list/filter-fields.native.js.map +1 -1
- package/dist/esm/list/filter-standard.mjs +1 -2
- package/dist/esm/list/filter-standard.mjs.map +1 -1
- package/dist/esm/list/filter-standard.native.js +1 -2
- package/dist/esm/list/filter-standard.native.js.map +1 -1
- package/dist/esm/list/list-tools-sheet.mjs +1 -1
- package/dist/esm/list/list-tools-sheet.native.js +1 -1
- package/dist/esm/list/list-tools-sheet.native.js.map +1 -1
- package/dist/esm/list/listColumns.mjs +1 -370
- package/dist/esm/list/listColumns.mjs.map +1 -1
- package/dist/esm/list/listColumns.native.js +1 -417
- package/dist/esm/list/listColumns.native.js.map +1 -1
- package/dist/esm/list/listFields.mjs +1 -21
- package/dist/esm/list/listFields.mjs.map +1 -1
- package/dist/esm/list/listFields.native.js +1 -47
- package/dist/esm/list/listFields.native.js.map +1 -1
- package/dist/esm/list/listFormat.mjs +1 -36
- package/dist/esm/list/listFormat.mjs.map +1 -1
- package/dist/esm/list/listFormat.native.js +1 -39
- package/dist/esm/list/listFormat.native.js.map +1 -1
- package/dist/esm/list/statusColors.mjs +1 -75
- package/dist/esm/list/statusColors.mjs.map +1 -1
- package/dist/esm/list/statusColors.native.js +1 -79
- package/dist/esm/list/statusColors.native.js.map +1 -1
- package/dist/esm/report/queryReportColumns.mjs +1 -1
- package/dist/esm/report/queryReportColumns.native.js +1 -1
- package/dist/esm/report/queryReportColumns.native.js.map +1 -1
- package/dist/esm/report/queryReportFilterBar.mjs +1 -2
- package/dist/esm/report/queryReportFilterBar.mjs.map +1 -1
- package/dist/esm/report/queryReportFilterBar.native.js +1 -2
- package/dist/esm/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/esm/report/report-grid.mjs +1 -1
- package/dist/esm/report/report-grid.native.js +1 -1
- package/dist/esm/report/report-grid.native.js.map +1 -1
- package/dist/esm/report/report-toolbar.mjs +1 -1
- package/dist/esm/report/report-toolbar.native.js +1 -1
- package/dist/esm/report/report-toolbar.native.js.map +1 -1
- package/dist/esm/report/reportViewModel.mjs +1 -1
- package/dist/esm/report/reportViewModel.mjs.map +1 -1
- package/dist/esm/report/reportViewModel.native.js +1 -1
- package/dist/esm/report/reportViewModel.native.js.map +1 -1
- package/dist/jsx/chrome/BackofficeAwesomebar.native.js +1 -1
- package/dist/jsx/chrome/BackofficeAwesomebar.native.js.map +1 -1
- package/dist/jsx/chrome/CommandPalette.native.js +1 -1
- package/dist/jsx/chrome/CommandPalette.native.js.map +1 -1
- package/dist/jsx/chrome/HelpMenu.native.js +1 -1
- package/dist/jsx/chrome/HelpMenu.native.js.map +1 -1
- package/dist/jsx/chrome/NotificationsButton.native.js +1 -1
- package/dist/jsx/chrome/NotificationsButton.native.js.map +1 -1
- package/dist/jsx/chrome/UserMenu.native.js +1 -1
- package/dist/jsx/chrome/UserMenu.native.js.map +1 -1
- package/dist/jsx/chrome/awesomebar-data.native.js.map +1 -1
- package/dist/jsx/chrome/command-palette-model.native.js +1 -1
- package/dist/jsx/chrome/command-palette-model.native.js.map +1 -1
- package/dist/jsx/chrome/help-about-dialog.native.js +1 -1
- package/dist/jsx/chrome/help-about-dialog.native.js.map +1 -1
- package/dist/jsx/chrome/help-shortcuts-dialog.native.js +1 -1
- package/dist/jsx/chrome/help-shortcuts-dialog.native.js.map +1 -1
- package/dist/jsx/chrome/notifications-data.native.js.map +1 -1
- package/dist/jsx/chrome/notifications-panel.native.js +1 -1
- package/dist/jsx/chrome/notifications-panel.native.js.map +1 -1
- package/dist/jsx/chrome/notifications-utils.native.js.map +1 -1
- package/dist/jsx/chrome/shortcuts.native.js.map +1 -1
- package/dist/jsx/chrome/user-session.native.js.map +1 -1
- package/dist/jsx/config/BackofficeProvider.native.js +1 -1
- package/dist/jsx/config/BackofficeProvider.native.js.map +1 -1
- package/dist/jsx/config/capabilities.native.js.map +1 -1
- package/dist/jsx/config/events.native.js.map +1 -1
- package/dist/jsx/config/slots.native.js.map +1 -1
- package/dist/jsx/desk/Desk.native.js.map +1 -1
- package/dist/jsx/desk/DeskSurface.native.js.map +1 -1
- package/dist/jsx/desk/resolveDeskPath.native.js.map +1 -1
- package/dist/jsx/desk/scope.native.js.map +1 -1
- package/dist/jsx/desk/target.native.js.map +1 -1
- package/dist/jsx/form/DocFormScreen.native.js +1 -1
- package/dist/jsx/form/DocFormScreen.native.js.map +1 -1
- package/dist/jsx/form/FormConnections.native.js +1 -1
- package/dist/jsx/form/FormConnections.native.js.map +1 -1
- package/dist/jsx/form/FormDialogs.native.js +1 -1
- package/dist/jsx/form/FormDialogs.native.js.map +1 -1
- package/dist/jsx/form/FormErrorBoundary.native.js +1 -1
- package/dist/jsx/form/FormErrorBoundary.native.js.map +1 -1
- package/dist/jsx/form/FormHeaderCluster.native.js +1 -1
- package/dist/jsx/form/FormHeaderCluster.native.js.map +1 -1
- package/dist/jsx/form/FormSidebarPanel.native.js +1 -1
- package/dist/jsx/form/FormSidebarPanel.native.js.map +1 -1
- package/dist/jsx/form/FormTimeline.native.js +1 -1
- package/dist/jsx/form/FormTimeline.native.js.map +1 -1
- package/dist/jsx/form/FormToolbar.native.js +1 -1
- package/dist/jsx/form/FormToolbar.native.js.map +1 -1
- package/dist/jsx/form/connections-data.native.js.map +1 -1
- package/dist/jsx/form/createPrefill.native.js.map +1 -1
- package/dist/jsx/form/dependsOn.native.js.map +1 -1
- package/dist/jsx/form/dirtyTracking.native.js.map +1 -1
- package/dist/jsx/form/docinfo.native.js.map +1 -1
- package/dist/jsx/form/fetchFrom.native.js.map +1 -1
- package/dist/jsx/form/fieldPermissions.native.js.map +1 -1
- package/dist/jsx/form/formActions.native.js.map +1 -1
- package/dist/jsx/form/formLayout.native.js.map +1 -1
- package/dist/jsx/form/platformHooks.native.js.map +1 -1
- package/dist/jsx/form/sidebar-attachments.native.js +1 -1
- package/dist/jsx/form/sidebar-attachments.native.js.map +1 -1
- package/dist/jsx/form/sidebar-dialogs.native.js +1 -1
- package/dist/jsx/form/sidebar-dialogs.native.js.map +1 -1
- package/dist/jsx/form/sidebar-people.native.js +1 -1
- package/dist/jsx/form/sidebar-people.native.js.map +1 -1
- package/dist/jsx/form/sidebar-rpc.native.js.map +1 -1
- package/dist/jsx/form/sidebar-utils.native.js.map +1 -1
- package/dist/jsx/form/timeline-entries.native.js.map +1 -1
- package/dist/jsx/form/timeline-utils.native.js.map +1 -1
- package/dist/jsx/form/useFormEngine.native.js.map +1 -1
- package/dist/jsx/i18n/en.native.js.map +1 -1
- package/dist/jsx/i18n/index.native.js.map +1 -1
- package/dist/jsx/index.native.js +1 -1
- package/dist/jsx/index.native.js.map +1 -1
- package/dist/jsx/list/AddTagsDialog.native.js +1 -1
- package/dist/jsx/list/AddTagsDialog.native.js.map +1 -1
- package/dist/jsx/list/AssignToDialog.native.js +1 -1
- package/dist/jsx/list/AssignToDialog.native.js.map +1 -1
- package/dist/jsx/list/DoctypeListScreen.mjs +3 -41
- package/dist/jsx/list/DoctypeListScreen.mjs.map +1 -1
- package/dist/jsx/list/DoctypeListScreen.native.js +6 -44
- package/dist/jsx/list/DoctypeListScreen.native.js.map +1 -1
- package/dist/jsx/list/ListBulkActionsBar.native.js +1 -1
- package/dist/jsx/list/ListBulkActionsBar.native.js.map +1 -1
- package/dist/jsx/list/ListFilterBar.native.js +1 -1
- package/dist/jsx/list/ListFilterBar.native.js.map +1 -1
- package/dist/jsx/list/ListSidebar.native.js +1 -1
- package/dist/jsx/list/ListSidebar.native.js.map +1 -1
- package/dist/jsx/list/bulk-edit-dialog.native.js +1 -1
- package/dist/jsx/list/bulk-edit-dialog.native.js.map +1 -1
- package/dist/jsx/list/bulk-export.native.js.map +1 -1
- package/dist/jsx/list/bulk-submit-cancel.native.js.map +1 -1
- package/dist/jsx/list/bulkActions.native.js.map +1 -1
- package/dist/jsx/list/filter-chips.mjs +1 -1
- package/dist/jsx/list/filter-chips.native.js +4 -4
- package/dist/jsx/list/filter-chips.native.js.map +1 -1
- package/dist/jsx/list/filter-editor.mjs +1 -2
- package/dist/jsx/list/filter-editor.mjs.map +1 -1
- package/dist/jsx/list/filter-editor.native.js +11 -12
- package/dist/jsx/list/filter-editor.native.js.map +1 -1
- package/dist/jsx/list/filter-fields.mjs +1 -253
- package/dist/jsx/list/filter-fields.mjs.map +1 -1
- package/dist/jsx/list/filter-fields.native.js +15 -337
- package/dist/jsx/list/filter-fields.native.js.map +1 -1
- package/dist/jsx/list/filter-saved.native.js +1 -1
- package/dist/jsx/list/filter-saved.native.js.map +1 -1
- package/dist/jsx/list/filter-sort.native.js +1 -1
- package/dist/jsx/list/filter-sort.native.js.map +1 -1
- package/dist/jsx/list/filter-standard.mjs +1 -2
- package/dist/jsx/list/filter-standard.mjs.map +1 -1
- package/dist/jsx/list/filter-standard.native.js +5 -6
- package/dist/jsx/list/filter-standard.native.js.map +1 -1
- package/dist/jsx/list/filterConversion.native.js.map +1 -1
- package/dist/jsx/list/list-tools-sheet.mjs +1 -1
- package/dist/jsx/list/list-tools-sheet.native.js +3 -3
- package/dist/jsx/list/list-tools-sheet.native.js.map +1 -1
- package/dist/jsx/list/listColumns.mjs +1 -370
- package/dist/jsx/list/listColumns.mjs.map +1 -1
- package/dist/jsx/list/listColumns.native.js +2 -418
- package/dist/jsx/list/listColumns.native.js.map +1 -1
- package/dist/jsx/list/listFields.mjs +1 -21
- package/dist/jsx/list/listFields.mjs.map +1 -1
- package/dist/jsx/list/listFields.native.js +4 -50
- package/dist/jsx/list/listFields.native.js.map +1 -1
- package/dist/jsx/list/listFormat.mjs +1 -36
- package/dist/jsx/list/listFormat.mjs.map +1 -1
- package/dist/jsx/list/listFormat.native.js +7 -45
- package/dist/jsx/list/listFormat.native.js.map +1 -1
- package/dist/jsx/list/listUrlState.native.js.map +1 -1
- package/dist/jsx/list/sidebar-section.native.js +1 -1
- package/dist/jsx/list/sidebar-section.native.js.map +1 -1
- package/dist/jsx/list/sidebar-stats.native.js.map +1 -1
- package/dist/jsx/list/statusColors.mjs +1 -75
- package/dist/jsx/list/statusColors.mjs.map +1 -1
- package/dist/jsx/list/statusColors.native.js +2 -80
- package/dist/jsx/list/statusColors.native.js.map +1 -1
- package/dist/jsx/navigation/navigator.native.js.map +1 -1
- package/dist/jsx/navigation/paths.native.js.map +1 -1
- package/dist/jsx/oneAdapter/index.native.js.map +1 -1
- package/dist/jsx/quickEntry/QuickEntryDialog.native.js +1 -1
- package/dist/jsx/quickEntry/QuickEntryDialog.native.js.map +1 -1
- package/dist/jsx/quickEntry/quickEntryPlan.native.js.map +1 -1
- package/dist/jsx/report/DoctypeReportView.native.js +1 -1
- package/dist/jsx/report/DoctypeReportView.native.js.map +1 -1
- package/dist/jsx/report/QueryReportScreen.native.js +1 -1
- package/dist/jsx/report/QueryReportScreen.native.js.map +1 -1
- package/dist/jsx/report/queryReportColumns.mjs +1 -1
- package/dist/jsx/report/queryReportColumns.native.js +2 -2
- package/dist/jsx/report/queryReportColumns.native.js.map +1 -1
- package/dist/jsx/report/queryReportFilterBar.mjs +1 -2
- package/dist/jsx/report/queryReportFilterBar.mjs.map +1 -1
- package/dist/jsx/report/queryReportFilterBar.native.js +6 -7
- package/dist/jsx/report/queryReportFilterBar.native.js.map +1 -1
- package/dist/jsx/report/queryReportUrlState.native.js.map +1 -1
- package/dist/jsx/report/report-grid.mjs +1 -1
- package/dist/jsx/report/report-grid.native.js +3 -3
- package/dist/jsx/report/report-grid.native.js.map +1 -1
- package/dist/jsx/report/report-toolbar.mjs +1 -1
- package/dist/jsx/report/report-toolbar.native.js +3 -3
- package/dist/jsx/report/report-toolbar.native.js.map +1 -1
- package/dist/jsx/report/reportShapes.native.js.map +1 -1
- package/dist/jsx/report/reportViewModel.mjs +1 -1
- package/dist/jsx/report/reportViewModel.mjs.map +1 -1
- package/dist/jsx/report/reportViewModel.native.js +3 -3
- package/dist/jsx/report/reportViewModel.native.js.map +1 -1
- package/dist/jsx/report/savedReports.native.js.map +1 -1
- package/dist/jsx/report/useQueryReport.native.js.map +1 -1
- package/dist/jsx/shared/deskLinks.native.js.map +1 -1
- package/dist/jsx/shared/listNavContext.native.js.map +1 -1
- package/dist/jsx/shared/types.native.js.map +1 -1
- package/dist/jsx/shared/useDocinfo.native.js.map +1 -1
- package/dist/jsx/shared/useDoctypeMeta.native.js.map +1 -1
- package/dist/jsx/shared/useFrappeApp.native.js.map +1 -1
- package/dist/jsx/shared/useRecentVisit.native.js.map +1 -1
- package/dist/jsx/shared/useSessionUserId.native.js.map +1 -1
- package/dist/jsx/shared/useSlugTarget.native.js.map +1 -1
- package/dist/jsx/shared/useUserRoles.native.js.map +1 -1
- package/dist/jsx/shell/BackofficeShell.native.js +1 -1
- package/dist/jsx/shell/BackofficeShell.native.js.map +1 -1
- package/dist/jsx/shell/HomeRedirect.native.js +1 -1
- package/dist/jsx/shell/HomeRedirect.native.js.map +1 -1
- package/dist/jsx/shell/NotFoundScreen.native.js +1 -1
- package/dist/jsx/shell/NotFoundScreen.native.js.map +1 -1
- package/dist/jsx/shell/SlugScreen.native.js +1 -1
- package/dist/jsx/shell/SlugScreen.native.js.map +1 -1
- package/dist/jsx/shell/WorkspaceSidebar.native.js +1 -1
- package/dist/jsx/shell/WorkspaceSidebar.native.js.map +1 -1
- package/dist/jsx/shell/useWorkspaces.native.js.map +1 -1
- package/dist/jsx/shell/workspaceIcons.native.js.map +1 -1
- package/dist/jsx/views/CalendarView.native.js +1 -1
- package/dist/jsx/views/CalendarView.native.js.map +1 -1
- package/dist/jsx/views/DashboardView.native.js +1 -1
- package/dist/jsx/views/DashboardView.native.js.map +1 -1
- package/dist/jsx/views/DoctypeViewScreen.native.js.map +1 -1
- package/dist/jsx/views/ImageView.native.js +1 -1
- package/dist/jsx/views/ImageView.native.js.map +1 -1
- package/dist/jsx/views/KanbanView.native.js +1 -1
- package/dist/jsx/views/KanbanView.native.js.map +1 -1
- package/dist/jsx/views/ReportView.native.js +1 -1
- package/dist/jsx/views/ReportView.native.js.map +1 -1
- package/dist/jsx/views/TreeView.native.js +1 -1
- package/dist/jsx/views/TreeView.native.js.map +1 -1
- package/dist/jsx/views/ViewHeader.native.js +1 -1
- package/dist/jsx/views/ViewHeader.native.js.map +1 -1
- package/dist/jsx/views/ViewStates.native.js +1 -1
- package/dist/jsx/views/ViewStates.native.js.map +1 -1
- package/dist/jsx/views/ViewSwitcherMenu.native.js +1 -1
- package/dist/jsx/views/ViewSwitcherMenu.native.js.map +1 -1
- package/dist/jsx/views/calendar-field-selector.native.js +1 -1
- package/dist/jsx/views/calendar-field-selector.native.js.map +1 -1
- package/dist/jsx/views/connection.native.js.map +1 -1
- package/dist/jsx/views/dashboard-data.native.js.map +1 -1
- package/dist/jsx/views/deskViewConfigs.native.js.map +1 -1
- package/dist/jsx/views/kanban-board-controls.native.js +1 -1
- package/dist/jsx/views/kanban-board-controls.native.js.map +1 -1
- package/dist/jsx/views/kanban-field-picker.native.js +1 -1
- package/dist/jsx/views/kanban-field-picker.native.js.map +1 -1
- package/dist/jsx/views/kanbanBoardOps.native.js.map +1 -1
- package/dist/jsx/views/report-controls.native.js +1 -1
- package/dist/jsx/views/report-controls.native.js.map +1 -1
- package/dist/jsx/views/viewAvailability.native.js.map +1 -1
- package/dist/jsx/views/viewMeta.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceChartBlock.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceChartBlock.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceGrid.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceLinkCard.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceLinkCard.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceLinkDirectory.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceNumberCard.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceNumberCard.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceQuickList.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceQuickList.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceRecents.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceRecents.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceScreen.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceScreen.native.js.map +1 -1
- package/dist/jsx/workspace/WorkspaceShortcut.native.js +1 -1
- package/dist/jsx/workspace/WorkspaceShortcut.native.js.map +1 -1
- package/dist/jsx/workspace/parseContent.native.js.map +1 -1
- package/dist/jsx/workspace/types.native.js.map +1 -1
- package/dist/jsx/workspace/useDashboardChart.native.js.map +1 -1
- package/dist/jsx/workspace/useWorkspaceDoc.native.js.map +1 -1
- package/package.json +12 -12
- package/src/backofficeScreens.designLaw.spec.ts +1 -3
- package/src/list/DoctypeListScreen.auth.spec.tsx +84 -0
- package/src/list/DoctypeListScreen.tsx +18 -51
- package/src/list/filter-chips.tsx +1 -1
- package/src/list/filter-editor.tsx +2 -2
- package/src/list/filter-fields.tsx +29 -356
- package/src/list/filter-standard.tsx +2 -2
- package/src/list/list-tools-sheet.tsx +1 -1
- package/src/list/listColumns.tsx +11 -488
- package/src/list/listFields.ts +9 -66
- package/src/list/listFormat.ts +12 -77
- package/src/list/listShim.spec.ts +101 -0
- package/src/list/statusColors.ts +7 -92
- package/src/report/queryReportColumns.tsx +1 -1
- package/src/report/queryReportFilterBar.tsx +7 -2
- package/src/report/report-grid.tsx +1 -1
- package/src/report/report-toolbar.tsx +1 -1
- package/src/report/reportViewModel.ts +5 -1
- package/types/list/DoctypeListScreen.d.ts +1 -1
- package/types/list/DoctypeListScreen.d.ts.map +1 -1
- package/types/list/filter-editor.d.ts.map +1 -1
- package/types/list/filter-fields.d.ts +10 -78
- package/types/list/filter-fields.d.ts.map +1 -1
- package/types/list/filter-standard.d.ts.map +1 -1
- package/types/list/listColumns.d.ts +10 -40
- package/types/list/listColumns.d.ts.map +1 -1
- package/types/list/listFields.d.ts +5 -13
- package/types/list/listFields.d.ts.map +1 -1
- package/types/list/listFormat.d.ts +5 -27
- package/types/list/listFormat.d.ts.map +1 -1
- package/types/list/statusColors.d.ts +6 -11
- package/types/list/statusColors.d.ts.map +1 -1
- package/types/report/queryReportFilterBar.d.ts.map +1 -1
- package/types/report/reportViewModel.d.ts +1 -1
- package/types/report/reportViewModel.d.ts.map +1 -1
- package/src/list/filter-fields.spec.ts +0 -29
- package/src/list/listFields.spec.ts +0 -148
- package/src/list/listFormat.spec.ts +0 -151
- package/src/list/statusColors.spec.ts +0 -100
|
@@ -1,325 +1,3 @@
|
|
|
1
|
-
|
|
2
|
-
var NUMBER_FIELDTYPES = /* @__PURE__ */new Set(["Int", "Float", "Currency", "Percent", "Duration", "Rating"]);
|
|
3
|
-
var DATE_FIELDTYPES = /* @__PURE__ */new Set(["Date", "Datetime", "Time"]);
|
|
4
|
-
function fieldKind(fieldtype) {
|
|
5
|
-
if (fieldtype === "Select") return "select";
|
|
6
|
-
if (fieldtype === "Link") return "link";
|
|
7
|
-
if (fieldtype === "Check") return "check";
|
|
8
|
-
if (DATE_FIELDTYPES.has(fieldtype)) return "date";
|
|
9
|
-
if (NUMBER_FIELDTYPES.has(fieldtype)) return "number";
|
|
10
|
-
return "text";
|
|
11
|
-
}
|
|
12
|
-
function toDescriptor(field) {
|
|
13
|
-
return {
|
|
14
|
-
fieldname: field.fieldname,
|
|
15
|
-
label: field.label || field.fieldname,
|
|
16
|
-
fieldtype: field.fieldtype,
|
|
17
|
-
kind: fieldKind(field.fieldtype),
|
|
18
|
-
options: field.options
|
|
19
|
-
};
|
|
20
|
-
}
|
|
21
|
-
function standardDocFilterFields() {
|
|
22
|
-
return [{
|
|
23
|
-
fieldname: "name",
|
|
24
|
-
label: "ID",
|
|
25
|
-
fieldtype: "Data",
|
|
26
|
-
kind: "text"
|
|
27
|
-
}, {
|
|
28
|
-
fieldname: "owner",
|
|
29
|
-
label: "Created By",
|
|
30
|
-
fieldtype: "Link",
|
|
31
|
-
kind: "link",
|
|
32
|
-
options: "User"
|
|
33
|
-
}, {
|
|
34
|
-
fieldname: "creation",
|
|
35
|
-
label: "Created On",
|
|
36
|
-
fieldtype: "Datetime",
|
|
37
|
-
kind: "date"
|
|
38
|
-
}, {
|
|
39
|
-
fieldname: "modified",
|
|
40
|
-
label: "Last Updated On",
|
|
41
|
-
fieldtype: "Datetime",
|
|
42
|
-
kind: "date"
|
|
43
|
-
}, {
|
|
44
|
-
fieldname: "modified_by",
|
|
45
|
-
label: "Last Updated By",
|
|
46
|
-
fieldtype: "Link",
|
|
47
|
-
kind: "link",
|
|
48
|
-
options: "User"
|
|
49
|
-
},
|
|
50
|
-
// Desk `_` facet columns — the sidebar facets and heart column write
|
|
51
|
-
// tuples on these, so chips and the editor must label them (desk offers
|
|
52
|
-
// them in its filter field picker too). Never surface the raw
|
|
53
|
-
// underscore fieldname (no-raw-fieldname rule candidate).
|
|
54
|
-
{
|
|
55
|
-
fieldname: "_assign",
|
|
56
|
-
label: "Assigned To",
|
|
57
|
-
fieldtype: "Data",
|
|
58
|
-
kind: "text"
|
|
59
|
-
}, {
|
|
60
|
-
fieldname: "_user_tags",
|
|
61
|
-
label: "Tags",
|
|
62
|
-
fieldtype: "Data",
|
|
63
|
-
kind: "text"
|
|
64
|
-
}, {
|
|
65
|
-
fieldname: "_liked_by",
|
|
66
|
-
label: "Liked By",
|
|
67
|
-
fieldtype: "Data",
|
|
68
|
-
kind: "text"
|
|
69
|
-
}, {
|
|
70
|
-
fieldname: "_comments",
|
|
71
|
-
label: "Comments",
|
|
72
|
-
fieldtype: "Data",
|
|
73
|
-
kind: "text"
|
|
74
|
-
}];
|
|
75
|
-
}
|
|
76
|
-
function filterableFieldsFromMeta(meta) {
|
|
77
|
-
var _ref;
|
|
78
|
-
var out = [];
|
|
79
|
-
var seen = /* @__PURE__ */new Set();
|
|
80
|
-
var _iteratorNormalCompletion = true,
|
|
81
|
-
_didIteratorError = false,
|
|
82
|
-
_iteratorError = void 0;
|
|
83
|
-
try {
|
|
84
|
-
for (var _iterator = ((_ref = meta === null || meta === void 0 ? void 0 : meta.fields) !== null && _ref !== void 0 ? _ref : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {
|
|
85
|
-
var field = _step.value;
|
|
86
|
-
if (!field.fieldname || seen.has(field.fieldname)) continue;
|
|
87
|
-
var fieldtype = String(field.fieldtype);
|
|
88
|
-
if (NON_FILTERABLE_FIELDTYPES.has(fieldtype) || fieldtype.startsWith("Table")) continue;
|
|
89
|
-
seen.add(field.fieldname);
|
|
90
|
-
out.push(toDescriptor(field));
|
|
91
|
-
}
|
|
92
|
-
} catch (err) {
|
|
93
|
-
_didIteratorError = true;
|
|
94
|
-
_iteratorError = err;
|
|
95
|
-
} finally {
|
|
96
|
-
try {
|
|
97
|
-
if (!_iteratorNormalCompletion && _iterator.return != null) {
|
|
98
|
-
_iterator.return();
|
|
99
|
-
}
|
|
100
|
-
} finally {
|
|
101
|
-
if (_didIteratorError) {
|
|
102
|
-
throw _iteratorError;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
}
|
|
106
|
-
var _iteratorNormalCompletion1 = true,
|
|
107
|
-
_didIteratorError1 = false,
|
|
108
|
-
_iteratorError1 = void 0;
|
|
109
|
-
try {
|
|
110
|
-
for (var _iterator1 = standardDocFilterFields()[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {
|
|
111
|
-
var standard = _step1.value;
|
|
112
|
-
if (!seen.has(standard.fieldname)) out.push(standard);
|
|
113
|
-
}
|
|
114
|
-
} catch (err) {
|
|
115
|
-
_didIteratorError1 = true;
|
|
116
|
-
_iteratorError1 = err;
|
|
117
|
-
} finally {
|
|
118
|
-
try {
|
|
119
|
-
if (!_iteratorNormalCompletion1 && _iterator1.return != null) {
|
|
120
|
-
_iterator1.return();
|
|
121
|
-
}
|
|
122
|
-
} finally {
|
|
123
|
-
if (_didIteratorError1) {
|
|
124
|
-
throw _iteratorError1;
|
|
125
|
-
}
|
|
126
|
-
}
|
|
127
|
-
}
|
|
128
|
-
return out;
|
|
129
|
-
}
|
|
130
|
-
function standardFiltersFromMeta(meta) {
|
|
131
|
-
var _ref;
|
|
132
|
-
var fromMeta = ((_ref = meta === null || meta === void 0 ? void 0 : meta.fields) !== null && _ref !== void 0 ? _ref : []).filter(function (field) {
|
|
133
|
-
return field.in_standard_filter === 1 && field.hidden !== 1 && field.fieldname;
|
|
134
|
-
}).map(toDescriptor);
|
|
135
|
-
var seen = new Set(fromMeta.map(function (field) {
|
|
136
|
-
return field.fieldname;
|
|
137
|
-
}));
|
|
138
|
-
var extras = [];
|
|
139
|
-
if (!seen.has("name")) {
|
|
140
|
-
extras.push({
|
|
141
|
-
fieldname: "name",
|
|
142
|
-
label: "ID",
|
|
143
|
-
fieldtype: "Data",
|
|
144
|
-
kind: "text"
|
|
145
|
-
});
|
|
146
|
-
seen.add("name");
|
|
147
|
-
}
|
|
148
|
-
var titleField = meta === null || meta === void 0 ? void 0 : meta.title_field;
|
|
149
|
-
if (titleField && !seen.has(titleField)) {
|
|
150
|
-
var _meta_fields;
|
|
151
|
-
var titleMeta = meta === null || meta === void 0 ? void 0 : (_meta_fields = meta.fields) === null || _meta_fields === void 0 ? void 0 : _meta_fields.find(function (field) {
|
|
152
|
-
return field.fieldname === titleField;
|
|
153
|
-
});
|
|
154
|
-
extras.push({
|
|
155
|
-
fieldname: titleField,
|
|
156
|
-
label: (titleMeta === null || titleMeta === void 0 ? void 0 : titleMeta.label) || "Title",
|
|
157
|
-
fieldtype: (titleMeta === null || titleMeta === void 0 ? void 0 : titleMeta.fieldtype) || "Data",
|
|
158
|
-
kind: fieldKind((titleMeta === null || titleMeta === void 0 ? void 0 : titleMeta.fieldtype) || "Data")
|
|
159
|
-
});
|
|
160
|
-
}
|
|
161
|
-
return extras.length > 0 ? [...extras, ...fromMeta] : fromMeta;
|
|
162
|
-
}
|
|
163
|
-
function selectOptionsFromField(options) {
|
|
164
|
-
return (options !== null && options !== void 0 ? options : "").split("\n").map(function (line) {
|
|
165
|
-
return line.trim();
|
|
166
|
-
}).filter(Boolean).map(function (line) {
|
|
167
|
-
return {
|
|
168
|
-
label: line,
|
|
169
|
-
value: line
|
|
170
|
-
};
|
|
171
|
-
});
|
|
172
|
-
}
|
|
173
|
-
function fieldLabelFor(fields, fieldname) {
|
|
174
|
-
var _fields_find;
|
|
175
|
-
var known = (_fields_find = fields.find(function (field) {
|
|
176
|
-
return field.fieldname === fieldname;
|
|
177
|
-
})) === null || _fields_find === void 0 ? void 0 : _fields_find.label;
|
|
178
|
-
if (known) return known;
|
|
179
|
-
var pretty = fieldname.replace(/^_+/, "").split("_").filter(Boolean).map(function (word) {
|
|
180
|
-
return word.charAt(0).toUpperCase() + word.slice(1);
|
|
181
|
-
}).join(" ");
|
|
182
|
-
return pretty || fieldname;
|
|
183
|
-
}
|
|
184
|
-
var DESK_OPERATOR_LABELS = {
|
|
185
|
-
"=": "Equals",
|
|
186
|
-
"!=": "Not Equals",
|
|
187
|
-
like: "Like",
|
|
188
|
-
"not like": "Not Like",
|
|
189
|
-
in: "In",
|
|
190
|
-
"not in": "Not In",
|
|
191
|
-
">": "Greater Than",
|
|
192
|
-
"<": "Less Than",
|
|
193
|
-
">=": "Greater Than or Equal",
|
|
194
|
-
"<=": "Less Than or Equal",
|
|
195
|
-
between: "Between",
|
|
196
|
-
"is set": "Is Set",
|
|
197
|
-
"is not set": "Is Not Set"
|
|
198
|
-
};
|
|
199
|
-
var BASE_OPERATORS = ["=", "!=", "like", "not like", "in", "not in", "is set", "is not set"];
|
|
200
|
-
function operatorsForKind(kind) {
|
|
201
|
-
switch (kind) {
|
|
202
|
-
case "check":
|
|
203
|
-
return ["=", "!="];
|
|
204
|
-
case "number":
|
|
205
|
-
case "date":
|
|
206
|
-
return ["=", "!=", ">", "<", ">=", "<=", "between", "in", "not in", "is set", "is not set"];
|
|
207
|
-
default:
|
|
208
|
-
return BASE_OPERATORS;
|
|
209
|
-
}
|
|
210
|
-
}
|
|
211
|
-
function defaultOperatorForKind(kind) {
|
|
212
|
-
return kind === "text" ? "like" : "=";
|
|
213
|
-
}
|
|
214
|
-
function draftToTuple(draft, kind) {
|
|
215
|
-
var {
|
|
216
|
-
fieldname,
|
|
217
|
-
operator
|
|
218
|
-
} = draft;
|
|
219
|
-
if (!fieldname) return null;
|
|
220
|
-
switch (operator) {
|
|
221
|
-
case "is set":
|
|
222
|
-
return [fieldname, "is", "set"];
|
|
223
|
-
case "is not set":
|
|
224
|
-
return [fieldname, "is", "not set"];
|
|
225
|
-
case "in":
|
|
226
|
-
case "not in":
|
|
227
|
-
{
|
|
228
|
-
var values = kind === "select" ? draft.values.map(function (value) {
|
|
229
|
-
return value.trim();
|
|
230
|
-
}).filter(Boolean) : draft.value.split(",").map(function (value) {
|
|
231
|
-
return value.trim();
|
|
232
|
-
}).filter(Boolean);
|
|
233
|
-
return values.length ? [fieldname, operator, values] : null;
|
|
234
|
-
}
|
|
235
|
-
case "between":
|
|
236
|
-
{
|
|
237
|
-
var _draft_values_, _draft_values_1;
|
|
238
|
-
var from = ((_draft_values_ = draft.values[0]) !== null && _draft_values_ !== void 0 ? _draft_values_ : "").trim();
|
|
239
|
-
var to = ((_draft_values_1 = draft.values[1]) !== null && _draft_values_1 !== void 0 ? _draft_values_1 : "").trim();
|
|
240
|
-
return from && to ? [fieldname, "between", [from, to]] : null;
|
|
241
|
-
}
|
|
242
|
-
case "like":
|
|
243
|
-
case "not like":
|
|
244
|
-
{
|
|
245
|
-
var text = draft.value.trim();
|
|
246
|
-
if (!text) return null;
|
|
247
|
-
return [fieldname, operator, text.includes("%") ? text : `%${text}%`];
|
|
248
|
-
}
|
|
249
|
-
default:
|
|
250
|
-
{
|
|
251
|
-
var text1 = draft.value.trim();
|
|
252
|
-
return text1 ? [fieldname, operator, text1] : null;
|
|
253
|
-
}
|
|
254
|
-
}
|
|
255
|
-
}
|
|
256
|
-
var SCALAR_OPERATORS = ["=", "!=", "like", "not like", ">", "<", ">=", "<="];
|
|
257
|
-
function tupleToDraft(tuple) {
|
|
258
|
-
var [fieldname, operator, raw] = tuple;
|
|
259
|
-
if (operator === "is") {
|
|
260
|
-
return {
|
|
261
|
-
fieldname,
|
|
262
|
-
operator: raw === "set" ? "is set" : "is not set",
|
|
263
|
-
value: "",
|
|
264
|
-
values: []
|
|
265
|
-
};
|
|
266
|
-
}
|
|
267
|
-
if (operator === "in" || operator === "not in") {
|
|
268
|
-
var values = Array.isArray(raw) ? raw.map(String) : String(raw !== null && raw !== void 0 ? raw : "").split(",").map(function (value) {
|
|
269
|
-
return value.trim();
|
|
270
|
-
}).filter(Boolean);
|
|
271
|
-
return {
|
|
272
|
-
fieldname,
|
|
273
|
-
operator,
|
|
274
|
-
value: values.join(", "),
|
|
275
|
-
values
|
|
276
|
-
};
|
|
277
|
-
}
|
|
278
|
-
if (operator === "between") {
|
|
279
|
-
var _values_, _values_1;
|
|
280
|
-
var values1 = Array.isArray(raw) ? raw.map(String) : [];
|
|
281
|
-
return {
|
|
282
|
-
fieldname,
|
|
283
|
-
operator: "between",
|
|
284
|
-
value: "",
|
|
285
|
-
values: [(_values_ = values1[0]) !== null && _values_ !== void 0 ? _values_ : "", (_values_1 = values1[1]) !== null && _values_1 !== void 0 ? _values_1 : ""]
|
|
286
|
-
};
|
|
287
|
-
}
|
|
288
|
-
var known = SCALAR_OPERATORS.includes(operator) ? operator : "=";
|
|
289
|
-
return {
|
|
290
|
-
fieldname,
|
|
291
|
-
operator: known,
|
|
292
|
-
value: raw === null || raw === void 0 ? "" : String(raw),
|
|
293
|
-
values: []
|
|
294
|
-
};
|
|
295
|
-
}
|
|
296
|
-
function setFieldFilter(filters, fieldname, tuple) {
|
|
297
|
-
var rest = filters.filter(function (param) {
|
|
298
|
-
var [name] = param;
|
|
299
|
-
return name !== fieldname;
|
|
300
|
-
});
|
|
301
|
-
return tuple ? [...rest, tuple] : rest;
|
|
302
|
-
}
|
|
303
|
-
function quickFilterValue(filters, fieldname) {
|
|
304
|
-
var tuple = filters.find(function (param) {
|
|
305
|
-
var [name] = param;
|
|
306
|
-
return name === fieldname;
|
|
307
|
-
});
|
|
308
|
-
if (!tuple) return "";
|
|
309
|
-
var [, operator, raw] = tuple;
|
|
310
|
-
if (operator === "like") {
|
|
311
|
-
var text = String(raw !== null && raw !== void 0 ? raw : "");
|
|
312
|
-
return text.startsWith("%") && text.endsWith("%") && text.length >= 2 ? text.slice(1, -1) : text;
|
|
313
|
-
}
|
|
314
|
-
if (operator === "=") return raw === null || raw === void 0 ? "" : String(raw);
|
|
315
|
-
return "";
|
|
316
|
-
}
|
|
317
|
-
function filterTupleLabel(fields, tuple) {
|
|
318
|
-
var [fieldname, operator, raw] = tuple;
|
|
319
|
-
var label = fieldLabelFor(fields, fieldname);
|
|
320
|
-
if (operator === "is") return `${label} ${raw === "set" ? "is set" : "is not set"}`;
|
|
321
|
-
var value = Array.isArray(raw) ? raw.map(String).join(", ") : String(raw !== null && raw !== void 0 ? raw : "");
|
|
322
|
-
return `${label} ${operator} ${value}`;
|
|
323
|
-
}
|
|
1
|
+
import { defaultOperatorForKind, DESK_OPERATOR_LABELS, draftToTuple, fieldKind, fieldLabelFor, filterableFieldsFromMeta, filterTupleLabel, operatorsForKind, quickFilterValue, selectOptionsFromField, setFieldFilter, standardDocFilterFields, standardFiltersFromMeta, tupleToDraft } from "@multiplatform.one/frappe-ui";
|
|
324
2
|
export { DESK_OPERATOR_LABELS, defaultOperatorForKind, draftToTuple, fieldKind, fieldLabelFor, filterTupleLabel, filterableFieldsFromMeta, operatorsForKind, quickFilterValue, selectOptionsFromField, setFieldFilter, standardDocFilterFields, standardFiltersFromMeta, tupleToDraft };
|
|
325
3
|
//# sourceMappingURL=filter-fields.native.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["NON_FILTERABLE_FIELDTYPES","Set","NUMBER_FIELDTYPES","DATE_FIELDTYPES","fieldKind","fieldtype","has","toDescriptor","field","fieldname","label","kind","options","standardDocFilterFields","filterableFieldsFromMeta","meta","_ref","out","seen","_iteratorNormalCompletion","_didIteratorError","_iteratorError","_iterator","fields","Symbol","iterator","_step","next","done","value","String","startsWith","add","push","err","return","_iteratorNormalCompletion1","_didIteratorError1","_iteratorError1","_iterator1","_step1","standard","standardFiltersFromMeta","fromMeta","filter","in_standard_filter","hidden","map","extras","titleField","title_field","_meta_fields","titleMeta","find","length","selectOptionsFromField","split","line","trim","Boolean","fieldLabelFor","_fields_find","known","pretty","replace","word","charAt","toUpperCase","slice","join","DESK_OPERATOR_LABELS","like","in","between","BASE_OPERATORS","operatorsForKind","defaultOperatorForKind","draftToTuple","draft","operator","values","_draft_values_","_draft_values_1","from","to","text","includes","text1","SCALAR_OPERATORS","tupleToDraft","tuple","raw","Array","isArray","_values_","_values_1","values1","setFieldFilter","filters","rest","param","name","quickFilterValue","endsWith","filterTupleLabel"],"sources":["filter-fields.native.js"],"sourcesContent":["var NON_FILTERABLE_FIELDTYPES = /* @__PURE__ */ new Set([\n \"Section Break\",\n \"Column Break\",\n \"Tab Break\",\n \"Fold\",\n \"Heading\",\n \"HTML\",\n \"Button\",\n \"Image\",\n \"Attach\",\n \"Attach Image\",\n \"Signature\",\n \"Geolocation\",\n \"Password\"\n]);\nvar NUMBER_FIELDTYPES = /* @__PURE__ */ new Set([\n \"Int\",\n \"Float\",\n \"Currency\",\n \"Percent\",\n \"Duration\",\n \"Rating\"\n]);\nvar DATE_FIELDTYPES = /* @__PURE__ */ new Set([\n \"Date\",\n \"Datetime\",\n \"Time\"\n]);\nfunction fieldKind(fieldtype) {\n if (fieldtype === \"Select\") return \"select\";\n if (fieldtype === \"Link\") return \"link\";\n if (fieldtype === \"Check\") return \"check\";\n if (DATE_FIELDTYPES.has(fieldtype)) return \"date\";\n if (NUMBER_FIELDTYPES.has(fieldtype)) return \"number\";\n return \"text\";\n}\nfunction toDescriptor(field) {\n return {\n fieldname: field.fieldname,\n label: field.label || field.fieldname,\n fieldtype: field.fieldtype,\n kind: fieldKind(field.fieldtype),\n options: field.options\n };\n}\nfunction standardDocFilterFields() {\n return [\n {\n fieldname: \"name\",\n label: \"ID\",\n fieldtype: \"Data\",\n kind: \"text\"\n },\n {\n fieldname: \"owner\",\n label: \"Created By\",\n fieldtype: \"Link\",\n kind: \"link\",\n options: \"User\"\n },\n {\n fieldname: \"creation\",\n label: \"Created On\",\n fieldtype: \"Datetime\",\n kind: \"date\"\n },\n {\n fieldname: \"modified\",\n label: \"Last Updated On\",\n fieldtype: \"Datetime\",\n kind: \"date\"\n },\n {\n fieldname: \"modified_by\",\n label: \"Last Updated By\",\n fieldtype: \"Link\",\n kind: \"link\",\n options: \"User\"\n },\n // Desk `_` facet columns — the sidebar facets and heart column write\n // tuples on these, so chips and the editor must label them (desk offers\n // them in its filter field picker too). Never surface the raw\n // underscore fieldname (no-raw-fieldname rule candidate).\n {\n fieldname: \"_assign\",\n label: \"Assigned To\",\n fieldtype: \"Data\",\n kind: \"text\"\n },\n {\n fieldname: \"_user_tags\",\n label: \"Tags\",\n fieldtype: \"Data\",\n kind: \"text\"\n },\n {\n fieldname: \"_liked_by\",\n label: \"Liked By\",\n fieldtype: \"Data\",\n kind: \"text\"\n },\n {\n fieldname: \"_comments\",\n label: \"Comments\",\n fieldtype: \"Data\",\n kind: \"text\"\n }\n ];\n}\nfunction filterableFieldsFromMeta(meta) {\n var _ref;\n var out = [];\n var seen = /* @__PURE__ */ new Set();\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = ((_ref = meta === null || meta === void 0 ? void 0 : meta.fields) !== null && _ref !== void 0 ? _ref : [])[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var field = _step.value;\n if (!field.fieldname || seen.has(field.fieldname)) continue;\n var fieldtype = String(field.fieldtype);\n if (NON_FILTERABLE_FIELDTYPES.has(fieldtype) || fieldtype.startsWith(\"Table\")) continue;\n seen.add(field.fieldname);\n out.push(toDescriptor(field));\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 var _iteratorNormalCompletion1 = true, _didIteratorError1 = false, _iteratorError1 = void 0;\n try {\n for (var _iterator1 = standardDocFilterFields()[Symbol.iterator](), _step1; !(_iteratorNormalCompletion1 = (_step1 = _iterator1.next()).done); _iteratorNormalCompletion1 = true) {\n var standard = _step1.value;\n if (!seen.has(standard.fieldname)) out.push(standard);\n }\n } catch (err) {\n _didIteratorError1 = true;\n _iteratorError1 = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion1 && _iterator1.return != null) {\n _iterator1.return();\n }\n } finally {\n if (_didIteratorError1) {\n throw _iteratorError1;\n }\n }\n }\n return out;\n}\nfunction standardFiltersFromMeta(meta) {\n var _ref;\n var fromMeta = ((_ref = meta === null || meta === void 0 ? void 0 : meta.fields) !== null && _ref !== void 0 ? _ref : []).filter(function(field) {\n return field.in_standard_filter === 1 && field.hidden !== 1 && field.fieldname;\n }).map(toDescriptor);\n var seen = new Set(fromMeta.map(function(field) {\n return field.fieldname;\n }));\n var extras = [];\n if (!seen.has(\"name\")) {\n extras.push({\n fieldname: \"name\",\n label: \"ID\",\n fieldtype: \"Data\",\n kind: \"text\"\n });\n seen.add(\"name\");\n }\n var titleField = meta === null || meta === void 0 ? void 0 : meta.title_field;\n if (titleField && !seen.has(titleField)) {\n var _meta_fields;\n var titleMeta = meta === null || meta === void 0 ? void 0 : (_meta_fields = meta.fields) === null || _meta_fields === void 0 ? void 0 : _meta_fields.find(function(field) {\n return field.fieldname === titleField;\n });\n extras.push({\n fieldname: titleField,\n label: (titleMeta === null || titleMeta === void 0 ? void 0 : titleMeta.label) || \"Title\",\n fieldtype: (titleMeta === null || titleMeta === void 0 ? void 0 : titleMeta.fieldtype) || \"Data\",\n kind: fieldKind((titleMeta === null || titleMeta === void 0 ? void 0 : titleMeta.fieldtype) || \"Data\")\n });\n }\n return extras.length > 0 ? [\n ...extras,\n ...fromMeta\n ] : fromMeta;\n}\nfunction selectOptionsFromField(options) {\n return (options !== null && options !== void 0 ? options : \"\").split(\"\\n\").map(function(line) {\n return line.trim();\n }).filter(Boolean).map(function(line) {\n return {\n label: line,\n value: line\n };\n });\n}\nfunction fieldLabelFor(fields, fieldname) {\n var _fields_find;\n var known = (_fields_find = fields.find(function(field) {\n return field.fieldname === fieldname;\n })) === null || _fields_find === void 0 ? void 0 : _fields_find.label;\n if (known) return known;\n var pretty = fieldname.replace(/^_+/, \"\").split(\"_\").filter(Boolean).map(function(word) {\n return word.charAt(0).toUpperCase() + word.slice(1);\n }).join(\" \");\n return pretty || fieldname;\n}\nvar DESK_OPERATOR_LABELS = {\n \"=\": \"Equals\",\n \"!=\": \"Not Equals\",\n like: \"Like\",\n \"not like\": \"Not Like\",\n in: \"In\",\n \"not in\": \"Not In\",\n \">\": \"Greater Than\",\n \"<\": \"Less Than\",\n \">=\": \"Greater Than or Equal\",\n \"<=\": \"Less Than or Equal\",\n between: \"Between\",\n \"is set\": \"Is Set\",\n \"is not set\": \"Is Not Set\"\n};\nvar BASE_OPERATORS = [\n \"=\",\n \"!=\",\n \"like\",\n \"not like\",\n \"in\",\n \"not in\",\n \"is set\",\n \"is not set\"\n];\nfunction operatorsForKind(kind) {\n switch (kind) {\n case \"check\":\n return [\n \"=\",\n \"!=\"\n ];\n case \"number\":\n case \"date\":\n return [\n \"=\",\n \"!=\",\n \">\",\n \"<\",\n \">=\",\n \"<=\",\n \"between\",\n \"in\",\n \"not in\",\n \"is set\",\n \"is not set\"\n ];\n default:\n return BASE_OPERATORS;\n }\n}\nfunction defaultOperatorForKind(kind) {\n return kind === \"text\" ? \"like\" : \"=\";\n}\nfunction draftToTuple(draft, kind) {\n var { fieldname, operator } = draft;\n if (!fieldname) return null;\n switch (operator) {\n case \"is set\":\n return [\n fieldname,\n \"is\",\n \"set\"\n ];\n case \"is not set\":\n return [\n fieldname,\n \"is\",\n \"not set\"\n ];\n case \"in\":\n case \"not in\": {\n var values = kind === \"select\" ? draft.values.map(function(value) {\n return value.trim();\n }).filter(Boolean) : draft.value.split(\",\").map(function(value) {\n return value.trim();\n }).filter(Boolean);\n return values.length ? [\n fieldname,\n operator,\n values\n ] : null;\n }\n case \"between\": {\n var _draft_values_, _draft_values_1;\n var from = ((_draft_values_ = draft.values[0]) !== null && _draft_values_ !== void 0 ? _draft_values_ : \"\").trim();\n var to = ((_draft_values_1 = draft.values[1]) !== null && _draft_values_1 !== void 0 ? _draft_values_1 : \"\").trim();\n return from && to ? [\n fieldname,\n \"between\",\n [\n from,\n to\n ]\n ] : null;\n }\n case \"like\":\n case \"not like\": {\n var text = draft.value.trim();\n if (!text) return null;\n return [\n fieldname,\n operator,\n text.includes(\"%\") ? text : `%${text}%`\n ];\n }\n default: {\n var text1 = draft.value.trim();\n return text1 ? [\n fieldname,\n operator,\n text1\n ] : null;\n }\n }\n}\nvar SCALAR_OPERATORS = [\n \"=\",\n \"!=\",\n \"like\",\n \"not like\",\n \">\",\n \"<\",\n \">=\",\n \"<=\"\n];\nfunction tupleToDraft(tuple) {\n var [fieldname, operator, raw] = tuple;\n if (operator === \"is\") {\n return {\n fieldname,\n operator: raw === \"set\" ? \"is set\" : \"is not set\",\n value: \"\",\n values: []\n };\n }\n if (operator === \"in\" || operator === \"not in\") {\n var values = Array.isArray(raw) ? raw.map(String) : String(raw !== null && raw !== void 0 ? raw : \"\").split(\",\").map(function(value) {\n return value.trim();\n }).filter(Boolean);\n return {\n fieldname,\n operator,\n value: values.join(\", \"),\n values\n };\n }\n if (operator === \"between\") {\n var _values_, _values_1;\n var values1 = Array.isArray(raw) ? raw.map(String) : [];\n return {\n fieldname,\n operator: \"between\",\n value: \"\",\n values: [\n (_values_ = values1[0]) !== null && _values_ !== void 0 ? _values_ : \"\",\n (_values_1 = values1[1]) !== null && _values_1 !== void 0 ? _values_1 : \"\"\n ]\n };\n }\n var known = SCALAR_OPERATORS.includes(operator) ? operator : \"=\";\n return {\n fieldname,\n operator: known,\n value: raw === null || raw === void 0 ? \"\" : String(raw),\n values: []\n };\n}\nfunction setFieldFilter(filters, fieldname, tuple) {\n var rest = filters.filter(function(param) {\n var [name] = param;\n return name !== fieldname;\n });\n return tuple ? [\n ...rest,\n tuple\n ] : rest;\n}\nfunction quickFilterValue(filters, fieldname) {\n var tuple = filters.find(function(param) {\n var [name] = param;\n return name === fieldname;\n });\n if (!tuple) return \"\";\n var [, operator, raw] = tuple;\n if (operator === \"like\") {\n var text = String(raw !== null && raw !== void 0 ? raw : \"\");\n return text.startsWith(\"%\") && text.endsWith(\"%\") && text.length >= 2 ? text.slice(1, -1) : text;\n }\n if (operator === \"=\") return raw === null || raw === void 0 ? \"\" : String(raw);\n return \"\";\n}\nfunction filterTupleLabel(fields, tuple) {\n var [fieldname, operator, raw] = tuple;\n var label = fieldLabelFor(fields, fieldname);\n if (operator === \"is\") return `${label} ${raw === \"set\" ? \"is set\" : \"is not set\"}`;\n var value = Array.isArray(raw) ? raw.map(String).join(\", \") : String(raw !== null && raw !== void 0 ? raw : \"\");\n return `${label} ${operator} ${value}`;\n}\nexport {\n DESK_OPERATOR_LABELS,\n defaultOperatorForKind,\n draftToTuple,\n fieldKind,\n fieldLabelFor,\n filterTupleLabel,\n filterableFieldsFromMeta,\n operatorsForKind,\n quickFilterValue,\n selectOptionsFromField,\n setFieldFilter,\n standardDocFilterFields,\n standardFiltersFromMeta,\n tupleToDraft\n};\n//# sourceMappingURL=filter-fields.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["defaultOperatorForKind","DESK_OPERATOR_LABELS","draftToTuple","fieldKind","fieldLabelFor","filterableFieldsFromMeta","filterTupleLabel","operatorsForKind","quickFilterValue","selectOptionsFromField","setFieldFilter","standardDocFilterFields","standardFiltersFromMeta","tupleToDraft"],"sources":["filter-fields.native.js"],"sourcesContent":["import { defaultOperatorForKind, DESK_OPERATOR_LABELS, draftToTuple, fieldKind, fieldLabelFor, filterableFieldsFromMeta, filterTupleLabel, operatorsForKind, quickFilterValue, selectOptionsFromField, setFieldFilter, standardDocFilterFields, standardFiltersFromMeta, tupleToDraft } from \"@multiplatform.one/frappe-ui\";\nexport {\n DESK_OPERATOR_LABELS,\n defaultOperatorForKind,\n draftToTuple,\n fieldKind,\n fieldLabelFor,\n filterTupleLabel,\n filterableFieldsFromMeta,\n operatorsForKind,\n quickFilterValue,\n selectOptionsFromField,\n setFieldFilter,\n standardDocFilterFields,\n standardFiltersFromMeta,\n tupleToDraft\n};\n//# sourceMappingURL=filter-fields.js.map\n"],"mappings":"AAAA,SAASA,sBAAsB,EAAEC,oBAAoB,EAAEC,YAAY,EAAEC,SAAS,EAAEC,aAAa,EAAEC,wBAAwB,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEC,gBAAgB,EAAEC,sBAAsB,EAAEC,cAAc,EAAEC,uBAAuB,EAAEC,uBAAuB,EAAEC,YAAY,QAAQ,8BAA8B;AAC3T,SACEZ,oBAAoB,EACpBD,sBAAsB,EACtBE,YAAY,EACZC,SAAS,EACTC,aAAa,EACbE,gBAAgB,EAChBD,wBAAwB,EACxBE,gBAAgB,EAChBC,gBAAgB,EAChBC,sBAAsB,EACtBC,cAAc,EACdC,uBAAuB,EACvBC,uBAAuB,EACvBC,YAAY","ignoreList":[]}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { XStack, YStack } from "@multiplatform.one/components";
|
|
2
2
|
import { Checkbox, Input, Select } from "@multiplatform.one/forms";
|
|
3
|
-
import { Link as LinkField } from "@multiplatform.one/frappe-ui";
|
|
4
3
|
import { useEffect, useRef, useState } from "react";
|
|
5
|
-
import { quickFilterValue, selectOptionsFromField, setFieldFilter, standardFiltersFromMeta } from "
|
|
4
|
+
import { Link as LinkField, quickFilterValue, selectOptionsFromField, setFieldFilter, standardFiltersFromMeta } from "@multiplatform.one/frappe-ui";
|
|
6
5
|
import { jsx } from "react/jsx-runtime";
|
|
7
6
|
function StandardFilters({
|
|
8
7
|
meta,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["XStack","YStack","Checkbox","Input","Select","
|
|
1
|
+
{"version":3,"names":["XStack","YStack","Checkbox","Input","Select","useEffect","useRef","useState","Link","LinkField","quickFilterValue","selectOptionsFromField","setFieldFilter","standardFiltersFromMeta","jsx","StandardFilters","meta","filters","onFiltersChange","vertical","fields","length","controls","map","field","StandardFilterControl","fieldname","gap","children","flexWrap","alignItems","value","commit","tuple","kind","select","onChange","next","options","placeholder","label","size","compact","width","link","doctype","checked","onCheckedChange","DebouncedTextFilter","externalValue","draft","setDraft","committedRef","commitRef","current","timer","setTimeout","text","trim","clearTimeout","input","onChangeText","keyboardType"],"sources":["../../../src/list/filter-standard.tsx"],"sourcesContent":[null],"mappings":"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","ignoreList":[]}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { XStack, YStack } from "@multiplatform.one/components";
|
|
3
3
|
import { Checkbox, Input, Select } from "@multiplatform.one/forms";
|
|
4
|
-
import { Link as LinkField } from "@multiplatform.one/frappe-ui";
|
|
5
4
|
import { useEffect, useRef, useState } from "react";
|
|
6
|
-
import { quickFilterValue, selectOptionsFromField, setFieldFilter, standardFiltersFromMeta } from "
|
|
5
|
+
import { Link as LinkField, quickFilterValue, selectOptionsFromField, setFieldFilter, standardFiltersFromMeta } from "@multiplatform.one/frappe-ui";
|
|
7
6
|
function StandardFilters(param) {
|
|
8
7
|
var {
|
|
9
8
|
meta,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","XStack","YStack","Checkbox","Input","Select","Link","LinkField","useEffect","useRef","useState","quickFilterValue","selectOptionsFromField","setFieldFilter","standardFiltersFromMeta","StandardFilters","param","meta","filters","onFiltersChange","vertical","fields","length","controls","map","field","StandardFilterControl","fieldname","gap","children","flexWrap","alignItems","value","commit","commit2","tuple","kind","select","onChange","next","options","placeholder","label","size","compact","width","_field_options","link","doctype","checked","onCheckedChange","DebouncedTextFilter","externalValue","draft","setDraft","committedRef","commitRef","current","timer","setTimeout","text","trim","clearTimeout","input","onChangeText","keyboardType"],"sources":["filter-standard.native.js"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { XStack, YStack } from \"@multiplatform.one/components\";\nimport { Checkbox, Input, Select } from \"@multiplatform.one/forms\";\nimport { Link as LinkField } from \"@multiplatform.one/frappe-ui\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { quickFilterValue, selectOptionsFromField, setFieldFilter, standardFiltersFromMeta } from \"./filter-fields\";\nfunction StandardFilters(param) {\n var { meta, filters, onFiltersChange, vertical } = param;\n var fields = standardFiltersFromMeta(meta);\n if (!fields.length) return null;\n var controls = fields.map(function(field) {\n return /* @__PURE__ */ _jsx(StandardFilterControl, {\n field,\n filters,\n onFiltersChange,\n vertical\n }, field.fieldname);\n });\n if (vertical) {\n return /* @__PURE__ */ _jsx(YStack, {\n gap: \"$2\",\n children: controls\n });\n }\n return /* @__PURE__ */ _jsx(XStack, {\n gap: \"$1.5\",\n flexWrap: \"wrap\",\n alignItems: \"center\",\n children: controls\n });\n}\nfunction StandardFilterControl(param) {\n var { field, filters, onFiltersChange, vertical } = param;\n var value = quickFilterValue(filters, field.fieldname);\n var commit = function commit2(tuple) {\n return onFiltersChange(setFieldFilter(filters, field.fieldname, tuple));\n };\n switch (field.kind) {\n case \"select\": {\n var select = /* @__PURE__ */ _jsx(Select, {\n value,\n onChange: function onChange(next) {\n if (typeof next !== \"string\") return;\n commit(next ? [\n field.fieldname,\n \"=\",\n next\n ] : void 0);\n },\n options: selectOptionsFromField(field.options),\n placeholder: field.label,\n size: \"$3\",\n compact: true,\n \"aria-label\": field.label\n });\n return vertical ? /* @__PURE__ */ _jsx(YStack, {\n width: \"100%\",\n children: select\n }) : select;\n }\n case \"link\": {\n var _field_options;\n var link = /* @__PURE__ */ _jsx(LinkField, {\n value,\n onChange: function onChange(next) {\n return commit(next ? [\n field.fieldname,\n \"=\",\n next\n ] : void 0);\n },\n doctype: (_field_options = field.options) !== null && _field_options !== void 0 ? _field_options : \"\",\n placeholder: field.label,\n compact: true\n });\n return vertical ? /* @__PURE__ */ _jsx(YStack, {\n width: \"100%\",\n children: link\n }) : link;\n }\n case \"check\":\n return /* @__PURE__ */ _jsx(Checkbox, {\n label: field.label,\n checked: value === \"1\" || value === \"true\",\n onCheckedChange: function onCheckedChange(checked) {\n return commit(checked === true ? [\n field.fieldname,\n \"=\",\n 1\n ] : void 0);\n }\n });\n default:\n return /* @__PURE__ */ _jsx(DebouncedTextFilter, {\n field,\n externalValue: value,\n commit,\n vertical\n });\n }\n}\nfunction DebouncedTextFilter(param) {\n var { field, externalValue, commit, vertical } = param;\n var [draft, setDraft] = useState(externalValue);\n var committedRef = useRef(externalValue);\n var commitRef = useRef(commit);\n commitRef.current = commit;\n useEffect(function() {\n if (externalValue !== committedRef.current) {\n committedRef.current = externalValue;\n setDraft(externalValue);\n }\n }, [\n externalValue\n ]);\n useEffect(function() {\n if (draft === committedRef.current) return;\n var timer = setTimeout(function() {\n committedRef.current = draft;\n var text = draft.trim();\n if (!text) commitRef.current(void 0);\n else if (field.kind === \"text\") commitRef.current([\n field.fieldname,\n \"like\",\n `%${text}%`\n ]);\n else commitRef.current([\n field.fieldname,\n \"=\",\n text\n ]);\n }, 400);\n return function() {\n return clearTimeout(timer);\n };\n }, [\n draft,\n field.fieldname,\n field.kind\n ]);\n var input = /* @__PURE__ */ _jsx(Input, {\n value: draft,\n onChangeText: setDraft,\n placeholder: field.kind === \"date\" ? `${field.label} (YYYY-MM-DD)` : field.label,\n size: \"$3\",\n compact: true,\n \"aria-label\": field.label,\n ...field.kind === \"number\" ? {\n keyboardType: \"numeric\"\n } : {}\n });\n return vertical ? /* @__PURE__ */ _jsx(YStack, {\n width: \"100%\",\n children: input\n }) : input;\n}\nexport {\n StandardFilters\n};\n//# sourceMappingURL=filter-standard.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","XStack","YStack","Checkbox","Input","Select","useEffect","useRef","useState","Link","LinkField","quickFilterValue","selectOptionsFromField","setFieldFilter","standardFiltersFromMeta","StandardFilters","param","meta","filters","onFiltersChange","vertical","fields","length","controls","map","field","StandardFilterControl","fieldname","gap","children","flexWrap","alignItems","value","commit","commit2","tuple","kind","select","onChange","next","options","placeholder","label","size","compact","width","_field_options","link","doctype","checked","onCheckedChange","DebouncedTextFilter","externalValue","draft","setDraft","committedRef","commitRef","current","timer","setTimeout","text","trim","clearTimeout","input","onChangeText","keyboardType"],"sources":["filter-standard.native.js"],"sourcesContent":["import { jsx as _jsx } from \"react/jsx-runtime\";\nimport { XStack, YStack } from \"@multiplatform.one/components\";\nimport { Checkbox, Input, Select } from \"@multiplatform.one/forms\";\nimport { useEffect, useRef, useState } from \"react\";\nimport { Link as LinkField, quickFilterValue, selectOptionsFromField, setFieldFilter, standardFiltersFromMeta } from \"@multiplatform.one/frappe-ui\";\nfunction StandardFilters(param) {\n var { meta, filters, onFiltersChange, vertical } = param;\n var fields = standardFiltersFromMeta(meta);\n if (!fields.length) return null;\n var controls = fields.map(function(field) {\n return /* @__PURE__ */ _jsx(StandardFilterControl, {\n field,\n filters,\n onFiltersChange,\n vertical\n }, field.fieldname);\n });\n if (vertical) {\n return /* @__PURE__ */ _jsx(YStack, {\n gap: \"$2\",\n children: controls\n });\n }\n return /* @__PURE__ */ _jsx(XStack, {\n gap: \"$1.5\",\n flexWrap: \"wrap\",\n alignItems: \"center\",\n children: controls\n });\n}\nfunction StandardFilterControl(param) {\n var { field, filters, onFiltersChange, vertical } = param;\n var value = quickFilterValue(filters, field.fieldname);\n var commit = function commit2(tuple) {\n return onFiltersChange(setFieldFilter(filters, field.fieldname, tuple));\n };\n switch (field.kind) {\n case \"select\": {\n var select = /* @__PURE__ */ _jsx(Select, {\n value,\n onChange: function onChange(next) {\n if (typeof next !== \"string\") return;\n commit(next ? [\n field.fieldname,\n \"=\",\n next\n ] : void 0);\n },\n options: selectOptionsFromField(field.options),\n placeholder: field.label,\n size: \"$3\",\n compact: true,\n \"aria-label\": field.label\n });\n return vertical ? /* @__PURE__ */ _jsx(YStack, {\n width: \"100%\",\n children: select\n }) : select;\n }\n case \"link\": {\n var _field_options;\n var link = /* @__PURE__ */ _jsx(LinkField, {\n value,\n onChange: function onChange(next) {\n return commit(next ? [\n field.fieldname,\n \"=\",\n next\n ] : void 0);\n },\n doctype: (_field_options = field.options) !== null && _field_options !== void 0 ? _field_options : \"\",\n placeholder: field.label,\n compact: true\n });\n return vertical ? /* @__PURE__ */ _jsx(YStack, {\n width: \"100%\",\n children: link\n }) : link;\n }\n case \"check\":\n return /* @__PURE__ */ _jsx(Checkbox, {\n label: field.label,\n checked: value === \"1\" || value === \"true\",\n onCheckedChange: function onCheckedChange(checked) {\n return commit(checked === true ? [\n field.fieldname,\n \"=\",\n 1\n ] : void 0);\n }\n });\n default:\n return /* @__PURE__ */ _jsx(DebouncedTextFilter, {\n field,\n externalValue: value,\n commit,\n vertical\n });\n }\n}\nfunction DebouncedTextFilter(param) {\n var { field, externalValue, commit, vertical } = param;\n var [draft, setDraft] = useState(externalValue);\n var committedRef = useRef(externalValue);\n var commitRef = useRef(commit);\n commitRef.current = commit;\n useEffect(function() {\n if (externalValue !== committedRef.current) {\n committedRef.current = externalValue;\n setDraft(externalValue);\n }\n }, [\n externalValue\n ]);\n useEffect(function() {\n if (draft === committedRef.current) return;\n var timer = setTimeout(function() {\n committedRef.current = draft;\n var text = draft.trim();\n if (!text) commitRef.current(void 0);\n else if (field.kind === \"text\") commitRef.current([\n field.fieldname,\n \"like\",\n `%${text}%`\n ]);\n else commitRef.current([\n field.fieldname,\n \"=\",\n text\n ]);\n }, 400);\n return function() {\n return clearTimeout(timer);\n };\n }, [\n draft,\n field.fieldname,\n field.kind\n ]);\n var input = /* @__PURE__ */ _jsx(Input, {\n value: draft,\n onChangeText: setDraft,\n placeholder: field.kind === \"date\" ? `${field.label} (YYYY-MM-DD)` : field.label,\n size: \"$3\",\n compact: true,\n \"aria-label\": field.label,\n ...field.kind === \"number\" ? {\n keyboardType: \"numeric\"\n } : {}\n });\n return vertical ? /* @__PURE__ */ _jsx(YStack, {\n width: \"100%\",\n children: input\n }) : input;\n}\nexport {\n StandardFilters\n};\n//# sourceMappingURL=filter-standard.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -5,7 +5,7 @@ import { useEffect, useMemo, useState } from "react";
|
|
|
5
5
|
import { useTranslation } from "react-i18next";
|
|
6
6
|
import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.mjs";
|
|
7
7
|
import { FilterEditorPanel } from "./filter-editor.mjs";
|
|
8
|
-
import { standardFiltersFromMeta } from "
|
|
8
|
+
import { standardFiltersFromMeta } from "@multiplatform.one/frappe-ui";
|
|
9
9
|
import { SavedFiltersControl } from "./filter-saved.mjs";
|
|
10
10
|
import { SortControl } from "./filter-sort.mjs";
|
|
11
11
|
import { StandardFilters } from "./filter-standard.mjs";
|
|
@@ -6,7 +6,7 @@ import { useEffect, useMemo, useState } from "react";
|
|
|
6
6
|
import { useTranslation } from "react-i18next";
|
|
7
7
|
import { BACKOFFICE_I18N_NAMESPACE } from "../i18n/index.native.js";
|
|
8
8
|
import { FilterEditorPanel } from "./filter-editor.native.js";
|
|
9
|
-
import { standardFiltersFromMeta } from "
|
|
9
|
+
import { standardFiltersFromMeta } from "@multiplatform.one/frappe-ui";
|
|
10
10
|
import { SavedFiltersControl } from "./filter-saved.native.js";
|
|
11
11
|
import { SortControl } from "./filter-sort.native.js";
|
|
12
12
|
import { StandardFilters } from "./filter-standard.native.js";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","Button","SheetModal","SizableText","YStack","isWeb","FunnelIcon","useResolvedKnobs","useEffect","useMemo","useState","useTranslation","BACKOFFICE_I18N_NAMESPACE","FilterEditorPanel","standardFiltersFromMeta","SavedFiltersControl","SortControl","StandardFilters","SectionLabel","param","children","size","fontWeight","color","textTransform","ListToolsButton","doctype","meta","filters","onFiltersChange","sortField","sortOrder","onSortChange","_knobProps_controlIcon","t","knobProps","iconSize","Number","controlIcon","width","open","setOpen","openGen","setOpenGen","quickFields","handleOpenChange","handleOpenChange2","nextOpen","generation","document","onKeyDown","onKeyDown2","event","key","addEventListener","removeEventListener","sizeToken","icon","weight","length","onPress","count","onOpenChange","snapPoint","scrollable","header","heading","gap","paddingBottom","inline","vertical","onDone","scrollRows","JSON","stringify"],"sources":["list-tools-sheet.native.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { Button, SheetModal, SizableText, YStack, isWeb } from \"@multiplatform.one/components\";\nimport { FunnelIcon } from \"@phosphor-icons/react\";\nimport { useResolvedKnobs } from \"@multiplatform.one/theme\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { BACKOFFICE_I18N_NAMESPACE } from \"../i18n\";\nimport { FilterEditorPanel } from \"./filter-editor\";\nimport { standardFiltersFromMeta } from \"./filter-fields\";\nimport { SavedFiltersControl } from \"./filter-saved\";\nimport { SortControl } from \"./filter-sort\";\nimport { StandardFilters } from \"./filter-standard\";\nfunction SectionLabel(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(SizableText, {\n size: \"$1\",\n fontWeight: \"400\",\n color: \"$color10\",\n textTransform: \"uppercase\",\n children\n });\n}\nfunction ListToolsButton(param) {\n var { doctype, meta, filters, onFiltersChange, sortField, sortOrder, onSortChange } = param;\n var _knobProps_controlIcon;\n var { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);\n var { knobProps } = useResolvedKnobs();\n var iconSize = Number((_knobProps_controlIcon = knobProps.controlIcon) === null || _knobProps_controlIcon === void 0 ? void 0 : _knobProps_controlIcon.width) || 16;\n var [open, setOpen] = useState(false);\n var [openGen, setOpenGen] = useState(0);\n var quickFields = useMemo(function() {\n return standardFiltersFromMeta(meta);\n }, [\n meta\n ]);\n var handleOpenChange = function handleOpenChange2(nextOpen) {\n if (nextOpen) setOpenGen(function(generation) {\n return generation + 1;\n });\n setOpen(nextOpen);\n };\n useEffect(function() {\n if (!isWeb || typeof document === \"undefined\" || !open) return;\n var onKeyDown = function onKeyDown2(event) {\n if (event.key === \"Escape\") setOpen(false);\n };\n document.addEventListener(\"keydown\", onKeyDown);\n return function() {\n return document.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [\n open\n ]);\n return /* @__PURE__ */ _jsxs(_Fragment, {\n children: [\n /* @__PURE__ */ _jsx(Button, {\n size: knobProps.sizeToken,\n icon: /* @__PURE__ */ _jsx(FunnelIcon, {\n size: iconSize,\n weight: filters.length > 0 ? \"fill\" : \"regular\"\n }),\n onPress: function onPress() {\n return handleOpenChange(true);\n },\n \"aria-label\": t(\"list.filters.filter\", \"Filter\"),\n children: filters.length > 0 ? t(\"list.filters.filterCount\", \"Filter ({{count}})\", {\n count: filters.length\n }) : t(\"list.filters.filter\", \"Filter\")\n }),\n /* @__PURE__ */ _jsx(SheetModal, {\n open,\n onOpenChange: handleOpenChange,\n snapPoint: 85,\n scrollable: true,\n header: /* @__PURE__ */ _jsx(SizableText, {\n ...knobProps.heading,\n size: \"$6\",\n children: t(\"list.tools.title\", \"Filter & sort\")\n }),\n children: /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$4\",\n paddingBottom: \"$4\",\n children: [\n onSortChange ? /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.sortBy\", \"Sort\")\n }),\n /* @__PURE__ */ _jsx(SortControl, {\n inline: true,\n meta,\n sortField,\n sortOrder,\n onSortChange\n })\n ]\n }) : null,\n quickFields.length > 0 ? /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.tools.quickFilters\", \"Quick filters\")\n }),\n /* @__PURE__ */ _jsx(StandardFilters, {\n vertical: true,\n meta,\n filters,\n onFiltersChange\n })\n ]\n }) : null,\n /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.filters.filters\", \"Filters\")\n }),\n /* Reseed the draft rows whenever the APPLIED filters change\n outside the panel (quick filter / saved filter / sort commits\n are live while the sheet stays open) — a stale draft Apply\n would silently drop those commits. */\n /* @__PURE__ */ _jsx(FilterEditorPanel, {\n meta,\n filters,\n onFiltersChange,\n onDone: function onDone() {\n return setOpen(false);\n },\n scrollRows: false\n }, `${openGen}|${JSON.stringify(filters)}`)\n ]\n }),\n /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.filters.savedFilters\", \"Saved Filters\")\n }),\n /* @__PURE__ */ _jsx(SavedFiltersControl, {\n inline: true,\n doctype,\n filters,\n onFiltersChange\n })\n ]\n })\n ]\n }, openGen)\n })\n ]\n });\n}\nexport {\n ListToolsButton\n};\n//# sourceMappingURL=list-tools-sheet.js.map\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","Button","SheetModal","SizableText","YStack","isWeb","FunnelIcon","useResolvedKnobs","useEffect","useMemo","useState","useTranslation","BACKOFFICE_I18N_NAMESPACE","FilterEditorPanel","standardFiltersFromMeta","SavedFiltersControl","SortControl","StandardFilters","SectionLabel","param","children","size","fontWeight","color","textTransform","ListToolsButton","doctype","meta","filters","onFiltersChange","sortField","sortOrder","onSortChange","_knobProps_controlIcon","t","knobProps","iconSize","Number","controlIcon","width","open","setOpen","openGen","setOpenGen","quickFields","handleOpenChange","handleOpenChange2","nextOpen","generation","document","onKeyDown","onKeyDown2","event","key","addEventListener","removeEventListener","sizeToken","icon","weight","length","onPress","count","onOpenChange","snapPoint","scrollable","header","heading","gap","paddingBottom","inline","vertical","onDone","scrollRows","JSON","stringify"],"sources":["list-tools-sheet.native.js"],"sourcesContent":["import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from \"react/jsx-runtime\";\nimport { Button, SheetModal, SizableText, YStack, isWeb } from \"@multiplatform.one/components\";\nimport { FunnelIcon } from \"@phosphor-icons/react\";\nimport { useResolvedKnobs } from \"@multiplatform.one/theme\";\nimport { useEffect, useMemo, useState } from \"react\";\nimport { useTranslation } from \"react-i18next\";\nimport { BACKOFFICE_I18N_NAMESPACE } from \"../i18n\";\nimport { FilterEditorPanel } from \"./filter-editor\";\nimport { standardFiltersFromMeta } from \"@multiplatform.one/frappe-ui\";\nimport { SavedFiltersControl } from \"./filter-saved\";\nimport { SortControl } from \"./filter-sort\";\nimport { StandardFilters } from \"./filter-standard\";\nfunction SectionLabel(param) {\n var { children } = param;\n return /* @__PURE__ */ _jsx(SizableText, {\n size: \"$1\",\n fontWeight: \"400\",\n color: \"$color10\",\n textTransform: \"uppercase\",\n children\n });\n}\nfunction ListToolsButton(param) {\n var { doctype, meta, filters, onFiltersChange, sortField, sortOrder, onSortChange } = param;\n var _knobProps_controlIcon;\n var { t } = useTranslation(BACKOFFICE_I18N_NAMESPACE);\n var { knobProps } = useResolvedKnobs();\n var iconSize = Number((_knobProps_controlIcon = knobProps.controlIcon) === null || _knobProps_controlIcon === void 0 ? void 0 : _knobProps_controlIcon.width) || 16;\n var [open, setOpen] = useState(false);\n var [openGen, setOpenGen] = useState(0);\n var quickFields = useMemo(function() {\n return standardFiltersFromMeta(meta);\n }, [\n meta\n ]);\n var handleOpenChange = function handleOpenChange2(nextOpen) {\n if (nextOpen) setOpenGen(function(generation) {\n return generation + 1;\n });\n setOpen(nextOpen);\n };\n useEffect(function() {\n if (!isWeb || typeof document === \"undefined\" || !open) return;\n var onKeyDown = function onKeyDown2(event) {\n if (event.key === \"Escape\") setOpen(false);\n };\n document.addEventListener(\"keydown\", onKeyDown);\n return function() {\n return document.removeEventListener(\"keydown\", onKeyDown);\n };\n }, [\n open\n ]);\n return /* @__PURE__ */ _jsxs(_Fragment, {\n children: [\n /* @__PURE__ */ _jsx(Button, {\n size: knobProps.sizeToken,\n icon: /* @__PURE__ */ _jsx(FunnelIcon, {\n size: iconSize,\n weight: filters.length > 0 ? \"fill\" : \"regular\"\n }),\n onPress: function onPress() {\n return handleOpenChange(true);\n },\n \"aria-label\": t(\"list.filters.filter\", \"Filter\"),\n children: filters.length > 0 ? t(\"list.filters.filterCount\", \"Filter ({{count}})\", {\n count: filters.length\n }) : t(\"list.filters.filter\", \"Filter\")\n }),\n /* @__PURE__ */ _jsx(SheetModal, {\n open,\n onOpenChange: handleOpenChange,\n snapPoint: 85,\n scrollable: true,\n header: /* @__PURE__ */ _jsx(SizableText, {\n ...knobProps.heading,\n size: \"$6\",\n children: t(\"list.tools.title\", \"Filter & sort\")\n }),\n children: /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$4\",\n paddingBottom: \"$4\",\n children: [\n onSortChange ? /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.sortBy\", \"Sort\")\n }),\n /* @__PURE__ */ _jsx(SortControl, {\n inline: true,\n meta,\n sortField,\n sortOrder,\n onSortChange\n })\n ]\n }) : null,\n quickFields.length > 0 ? /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.tools.quickFilters\", \"Quick filters\")\n }),\n /* @__PURE__ */ _jsx(StandardFilters, {\n vertical: true,\n meta,\n filters,\n onFiltersChange\n })\n ]\n }) : null,\n /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.filters.filters\", \"Filters\")\n }),\n /* Reseed the draft rows whenever the APPLIED filters change\n outside the panel (quick filter / saved filter / sort commits\n are live while the sheet stays open) — a stale draft Apply\n would silently drop those commits. */\n /* @__PURE__ */ _jsx(FilterEditorPanel, {\n meta,\n filters,\n onFiltersChange,\n onDone: function onDone() {\n return setOpen(false);\n },\n scrollRows: false\n }, `${openGen}|${JSON.stringify(filters)}`)\n ]\n }),\n /* @__PURE__ */ _jsxs(YStack, {\n gap: \"$2\",\n children: [\n /* @__PURE__ */ _jsx(SectionLabel, {\n children: t(\"list.filters.savedFilters\", \"Saved Filters\")\n }),\n /* @__PURE__ */ _jsx(SavedFiltersControl, {\n inline: true,\n doctype,\n filters,\n onFiltersChange\n })\n ]\n })\n ]\n }, openGen)\n })\n ]\n });\n}\nexport {\n ListToolsButton\n};\n//# sourceMappingURL=list-tools-sheet.js.map\n"],"mappings":"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","ignoreList":[]}
|