@payloadcms/ui 4.0.0-internal.ea6e8f8 → 4.0.0-internal.ec73d44
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/css/app.css +2 -2
- package/dist/css/colors.css +65 -0
- package/dist/css/preflight.css +21 -2
- package/dist/elements/APIKeyInput/index.js +22 -23
- package/dist/elements/APIKeyInput/index.js.map +1 -1
- package/dist/elements/AddNewRelation/index.js +17 -19
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AppHeader/index.css +1 -1
- package/dist/elements/AppHeader/index.d.ts.map +1 -1
- package/dist/elements/AppHeader/index.js +5 -1
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/ArrayAction/index.js +39 -30
- package/dist/elements/ArrayAction/index.js.map +1 -1
- package/dist/elements/Autosave/index.js +236 -143
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/BranchSelector/index.d.ts.map +1 -1
- package/dist/elements/BranchSelector/index.js +285 -204
- package/dist/elements/BranchSelector/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditMany/index.js +29 -21
- package/dist/elements/BulkUpload/EditMany/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +1 -34
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/BulkUpload/index.js +63 -23
- package/dist/elements/BulkUpload/index.js.map +1 -1
- package/dist/elements/BulkUpload/useUploadCollectionOptions.js.map +1 -1
- package/dist/elements/Button/index.css +3 -3
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +2 -1
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/types.d.ts +1 -0
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/CardGrid/index.css +0 -1
- package/dist/elements/ChangeSummary/index.js.map +1 -1
- package/dist/elements/Chip/index.js.map +1 -1
- package/dist/elements/ClipboardAction/ClipboardActionLabel.js.map +1 -1
- package/dist/elements/ClipboardAction/index.js +213 -88
- package/dist/elements/ClipboardAction/index.js.map +1 -1
- package/dist/elements/CloseModalOnRouteChange/index.d.ts.map +1 -1
- package/dist/elements/CloseModalOnRouteChange/index.js +27 -19
- package/dist/elements/CloseModalOnRouteChange/index.js.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.d.ts.map +1 -1
- package/dist/elements/CodeEditor/CodeEditor.js +99 -55
- package/dist/elements/CodeEditor/CodeEditor.js.map +1 -1
- package/dist/elements/CollapseAllToggle/index.js +47 -32
- package/dist/elements/CollapseAllToggle/index.js.map +1 -1
- package/dist/elements/Collapsible/index.css +15 -4
- package/dist/elements/Collapsible/index.d.ts.map +1 -1
- package/dist/elements/Collapsible/index.js +46 -38
- package/dist/elements/Collapsible/index.js.map +1 -1
- package/dist/elements/Collapsible/provider.js +37 -14
- package/dist/elements/Collapsible/provider.js.map +1 -1
- package/dist/elements/ColumnSelection/Popup.css +4 -0
- package/dist/elements/ColumnSelection/Popup.js +10 -2
- package/dist/elements/ColumnSelection/Popup.js.map +1 -1
- package/dist/elements/ColumnSelection/index.js.map +1 -1
- package/dist/elements/CommandPalette/index.css +8 -0
- package/dist/elements/ConfirmationModal/index.d.ts +3 -0
- package/dist/elements/ConfirmationModal/index.d.ts.map +1 -1
- package/dist/elements/ConfirmationModal/index.js +2 -0
- package/dist/elements/ConfirmationModal/index.js.map +1 -1
- package/dist/elements/CopyLocaleData/index.js.map +1 -1
- package/dist/elements/CopyToClipboard/index.js.map +1 -1
- package/dist/elements/CreateDocumentButton/index.js +45 -43
- package/dist/elements/CreateDocumentButton/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js +6 -2
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/index.css +40 -25
- package/dist/elements/DatePicker/useDatePickerKeyboard.js.map +1 -1
- package/dist/elements/DefaultListViewTabs/index.css +4 -0
- package/dist/elements/DefaultListViewTabs/index.js +47 -37
- package/dist/elements/DefaultListViewTabs/index.js.map +1 -1
- package/dist/elements/DelayedSpinner/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +1 -3
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/Dialog/DialogCancel/index.js.map +1 -1
- package/dist/elements/Dialog/DialogConfirm/index.js.map +1 -1
- package/dist/elements/Dialog/DialogHeader/index.js.map +1 -1
- package/dist/elements/Dialog/DialogModal/index.js.map +1 -1
- package/dist/elements/DocumentCard/index.d.ts +2 -0
- package/dist/elements/DocumentCard/index.d.ts.map +1 -1
- package/dist/elements/DocumentCard/index.js +2 -0
- package/dist/elements/DocumentCard/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.css +13 -10
- package/dist/elements/DocumentControls/index.js +1 -1
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +1 -5
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DocumentFields/index.css +7 -7
- package/dist/elements/DocumentFields/index.d.ts.map +1 -1
- package/dist/elements/DocumentFields/index.js +125 -65
- package/dist/elements/DocumentFields/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/ShouldRenderTabs.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.d.ts.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js +80 -34
- package/dist/elements/DocumentHeader/Tabs/Tab/TabLink.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/Tab/index.css +4 -0
- package/dist/elements/DocumentHeader/Tabs/tabs/VersionsPill/index.js.map +1 -1
- package/dist/elements/DocumentHeader/Tabs/tabs/index.js.map +1 -1
- package/dist/elements/DocumentLocked/index.d.ts.map +1 -1
- package/dist/elements/DocumentLocked/index.js +1 -0
- package/dist/elements/DocumentLocked/index.js.map +1 -1
- package/dist/elements/DocumentStaleData/index.js.map +1 -1
- package/dist/elements/DocumentTakeOver/index.js.map +1 -1
- package/dist/elements/DraggableSortable/DragOverlayPreview/index.js +2 -0
- package/dist/elements/DraggableSortable/DragOverlayPreview/index.js.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js +10 -7
- package/dist/elements/DraggableSortable/DraggableSortableItem/index.js.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts +2 -0
- package/dist/elements/DraggableSortable/DraggableSortableItem/types.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/DraggableSortableItem/types.js.map +1 -1
- package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/index.js +104 -170
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/elements/DraggableSortable/types.d.ts +1 -0
- package/dist/elements/DraggableSortable/types.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/types.js.map +1 -1
- package/dist/elements/DraggableSortable/useDraggableSortable/index.js.map +1 -1
- package/dist/elements/DraggableSortable/useRowAccessibility.d.ts +14 -0
- package/dist/elements/DraggableSortable/useRowAccessibility.d.ts.map +1 -0
- package/dist/elements/DraggableSortable/useRowAccessibility.js +99 -0
- package/dist/elements/DraggableSortable/useRowAccessibility.js.map +1 -0
- package/dist/elements/Drawer/index.js +138 -81
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/Drawer/useDrawerSlug.js.map +1 -1
- package/dist/elements/DrawerActionHeader/index.js.map +1 -1
- package/dist/elements/DrawerHeader/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js +177 -62
- package/dist/elements/DuplicateDocument/SelectLocalesDrawer/index.js.map +1 -1
- package/dist/elements/EditMany/DrawerContent.js +1 -1
- package/dist/elements/EditMany/DrawerContent.js.map +1 -1
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditUpload/library.css +6 -13
- package/dist/elements/FieldDiffContainer/index.d.ts.map +1 -1
- package/dist/elements/FieldDiffContainer/index.js +7 -1
- package/dist/elements/FieldDiffContainer/index.js.map +1 -1
- package/dist/elements/FieldDiffLabel/index.d.ts +1 -0
- package/dist/elements/FieldDiffLabel/index.d.ts.map +1 -1
- package/dist/elements/FieldDiffLabel/index.js +2 -0
- package/dist/elements/FieldDiffLabel/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.js +23 -14
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FieldSelect/reduceFieldOptions.js.map +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/FileMeta/index.js.map +1 -1
- package/dist/elements/FileManager/FilePreview/index.js.map +1 -1
- package/dist/elements/FileManager/index.js.map +1 -1
- package/dist/elements/FullscreenModal/index.js.map +1 -1
- package/dist/elements/GenerateConfirmation/index.js +21 -21
- package/dist/elements/GenerateConfirmation/index.js.map +1 -1
- package/dist/elements/GroupBy/Popup.js.map +1 -1
- package/dist/elements/GroupBy/index.js +120 -66
- package/dist/elements/GroupBy/index.js.map +1 -1
- package/dist/elements/HTMLDiff/colors.css +7 -0
- package/dist/elements/Hierarchy/ColumnBrowser/Column/index.js.map +1 -1
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js +51 -42
- package/dist/elements/Hierarchy/ColumnBrowser/ColumnItem/index.js.map +1 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.js +1 -1
- package/dist/elements/Hierarchy/DocHeaderButton/index.js.map +1 -1
- package/dist/elements/Hierarchy/EditButton/index.js.map +1 -1
- package/dist/elements/Hierarchy/HydrateProvider/index.js.map +1 -1
- package/dist/elements/Hierarchy/Modal/Footer/index.js.map +1 -1
- package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js +25 -18
- package/dist/elements/Hierarchy/Search/HierarchySearchResultItem.js.map +1 -1
- package/dist/elements/Hierarchy/Search/HierarchySearchResults.js.map +1 -1
- package/dist/elements/Hierarchy/Search/index.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/HierarchySidebarTab.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/TreeFocusContext.js.map +1 -1
- package/dist/elements/Hierarchy/Tree/index.d.ts.map +1 -1
- package/dist/elements/Hierarchy/Tree/index.js +10 -5
- package/dist/elements/Hierarchy/Tree/index.js.map +1 -1
- package/dist/elements/HierarchyTypeField/index.d.ts.map +1 -1
- package/dist/elements/HierarchyTypeField/index.js.map +1 -1
- package/dist/elements/HydrateAuthProvider/index.js.map +1 -1
- package/dist/elements/HydratePreferences/index.js.map +1 -1
- package/dist/elements/IDLabel/index.js.map +1 -1
- package/dist/elements/InputStepper/index.js.map +1 -1
- package/dist/elements/ItemsDrawer/ItemSearch/index.js.map +1 -1
- package/dist/elements/ItemsDrawer/index.js +186 -105
- package/dist/elements/ItemsDrawer/index.js.map +1 -1
- package/dist/elements/LLMInstructionsDescription/index.js.map +1 -1
- package/dist/elements/LLMInstructionsMenuItem/index.js.map +1 -1
- package/dist/elements/LayoutToggle/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/index.js.map +1 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js +1 -1
- package/dist/elements/LeaveWithoutSaving/usePreventLeave.js.map +1 -1
- package/dist/elements/Link/index.js +1 -1
- package/dist/elements/Link/index.js.map +1 -1
- package/dist/elements/ListColumnSelectionButton/index.js.map +1 -1
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/types.d.ts +0 -10
- package/dist/elements/ListControls/types.d.ts.map +1 -1
- package/dist/elements/ListControls/types.js.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +2 -3
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/Provider.d.ts +3 -8
- package/dist/elements/ListDrawer/Provider.d.ts.map +1 -1
- package/dist/elements/ListDrawer/Provider.js.map +1 -1
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListGroupByButton/index.js.map +1 -1
- package/dist/elements/ListHeader/DrawerRelationshipSelect/index.js.map +1 -1
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerConfirmSelectionButton.js.map +1 -1
- package/dist/elements/ListHeader/DrawerTitleActions/ListDrawerCreateNewDocButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListBulkUploadButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js +11 -12
- package/dist/elements/ListHeader/TitleActions/ListCreateNewDocButton.js.map +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js +1 -1
- package/dist/elements/ListHeader/TitleActions/ListEmptyTrashButton.js.map +1 -1
- package/dist/elements/ListSelection/index.js.map +1 -1
- package/dist/elements/ListWhereBuilder/index.js.map +1 -1
- package/dist/elements/LivePreview/DeviceContainer/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/Controls/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/SizeInput/index.js.map +1 -1
- package/dist/elements/LivePreview/Toolbar/index.js.map +1 -1
- package/dist/elements/LivePreview/ToolbarArea/index.js.map +1 -1
- package/dist/elements/LivePreview/Window/index.css +7 -1
- package/dist/elements/LivePreview/Window/index.d.ts.map +1 -1
- package/dist/elements/LivePreview/Window/index.js +6 -1
- package/dist/elements/LivePreview/Window/index.js.map +1 -1
- package/dist/elements/LoadMoreRow/index.js.map +1 -1
- package/dist/elements/Loading/index.js +62 -18
- package/dist/elements/Loading/index.js.map +1 -1
- package/dist/elements/LoadingOverlay/index.js +93 -49
- package/dist/elements/LoadingOverlay/index.js.map +1 -1
- package/dist/elements/Localizer/index.js +133 -108
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/Locked/index.js +54 -37
- package/dist/elements/Locked/index.js.map +1 -1
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/MergeBranch/MergeBranchForm/index.d.ts.map +1 -1
- package/dist/elements/MergeBranch/MergeBranchForm/index.js +21 -16
- package/dist/elements/MergeBranch/MergeBranchForm/index.js.map +1 -1
- package/dist/elements/MergeBranch/MergeProgress/index.js.map +1 -1
- package/dist/elements/MergeBranch/context.js +58 -20
- package/dist/elements/MergeBranch/context.js.map +1 -1
- package/dist/elements/MergeBranch/index.js.map +1 -1
- package/dist/elements/MergeBranch/useMergeBranchAction.js +1 -1
- package/dist/elements/MergeBranch/useMergeBranchAction.js.map +1 -1
- package/dist/elements/MergeBranch/useScheduleBranchMerge.js +1 -1
- package/dist/elements/MergeBranch/useScheduleBranchMerge.js.map +1 -1
- package/dist/elements/MergeBranch/useUpcomingBranchMerges.js.map +1 -1
- package/dist/elements/MiniCarousel/index.js +102 -38
- package/dist/elements/MiniCarousel/index.js.map +1 -1
- package/dist/elements/Modal/index.d.ts.map +1 -1
- package/dist/elements/Modal/index.js +13 -1
- package/dist/elements/Modal/index.js.map +1 -1
- package/dist/elements/Nav/NavSidebarToggle/index.js.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.d.ts.map +1 -1
- package/dist/elements/Nav/NavWrapper/index.js +10 -6
- package/dist/elements/Nav/NavWrapper/index.js.map +1 -1
- package/dist/elements/Nav/SettingsMenuButton/index.js.map +1 -1
- package/dist/elements/Nav/SidebarTabs/TabError/index.js.map +1 -1
- package/dist/elements/Nav/SidebarTabs/index.client.d.ts.map +1 -1
- package/dist/elements/Nav/SidebarTabs/index.client.js +32 -21
- package/dist/elements/Nav/SidebarTabs/index.client.js.map +1 -1
- package/dist/elements/Nav/context.js +2 -2
- package/dist/elements/Nav/context.js.map +1 -1
- package/dist/elements/Nav/getNavPrefs.d.ts +1 -1
- package/dist/elements/Nav/getNavPrefs.js +1 -1
- package/dist/elements/Nav/getNavPrefs.js.map +1 -1
- package/dist/elements/Nav/index.client.js.map +1 -1
- package/dist/elements/Nav/index.css +5 -0
- package/dist/elements/NavGroup/index.css +27 -3
- package/dist/elements/NavGroup/index.js +32 -39
- package/dist/elements/NavGroup/index.js.map +1 -1
- package/dist/elements/NoListResults/index.css +1 -0
- package/dist/elements/NoListResults/index.js +1 -1
- package/dist/elements/NoListResults/index.js.map +1 -1
- package/dist/elements/PageControls/GroupByPageControls.js.map +1 -1
- package/dist/elements/PageControls/index.js.map +1 -1
- package/dist/elements/Pagination/ClickableArrow/index.js +10 -11
- package/dist/elements/Pagination/ClickableArrow/index.js.map +1 -1
- package/dist/elements/Pagination/SimplePagination/index.js.map +1 -1
- package/dist/elements/Pagination/index.js +36 -37
- package/dist/elements/Pagination/index.js.map +1 -1
- package/dist/elements/PerPage/index.js.map +1 -1
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Popup/SubmenuScope.d.ts +3 -5
- package/dist/elements/Popup/SubmenuScope.d.ts.map +1 -1
- package/dist/elements/Popup/SubmenuScope.js +10 -54
- package/dist/elements/Popup/SubmenuScope.js.map +1 -1
- package/dist/elements/Popup/index.css +15 -0
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +88 -33
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/Popup/useSubmenuPointerIntent.d.ts +16 -4
- package/dist/elements/Popup/useSubmenuPointerIntent.d.ts.map +1 -1
- package/dist/elements/Popup/useSubmenuPointerIntent.js +68 -27
- package/dist/elements/Popup/useSubmenuPointerIntent.js.map +1 -1
- package/dist/elements/PreviewButton/index.js.map +1 -1
- package/dist/elements/PreviewSizes/index.js +141 -70
- package/dist/elements/PreviewSizes/index.js.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/ScheduleDrawer/index.js +16 -8
- package/dist/elements/PublishButton/ScheduleDrawer/index.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +1 -0
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/DrawerContent.js +1 -1
- package/dist/elements/PublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/PublishMany/index.js +32 -24
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js +194 -100
- package/dist/elements/QueryPresets/fields/ColumnsField/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/GroupByField/index.js +78 -29
- package/dist/elements/QueryPresets/fields/GroupByField/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/Heading/index.js.map +1 -1
- package/dist/elements/QueryPresets/fields/WhereField/index.js.map +1 -1
- package/dist/elements/ReactSelect/ClearIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/DefaultMenuPortal.d.ts.map +1 -1
- package/dist/elements/ReactSelect/DefaultMenuPortal.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValue/index.js +19 -9
- package/dist/elements/ReactSelect/MultiValue/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueLabel/index.js.map +1 -1
- package/dist/elements/ReactSelect/MultiValueRemove/index.js +38 -29
- package/dist/elements/ReactSelect/MultiValueRemove/index.js.map +1 -1
- package/dist/elements/ReactSelect/ValueContainer/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.css +4 -0
- package/dist/elements/RelationshipTable/AddNewButton.d.ts.map +1 -1
- package/dist/elements/RelationshipTable/AddNewButton.js +3 -0
- package/dist/elements/RelationshipTable/AddNewButton.js.map +1 -1
- package/dist/elements/RelationshipTable/Pagination.js.map +1 -1
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -1
- package/dist/elements/RelationshipTable/index.js +1 -1
- package/dist/elements/RelationshipTable/index.js.map +1 -1
- package/dist/elements/RenderIfInViewport/index.js.map +1 -1
- package/dist/elements/RenderTitle/index.js.map +1 -1
- package/dist/elements/RestoreMany/index.js +1 -1
- package/dist/elements/RestoreMany/index.js.map +1 -1
- package/dist/elements/SchedulePublishButton/index.js +112 -44
- package/dist/elements/SchedulePublishButton/index.js.map +1 -1
- package/dist/elements/Search/SearchInput/index.js.map +1 -1
- package/dist/elements/SegmentedControl/index.css +50 -7
- package/dist/elements/SegmentedControl/index.js.map +1 -1
- package/dist/elements/SelectAll/index.js.map +1 -1
- package/dist/elements/SelectRow/index.js +31 -21
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/ShimmerEffect/index.js.map +1 -1
- package/dist/elements/SidebarToggle/index.js.map +1 -1
- package/dist/elements/SkipToContent/index.js.map +1 -1
- package/dist/elements/SortHeader/index.js.map +1 -1
- package/dist/elements/SortRow/index.js.map +1 -1
- package/dist/elements/Spinner/index.js.map +1 -1
- package/dist/elements/StayLoggedIn/index.js.map +1 -1
- package/dist/elements/StepNav/SetStepNav.js.map +1 -1
- package/dist/elements/StepNav/context.js.map +1 -1
- package/dist/elements/Switch/index.css +2 -2
- package/dist/elements/Switch/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Array/index.js +28 -9
- package/dist/elements/Table/DefaultCell/fields/Array/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js +80 -27
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/BranchStatus/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js +9 -10
- package/dist/elements/Table/DefaultCell/fields/Checkbox/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Date/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js +21 -32
- package/dist/elements/Table/DefaultCell/fields/JSON/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Select/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Status/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/index.js +6 -1
- package/dist/elements/Table/DefaultCell/index.js.map +1 -1
- package/dist/elements/Table/GridNavigation/useGridNavigation.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/TableIdentity.js +32 -16
- package/dist/elements/Table/TableIdentity.js.map +1 -1
- package/dist/elements/Table/index.js.map +1 -1
- package/dist/elements/Table/useAriaSort.js.map +1 -1
- package/dist/elements/Tabs/index.css +4 -3
- package/dist/elements/Thumbnail/index.js +133 -53
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/ThumbnailCard/index.js.map +1 -1
- package/dist/elements/TimezonePicker/index.d.ts.map +1 -1
- package/dist/elements/TimezonePicker/index.js +113 -54
- package/dist/elements/TimezonePicker/index.js.map +1 -1
- package/dist/elements/Toasts/fieldErrors.js.map +1 -1
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/Translation/index.js +1 -1
- package/dist/elements/Translation/index.js.map +1 -1
- package/dist/elements/TrashBanner/index.js.map +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.js +1 -1
- package/dist/elements/UnpublishMany/DrawerContent.js.map +1 -1
- package/dist/elements/UnpublishMany/index.js +32 -24
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/Upload/UploadFromURLModal/index.js.map +1 -1
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/usePasteFromClipboard.js.map +1 -1
- package/dist/elements/Upload/useUploadFromUrl.js.map +1 -1
- package/dist/elements/UserMenu/LanguageMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/SettingsMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/ThemeMenu/index.js.map +1 -1
- package/dist/elements/UserMenu/index.d.ts.map +1 -1
- package/dist/elements/UserMenu/index.js +2 -1
- package/dist/elements/UserMenu/index.js.map +1 -1
- package/dist/elements/ViewDescription/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Date/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Number/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Select/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/Text/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +1 -0
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/exports/client/{CodeEditor-UKD3EPUY.js → CodeEditor-23ZGBN6S.js} +2 -2
- package/dist/exports/client/{DatePicker-POZJVQP4.js → DatePicker-AZBZPMY6.js} +2 -2
- package/dist/exports/client/chunk-EXVR6BZK.js +27 -0
- package/dist/exports/client/chunk-EXVR6BZK.js.map +7 -0
- package/dist/exports/client/{chunk-AVJIZPR3.js → chunk-SMBFG6XU.js} +1 -1
- package/dist/exports/client/{chunk-AVJIZPR3.js.map → chunk-SMBFG6XU.js.map} +1 -1
- package/dist/exports/client/{chunk-2AY67NFV.js → chunk-ZP2PB6M4.js} +2 -2
- package/dist/exports/client/chunk-ZP2PB6M4.js.map +7 -0
- package/dist/exports/client/index.d.ts +2 -2
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +28 -28
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/rsc/index.d.ts +1 -1
- package/dist/exports/rsc/index.d.ts.map +1 -1
- package/dist/exports/rsc/index.js +1 -1
- package/dist/exports/rsc/index.js.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +3 -3
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +207 -99
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +521 -308
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +224 -136
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlockSelector/BlockSearch/index.js.map +1 -1
- package/dist/fields/Blocks/BlockSelector/index.js +114 -74
- package/dist/fields/Blocks/BlockSelector/index.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.js +75 -55
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/SectionTitle/index.css +4 -0
- package/dist/fields/Blocks/SectionTitle/index.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +1 -0
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/index.css +3 -3
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Code/index.d.ts.map +1 -1
- package/dist/fields/Code/index.js +3 -2
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.js +114 -73
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/ConfirmPassword/index.js.map +1 -1
- package/dist/fields/DateTime/index.js +215 -121
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/Email/index.d.ts.map +1 -1
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/FieldDescription/index.js +29 -21
- package/dist/fields/FieldDescription/index.js.map +1 -1
- package/dist/fields/FieldError/index.js.map +1 -1
- package/dist/fields/FieldLabel/index.js.map +1 -1
- package/dist/fields/Group/index.css +3 -5
- package/dist/fields/Group/index.js +75 -46
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/Hidden/index.js +23 -15
- package/dist/fields/Hidden/index.js.map +1 -1
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js +3 -2
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Number/Input.js.map +1 -1
- package/dist/fields/Number/index.d.ts.map +1 -1
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.d.ts.map +1 -1
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Password/input.js +46 -27
- package/dist/fields/Password/input.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js +35 -35
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/Relationship/Input.js +14 -14
- package/dist/fields/Relationship/Input.js.map +1 -1
- package/dist/fields/Relationship/index.js +216 -111
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js +9 -11
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Select/Input.js +26 -10
- package/dist/fields/Select/Input.js.map +1 -1
- package/dist/fields/Select/index.d.ts.map +1 -1
- package/dist/fields/Select/index.js +158 -77
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Tabs/Tab/index.js.map +1 -1
- package/dist/fields/Tabs/index.css +17 -21
- package/dist/fields/Tabs/index.js +120 -112
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Text/Input.d.ts.map +1 -1
- package/dist/fields/Text/Input.js +2 -2
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.js +172 -95
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Text/types.d.ts +2 -1
- package/dist/fields/Text/types.d.ts.map +1 -1
- package/dist/fields/Text/types.js.map +1 -1
- package/dist/fields/Textarea/Input.js +58 -28
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Textarea/index.js +97 -55
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.js.map +1 -1
- package/dist/fields/Upload/Input.d.ts.map +1 -1
- package/dist/fields/Upload/Input.js +19 -8
- package/dist/fields/Upload/Input.js.map +1 -1
- package/dist/fields/Upload/RelationshipContent/index.js.map +1 -1
- package/dist/fields/Upload/index.css +9 -0
- package/dist/fields/Upload/index.js +101 -63
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/fields/shared/useRowFocus.js.map +1 -1
- package/dist/forms/Form/context.js.map +1 -1
- package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
- package/dist/forms/Form/fieldReducer.js.map +1 -1
- package/dist/forms/Form/index.d.ts.map +1 -1
- package/dist/forms/Form/index.js +27 -8
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/reduceToSerializableFields.d.ts +9 -4
- package/dist/forms/Form/reduceToSerializableFields.d.ts.map +1 -1
- package/dist/forms/Form/reduceToSerializableFields.js +34 -7
- package/dist/forms/Form/reduceToSerializableFields.js.map +1 -1
- package/dist/forms/Form/types.d.ts +1 -1
- package/dist/forms/Form/types.d.ts.map +1 -1
- package/dist/forms/Form/types.js.map +1 -1
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/RenderFields/context.js +3 -2
- package/dist/forms/RenderFields/context.js.map +1 -1
- package/dist/forms/RenderFields/index.css +2 -2
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/forms/RowLabel/Context/index.d.ts.map +1 -1
- package/dist/forms/RowLabel/Context/index.js +58 -18
- package/dist/forms/RowLabel/Context/index.js.map +1 -1
- package/dist/forms/Submit/index.js +12 -13
- package/dist/forms/Submit/index.js.map +1 -1
- package/dist/forms/WatchChildErrors/index.js.map +1 -1
- package/dist/forms/useField/index.js +1 -1
- package/dist/forms/useField/index.js.map +1 -1
- package/dist/forms/useField/types.d.ts +0 -4
- package/dist/forms/useField/types.d.ts.map +1 -1
- package/dist/forms/useField/types.js.map +1 -1
- package/dist/forms/withCondition/WatchCondition.js.map +1 -1
- package/dist/graphics/Account/Gravatar/index.js +32 -17
- package/dist/graphics/Account/Gravatar/index.js.map +1 -1
- package/dist/graphics/Account/index.js +27 -18
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/hooks/useControllableState.js.map +1 -1
- package/dist/hooks/useDebounce.js.map +1 -1
- package/dist/hooks/useDebouncedCallback.js.map +1 -1
- package/dist/hooks/useDebouncedEffect.js.map +1 -1
- package/dist/hooks/useDelay.js.map +1 -1
- package/dist/hooks/useDelayedRender.js.map +1 -1
- package/dist/hooks/useElementHeightVariable.js.map +1 -1
- package/dist/hooks/useHotkey.js.map +1 -1
- package/dist/hooks/useIntersect.js.map +1 -1
- package/dist/hooks/usePayloadAPI.js.map +1 -1
- package/dist/hooks/usePointerSafeArea.d.ts +29 -0
- package/dist/hooks/usePointerSafeArea.d.ts.map +1 -0
- package/dist/hooks/usePointerSafeArea.js +232 -0
- package/dist/hooks/usePointerSafeArea.js.map +1 -0
- package/dist/hooks/usePopupWindow.js.map +1 -1
- package/dist/hooks/useRelatedCollections.js.map +1 -1
- package/dist/hooks/useResize.js.map +1 -1
- package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
- package/dist/hooks/useThrottledEffect.js +21 -24
- package/dist/hooks/useThrottledEffect.js.map +1 -1
- package/dist/hooks/useUseAsTitle.js.map +1 -1
- package/dist/icons/Sidebar/index.d.ts.map +1 -1
- package/dist/icons/Sidebar/index.js +2 -0
- package/dist/icons/Sidebar/index.js.map +1 -1
- package/dist/icons/Table/index.css +5 -1
- package/dist/layouts/Root/RootProviders.d.ts.map +1 -1
- package/dist/layouts/Root/RootProviders.js +31 -28
- package/dist/layouts/Root/RootProviders.js.map +1 -1
- package/dist/layouts/Root/index.d.ts +1 -1
- package/dist/layouts/Root/index.d.ts.map +1 -1
- package/dist/layouts/Root/index.js +4 -15
- package/dist/layouts/Root/index.js.map +1 -1
- package/dist/providers/Actions/index.js.map +1 -1
- package/dist/providers/Auth/AuthSessionDebug/index.js.map +1 -1
- package/dist/providers/Auth/index.js +2 -2
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Auth/tabSessionSync/useTabSessionSync.js.map +1 -1
- package/dist/providers/Branch/index.d.ts +1 -1
- package/dist/providers/Branch/index.js +4 -4
- package/dist/providers/Branch/index.js.map +1 -1
- package/dist/providers/Branch/index.server.d.ts.map +1 -1
- package/dist/providers/Branch/index.server.js +3 -1
- package/dist/providers/Branch/index.server.js.map +1 -1
- package/dist/providers/ClientFunction/index.js.map +1 -1
- package/dist/providers/Config/index.js +65 -32
- package/dist/providers/Config/index.js.map +1 -1
- package/dist/providers/DocumentEvents/index.js.map +1 -1
- package/dist/providers/EditDepth/index.js.map +1 -1
- package/dist/providers/Embed/index.js.map +1 -1
- package/dist/providers/EntityVisibility/index.js.map +1 -1
- package/dist/providers/ListQuery/index.d.ts.map +1 -1
- package/dist/providers/ListQuery/index.js +5 -5
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/ListQuery/mergeQuery.d.ts.map +1 -1
- package/dist/providers/ListQuery/mergeQuery.js.map +1 -1
- package/dist/providers/ListQuery/sanitizeQuery.js.map +1 -1
- package/dist/providers/ListQuery/types.d.ts +6 -5
- package/dist/providers/ListQuery/types.d.ts.map +1 -1
- package/dist/providers/ListQuery/types.js.map +1 -1
- package/dist/providers/ModalAccessibility/index.js.map +1 -1
- package/dist/providers/ModalFocus/index.d.ts +15 -0
- package/dist/providers/ModalFocus/index.d.ts.map +1 -0
- package/dist/providers/ModalFocus/index.js +70 -0
- package/dist/providers/ModalFocus/index.js.map +1 -0
- package/dist/providers/RouteCache/index.d.ts.map +1 -1
- package/dist/providers/RouteCache/index.js +37 -25
- package/dist/providers/RouteCache/index.js.map +1 -1
- package/dist/providers/RouteTransition/ProgressBar/index.js.map +1 -1
- package/dist/providers/RouteTransition/index.d.ts +3 -2
- package/dist/providers/RouteTransition/index.d.ts.map +1 -1
- package/dist/providers/RouteTransition/index.js +78 -105
- package/dist/providers/RouteTransition/index.js.map +1 -1
- package/dist/providers/RouterAdapter/index.js.map +1 -1
- package/dist/providers/ServerFunctions/index.d.ts.map +1 -1
- package/dist/providers/ServerFunctions/index.js +34 -23
- package/dist/providers/ServerFunctions/index.js.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.d.ts.map +1 -1
- package/dist/providers/TableColumns/RenderDefaultCell/index.js +1 -2
- package/dist/providers/TableColumns/RenderDefaultCell/index.js.map +1 -1
- package/dist/providers/TableColumns/index.d.ts.map +1 -1
- package/dist/providers/TableColumns/index.js +18 -35
- package/dist/providers/TableColumns/index.js.map +1 -1
- package/dist/providers/Theme/index.js.map +1 -1
- package/dist/providers/ToastContainer/index.js.map +1 -1
- package/dist/providers/Translation/index.js.map +1 -1
- package/dist/providers/UploadControls/index.js.map +1 -1
- package/dist/providers/UploadEdits/index.js.map +1 -1
- package/dist/providers/UploadHandlers/index.js.map +1 -1
- package/dist/styles.css +87 -3
- package/dist/templates/Default/Wrapper/index.js.map +1 -1
- package/dist/templates/Default/index.css +0 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.d.ts.map +1 -1
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js +32 -6
- package/dist/utilities/buildClientFieldSchemaMap/traverseFields.js.map +1 -1
- package/dist/utilities/formatDocTitle/formatLexicalDocTitle.js.map +1 -1
- package/dist/utilities/getDisplayedFieldValue.d.ts +8 -2
- package/dist/utilities/getDisplayedFieldValue.d.ts.map +1 -1
- package/dist/utilities/getDisplayedFieldValue.js +11 -1
- package/dist/utilities/getDisplayedFieldValue.js.map +1 -1
- package/dist/utilities/getHasScheduledPublish.js.map +1 -1
- package/dist/utilities/groupNavItems.js.map +1 -1
- package/dist/utilities/handleLivePreview.js.map +1 -1
- package/dist/utilities/handleServerFunctions.d.ts +2 -10
- package/dist/utilities/handleServerFunctions.d.ts.map +1 -1
- package/dist/utilities/handleServerFunctions.js +3 -7
- package/dist/utilities/handleServerFunctions.js.map +1 -1
- package/dist/utilities/hasSavePermission.js.map +1 -1
- package/dist/utilities/schedulePublishHandler.js.map +1 -1
- package/dist/utilities/serverFunctionRegistry.d.ts +2 -7
- package/dist/utilities/serverFunctionRegistry.d.ts.map +1 -1
- package/dist/utilities/serverFunctionRegistry.js +4 -9
- package/dist/utilities/serverFunctionRegistry.js.map +1 -1
- package/dist/views/API/LocaleSelector/index.js.map +1 -1
- package/dist/views/API/index.client.d.ts.map +1 -1
- package/dist/views/API/index.client.js +1 -0
- package/dist/views/API/index.client.js.map +1 -1
- package/dist/views/Account/ResetPreferences/index.js +17 -17
- package/dist/views/Account/ResetPreferences/index.js.map +1 -1
- package/dist/views/Account/Settings/LanguageSelector.js.map +1 -1
- package/dist/views/Account/ToggleHighContrast/index.js.map +1 -1
- package/dist/views/Account/ToggleTheme/index.js +106 -27
- package/dist/views/Account/ToggleTheme/index.js.map +1 -1
- package/dist/views/Account/index.client.js.map +1 -1
- package/dist/views/Branch/BranchChanges/index.d.ts.map +1 -1
- package/dist/views/Branch/BranchChanges/index.js +185 -86
- package/dist/views/Branch/BranchChanges/index.js.map +1 -1
- package/dist/views/Branch/DiscardChangesButton/index.js +1 -1
- package/dist/views/Branch/DiscardChangesButton/index.js.map +1 -1
- package/dist/views/Branch/Manage/index.js.map +1 -1
- package/dist/views/Branch/MergeChangesButton/index.js.map +1 -1
- package/dist/views/Branch/ScheduledMerges/index.js +1 -1
- package/dist/views/Branch/ScheduledMerges/index.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js +30 -21
- package/dist/views/Dashboard/Default/ModularDashboard/DashboardStepNav.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/WidgetEditControl.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js +373 -151
- package/dist/views/Dashboard/Default/ModularDashboard/index.client.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/renderWidget/RenderWidget.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.d.ts.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js +18 -5
- package/dist/views/Dashboard/Default/ModularDashboard/useDashboardLayout.js.map +1 -1
- package/dist/views/Dashboard/Default/ModularDashboard/utils/localeUtils.js.map +1 -1
- package/dist/views/Document/generateEditViewMetadata.js.map +1 -1
- package/dist/views/Document/index.js +1 -1
- package/dist/views/Document/index.js.map +1 -1
- package/dist/views/Document/renderDocumentSlots.js.map +1 -1
- package/dist/views/Edit/Auth/APIKeyGenerationModal.js.map +1 -1
- package/dist/views/Edit/Auth/index.d.ts.map +1 -1
- package/dist/views/Edit/Auth/index.js +13 -11
- package/dist/views/Edit/Auth/index.js.map +1 -1
- package/dist/views/Edit/SetDocumentStepNav/index.js.map +1 -1
- package/dist/views/Edit/SetDocumentTitle/index.js.map +1 -1
- package/dist/views/Edit/index.css +26 -0
- package/dist/views/Edit/index.d.ts.map +1 -1
- package/dist/views/Edit/index.js +28 -17
- package/dist/views/Edit/index.js.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.d.ts.map +1 -1
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js +45 -41
- package/dist/views/ForgotPassword/ForgotPasswordForm/index.js.map +1 -1
- package/dist/views/HierarchyList/DocumentListSelection/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyListHeader/index.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/ChildNameCell.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/DateCell.js +8 -9
- package/dist/views/HierarchyList/HierarchyTable/DateCell.js.map +1 -1
- package/dist/views/HierarchyList/HierarchyTable/RelatedNameCell.js.map +1 -1
- package/dist/views/HierarchyList/TypeFilter/index.js.map +1 -1
- package/dist/views/HierarchyList/index.js +2 -2
- package/dist/views/HierarchyList/index.js.map +1 -1
- package/dist/views/List/DocumentGrid/index.js.map +1 -1
- package/dist/views/List/GroupedDocumentGrid/index.js.map +1 -1
- package/dist/views/List/ListSelection/index.js.map +1 -1
- package/dist/views/Login/LoginField/index.js.map +1 -1
- package/dist/views/Login/LoginForm/index.js.map +1 -1
- package/dist/views/Logout/LogoutClient.js.map +1 -1
- package/dist/views/Logout/index.js.map +1 -1
- package/dist/views/NotFound/index.client.js.map +1 -1
- package/dist/views/ResetPassword/ResetPasswordForm/index.js.map +1 -1
- package/dist/views/Verify/index.client.js.map +1 -1
- package/dist/views/Version/Default/SetStepNav.js.map +1 -1
- package/dist/views/Version/Default/index.css +12 -12
- package/dist/views/Version/Default/index.js +333 -191
- package/dist/views/Version/Default/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/DiffCollapser/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/RenderVersionFieldsToDiff.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js +0 -4
- package/dist/views/Version/RenderFieldsToDiff/buildVersionFields.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js +9 -11
- package/dist/views/Version/RenderFieldsToDiff/fields/Checkbox/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Collapsible/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js +41 -29
- package/dist/views/Version/RenderFieldsToDiff/fields/Date/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Group/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Iterable/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.d.ts.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js +19 -19
- package/dist/views/Version/RenderFieldsToDiff/fields/Select/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Tabs/index.js.map +1 -1
- package/dist/views/Version/RenderFieldsToDiff/fields/Text/index.js.map +1 -1
- package/dist/views/Version/Restore/index.d.ts.map +1 -1
- package/dist/views/Version/Restore/index.js +183 -82
- package/dist/views/Version/Restore/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/CreatedAtCell.js.map +1 -1
- package/dist/views/Version/SelectComparison/VersionDrawer/index.js.map +1 -1
- package/dist/views/Version/SelectComparison/index.js +113 -33
- package/dist/views/Version/SelectComparison/index.js.map +1 -1
- package/dist/views/Version/SelectLocales/index.js.map +1 -1
- package/dist/views/Version/index.js.map +1 -1
- package/dist/views/Versions/VersionPillLabel/VersionPillLabel.js.map +1 -1
- package/dist/views/Versions/cells/AutosaveCell/index.js.map +1 -1
- package/dist/views/Versions/cells/CreatedAt/index.js.map +1 -1
- package/dist/views/Versions/cells/VersionDrawerCreatedAtCell/index.js.map +1 -1
- package/dist/views/Versions/index.client.js +9 -11
- package/dist/views/Versions/index.client.js.map +1 -1
- package/dist/views/Versions/index.js +2 -2
- package/dist/views/Versions/index.js.map +1 -1
- package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.css +28 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts +16 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.d.ts.map +1 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js +98 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/PinDocumentPicker/index.js.map +1 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/index.css +70 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts +13 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/index.d.ts.map +1 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js +81 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/index.js.map +1 -0
- package/dist/widgets/{RecentlyViewed/pinnedPreferences.d.ts → Activity/Tabs/PinnedDocuments/preferences.d.ts} +6 -9
- package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.d.ts.map +1 -0
- package/dist/widgets/{RecentlyViewed/pinnedPreferences.js → Activity/Tabs/PinnedDocuments/preferences.js} +3 -22
- package/dist/widgets/Activity/Tabs/PinnedDocuments/preferences.js.map +1 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts +39 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.d.ts.map +1 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js +83 -0
- package/dist/widgets/Activity/Tabs/PinnedDocuments/usePinnedDocuments.js.map +1 -0
- package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts +9 -0
- package/dist/widgets/Activity/Tabs/RecentDocuments/index.d.ts.map +1 -0
- package/dist/widgets/Activity/Tabs/RecentDocuments/index.js +23 -0
- package/dist/widgets/Activity/Tabs/RecentDocuments/index.js.map +1 -0
- package/dist/widgets/Activity/components/DocumentList/index.css +61 -0
- package/dist/widgets/Activity/components/DocumentList/index.d.ts +15 -0
- package/dist/widgets/Activity/components/DocumentList/index.d.ts.map +1 -0
- package/dist/widgets/Activity/components/DocumentList/index.js +56 -0
- package/dist/widgets/Activity/components/DocumentList/index.js.map +1 -0
- package/dist/widgets/Activity/components/EmptyState/index.css +47 -0
- package/dist/widgets/Activity/components/EmptyState/index.d.ts +12 -0
- package/dist/widgets/Activity/components/EmptyState/index.d.ts.map +1 -0
- package/dist/widgets/Activity/components/EmptyState/index.js +37 -0
- package/dist/widgets/Activity/components/EmptyState/index.js.map +1 -0
- package/dist/widgets/Activity/components/Pagination/index.css +42 -0
- package/dist/widgets/Activity/components/Pagination/index.d.ts +20 -0
- package/dist/widgets/Activity/components/Pagination/index.d.ts.map +1 -0
- package/dist/widgets/Activity/components/Pagination/index.js +125 -0
- package/dist/widgets/Activity/components/Pagination/index.js.map +1 -0
- package/dist/widgets/Activity/components/StatusPill/index.css +24 -0
- package/dist/widgets/Activity/components/StatusPill/index.d.ts +8 -0
- package/dist/widgets/Activity/components/StatusPill/index.d.ts.map +1 -0
- package/dist/widgets/Activity/components/StatusPill/index.js +18 -0
- package/dist/widgets/Activity/components/StatusPill/index.js.map +1 -0
- package/dist/widgets/Activity/index.client.d.ts +15 -0
- package/dist/widgets/Activity/index.client.d.ts.map +1 -0
- package/dist/widgets/Activity/index.client.js +186 -0
- package/dist/widgets/Activity/index.client.js.map +1 -0
- package/dist/widgets/Activity/index.css +320 -0
- package/dist/widgets/Activity/index.d.ts +13 -0
- package/dist/widgets/Activity/index.d.ts.map +1 -0
- package/dist/widgets/Activity/index.js +100 -0
- package/dist/widgets/Activity/index.js.map +1 -0
- package/dist/widgets/{RecentlyViewed/index.client.d.ts → Activity/types.d.ts} +6 -13
- package/dist/widgets/Activity/types.d.ts.map +1 -0
- package/dist/widgets/Activity/types.js +2 -0
- package/dist/widgets/Activity/types.js.map +1 -0
- package/dist/widgets/Activity/utils/cache.d.ts +33 -0
- package/dist/widgets/Activity/utils/cache.d.ts.map +1 -0
- package/dist/widgets/Activity/utils/cache.js +72 -0
- package/dist/widgets/Activity/utils/cache.js.map +1 -0
- package/dist/widgets/Activity/utils/constants.d.ts +5 -0
- package/dist/widgets/Activity/utils/constants.d.ts.map +1 -0
- package/dist/widgets/Activity/utils/constants.js +4 -0
- package/dist/widgets/Activity/utils/constants.js.map +1 -0
- package/dist/widgets/Activity/utils/documents.d.ts +11 -0
- package/dist/widgets/Activity/utils/documents.d.ts.map +1 -0
- package/dist/widgets/Activity/utils/documents.js +38 -0
- package/dist/widgets/Activity/utils/documents.js.map +1 -0
- package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts +20 -0
- package/dist/widgets/Activity/utils/getActivityWidgetDocs.d.ts.map +1 -0
- package/dist/widgets/{RecentlyViewed/getDocuments.js → Activity/utils/getActivityWidgetDocs.js} +24 -21
- package/dist/widgets/Activity/utils/getActivityWidgetDocs.js.map +1 -0
- package/dist/widgets/Activity/utils/state.d.ts +44 -0
- package/dist/widgets/Activity/utils/state.d.ts.map +1 -0
- package/dist/widgets/Activity/utils/state.js +80 -0
- package/dist/widgets/Activity/utils/state.js.map +1 -0
- package/dist/widgets/Activity/utils/useActivityDocuments.d.ts +35 -0
- package/dist/widgets/Activity/utils/useActivityDocuments.d.ts.map +1 -0
- package/dist/widgets/Activity/utils/useActivityDocuments.js +141 -0
- package/dist/widgets/Activity/utils/useActivityDocuments.js.map +1 -0
- package/dist/widgets/Activity/utils/usePageSize.d.ts +11 -0
- package/dist/widgets/Activity/utils/usePageSize.d.ts.map +1 -0
- package/dist/widgets/Activity/utils/usePageSize.js +35 -0
- package/dist/widgets/Activity/utils/usePageSize.js.map +1 -0
- package/dist/widgets/CollectionCards/index.client.d.ts +3 -0
- package/dist/widgets/CollectionCards/index.client.d.ts.map +1 -1
- package/dist/widgets/CollectionCards/index.client.js +3 -0
- package/dist/widgets/CollectionCards/index.client.js.map +1 -1
- package/dist/widgets/CollectionCards/index.d.ts +3 -0
- package/dist/widgets/CollectionCards/index.d.ts.map +1 -1
- package/dist/widgets/CollectionCards/index.js +3 -0
- package/dist/widgets/CollectionCards/index.js.map +1 -1
- package/dist/widgets/CollectionQuery/SortField/index.d.ts +3 -0
- package/dist/widgets/CollectionQuery/SortField/index.d.ts.map +1 -1
- package/dist/widgets/CollectionQuery/SortField/index.js +181 -73
- package/dist/widgets/CollectionQuery/SortField/index.js.map +1 -1
- package/dist/widgets/CollectionQuery/index.d.ts +3 -0
- package/dist/widgets/CollectionQuery/index.d.ts.map +1 -1
- package/dist/widgets/CollectionQuery/index.js +3 -0
- package/dist/widgets/CollectionQuery/index.js.map +1 -1
- package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts +3 -0
- package/dist/widgets/UploadDropzone/CollectionsField/index.d.ts.map +1 -1
- package/dist/widgets/UploadDropzone/CollectionsField/index.js +65 -14
- package/dist/widgets/UploadDropzone/CollectionsField/index.js.map +1 -1
- package/dist/widgets/UploadDropzone/index.client.d.ts +3 -0
- package/dist/widgets/UploadDropzone/index.client.d.ts.map +1 -1
- package/dist/widgets/UploadDropzone/index.client.js +3 -0
- package/dist/widgets/UploadDropzone/index.client.js.map +1 -1
- package/dist/widgets/UploadDropzone/index.d.ts +3 -0
- package/dist/widgets/UploadDropzone/index.d.ts.map +1 -1
- package/dist/widgets/UploadDropzone/index.js +3 -0
- package/dist/widgets/UploadDropzone/index.js.map +1 -1
- package/dist/widgets/Welcome/index.d.ts +3 -0
- package/dist/widgets/Welcome/index.d.ts.map +1 -1
- package/dist/widgets/Welcome/index.js +3 -0
- package/dist/widgets/Welcome/index.js.map +1 -1
- package/dist/widgets/WidgetCard/index.css +0 -20
- package/dist/widgets/{RecentlyViewed/CollectionsField → shared/CollectionFilter}/index.css +2 -2
- package/dist/widgets/{RecentlyViewed/CollectionsField → shared/CollectionFilter}/index.d.ts +3 -1
- package/dist/widgets/shared/CollectionFilter/index.d.ts.map +1 -0
- package/dist/widgets/shared/CollectionFilter/index.js +170 -0
- package/dist/widgets/shared/CollectionFilter/index.js.map +1 -0
- package/package.json +21 -23
- package/dist/exports/client/chunk-2AY67NFV.js.map +0 -7
- package/dist/exports/client/chunk-6XCSN54Q.js +0 -27
- package/dist/exports/client/chunk-6XCSN54Q.js.map +0 -7
- package/dist/widgets/RecentlyViewed/CollectionsField/index.d.ts.map +0 -1
- package/dist/widgets/RecentlyViewed/CollectionsField/index.js +0 -102
- package/dist/widgets/RecentlyViewed/CollectionsField/index.js.map +0 -1
- package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.css +0 -73
- package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts +0 -19
- package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.d.ts.map +0 -1
- package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js +0 -122
- package/dist/widgets/RecentlyViewed/PinDocumentPicker/index.js.map +0 -1
- package/dist/widgets/RecentlyViewed/getDocuments.d.ts +0 -20
- package/dist/widgets/RecentlyViewed/getDocuments.d.ts.map +0 -1
- package/dist/widgets/RecentlyViewed/getDocuments.js.map +0 -1
- package/dist/widgets/RecentlyViewed/index.client.d.ts.map +0 -1
- package/dist/widgets/RecentlyViewed/index.client.js +0 -401
- package/dist/widgets/RecentlyViewed/index.client.js.map +0 -1
- package/dist/widgets/RecentlyViewed/index.css +0 -318
- package/dist/widgets/RecentlyViewed/index.d.ts +0 -10
- package/dist/widgets/RecentlyViewed/index.d.ts.map +0 -1
- package/dist/widgets/RecentlyViewed/index.js +0 -45
- package/dist/widgets/RecentlyViewed/index.js.map +0 -1
- package/dist/widgets/RecentlyViewed/pinnedPreferences.d.ts.map +0 -1
- package/dist/widgets/RecentlyViewed/pinnedPreferences.js.map +0 -1
- package/dist/widgets/RecentlyViewed/recents.d.ts +0 -8
- package/dist/widgets/RecentlyViewed/recents.d.ts.map +0 -1
- package/dist/widgets/RecentlyViewed/recents.js +0 -19
- package/dist/widgets/RecentlyViewed/recents.js.map +0 -1
- /package/dist/exports/client/{CodeEditor-UKD3EPUY.js.map → CodeEditor-23ZGBN6S.js.map} +0 -0
- /package/dist/exports/client/{DatePicker-POZJVQP4.js.map → DatePicker-AZBZPMY6.js.map} +0 -0
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
'use client';
|
|
2
2
|
|
|
3
|
+
import { c as _c } from "react/compiler-runtime";
|
|
3
4
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
4
5
|
import React, { useCallback, useMemo, useState } from 'react';
|
|
5
6
|
import { Gutter } from '../../../elements/Gutter/index.js';
|
|
@@ -18,136 +19,234 @@ const baseClass = 'branch-changes';
|
|
|
18
19
|
* checkboxes decide what "merge" means, so the state cannot sit inside the list
|
|
19
20
|
* while the button sits outside it.
|
|
20
21
|
*/
|
|
21
|
-
export const BranchChanges =
|
|
22
|
-
|
|
23
|
-
branchName,
|
|
24
|
-
branchSlug,
|
|
25
|
-
changes,
|
|
26
|
-
historyPage = 1,
|
|
27
|
-
historyTotalPages = 1,
|
|
28
|
-
isClosed = false,
|
|
29
|
-
mergeEvents = [],
|
|
30
|
-
scheduledMerges = []
|
|
31
|
-
}) => {
|
|
22
|
+
export const BranchChanges = t0 => {
|
|
23
|
+
const $ = _c(30);
|
|
32
24
|
const {
|
|
33
|
-
t
|
|
34
|
-
} = useTranslation();
|
|
35
|
-
// Everything selected to begin with: the common intent is to merge the branch,
|
|
36
|
-
// and deselecting the exceptions is less work than selecting the rule.
|
|
37
|
-
const [selected, setSelected] = useState(() => new Set(changes.map(c => c.id)));
|
|
38
|
-
const toggleAll = useCallback(() => {
|
|
39
|
-
setSelected(prev => prev.size === changes.length ? new Set() : new Set(changes.map(c_0 => c_0.id)));
|
|
40
|
-
}, [changes]);
|
|
41
|
-
const toggleSelected = useCallback(id => {
|
|
42
|
-
setSelected(prev_0 => {
|
|
43
|
-
const next = new Set(prev_0);
|
|
44
|
-
if (next.has(id)) {
|
|
45
|
-
next.delete(id);
|
|
46
|
-
} else {
|
|
47
|
-
next.add(id);
|
|
48
|
-
}
|
|
49
|
-
return next;
|
|
50
|
-
});
|
|
51
|
-
}, []);
|
|
52
|
-
// Undefined when everything is selected, which the endpoint reads as "apply
|
|
53
|
-
// every pending change" — the same outcome, but it keeps the merge honest if a
|
|
54
|
-
// change lands between this page render and the merge.
|
|
55
|
-
const selectedChangeIDs = useMemo(() => selected.size === changes.length ? undefined : [...selected], [changes.length, selected]);
|
|
56
|
-
// No `reviewURL`: this is the page one would link to. The changes are already read
|
|
57
|
-
// here, so the modal describes the merge without a request of its own — and it
|
|
58
|
-
// describes the *selection*, which is what will actually be applied.
|
|
59
|
-
const mergeTarget = useMemo(() => ({
|
|
60
25
|
branchID,
|
|
61
26
|
branchName,
|
|
62
27
|
branchSlug,
|
|
63
|
-
changes
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
28
|
+
changes,
|
|
29
|
+
historyPage: t1,
|
|
30
|
+
historyTotalPages: t2,
|
|
31
|
+
isClosed: t3,
|
|
32
|
+
mergeEvents: t4,
|
|
33
|
+
scheduledMerges: t5
|
|
34
|
+
} = t0;
|
|
35
|
+
const historyPage = t1 === undefined ? 1 : t1;
|
|
36
|
+
const historyTotalPages = t2 === undefined ? 1 : t2;
|
|
37
|
+
const isClosed = t3 === undefined ? false : t3;
|
|
38
|
+
const mergeEvents = t4 === undefined ? [] : t4;
|
|
39
|
+
const scheduledMerges = t5 === undefined ? [] : t5;
|
|
40
|
+
const {
|
|
41
|
+
t
|
|
42
|
+
} = useTranslation();
|
|
43
|
+
let t6;
|
|
44
|
+
if ($[0] !== changes) {
|
|
45
|
+
t6 = () => new Set(changes.map(_temp));
|
|
46
|
+
$[0] = changes;
|
|
47
|
+
$[1] = t6;
|
|
48
|
+
} else {
|
|
49
|
+
t6 = $[1];
|
|
50
|
+
}
|
|
51
|
+
const [selectedIDs, setSelectedIDs] = useState(t6);
|
|
52
|
+
let t7;
|
|
53
|
+
if ($[2] !== changes || $[3] !== selectedIDs) {
|
|
54
|
+
let t8;
|
|
55
|
+
if ($[5] !== selectedIDs) {
|
|
56
|
+
t8 = change => selectedIDs.has(change.id);
|
|
57
|
+
$[5] = selectedIDs;
|
|
58
|
+
$[6] = t8;
|
|
59
|
+
} else {
|
|
60
|
+
t8 = $[6];
|
|
61
|
+
}
|
|
62
|
+
t7 = new Set(changes.filter(t8).map(_temp2));
|
|
63
|
+
$[2] = changes;
|
|
64
|
+
$[3] = selectedIDs;
|
|
65
|
+
$[4] = t7;
|
|
66
|
+
} else {
|
|
67
|
+
t7 = $[4];
|
|
68
|
+
}
|
|
69
|
+
const selected = t7;
|
|
70
|
+
let t8;
|
|
71
|
+
if ($[7] !== changes || $[8] !== selected.size) {
|
|
72
|
+
t8 = () => {
|
|
73
|
+
setSelectedIDs(selected.size === changes.length ? new Set() : new Set(changes.map(_temp3)));
|
|
74
|
+
};
|
|
75
|
+
$[7] = changes;
|
|
76
|
+
$[8] = selected.size;
|
|
77
|
+
$[9] = t8;
|
|
78
|
+
} else {
|
|
79
|
+
t8 = $[9];
|
|
80
|
+
}
|
|
81
|
+
const toggleAll = t8;
|
|
82
|
+
let t9;
|
|
83
|
+
if ($[10] === Symbol.for("react.memo_cache_sentinel")) {
|
|
84
|
+
t9 = id => {
|
|
85
|
+
setSelectedIDs(prev => {
|
|
86
|
+
const next = new Set(prev);
|
|
87
|
+
if (next.has(id)) {
|
|
88
|
+
next.delete(id);
|
|
89
|
+
} else {
|
|
90
|
+
next.add(id);
|
|
91
|
+
}
|
|
92
|
+
return next;
|
|
93
|
+
});
|
|
94
|
+
};
|
|
95
|
+
$[10] = t9;
|
|
96
|
+
} else {
|
|
97
|
+
t9 = $[10];
|
|
98
|
+
}
|
|
99
|
+
const toggleSelected = t9;
|
|
100
|
+
let t10;
|
|
101
|
+
if ($[11] !== changes.length || $[12] !== selected) {
|
|
102
|
+
t10 = selected.size === changes.length ? undefined : [...selected];
|
|
103
|
+
$[11] = changes.length;
|
|
104
|
+
$[12] = selected;
|
|
105
|
+
$[13] = t10;
|
|
106
|
+
} else {
|
|
107
|
+
t10 = $[13];
|
|
108
|
+
}
|
|
109
|
+
const selectedChangeIDs = t10;
|
|
110
|
+
let t11;
|
|
111
|
+
if ($[14] !== changes || $[15] !== selected) {
|
|
112
|
+
let t12;
|
|
113
|
+
if ($[17] !== selected) {
|
|
114
|
+
t12 = change_1 => selected.has(change_1.id);
|
|
115
|
+
$[17] = selected;
|
|
116
|
+
$[18] = t12;
|
|
117
|
+
} else {
|
|
118
|
+
t12 = $[18];
|
|
119
|
+
}
|
|
120
|
+
t11 = changes.filter(t12);
|
|
121
|
+
$[14] = changes;
|
|
122
|
+
$[15] = selected;
|
|
123
|
+
$[16] = t11;
|
|
124
|
+
} else {
|
|
125
|
+
t11 = $[16];
|
|
126
|
+
}
|
|
127
|
+
let t12;
|
|
128
|
+
if ($[19] !== branchID || $[20] !== branchName || $[21] !== branchSlug || $[22] !== changes.length || $[23] !== selectedChangeIDs || $[24] !== t11) {
|
|
129
|
+
t12 = {
|
|
130
|
+
branchID,
|
|
131
|
+
branchName,
|
|
132
|
+
branchSlug,
|
|
133
|
+
changes: t11,
|
|
134
|
+
selectedChangeIDs,
|
|
135
|
+
totalChanges: changes.length
|
|
136
|
+
};
|
|
137
|
+
$[19] = branchID;
|
|
138
|
+
$[20] = branchName;
|
|
139
|
+
$[21] = branchSlug;
|
|
140
|
+
$[22] = changes.length;
|
|
141
|
+
$[23] = selectedChangeIDs;
|
|
142
|
+
$[24] = t11;
|
|
143
|
+
$[25] = t12;
|
|
144
|
+
} else {
|
|
145
|
+
t12 = $[25];
|
|
146
|
+
}
|
|
147
|
+
const mergeTarget = t12;
|
|
67
148
|
const hasPending = changes.length > 0;
|
|
68
149
|
const hasHistory = mergeEvents.length > 0;
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
150
|
+
const t13 = scheduledMerges.length > 0;
|
|
151
|
+
let t14;
|
|
152
|
+
if ($[26] !== hasHistory || $[27] !== hasPending || $[28] !== t13) {
|
|
153
|
+
t14 = [hasPending, hasHistory, t13].filter(Boolean);
|
|
154
|
+
$[26] = hasHistory;
|
|
155
|
+
$[27] = hasPending;
|
|
156
|
+
$[28] = t13;
|
|
157
|
+
$[29] = t14;
|
|
158
|
+
} else {
|
|
159
|
+
t14 = $[29];
|
|
160
|
+
}
|
|
161
|
+
const showSectionHeadings = t14.length > 1;
|
|
162
|
+
return _jsxs(React.Fragment, {
|
|
163
|
+
children: [_jsxs("div", {
|
|
74
164
|
className: `${baseClass}__controls`,
|
|
75
|
-
children: [
|
|
165
|
+
children: [_jsx("h2", {
|
|
76
166
|
className: `${baseClass}__title`,
|
|
77
|
-
children: hasPending ? t(
|
|
78
|
-
}), hasPending && !isClosed &&
|
|
167
|
+
children: hasPending ? t("branching:reviewingChangedDocuments") : hasHistory ? t("branching:branchHistory") : t("branching:reviewingChangedDocuments")
|
|
168
|
+
}), hasPending && !isClosed && _jsxs("div", {
|
|
79
169
|
className: `${baseClass}__actions`,
|
|
80
|
-
children: [
|
|
81
|
-
branchID
|
|
82
|
-
selectedChangeIDs
|
|
170
|
+
children: [_jsx(DiscardChangesButton, {
|
|
171
|
+
branchID,
|
|
172
|
+
selectedChangeIDs,
|
|
83
173
|
totalChanges: changes.length
|
|
84
|
-
}),
|
|
174
|
+
}), _jsx(MergeChangesButton, {
|
|
85
175
|
disabled: !selected.size,
|
|
86
176
|
target: mergeTarget
|
|
87
177
|
})]
|
|
88
178
|
})]
|
|
89
|
-
}),
|
|
179
|
+
}), _jsxs(Gutter, {
|
|
90
180
|
className: baseClass,
|
|
91
|
-
children: [scheduledMerges.length > 0 &&
|
|
181
|
+
children: [scheduledMerges.length > 0 && _jsxs("section", {
|
|
92
182
|
className: `${baseClass}__section`,
|
|
93
|
-
children: [showSectionHeadings &&
|
|
183
|
+
children: [showSectionHeadings && _jsx("h3", {
|
|
94
184
|
className: `${baseClass}__section-title`,
|
|
95
|
-
children: t(
|
|
96
|
-
}),
|
|
97
|
-
branchID
|
|
98
|
-
branchSlug
|
|
185
|
+
children: t("branching:scheduledMerges")
|
|
186
|
+
}), _jsx(ScheduledMerges, {
|
|
187
|
+
branchID,
|
|
188
|
+
branchSlug,
|
|
99
189
|
schedules: scheduledMerges
|
|
100
190
|
})]
|
|
101
|
-
}), hasPending &&
|
|
191
|
+
}), hasPending && _jsxs("section", {
|
|
102
192
|
className: `${baseClass}__section`,
|
|
103
|
-
children: [showSectionHeadings &&
|
|
193
|
+
children: [showSectionHeadings && _jsx("h3", {
|
|
104
194
|
className: `${baseClass}__section-title`,
|
|
105
|
-
children: t(
|
|
106
|
-
}),
|
|
195
|
+
children: t("branching:currentChanges")
|
|
196
|
+
}), _jsx("p", {
|
|
107
197
|
className: `${baseClass}__untouched-note`,
|
|
108
|
-
children: t(
|
|
109
|
-
}),
|
|
198
|
+
children: t("branching:untouchedDocumentsNote")
|
|
199
|
+
}), _jsx(ChangedDocuments, {
|
|
110
200
|
branch: branchSlug,
|
|
111
|
-
changes
|
|
112
|
-
selected
|
|
113
|
-
toggleAll
|
|
114
|
-
toggleSelected
|
|
201
|
+
changes,
|
|
202
|
+
selected,
|
|
203
|
+
toggleAll,
|
|
204
|
+
toggleSelected
|
|
115
205
|
})]
|
|
116
|
-
}), hasHistory &&
|
|
206
|
+
}), hasHistory && _jsxs("section", {
|
|
117
207
|
className: `${baseClass}__section`,
|
|
118
|
-
children: [showSectionHeadings &&
|
|
208
|
+
children: [showSectionHeadings && _jsx("h3", {
|
|
119
209
|
className: `${baseClass}__section-title`,
|
|
120
|
-
children: t(
|
|
121
|
-
}), isClosed &&
|
|
210
|
+
children: t("branching:mergeHistory")
|
|
211
|
+
}), isClosed && _jsx("p", {
|
|
122
212
|
className: `${baseClass}__closed`,
|
|
123
|
-
children: t(
|
|
124
|
-
}),
|
|
213
|
+
children: t("branching:branchClosed")
|
|
214
|
+
}), _jsx(MergeLedger, {
|
|
125
215
|
events: mergeEvents
|
|
126
|
-
}), historyTotalPages > 1 &&
|
|
216
|
+
}), historyTotalPages > 1 && _jsxs("nav", {
|
|
127
217
|
className: `${baseClass}__history-pages`,
|
|
128
|
-
children: [
|
|
218
|
+
children: [_jsx(Link, {
|
|
129
219
|
"aria-disabled": historyPage <= 1,
|
|
130
220
|
className: `${baseClass}__history-page`,
|
|
131
221
|
href: `?historyPage=${historyPage - 1}`,
|
|
132
|
-
children: t(
|
|
133
|
-
}),
|
|
222
|
+
children: t("general:previous")
|
|
223
|
+
}), _jsx("span", {
|
|
134
224
|
className: `${baseClass}__history-position`,
|
|
135
|
-
children: t(
|
|
225
|
+
children: t("branching:historyPageOf", {
|
|
136
226
|
page: historyPage,
|
|
137
227
|
total: historyTotalPages
|
|
138
228
|
})
|
|
139
|
-
}),
|
|
229
|
+
}), _jsx(Link, {
|
|
140
230
|
"aria-disabled": historyPage >= historyTotalPages,
|
|
141
231
|
className: `${baseClass}__history-page`,
|
|
142
232
|
href: `?historyPage=${historyPage + 1}`,
|
|
143
|
-
children: t(
|
|
233
|
+
children: t("general:next")
|
|
144
234
|
})]
|
|
145
235
|
})]
|
|
146
|
-
}), !hasPending && !hasHistory &&
|
|
236
|
+
}), !hasPending && !hasHistory && _jsx("p", {
|
|
147
237
|
className: `${baseClass}__empty`,
|
|
148
|
-
children: t(
|
|
238
|
+
children: t("branching:noChangesYet")
|
|
149
239
|
})]
|
|
150
240
|
})]
|
|
151
241
|
});
|
|
152
242
|
};
|
|
243
|
+
function _temp(c) {
|
|
244
|
+
return c.id;
|
|
245
|
+
}
|
|
246
|
+
function _temp2(change_0) {
|
|
247
|
+
return change_0.id;
|
|
248
|
+
}
|
|
249
|
+
function _temp3(c_0) {
|
|
250
|
+
return c_0.id;
|
|
251
|
+
}
|
|
153
252
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","useMemo","useState","Gutter","Link","useTranslation","ChangedDocuments","DiscardChangesButton","MergeChangesButton","MergeLedger","ScheduledMerges","baseClass","BranchChanges","branchID","branchName","branchSlug","changes","historyPage","historyTotalPages","isClosed","mergeEvents","scheduledMerges","t","selected","setSelected","Set","map","c","id","toggleAll","prev","size","length","toggleSelected","next","has","delete","add","selectedChangeIDs","undefined","mergeTarget","filter","change","totalChanges","hasPending","hasHistory","showSectionHeadings","Boolean","_jsxs","Fragment","className","_jsx","disabled","target","schedules","branch","events","href","page","total"],"sources":["../../../../src/views/Branch/BranchChanges/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useMemo, useState } from 'react'\n\nimport type { BranchChange } from '../ChangedDocuments/index.js'\nimport type { MergeEvent } from '../MergeLedger/index.js'\nimport type { ScheduledMerge } from '../ScheduledMerges/index.js'\n\nimport { Gutter } from '../../../elements/Gutter/index.js'\nimport { Link } from '../../../elements/Link/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ChangedDocuments } from '../ChangedDocuments/index.js'\nimport { DiscardChangesButton } from '../DiscardChangesButton/index.js'\nimport { MergeChangesButton } from '../MergeChangesButton/index.js'\nimport { MergeLedger } from '../MergeLedger/index.js'\nimport { ScheduledMerges } from '../ScheduledMerges/index.js'\n\nconst baseClass = 'branch-changes'\n\n/**\n * The branch's changes, and the action that applies them.\n *\n * The two live in one client component because the selection connects them: the\n * checkboxes decide what \"merge\" means, so the state cannot sit inside the list\n * while the button sits outside it.\n */\nexport const BranchChanges: React.FC<{\n branchID: number | string\n branchName: string\n branchSlug: string\n changes: BranchChange[]\n historyPage?: number\n historyTotalPages?: number\n isClosed?: boolean\n mergeEvents?: MergeEvent[]\n scheduledMerges?: ScheduledMerge[]\n}> = ({\n branchID,\n branchName,\n branchSlug,\n changes,\n historyPage = 1,\n historyTotalPages = 1,\n isClosed = false,\n mergeEvents = [],\n scheduledMerges = [],\n}) => {\n const { t } = useTranslation()\n\n // Everything selected to begin with: the common intent is to merge the branch,\n // and deselecting the exceptions is less work than selecting the rule.\n const [selected, setSelected] = useState<Set<string>>(() => new Set(changes.map((c) => c.id)))\n\n const toggleAll = useCallback(() => {\n setSelected((prev) =>\n prev.size === changes.length ? new Set() : new Set(changes.map((c) => c.id)),\n )\n }, [changes])\n\n const toggleSelected = useCallback((id: string) => {\n setSelected((prev) => {\n const next = new Set(prev)\n\n if (next.has(id)) {\n next.delete(id)\n } else {\n next.add(id)\n }\n\n return next\n })\n }, [])\n\n // Undefined when everything is selected, which the endpoint reads as \"apply\n // every pending change\" — the same outcome, but it keeps the merge honest if a\n // change lands between this page render and the merge.\n const selectedChangeIDs = useMemo(\n () => (selected.size === changes.length ? undefined : [...selected]),\n [changes.length, selected],\n )\n\n // No `reviewURL`: this is the page one would link to. The changes are already read\n // here, so the modal describes the merge without a request of its own — and it\n // describes the *selection*, which is what will actually be applied.\n const mergeTarget = useMemo(\n () => ({\n branchID,\n branchName,\n branchSlug,\n changes: changes.filter((change) => selected.has(change.id)),\n selectedChangeIDs,\n totalChanges: changes.length,\n }),\n [branchID, branchName, branchSlug, changes, selected, selectedChangeIDs],\n )\n\n const hasPending = changes.length > 0\n const hasHistory = mergeEvents.length > 0\n // Labelled as soon as more than one of the three is on screen; a lone section is\n // already named by the heading above it.\n const showSectionHeadings =\n [hasPending, hasHistory, scheduledMerges.length > 0].filter(Boolean).length > 1\n\n return (\n <React.Fragment>\n {/* Full-bleed and bordered like `doc-controls`, the bar this one sits below,\n rather than inset with the list it heads. */}\n <div className={`${baseClass}__controls`}>\n {/* Named for what the screen is, not for what happens to be on it. With\n nothing pending, this is the branch's history — a heading that describes\n the last merge event would be a caption pretending to be a title. */}\n <h2 className={`${baseClass}__title`}>\n {hasPending\n ? t('branching:reviewingChangedDocuments')\n : hasHistory\n ? t('branching:branchHistory')\n : t('branching:reviewingChangedDocuments')}\n </h2>\n {/* Closed branches take nothing further, and a branch with nothing pending\n has nothing to take — in both cases the buttons would be a dead end.\n Discard sits beside merge and is scoped by the same checkboxes: the two\n are the same decision about the same set, pointed in opposite directions. */}\n {hasPending && !isClosed && (\n <div className={`${baseClass}__actions`}>\n <DiscardChangesButton\n branchID={branchID}\n selectedChangeIDs={selectedChangeIDs}\n totalChanges={changes.length}\n />\n <MergeChangesButton disabled={!selected.size} target={mergeTarget} />\n </div>\n )}\n </div>\n <Gutter className={baseClass}>\n {/* Above everything, because it changes what the rest of the page means: the\n pending changes below are no longer only a proposal, they have a date. */}\n {scheduledMerges.length > 0 && (\n <section className={`${baseClass}__section`}>\n {showSectionHeadings && (\n <h3 className={`${baseClass}__section-title`}>{t('branching:scheduledMerges')}</h3>\n )}\n <ScheduledMerges\n branchID={branchID}\n branchSlug={branchSlug}\n schedules={scheduledMerges}\n />\n </section>\n )}\n\n {/* Both at once when both exist. Merging does not end a branch (§16), so a\n branch that has merged and been worked on again has two things to say —\n and replacing the history with the new work hid everything the branch had\n already done. Labelled only when both are present: with one section the\n heading above already names it. */}\n {hasPending && (\n <section className={`${baseClass}__section`}>\n {showSectionHeadings && (\n <h3 className={`${baseClass}__section-title`}>{t('branching:currentChanges')}</h3>\n )}\n {/* Only the documents this branch has touched are listed below — everything\n else on the branch is main, live, not a snapshot from when the branch was\n created. Placed here rather than as a permanent banner: it matters only\n while there is something to compare it against. */}\n <p className={`${baseClass}__untouched-note`}>\n {t('branching:untouchedDocumentsNote')}\n </p>\n <ChangedDocuments\n branch={branchSlug}\n changes={changes}\n selected={selected}\n toggleAll={toggleAll}\n toggleSelected={toggleSelected}\n />\n </section>\n )}\n\n {hasHistory && (\n <section className={`${baseClass}__section`}>\n {showSectionHeadings && (\n <h3 className={`${baseClass}__section-title`}>{t('branching:mergeHistory')}</h3>\n )}\n {isClosed && <p className={`${baseClass}__closed`}>{t('branching:branchClosed')}</p>}\n <MergeLedger events={mergeEvents} />\n {historyTotalPages > 1 && (\n <nav className={`${baseClass}__history-pages`}>\n <Link\n aria-disabled={historyPage <= 1}\n className={`${baseClass}__history-page`}\n href={`?historyPage=${historyPage - 1}`}\n >\n {t('general:previous')}\n </Link>\n <span className={`${baseClass}__history-position`}>\n {t('branching:historyPageOf', { page: historyPage, total: historyTotalPages })}\n </span>\n <Link\n aria-disabled={historyPage >= historyTotalPages}\n className={`${baseClass}__history-page`}\n href={`?historyPage=${historyPage + 1}`}\n >\n {t('general:next')}\n </Link>\n </nav>\n )}\n </section>\n )}\n\n {!hasPending && !hasHistory && (\n <p className={`${baseClass}__empty`}>{t('branching:noChangesYet')}</p>\n )}\n </Gutter>\n </React.Fragment>\n )\n}\n"],"mappings":"AAAA;;;AAEA,OAAOA,KAAA,IAASC,WAAW,EAAEC,OAAO,EAAEC,QAAQ,QAAQ;AAMtD,SAASC,MAAM,QAAQ;AACvB,SAASC,IAAI,QAAQ;AACrB,SAASC,cAAc,QAAQ;AAC/B,SAASC,gBAAgB,QAAQ;AACjC,SAASC,oBAAoB,QAAQ;AACrC,SAASC,kBAAkB,QAAQ;AACnC,SAASC,WAAW,QAAQ;AAC5B,SAASC,eAAe,QAAQ;AAEhC,MAAMC,SAAA,GAAY;AAElB;;;;;;;AAOA,OAAO,MAAMC,aAAA,GAURA,CAAC;EACJC,QAAQ;EACRC,UAAU;EACVC,UAAU;EACVC,OAAO;EACPC,WAAA,GAAc,CAAC;EACfC,iBAAA,GAAoB,CAAC;EACrBC,QAAA,GAAW,KAAK;EAChBC,WAAA,GAAc,EAAE;EAChBC,eAAA,GAAkB;AAAE,CACrB;EACC,MAAM;IAAEC;EAAC,CAAE,GAAGjB,cAAA;EAEd;EACA;EACA,MAAM,CAACkB,QAAA,EAAUC,WAAA,CAAY,GAAGtB,QAAA,CAAsB,MAAM,IAAIuB,GAAA,CAAIT,OAAA,CAAQU,GAAG,CAAEC,CAAA,IAAMA,CAAA,CAAEC,EAAE;EAE3F,MAAMC,SAAA,GAAY7B,WAAA,CAAY;IAC5BwB,WAAA,CAAaM,IAAA,IACXA,IAAA,CAAKC,IAAI,KAAKf,OAAA,CAAQgB,MAAM,GAAG,IAAIP,GAAA,KAAQ,IAAIA,GAAA,CAAIT,OAAA,CAAQU,GAAG,CAAEC,GAAA,IAAMA,GAAA,CAAEC,EAAE;EAE9E,GAAG,CAACZ,OAAA,CAAQ;EAEZ,MAAMiB,cAAA,GAAiBjC,WAAA,CAAa4B,EAAA;IAClCJ,WAAA,CAAaM,MAAA;MACX,MAAMI,IAAA,GAAO,IAAIT,GAAA,CAAIK,MAAA;MAErB,IAAII,IAAA,CAAKC,GAAG,CAACP,EAAA,GAAK;QAChBM,IAAA,CAAKE,MAAM,CAACR,EAAA;MACd,OAAO;QACLM,IAAA,CAAKG,GAAG,CAACT,EAAA;MACX;MAEA,OAAOM,IAAA;IACT;EACF,GAAG,EAAE;EAEL;EACA;EACA;EACA,MAAMI,iBAAA,GAAoBrC,OAAA,CACxB,MAAOsB,QAAA,CAASQ,IAAI,KAAKf,OAAA,CAAQgB,MAAM,GAAGO,SAAA,GAAY,C,GAAIhB,QAAA,CAAS,EACnE,CAACP,OAAA,CAAQgB,MAAM,EAAET,QAAA,CAAS;EAG5B;EACA;EACA;EACA,MAAMiB,WAAA,GAAcvC,OAAA,CAClB,OAAO;IACLY,QAAA;IACAC,UAAA;IACAC,UAAA;IACAC,OAAA,EAASA,OAAA,CAAQyB,MAAM,CAAEC,MAAA,IAAWnB,QAAA,CAASY,GAAG,CAACO,MAAA,CAAOd,EAAE;IAC1DU,iBAAA;IACAK,YAAA,EAAc3B,OAAA,CAAQgB;EACxB,IACA,CAACnB,QAAA,EAAUC,UAAA,EAAYC,UAAA,EAAYC,OAAA,EAASO,QAAA,EAAUe,iBAAA,CAAkB;EAG1E,MAAMM,UAAA,GAAa5B,OAAA,CAAQgB,MAAM,GAAG;EACpC,MAAMa,UAAA,GAAazB,WAAA,CAAYY,MAAM,GAAG;EACxC;EACA;EACA,MAAMc,mBAAA,GACJ,CAACF,UAAA,EAAYC,UAAA,EAAYxB,eAAA,CAAgBW,MAAM,GAAG,EAAE,CAACS,MAAM,CAACM,OAAA,EAASf,MAAM,GAAG;EAEhF,oBACEgB,KAAA,CAACjD,KAAA,CAAMkD,QAAQ;4BAGbD,KAAA,CAAC;MAAIE,SAAA,EAAW,GAAGvC,SAAA,YAAqB;8BAItCwC,IAAA,CAAC;QAAGD,SAAA,EAAW,GAAGvC,SAAA,SAAkB;kBACjCiC,UAAA,GACGtB,CAAA,CAAE,yCACFuB,UAAA,GACEvB,CAAA,CAAE,6BACFA,CAAA,CAAE;UAMTsB,UAAA,IAAc,CAACzB,QAAA,iBACd6B,KAAA,CAAC;QAAIE,SAAA,EAAW,GAAGvC,SAAA,WAAoB;gCACrCwC,IAAA,CAAC5C,oBAAA;UACCM,QAAA,EAAUA,QAAA;UACVyB,iBAAA,EAAmBA,iBAAA;UACnBK,YAAA,EAAc3B,OAAA,CAAQgB;yBAExBmB,IAAA,CAAC3C,kBAAA;UAAmB4C,QAAA,EAAU,CAAC7B,QAAA,CAASQ,IAAI;UAAEsB,MAAA,EAAQb;;;qBAI5DQ,KAAA,CAAC7C,MAAA;MAAO+C,SAAA,EAAWvC,SAAA;iBAGhBU,eAAA,CAAgBW,MAAM,GAAG,kBACxBgB,KAAA,CAAC;QAAQE,SAAA,EAAW,GAAGvC,SAAA,WAAoB;mBACxCmC,mBAAA,iBACCK,IAAA,CAAC;UAAGD,SAAA,EAAW,GAAGvC,SAAA,iBAA0B;oBAAGW,CAAA,CAAE;yBAEnD6B,IAAA,CAACzC,eAAA;UACCG,QAAA,EAAUA,QAAA;UACVE,UAAA,EAAYA,UAAA;UACZuC,SAAA,EAAWjC;;UAUhBuB,UAAA,iBACCI,KAAA,CAAC;QAAQE,SAAA,EAAW,GAAGvC,SAAA,WAAoB;mBACxCmC,mBAAA,iBACCK,IAAA,CAAC;UAAGD,SAAA,EAAW,GAAGvC,SAAA,iBAA0B;oBAAGW,CAAA,CAAE;yBAMnD6B,IAAA,CAAC;UAAED,SAAA,EAAW,GAAGvC,SAAA,kBAA2B;oBACzCW,CAAA,CAAE;yBAEL6B,IAAA,CAAC7C,gBAAA;UACCiD,MAAA,EAAQxC,UAAA;UACRC,OAAA,EAASA,OAAA;UACTO,QAAA,EAAUA,QAAA;UACVM,SAAA,EAAWA,SAAA;UACXI,cAAA,EAAgBA;;UAKrBY,UAAA,iBACCG,KAAA,CAAC;QAAQE,SAAA,EAAW,GAAGvC,SAAA,WAAoB;mBACxCmC,mBAAA,iBACCK,IAAA,CAAC;UAAGD,SAAA,EAAW,GAAGvC,SAAA,iBAA0B;oBAAGW,CAAA,CAAE;YAElDH,QAAA,iBAAYgC,IAAA,CAAC;UAAED,SAAA,EAAW,GAAGvC,SAAA,UAAmB;oBAAGW,CAAA,CAAE;yBACtD6B,IAAA,CAAC1C,WAAA;UAAY+C,MAAA,EAAQpC;YACpBF,iBAAA,GAAoB,kBACnB8B,KAAA,CAAC;UAAIE,SAAA,EAAW,GAAGvC,SAAA,iBAA0B;kCAC3CwC,IAAA,CAAC/C,IAAA;YACC,iBAAea,WAAA,IAAe;YAC9BiC,SAAA,EAAW,GAAGvC,SAAA,gBAAyB;YACvC8C,IAAA,EAAM,gBAAgBxC,WAAA,GAAc,GAAG;sBAEtCK,CAAA,CAAE;2BAEL6B,IAAA,CAAC;YAAKD,SAAA,EAAW,GAAGvC,SAAA,oBAA6B;sBAC9CW,CAAA,CAAE,2BAA2B;cAAEoC,IAAA,EAAMzC,WAAA;cAAa0C,KAAA,EAAOzC;YAAkB;2BAE9EiC,IAAA,CAAC/C,IAAA;YACC,iBAAea,WAAA,IAAeC,iBAAA;YAC9BgC,SAAA,EAAW,GAAGvC,SAAA,gBAAyB;YACvC8C,IAAA,EAAM,gBAAgBxC,WAAA,GAAc,GAAG;sBAEtCK,CAAA,CAAE;;;UAOZ,CAACsB,UAAA,IAAc,CAACC,UAAA,iBACfM,IAAA,CAAC;QAAED,SAAA,EAAW,GAAGvC,SAAA,SAAkB;kBAAGW,CAAA,CAAE;;;;AAKlD","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useCallback","useMemo","useState","Gutter","Link","useTranslation","ChangedDocuments","DiscardChangesButton","MergeChangesButton","MergeLedger","ScheduledMerges","baseClass","BranchChanges","t0","$","branchID","branchName","branchSlug","changes","historyPage","t1","historyTotalPages","t2","isClosed","t3","mergeEvents","t4","scheduledMerges","t5","undefined","t","t6","Set","map","_temp","selectedIDs","setSelectedIDs","t7","t8","change","has","id","filter","_temp2","selected","size","length","_temp3","toggleAll","t9","Symbol","for","prev","next","delete","add","toggleSelected","t10","selectedChangeIDs","t11","t12","change_1","totalChanges","mergeTarget","hasPending","hasHistory","t13","t14","Boolean","showSectionHeadings","_jsxs","Fragment","children","className","_jsx","disabled","target","schedules","branch","events","href","page","total","change_0","c_0"],"sources":["../../../../src/views/Branch/BranchChanges/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useMemo, useState } from 'react'\n\nimport type { BranchChange } from '../ChangedDocuments/index.js'\nimport type { MergeEvent } from '../MergeLedger/index.js'\nimport type { ScheduledMerge } from '../ScheduledMerges/index.js'\n\nimport { Gutter } from '../../../elements/Gutter/index.js'\nimport { Link } from '../../../elements/Link/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ChangedDocuments } from '../ChangedDocuments/index.js'\nimport { DiscardChangesButton } from '../DiscardChangesButton/index.js'\nimport { MergeChangesButton } from '../MergeChangesButton/index.js'\nimport { MergeLedger } from '../MergeLedger/index.js'\nimport { ScheduledMerges } from '../ScheduledMerges/index.js'\n\nconst baseClass = 'branch-changes'\n\n/**\n * The branch's changes, and the action that applies them.\n *\n * The two live in one client component because the selection connects them: the\n * checkboxes decide what \"merge\" means, so the state cannot sit inside the list\n * while the button sits outside it.\n */\nexport const BranchChanges: React.FC<{\n branchID: number | string\n branchName: string\n branchSlug: string\n changes: BranchChange[]\n historyPage?: number\n historyTotalPages?: number\n isClosed?: boolean\n mergeEvents?: MergeEvent[]\n scheduledMerges?: ScheduledMerge[]\n}> = ({\n branchID,\n branchName,\n branchSlug,\n changes,\n historyPage = 1,\n historyTotalPages = 1,\n isClosed = false,\n mergeEvents = [],\n scheduledMerges = [],\n}) => {\n const { t } = useTranslation()\n\n // Everything selected to begin with: the common intent is to merge the branch,\n // and deselecting the exceptions is less work than selecting the rule.\n const [selectedIDs, setSelectedIDs] = useState<Set<string>>(\n () => new Set(changes.map((c) => c.id)),\n )\n const selected = useMemo(\n () =>\n new Set(changes.filter((change) => selectedIDs.has(change.id)).map((change) => change.id)),\n [changes, selectedIDs],\n )\n\n const toggleAll = useCallback(() => {\n setSelectedIDs(selected.size === changes.length ? new Set() : new Set(changes.map((c) => c.id)))\n }, [changes, selected.size])\n\n const toggleSelected = useCallback((id: string) => {\n setSelectedIDs((prev) => {\n const next = new Set(prev)\n\n if (next.has(id)) {\n next.delete(id)\n } else {\n next.add(id)\n }\n\n return next\n })\n }, [])\n\n // Undefined when everything is selected, which the endpoint reads as \"apply\n // every pending change\" — the same outcome, but it keeps the merge honest if a\n // change lands between this page render and the merge.\n const selectedChangeIDs = useMemo(\n () => (selected.size === changes.length ? undefined : [...selected]),\n [changes.length, selected],\n )\n\n // No `reviewURL`: this is the page one would link to. The changes are already read\n // here, so the modal describes the merge without a request of its own — and it\n // describes the *selection*, which is what will actually be applied.\n const mergeTarget = useMemo(\n () => ({\n branchID,\n branchName,\n branchSlug,\n changes: changes.filter((change) => selected.has(change.id)),\n selectedChangeIDs,\n totalChanges: changes.length,\n }),\n [branchID, branchName, branchSlug, changes, selected, selectedChangeIDs],\n )\n\n const hasPending = changes.length > 0\n const hasHistory = mergeEvents.length > 0\n // Labelled as soon as more than one of the three is on screen; a lone section is\n // already named by the heading above it.\n const showSectionHeadings =\n [hasPending, hasHistory, scheduledMerges.length > 0].filter(Boolean).length > 1\n\n return (\n <React.Fragment>\n {/* Full-bleed and bordered like `doc-controls`, the bar this one sits below,\n rather than inset with the list it heads. */}\n <div className={`${baseClass}__controls`}>\n {/* Named for what the screen is, not for what happens to be on it. With\n nothing pending, this is the branch's history — a heading that describes\n the last merge event would be a caption pretending to be a title. */}\n <h2 className={`${baseClass}__title`}>\n {hasPending\n ? t('branching:reviewingChangedDocuments')\n : hasHistory\n ? t('branching:branchHistory')\n : t('branching:reviewingChangedDocuments')}\n </h2>\n {/* Closed branches take nothing further, and a branch with nothing pending\n has nothing to take — in both cases the buttons would be a dead end.\n Discard sits beside merge and is scoped by the same checkboxes: the two\n are the same decision about the same set, pointed in opposite directions. */}\n {hasPending && !isClosed && (\n <div className={`${baseClass}__actions`}>\n <DiscardChangesButton\n branchID={branchID}\n selectedChangeIDs={selectedChangeIDs}\n totalChanges={changes.length}\n />\n <MergeChangesButton disabled={!selected.size} target={mergeTarget} />\n </div>\n )}\n </div>\n <Gutter className={baseClass}>\n {/* Above everything, because it changes what the rest of the page means: the\n pending changes below are no longer only a proposal, they have a date. */}\n {scheduledMerges.length > 0 && (\n <section className={`${baseClass}__section`}>\n {showSectionHeadings && (\n <h3 className={`${baseClass}__section-title`}>{t('branching:scheduledMerges')}</h3>\n )}\n <ScheduledMerges\n branchID={branchID}\n branchSlug={branchSlug}\n schedules={scheduledMerges}\n />\n </section>\n )}\n\n {/* Both at once when both exist. Merging does not end a branch (§16), so a\n branch that has merged and been worked on again has two things to say —\n and replacing the history with the new work hid everything the branch had\n already done. Labelled only when both are present: with one section the\n heading above already names it. */}\n {hasPending && (\n <section className={`${baseClass}__section`}>\n {showSectionHeadings && (\n <h3 className={`${baseClass}__section-title`}>{t('branching:currentChanges')}</h3>\n )}\n {/* Only the documents this branch has touched are listed below — everything\n else on the branch is main, live, not a snapshot from when the branch was\n created. Placed here rather than as a permanent banner: it matters only\n while there is something to compare it against. */}\n <p className={`${baseClass}__untouched-note`}>\n {t('branching:untouchedDocumentsNote')}\n </p>\n <ChangedDocuments\n branch={branchSlug}\n changes={changes}\n selected={selected}\n toggleAll={toggleAll}\n toggleSelected={toggleSelected}\n />\n </section>\n )}\n\n {hasHistory && (\n <section className={`${baseClass}__section`}>\n {showSectionHeadings && (\n <h3 className={`${baseClass}__section-title`}>{t('branching:mergeHistory')}</h3>\n )}\n {isClosed && <p className={`${baseClass}__closed`}>{t('branching:branchClosed')}</p>}\n <MergeLedger events={mergeEvents} />\n {historyTotalPages > 1 && (\n <nav className={`${baseClass}__history-pages`}>\n <Link\n aria-disabled={historyPage <= 1}\n className={`${baseClass}__history-page`}\n href={`?historyPage=${historyPage - 1}`}\n >\n {t('general:previous')}\n </Link>\n <span className={`${baseClass}__history-position`}>\n {t('branching:historyPageOf', { page: historyPage, total: historyTotalPages })}\n </span>\n <Link\n aria-disabled={historyPage >= historyTotalPages}\n className={`${baseClass}__history-page`}\n href={`?historyPage=${historyPage + 1}`}\n >\n {t('general:next')}\n </Link>\n </nav>\n )}\n </section>\n )}\n\n {!hasPending && !hasHistory && (\n <p className={`${baseClass}__empty`}>{t('branching:noChangesYet')}</p>\n )}\n </Gutter>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -71,7 +71,7 @@ export const DiscardChangesButton = ({
|
|
|
71
71
|
count: json.discarded?.length ?? 0
|
|
72
72
|
}));
|
|
73
73
|
closeModal(modalSlug);
|
|
74
|
-
startRouteTransition(() => router.refresh());
|
|
74
|
+
await startRouteTransition(() => router.refresh());
|
|
75
75
|
} catch (_err) {
|
|
76
76
|
toast.error(t('error:unknown'));
|
|
77
77
|
} finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["branchesCollectionSlug","formatAdminURL","React","useCallback","useState","toast","Button","ConfirmationModal","useModal","useConfig","useRouter","useRouteTransition","useTranslation","requests","DiscardChangesButton","branchID","selectedChangeIDs","totalChanges","t","closeModal","openModal","router","startRouteTransition","config","routes","api","serverURL","isDiscarding","setIsDiscarding","modalSlug","count","length","handleDiscard","response","post","apiRoute","path","body","JSON","stringify","changes","headers","ok","error","json","success","discarded","refresh","_err","_jsxs","Fragment","_jsx","buttonStyle","disabled","onClick","size","className","confirmingLabel","heading","onConfirm"],"sources":["../../../../src/views/Branch/DiscardChangesButton/index.tsx"],"sourcesContent":["'use client'\n\nimport { branchesCollectionSlug, formatAdminURL } from 'payload/shared'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { ConfirmationModal } from '../../../elements/ConfirmationModal/index.js'\nimport { useModal } from '../../../elements/Modal/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useRouter } from '../../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { requests } from '../../../utilities/api.js'\n\n/**\n * Throws away branch work, at the same scope the merge button applies it.\n *\n * Scoped by the same checkboxes deliberately: \"these are the changes I am looking\n * at\" should mean one thing on the page, whichever of the two actions follows. A\n * confirmation stands in front of it because discarding is the one action here that\n * destroys work rather than promoting it, and there is no undo.\n */\nexport const DiscardChangesButton: React.FC<{\n branchID: number | string\n /** Undefined means every pending change, matching the merge target's convention. */\n selectedChangeIDs?: (number | string)[]\n totalChanges: number\n}> = ({ branchID, selectedChangeIDs, totalChanges }) => {\n const { t } = useTranslation()\n const { closeModal, openModal } = useModal()\n const router = useRouter()\n const { startRouteTransition } = useRouteTransition()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const [isDiscarding, setIsDiscarding] = useState(false)\n\n const modalSlug = `discard-branch-changes-${branchID}`\n const count = selectedChangeIDs?.length ?? totalChanges\n\n const handleDiscard = useCallback(async () => {\n setIsDiscarding(true)\n\n try {\n const response = await requests.post(\n formatAdminURL({\n apiRoute: api,\n path: `/${branchesCollectionSlug}/${branchID}/discard`,\n serverURL,\n }),\n {\n body: JSON.stringify({ changes: selectedChangeIDs }),\n headers: { 'Content-Type': 'application/json' },\n },\n )\n\n if (!response.ok) {\n toast.error(t('error:unknown'))\n\n return\n }\n\n const json = (await response.json()) as { discarded?: unknown[] }\n\n toast.success(t('branching:discardedCount', { count: json.discarded?.length ?? 0 }))\n closeModal(modalSlug)\n startRouteTransition(() => router.refresh())\n } catch (_err) {\n toast.error(t('error:unknown'))\n } finally {\n setIsDiscarding(false)\n }\n }, [\n api,\n branchID,\n closeModal,\n modalSlug,\n router,\n selectedChangeIDs,\n serverURL,\n startRouteTransition,\n t,\n ])\n\n return (\n <React.Fragment>\n <Button\n buttonStyle=\"secondary\"\n disabled={!count || isDiscarding}\n onClick={() => openModal(modalSlug)}\n size=\"medium\"\n >\n {selectedChangeIDs\n ? t('branching:discardSelected', { count })\n : t('branching:discardAll', { count })}\n </Button>\n <ConfirmationModal\n body={\n selectedChangeIDs\n ? t('branching:confirmDiscardSelected', { count })\n : t('branching:confirmDiscardAll', { count })\n }\n className=\"discard-changes-modal\"\n confirmingLabel={t('branching:discarding')}\n heading={t('branching:discardChanges')}\n modalSlug={modalSlug}\n onConfirm={handleDiscard}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"AAAA;;;AAEA,SAASA,sBAAsB,EAAEC,cAAc,QAAQ;AACvD,OAAOC,KAAA,IAASC,WAAW,EAAEC,QAAQ,QAAQ;AAC7C,SAASC,KAAK,QAAQ;AAEtB,SAASC,MAAM,QAAQ;AACvB,SAASC,iBAAiB,QAAQ;AAClC,SAASC,QAAQ,QAAQ;AACzB,SAASC,SAAS,QAAQ;AAC1B,SAASC,SAAS,QAAQ;AAC1B,SAASC,kBAAkB,QAAQ;AACnC,SAASC,cAAc,QAAQ;AAC/B,SAASC,QAAQ,QAAQ;AAEzB;;;;;;;;AAQA,OAAO,MAAMC,oBAAA,GAKRA,CAAC;EAAEC,QAAQ;EAAEC,iBAAiB;EAAEC;AAAY,CAAE;EACjD,MAAM;IAAEC;EAAC,CAAE,GAAGN,cAAA;EACd,MAAM;IAAEO,UAAU;IAAEC;EAAS,CAAE,GAAGZ,QAAA;EAClC,MAAMa,MAAA,GAASX,SAAA;EACf,MAAM;IAAEY;EAAoB,CAAE,GAAGX,kBAAA;EAEjC,MAAM;IACJY,MAAA,EAAQ;MACNC,MAAA,EAAQ;QAAEC;MAAG,CAAE;MACfC;IAAS;EACV,CACF,GAAGjB,SAAA;EAEJ,MAAM,CAACkB,YAAA,EAAcC,eAAA,CAAgB,GAAGxB,QAAA,CAAS;EAEjD,MAAMyB,SAAA,GAAY,0BAA0Bd,QAAA,EAAU;EACtD,MAAMe,KAAA,GAAQd,iBAAA,EAAmBe,MAAA,IAAUd,YAAA;EAE3C,MAAMe,aAAA,GAAgB7B,WAAA,CAAY;IAChCyB,eAAA,CAAgB;IAEhB,IAAI;MACF,MAAMK,QAAA,GAAW,MAAMpB,QAAA,CAASqB,IAAI,CAClCjC,cAAA,CAAe;QACbkC,QAAA,EAAUV,GAAA;QACVW,IAAA,EAAM,IAAIpC,sBAAA,IAA0Be,QAAA,UAAkB;QACtDW;MACF,IACA;QACEW,IAAA,EAAMC,IAAA,CAAKC,SAAS,CAAC;UAAEC,OAAA,EAASxB;QAAkB;QAClDyB,OAAA,EAAS;UAAE,gBAAgB;QAAmB;MAChD;MAGF,IAAI,CAACR,QAAA,CAASS,EAAE,EAAE;QAChBrC,KAAA,CAAMsC,KAAK,CAACzB,CAAA,CAAE;QAEd;MACF;MAEA,MAAM0B,IAAA,GAAQ,MAAMX,QAAA,CAASW,IAAI;MAEjCvC,KAAA,CAAMwC,OAAO,CAAC3B,CAAA,CAAE,4BAA4B;QAAEY,KAAA,EAAOc,IAAA,CAAKE,SAAS,EAAEf,MAAA,IAAU;MAAE;MACjFZ,UAAA,CAAWU,SAAA;
|
|
1
|
+
{"version":3,"file":"index.js","names":["branchesCollectionSlug","formatAdminURL","React","useCallback","useState","toast","Button","ConfirmationModal","useModal","useConfig","useRouter","useRouteTransition","useTranslation","requests","DiscardChangesButton","branchID","selectedChangeIDs","totalChanges","t","closeModal","openModal","router","startRouteTransition","config","routes","api","serverURL","isDiscarding","setIsDiscarding","modalSlug","count","length","handleDiscard","response","post","apiRoute","path","body","JSON","stringify","changes","headers","ok","error","json","success","discarded","refresh","_err","_jsxs","Fragment","_jsx","buttonStyle","disabled","onClick","size","className","confirmingLabel","heading","onConfirm"],"sources":["../../../../src/views/Branch/DiscardChangesButton/index.tsx"],"sourcesContent":["'use client'\n\nimport { branchesCollectionSlug, formatAdminURL } from 'payload/shared'\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { ConfirmationModal } from '../../../elements/ConfirmationModal/index.js'\nimport { useModal } from '../../../elements/Modal/index.js'\nimport { useConfig } from '../../../providers/Config/index.js'\nimport { useRouter } from '../../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { requests } from '../../../utilities/api.js'\n\n/**\n * Throws away branch work, at the same scope the merge button applies it.\n *\n * Scoped by the same checkboxes deliberately: \"these are the changes I am looking\n * at\" should mean one thing on the page, whichever of the two actions follows. A\n * confirmation stands in front of it because discarding is the one action here that\n * destroys work rather than promoting it, and there is no undo.\n */\nexport const DiscardChangesButton: React.FC<{\n branchID: number | string\n /** Undefined means every pending change, matching the merge target's convention. */\n selectedChangeIDs?: (number | string)[]\n totalChanges: number\n}> = ({ branchID, selectedChangeIDs, totalChanges }) => {\n const { t } = useTranslation()\n const { closeModal, openModal } = useModal()\n const router = useRouter()\n const { startRouteTransition } = useRouteTransition()\n\n const {\n config: {\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const [isDiscarding, setIsDiscarding] = useState(false)\n\n const modalSlug = `discard-branch-changes-${branchID}`\n const count = selectedChangeIDs?.length ?? totalChanges\n\n const handleDiscard = useCallback(async () => {\n setIsDiscarding(true)\n\n try {\n const response = await requests.post(\n formatAdminURL({\n apiRoute: api,\n path: `/${branchesCollectionSlug}/${branchID}/discard`,\n serverURL,\n }),\n {\n body: JSON.stringify({ changes: selectedChangeIDs }),\n headers: { 'Content-Type': 'application/json' },\n },\n )\n\n if (!response.ok) {\n toast.error(t('error:unknown'))\n\n return\n }\n\n const json = (await response.json()) as { discarded?: unknown[] }\n\n toast.success(t('branching:discardedCount', { count: json.discarded?.length ?? 0 }))\n closeModal(modalSlug)\n await startRouteTransition(() => router.refresh())\n } catch (_err) {\n toast.error(t('error:unknown'))\n } finally {\n setIsDiscarding(false)\n }\n }, [\n api,\n branchID,\n closeModal,\n modalSlug,\n router,\n selectedChangeIDs,\n serverURL,\n startRouteTransition,\n t,\n ])\n\n return (\n <React.Fragment>\n <Button\n buttonStyle=\"secondary\"\n disabled={!count || isDiscarding}\n onClick={() => openModal(modalSlug)}\n size=\"medium\"\n >\n {selectedChangeIDs\n ? t('branching:discardSelected', { count })\n : t('branching:discardAll', { count })}\n </Button>\n <ConfirmationModal\n body={\n selectedChangeIDs\n ? t('branching:confirmDiscardSelected', { count })\n : t('branching:confirmDiscardAll', { count })\n }\n className=\"discard-changes-modal\"\n confirmingLabel={t('branching:discarding')}\n heading={t('branching:discardChanges')}\n modalSlug={modalSlug}\n onConfirm={handleDiscard}\n />\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","useEffect","useStepNav","useTranslation","DefaultEditView","BranchManageView","props","_jsxs","Fragment","_jsx","EditCrumb","$","setStepNav","stepNav","t","t0","label","t1","t2","last","length","url"],"sources":["../../../../src/views/Branch/Manage/index.tsx"],"sourcesContent":["'use client'\n\nimport type { DocumentViewClientProps } from 'payload'\n\nimport React, { useEffect } from 'react'\n\nimport { useStepNav } from '../../../elements/StepNav/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { DefaultEditView } from '../../Edit/index.js'\n\n/**\n * A branch's own fields, at `/manage`.\n *\n * Payload's edit view, unchanged, plus the crumb that says which view you are on.\n * A branch opens to its changed documents, so the branch crumb alone would land\n * you somewhere else than where you are.\n */\nexport const BranchManageView: React.FC<DocumentViewClientProps> = (props) => (\n <React.Fragment>\n <DefaultEditView {...props} />\n <EditCrumb />\n </React.Fragment>\n)\n\n/**\n * Appends to the trail rather than setting it.\n *\n * The edit view owns the trail and rewrites it whenever the document resolves, so\n * a second writer would race it. This reacts to whatever it wrote instead, which\n * self-corrects on every rewrite.\n */\nconst EditCrumb: React.FC = () => {\n const { setStepNav, stepNav } = useStepNav()\n const { t } = useTranslation()\n\n const label = t('general:edit')\n\n useEffect(() => {\n const last = stepNav[stepNav.length - 1]\n\n // Ours is the only crumb without a link, so this cannot mistake a branch\n // that happens to be named \"Edit\" for a crumb already appended.\n if (!last || (last.label === label && !last.url)) {\n return\n }\n\n setStepNav([...stepNav, { label }])\n }, [label, setStepNav, stepNav])\n\n return null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAIA,OAAOC,KAAA,IAASC,SAAS,QAAQ;AAEjC,SAASC,UAAU,QAAQ;AAC3B,SAASC,cAAc,QAAQ;AAC/B,SAASC,eAAe,QAAQ;AAEhC;;;;;;;AAOA,OAAO,MAAMC,gBAAA,GAAuDC,KAAA,iBAClEC,KAAA,CAACP,KAAA,CAAMQ,QAAQ;0BACbC,IAAA,CAACL,eAAA;IAAiB,GAAGE;mBACrBG,IAAA,CAACC,SAAA;;AAIL;;;;;;;AAOA,MAAMA,SAAA,GAAsBA,CAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAC1B;IAAAa,UAAA;IAAAC;EAAA,IAAgCX,UAAA;EAChC;IAAAY;EAAA,IAAcX,cAAA;EAAA,IAAAY,EAAA;EAAA,IAAAJ,CAAA,QAAAG,CAAA;IAEAC,EAAA,GAAAD,CAAA,CAAE;IAAAH,CAAA,MAAAG,CAAA;IAAAH,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAAhB,MAAAK,KAAA,GAAcD,EAAE;EAAA,IAAAE,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAP,CAAA,QAAAK,KAAA,IAAAL,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAE,OAAA;IAENI,EAAA,GAAAA,CAAA;MACR,MAAAE,IAAA,GAAaN,OAAO,CAACA,OAAA,CAAAO,
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","useEffect","useStepNav","useTranslation","DefaultEditView","BranchManageView","props","_jsxs","Fragment","_jsx","EditCrumb","$","setStepNav","stepNav","t","t0","label","t1","t2","last","length","url"],"sources":["../../../../src/views/Branch/Manage/index.tsx"],"sourcesContent":["'use client'\n\nimport type { DocumentViewClientProps } from 'payload'\n\nimport React, { useEffect } from 'react'\n\nimport { useStepNav } from '../../../elements/StepNav/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { DefaultEditView } from '../../Edit/index.js'\n\n/**\n * A branch's own fields, at `/manage`.\n *\n * Payload's edit view, unchanged, plus the crumb that says which view you are on.\n * A branch opens to its changed documents, so the branch crumb alone would land\n * you somewhere else than where you are.\n */\nexport const BranchManageView: React.FC<DocumentViewClientProps> = (props) => (\n <React.Fragment>\n <DefaultEditView {...props} />\n <EditCrumb />\n </React.Fragment>\n)\n\n/**\n * Appends to the trail rather than setting it.\n *\n * The edit view owns the trail and rewrites it whenever the document resolves, so\n * a second writer would race it. This reacts to whatever it wrote instead, which\n * self-corrects on every rewrite.\n */\nconst EditCrumb: React.FC = () => {\n const { setStepNav, stepNav } = useStepNav()\n const { t } = useTranslation()\n\n const label = t('general:edit')\n\n useEffect(() => {\n const last = stepNav[stepNav.length - 1]\n\n // Ours is the only crumb without a link, so this cannot mistake a branch\n // that happens to be named \"Edit\" for a crumb already appended.\n if (!last || (last.label === label && !last.url)) {\n return\n }\n\n setStepNav([...stepNav, { label }])\n }, [label, setStepNav, stepNav])\n\n return null\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAIA,OAAOC,KAAA,IAASC,SAAS,QAAQ;AAEjC,SAASC,UAAU,QAAQ;AAC3B,SAASC,cAAc,QAAQ;AAC/B,SAASC,eAAe,QAAQ;AAEhC;;;;;;;AAOA,OAAO,MAAMC,gBAAA,GAAuDC,KAAA,iBAClEC,KAAA,CAACP,KAAA,CAAMQ,QAAQ;0BACbC,IAAA,CAACL,eAAA;IAAiB,GAAGE;mBACrBG,IAAA,CAACC,SAAA;;AAIL;;;;;;;AAOA,MAAMA,SAAA,GAAsBA,CAAA;EAAA,MAAAC,CAAA,GAAAZ,EAAA;EAC1B;IAAAa,UAAA;IAAAC;EAAA,IAAgCX,UAAA;EAChC;IAAAY;EAAA,IAAcX,cAAA;EAAA,IAAAY,EAAA;EAAA,IAAAJ,CAAA,QAAAG,CAAA;IAEAC,EAAA,GAAAD,CAAA,CAAE;IAAAH,CAAA,MAAAG,CAAA;IAAAH,CAAA,MAAAI,EAAA;EAAA;IAAAA,EAAA,GAAAJ,CAAA;EAAA;EAAhB,MAAAK,KAAA,GAAcD,EAAE;EAAA,IAAAE,EAAA;EAAA,IAAAC,EAAA;EAAA,IAAAP,CAAA,QAAAK,KAAA,IAAAL,CAAA,QAAAC,UAAA,IAAAD,CAAA,QAAAE,OAAA;IAENI,EAAA,GAAAA,CAAA;MACR,MAAAE,IAAA,GAAaN,OAAO,CAACA,OAAA,CAAAO,MAAc,GAAG,EAAE;MAIxC,IAAI,CAACD,IAA0C,IAAjCA,IAAA,CAAAH,KAAU,KAAKA,KAAkB,IAAjC,CAAyBG,IAAA,CAAAE,GAAQ;QAAA;MAAA;MAI/CT,UAAA,CAAW,IAAIC,OAAA,EAAS;QAAAG;MAAQ,EAAE;IAAA,CACpC;IAAGE,EAAA,IAACF,KAAA,EAAOJ,UAAA,EAAYC,OAAA,CAAQ;IAAAF,CAAA,MAAAK,KAAA;IAAAL,CAAA,MAAAC,UAAA;IAAAD,CAAA,MAAAE,OAAA;IAAAF,CAAA,MAAAM,EAAA;IAAAN,CAAA,MAAAO,EAAA;EAAA;IAAAD,EAAA,GAAAN,CAAA;IAAAO,EAAA,GAAAP,CAAA;EAAA;EAV/BV,SAAA,CAAUgB,EAUV,EAAGC,EAA4B;EAAA,OAExB;AAAA,CACT","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","Button","useMergeBranch","useTranslation","MergeChangesButton","t0","$","disabled","target","openMerge","t","t1","t2","_jsx","buttonStyle","onClick","size","children"],"sources":["../../../../src/views/Branch/MergeChangesButton/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport type { MergeTarget } from '../../../elements/MergeBranch/context.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { useMergeBranch } from '../../../elements/MergeBranch/context.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\n\n/**\n * The primary action on a branch: take what it changed.\n *\n * Raises the shared modal against this screen's target rather than mounting one of\n * its own — the switcher in the app header can raise the same modal from the same\n * page, and two dialogs on one slug stack.\n */\nexport const MergeChangesButton: React.FC<{\n disabled?: boolean\n target: MergeTarget\n}> = ({ disabled, target }) => {\n const { openMerge } = useMergeBranch()\n const { t } = useTranslation()\n\n return (\n <Button\n buttonStyle=\"primary\"\n disabled={disabled}\n onClick={() => openMerge(target)}\n size=\"medium\"\n >\n {t('branching:mergeChanges')}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,OAAOC,KAAA,MAAW;AAIlB,SAASC,MAAM,QAAQ;AACvB,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAE/B;;;;;;;AAOA,OAAO,MAAMC,kBAAA,GAGRC,EAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAAC;IAAAQ,QAAA;IAAAC;EAAA,IAAAH,EAAoB;EACxB;IAAAI;EAAA,IAAsBP,cAAA;EACtB;IAAAQ;EAAA,IAAcP,cAAA;EAAA,IAAAQ,EAAA;EAAA,IAAAL,CAAA,QAAAG,SAAA,IAAAH,CAAA,QAAAE,MAAA;IAMDG,EAAA,GAAAA,CAAA,KAAMF,SAAA,CAAUD,MAAA;IAAAF,CAAA,MAAAG,SAAA;IAAAH,CAAA,MAAAE,MAAA;IAAAF,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAAA,IAAAM,EAAA;EAAA,IAAAN,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAI,CAAA,IAAAJ,CAAA,QAAAK,EAAA;IAH3BC,EAAA,GAAAC,IAAA,
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","Button","useMergeBranch","useTranslation","MergeChangesButton","t0","$","disabled","target","openMerge","t","t1","t2","_jsx","buttonStyle","onClick","size","children"],"sources":["../../../../src/views/Branch/MergeChangesButton/index.tsx"],"sourcesContent":["'use client'\n\nimport React from 'react'\n\nimport type { MergeTarget } from '../../../elements/MergeBranch/context.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { useMergeBranch } from '../../../elements/MergeBranch/context.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\n\n/**\n * The primary action on a branch: take what it changed.\n *\n * Raises the shared modal against this screen's target rather than mounting one of\n * its own — the switcher in the app header can raise the same modal from the same\n * page, and two dialogs on one slug stack.\n */\nexport const MergeChangesButton: React.FC<{\n disabled?: boolean\n target: MergeTarget\n}> = ({ disabled, target }) => {\n const { openMerge } = useMergeBranch()\n const { t } = useTranslation()\n\n return (\n <Button\n buttonStyle=\"primary\"\n disabled={disabled}\n onClick={() => openMerge(target)}\n size=\"medium\"\n >\n {t('branching:mergeChanges')}\n </Button>\n )\n}\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AAEA,OAAOC,KAAA,MAAW;AAIlB,SAASC,MAAM,QAAQ;AACvB,SAASC,cAAc,QAAQ;AAC/B,SAASC,cAAc,QAAQ;AAE/B;;;;;;;AAOA,OAAO,MAAMC,kBAAA,GAGRC,EAAA;EAAA,MAAAC,CAAA,GAAAP,EAAA;EAAC;IAAAQ,QAAA;IAAAC;EAAA,IAAAH,EAAoB;EACxB;IAAAI;EAAA,IAAsBP,cAAA;EACtB;IAAAQ;EAAA,IAAcP,cAAA;EAAA,IAAAQ,EAAA;EAAA,IAAAL,CAAA,QAAAG,SAAA,IAAAH,CAAA,QAAAE,MAAA;IAMDG,EAAA,GAAAA,CAAA,KAAMF,SAAA,CAAUD,MAAA;IAAAF,CAAA,MAAAG,SAAA;IAAAH,CAAA,MAAAE,MAAA;IAAAF,CAAA,MAAAK,EAAA;EAAA;IAAAA,EAAA,GAAAL,CAAA;EAAA;EAAA,IAAAM,EAAA;EAAA,IAAAN,CAAA,QAAAC,QAAA,IAAAD,CAAA,QAAAI,CAAA,IAAAJ,CAAA,QAAAK,EAAA;IAH3BC,EAAA,GAAAC,IAAA,CAACZ,MAAA;MAAAa,WAAA,EACa;MAAAP,QAAA;MAAAQ,OAAA,EAEHJ,EAAgB;MAAAK,IAAA,EACpB;MAAAC,QAAA,EAEJP,CAAA,CAAE;;;;;;;;;SANLE,E;CASJ","ignoreList":[]}
|
|
@@ -65,7 +65,7 @@ export const ScheduledMerges = ({
|
|
|
65
65
|
});
|
|
66
66
|
toast.success(t('branching:scheduleCancelled'));
|
|
67
67
|
closeModal(modalSlug);
|
|
68
|
-
startRouteTransition(() => router.refresh());
|
|
68
|
+
await startRouteTransition(() => router.refresh());
|
|
69
69
|
} catch (_err) {
|
|
70
70
|
toast.error(t('error:unknown'));
|
|
71
71
|
} finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["React","useCallback","useState","toast","Button","ChangeSummary","DialogBody","DialogFooter","DialogHeader","DialogModal","useModal","Pill","useRouter","useRouteTransition","useServerFunctions","useTranslation","ChangedDocuments","baseClass","formatWhen","value","Date","toLocaleString","undefined","dateStyle","timeStyle","ScheduledMerges","branchID","branchSlug","schedules","t","closeModal","openModal","serverFunction","router","startRouteTransition","isWorking","setIsWorking","modalSlug","soonest","handleCancel","deleteID","name","args","success","refresh","_err","error","_jsxs","Fragment","className","_jsx","date","waitUntil","length","pillStyle","size","count","buttonStyle","onClick","map","schedule","isEverything","changes","closeBranch","branch","selectable","id","closeOnBlur","slug","showClose","title","showOperations","disabled"],"sources":["../../../../src/views/Branch/ScheduledMerges/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { BranchChange } from '../ChangedDocuments/index.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { ChangeSummary } from '../../../elements/ChangeSummary/index.js'\nimport {\n DialogBody,\n DialogFooter,\n DialogHeader,\n DialogModal,\n} from '../../../elements/Dialog/index.js'\nimport { useModal } from '../../../elements/Modal/index.js'\nimport { Pill } from '../../../elements/Pill/index.js'\nimport { useRouter } from '../../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ChangedDocuments } from '../ChangedDocuments/index.js'\nimport './index.css'\n\nconst baseClass = 'scheduled-merges'\n\nexport type ScheduledMerge = {\n /** The documents this schedule will apply, resolved against what is pending now. */\n changes: BranchChange[]\n closeBranch: boolean\n /** `payload-jobs` row ID, which is also the handle for cancelling it. */\n id: string\n /** True when the schedule named no selection, so it takes whatever is pending. */\n isEverything: boolean\n waitUntil: string\n}\n\nconst formatWhen = (value: string) =>\n new Date(value).toLocaleString(undefined, { dateStyle: 'long', timeStyle: 'short' })\n\n/**\n * What a branch is about to merge, and when.\n *\n * A banner says it in one line, because it changes what everything below it means: the\n * pending changes are no longer only a proposal, they are a proposal with a date on it.\n * Below that each schedule lists the documents it will apply, expandable to the same\n * diff the review list shows — the diff is against main either way, so it is the same\n * question asked about a future moment.\n *\n * Several schedules can coexist: schedule a merge, keep working, schedule another. The\n * banner names the soonest and the modal holds the rest, which is why actions live\n * there rather than being repeated per row.\n */\nexport const ScheduledMerges: React.FC<{\n branchID: number | string\n branchSlug: string\n schedules: ScheduledMerge[]\n}> = ({ branchID, branchSlug, schedules }) => {\n const { t } = useTranslation()\n const { closeModal, openModal } = useModal()\n const { serverFunction } = useServerFunctions()\n const router = useRouter()\n const { startRouteTransition } = useRouteTransition()\n\n const [isWorking, setIsWorking] = useState(false)\n\n const modalSlug = `scheduled-merges-${branchID}`\n const soonest = schedules[0]\n\n const handleCancel = useCallback(\n async (deleteID: string) => {\n setIsWorking(true)\n\n try {\n await serverFunction({ name: 'schedule-merge', args: { deleteID } })\n toast.success(t('branching:scheduleCancelled'))\n closeModal(modalSlug)\n startRouteTransition(() => router.refresh())\n } catch (_err) {\n toast.error(t('error:unknown'))\n } finally {\n setIsWorking(false)\n }\n },\n [closeModal, modalSlug, router, serverFunction, startRouteTransition, t],\n )\n\n if (!soonest) {\n return null\n }\n\n return (\n <React.Fragment>\n <div className={`${baseClass}__banner`}>\n <span className={`${baseClass}__banner-text`}>\n {t('branching:scheduledToMergeOn', { date: formatWhen(soonest.waitUntil) })}\n </span>\n <span className={`${baseClass}__banner-actions`}>\n {schedules.length > 1 && (\n <Pill pillStyle=\"light-gray\" size=\"small\">\n {t('branching:scheduleCount', { count: schedules.length })}\n </Pill>\n )}\n <Button buttonStyle=\"secondary\" onClick={() => openModal(modalSlug)} size=\"medium\">\n {t('branching:manage')}\n </Button>\n </span>\n </div>\n\n <div className={`${baseClass}__list`}>\n {schedules.map((schedule) => (\n <section className={`${baseClass}__schedule`} key={schedule.id}>\n <header className={`${baseClass}__schedule-header`}>\n <h4 className={`${baseClass}__when`}>{formatWhen(schedule.waitUntil)}</h4>\n <span className={`${baseClass}__meta`}>\n {schedule.isEverything\n ? t('branching:scheduleWillApplyAll', { count: schedule.changes.length })\n : t('branching:scheduleWillApplySelected', { count: schedule.changes.length })}\n {schedule.closeBranch ? ` · ${t('branching:closeBranchAfterMerge')}` : ''}\n </span>\n </header>\n\n {schedule.changes.length > 0 ? (\n // Read-only: what merges is decided, and the checkboxes on the review\n // list below are for a different, immediate decision.\n <ChangedDocuments branch={branchSlug} changes={schedule.changes} selectable={false} />\n ) : (\n // A selection whose changes were all discarded since. The job will still\n // fire and find nothing, which is harmless but worth saying.\n <p className={`${baseClass}__empty`}>{t('branching:scheduleHasNothingLeft')}</p>\n )}\n </section>\n ))}\n </div>\n\n {/* Cancelling is the only reason to open this, so it is the action on every row\n rather than a footer CTA — and it is destructive, so it says so. Scheduling\n another belongs to the merge modal, which is one click away on the banner. */}\n <DialogModal className={baseClass} closeOnBlur slug={modalSlug}>\n <DialogHeader showClose title={t('branching:scheduledMerges')} />\n <DialogBody>\n <ul className={`${baseClass}__manage-list`}>\n {schedules.map((schedule) => (\n <li className={`${baseClass}__manage-row`} key={schedule.id}>\n <div className={`${baseClass}__manage-details`}>\n <span className={`${baseClass}__manage-when`}>\n {formatWhen(schedule.waitUntil)}\n </span>\n <span className={`${baseClass}__meta`}>\n {schedule.isEverything\n ? t('branching:scheduleWillApplyAll', { count: schedule.changes.length })\n : t('branching:scheduleWillApplySelected', {\n count: schedule.changes.length,\n })}\n {schedule.closeBranch ? ` · ${t('branching:closeBranchAfterMerge')}` : ''}\n </span>\n {/* What is actually merging, which is the thing a date alone does not\n say — and the reason someone opened this to cancel. */}\n <ChangeSummary changes={schedule.changes} showOperations />\n </div>\n <Button\n buttonStyle=\"destructive\"\n disabled={isWorking}\n onClick={() => void handleCancel(schedule.id)}\n size=\"medium\"\n >\n {t('branching:cancelSchedule')}\n </Button>\n </li>\n ))}\n </ul>\n </DialogBody>\n <DialogFooter>\n <Button buttonStyle=\"secondary\" onClick={() => closeModal(modalSlug)} size=\"medium\">\n {t('general:close')}\n </Button>\n </DialogFooter>\n </DialogModal>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["React","useCallback","useState","toast","Button","ChangeSummary","DialogBody","DialogFooter","DialogHeader","DialogModal","useModal","Pill","useRouter","useRouteTransition","useServerFunctions","useTranslation","ChangedDocuments","baseClass","formatWhen","value","Date","toLocaleString","undefined","dateStyle","timeStyle","ScheduledMerges","branchID","branchSlug","schedules","t","closeModal","openModal","serverFunction","router","startRouteTransition","isWorking","setIsWorking","modalSlug","soonest","handleCancel","deleteID","name","args","success","refresh","_err","error","_jsxs","Fragment","className","_jsx","date","waitUntil","length","pillStyle","size","count","buttonStyle","onClick","map","schedule","isEverything","changes","closeBranch","branch","selectable","id","closeOnBlur","slug","showClose","title","showOperations","disabled"],"sources":["../../../../src/views/Branch/ScheduledMerges/index.tsx"],"sourcesContent":["'use client'\n\nimport React, { useCallback, useState } from 'react'\nimport { toast } from 'sonner'\n\nimport type { BranchChange } from '../ChangedDocuments/index.js'\n\nimport { Button } from '../../../elements/Button/index.js'\nimport { ChangeSummary } from '../../../elements/ChangeSummary/index.js'\nimport {\n DialogBody,\n DialogFooter,\n DialogHeader,\n DialogModal,\n} from '../../../elements/Dialog/index.js'\nimport { useModal } from '../../../elements/Modal/index.js'\nimport { Pill } from '../../../elements/Pill/index.js'\nimport { useRouter } from '../../../providers/RouterAdapter/index.js'\nimport { useRouteTransition } from '../../../providers/RouteTransition/index.js'\nimport { useServerFunctions } from '../../../providers/ServerFunctions/index.js'\nimport { useTranslation } from '../../../providers/Translation/index.js'\nimport { ChangedDocuments } from '../ChangedDocuments/index.js'\nimport './index.css'\n\nconst baseClass = 'scheduled-merges'\n\nexport type ScheduledMerge = {\n /** The documents this schedule will apply, resolved against what is pending now. */\n changes: BranchChange[]\n closeBranch: boolean\n /** `payload-jobs` row ID, which is also the handle for cancelling it. */\n id: string\n /** True when the schedule named no selection, so it takes whatever is pending. */\n isEverything: boolean\n waitUntil: string\n}\n\nconst formatWhen = (value: string) =>\n new Date(value).toLocaleString(undefined, { dateStyle: 'long', timeStyle: 'short' })\n\n/**\n * What a branch is about to merge, and when.\n *\n * A banner says it in one line, because it changes what everything below it means: the\n * pending changes are no longer only a proposal, they are a proposal with a date on it.\n * Below that each schedule lists the documents it will apply, expandable to the same\n * diff the review list shows — the diff is against main either way, so it is the same\n * question asked about a future moment.\n *\n * Several schedules can coexist: schedule a merge, keep working, schedule another. The\n * banner names the soonest and the modal holds the rest, which is why actions live\n * there rather than being repeated per row.\n */\nexport const ScheduledMerges: React.FC<{\n branchID: number | string\n branchSlug: string\n schedules: ScheduledMerge[]\n}> = ({ branchID, branchSlug, schedules }) => {\n const { t } = useTranslation()\n const { closeModal, openModal } = useModal()\n const { serverFunction } = useServerFunctions()\n const router = useRouter()\n const { startRouteTransition } = useRouteTransition()\n\n const [isWorking, setIsWorking] = useState(false)\n\n const modalSlug = `scheduled-merges-${branchID}`\n const soonest = schedules[0]\n\n const handleCancel = useCallback(\n async (deleteID: string) => {\n setIsWorking(true)\n\n try {\n await serverFunction({ name: 'schedule-merge', args: { deleteID } })\n toast.success(t('branching:scheduleCancelled'))\n closeModal(modalSlug)\n await startRouteTransition(() => router.refresh())\n } catch (_err) {\n toast.error(t('error:unknown'))\n } finally {\n setIsWorking(false)\n }\n },\n [closeModal, modalSlug, router, serverFunction, startRouteTransition, t],\n )\n\n if (!soonest) {\n return null\n }\n\n return (\n <React.Fragment>\n <div className={`${baseClass}__banner`}>\n <span className={`${baseClass}__banner-text`}>\n {t('branching:scheduledToMergeOn', { date: formatWhen(soonest.waitUntil) })}\n </span>\n <span className={`${baseClass}__banner-actions`}>\n {schedules.length > 1 && (\n <Pill pillStyle=\"light-gray\" size=\"small\">\n {t('branching:scheduleCount', { count: schedules.length })}\n </Pill>\n )}\n <Button buttonStyle=\"secondary\" onClick={() => openModal(modalSlug)} size=\"medium\">\n {t('branching:manage')}\n </Button>\n </span>\n </div>\n\n <div className={`${baseClass}__list`}>\n {schedules.map((schedule) => (\n <section className={`${baseClass}__schedule`} key={schedule.id}>\n <header className={`${baseClass}__schedule-header`}>\n <h4 className={`${baseClass}__when`}>{formatWhen(schedule.waitUntil)}</h4>\n <span className={`${baseClass}__meta`}>\n {schedule.isEverything\n ? t('branching:scheduleWillApplyAll', { count: schedule.changes.length })\n : t('branching:scheduleWillApplySelected', { count: schedule.changes.length })}\n {schedule.closeBranch ? ` · ${t('branching:closeBranchAfterMerge')}` : ''}\n </span>\n </header>\n\n {schedule.changes.length > 0 ? (\n // Read-only: what merges is decided, and the checkboxes on the review\n // list below are for a different, immediate decision.\n <ChangedDocuments branch={branchSlug} changes={schedule.changes} selectable={false} />\n ) : (\n // A selection whose changes were all discarded since. The job will still\n // fire and find nothing, which is harmless but worth saying.\n <p className={`${baseClass}__empty`}>{t('branching:scheduleHasNothingLeft')}</p>\n )}\n </section>\n ))}\n </div>\n\n {/* Cancelling is the only reason to open this, so it is the action on every row\n rather than a footer CTA — and it is destructive, so it says so. Scheduling\n another belongs to the merge modal, which is one click away on the banner. */}\n <DialogModal className={baseClass} closeOnBlur slug={modalSlug}>\n <DialogHeader showClose title={t('branching:scheduledMerges')} />\n <DialogBody>\n <ul className={`${baseClass}__manage-list`}>\n {schedules.map((schedule) => (\n <li className={`${baseClass}__manage-row`} key={schedule.id}>\n <div className={`${baseClass}__manage-details`}>\n <span className={`${baseClass}__manage-when`}>\n {formatWhen(schedule.waitUntil)}\n </span>\n <span className={`${baseClass}__meta`}>\n {schedule.isEverything\n ? t('branching:scheduleWillApplyAll', { count: schedule.changes.length })\n : t('branching:scheduleWillApplySelected', {\n count: schedule.changes.length,\n })}\n {schedule.closeBranch ? ` · ${t('branching:closeBranchAfterMerge')}` : ''}\n </span>\n {/* What is actually merging, which is the thing a date alone does not\n say — and the reason someone opened this to cancel. */}\n <ChangeSummary changes={schedule.changes} showOperations />\n </div>\n <Button\n buttonStyle=\"destructive\"\n disabled={isWorking}\n onClick={() => void handleCancel(schedule.id)}\n size=\"medium\"\n >\n {t('branching:cancelSchedule')}\n </Button>\n </li>\n ))}\n </ul>\n </DialogBody>\n <DialogFooter>\n <Button buttonStyle=\"secondary\" onClick={() => closeModal(modalSlug)} size=\"medium\">\n {t('general:close')}\n </Button>\n </DialogFooter>\n </DialogModal>\n </React.Fragment>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DashboardStepNav.d.ts","sourceRoot":"","sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/DashboardStepNav.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"DashboardStepNav.d.ts","sourceRoot":"","sources":["../../../../../src/views/Dashboard/Default/ModularDashboard/DashboardStepNav.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AAc3C,wBAAgB,gBAAgB,CAAC,EAC/B,SAAS,EACT,MAAM,EACN,SAAS,EACT,WAAW,EACX,UAAU,EACV,YAAY,EACZ,OAAO,GACR,EAAE;IACD,SAAS,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAA;IACjC,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,SAAS,EAAE,OAAO,CAAA;IAClB,WAAW,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAChC,UAAU,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;IAC/B,YAAY,EAAE,CAAC,SAAS,EAAE,OAAO,KAAK,IAAI,CAAA;IAC1C,OAAO,EAAE,YAAY,EAAE,CAAA;CACxB,+BAiDA;AAED,wBAAgB,2BAA2B,CAAC,KAAK,EAAE;IACjD,SAAS,EAAE,OAAO,CAAA;IAClB,QAAQ,EAAE,MAAM,IAAI,CAAA;IACpB,WAAW,EAAE,MAAM,IAAI,CAAA;IACvB,aAAa,EAAE,MAAM,IAAI,CAAA;IACzB,aAAa,EAAE,MAAM,IAAI,CAAA;IACzB,iBAAiB,EAAE,MAAM,CAAA;CAC1B,+BAgFA"}
|