@payloadcms/ui 3.0.0-canary.013af1b → 3.0.0-canary.0374de4
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/elements/AddNewRelation/index.js +1 -1
- package/dist/elements/AddNewRelation/index.js.map +1 -1
- package/dist/elements/AppHeader/index.js +5 -5
- package/dist/elements/AppHeader/index.js.map +1 -1
- package/dist/elements/Autosave/index.d.ts.map +1 -1
- package/dist/elements/Autosave/index.js +6 -2
- package/dist/elements/Autosave/index.js.map +1 -1
- package/dist/elements/Banner/index.d.ts.map +1 -1
- package/dist/elements/Banner/index.js +6 -2
- package/dist/elements/Banner/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.js.map +1 -1
- package/dist/elements/BulkUpload/ActionsBar/index.scss +4 -4
- package/dist/elements/BulkUpload/AddFilesView/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.js +45 -30
- package/dist/elements/BulkUpload/AddFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/AddFilesView/index.scss +13 -0
- package/dist/elements/BulkUpload/AddingFilesView/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/AddingFilesView/index.js +7 -7
- package/dist/elements/BulkUpload/AddingFilesView/index.js.map +1 -1
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js +14 -17
- package/dist/elements/BulkUpload/DiscardWithoutSaving/index.js.map +1 -1
- package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts +1 -2
- package/dist/elements/BulkUpload/DrawerCloseButton/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js +5 -8
- package/dist/elements/BulkUpload/DrawerCloseButton/index.js.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/EditForm/index.js +42 -33
- package/dist/elements/BulkUpload/EditForm/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.js +71 -59
- package/dist/elements/BulkUpload/FileSidebar/index.js.map +1 -1
- package/dist/elements/BulkUpload/FileSidebar/index.scss +16 -14
- package/dist/elements/BulkUpload/FormsManager/index.d.ts +4 -7
- package/dist/elements/BulkUpload/FormsManager/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/FormsManager/index.js +67 -37
- package/dist/elements/BulkUpload/FormsManager/index.js.map +1 -1
- package/dist/elements/BulkUpload/Header/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/Header/index.js +1 -3
- package/dist/elements/BulkUpload/Header/index.js.map +1 -1
- package/dist/elements/BulkUpload/index.d.ts +21 -5
- package/dist/elements/BulkUpload/index.d.ts.map +1 -1
- package/dist/elements/BulkUpload/index.js +149 -52
- package/dist/elements/BulkUpload/index.js.map +1 -1
- package/dist/elements/Button/index.d.ts.map +1 -1
- package/dist/elements/Button/index.js +39 -31
- package/dist/elements/Button/index.js.map +1 -1
- package/dist/elements/Button/types.d.ts +8 -2
- package/dist/elements/Button/types.d.ts.map +1 -1
- package/dist/elements/Button/types.js.map +1 -1
- package/dist/elements/Card/index.d.ts +1 -1
- package/dist/elements/Card/index.d.ts.map +1 -1
- package/dist/elements/Card/index.js +2 -2
- package/dist/elements/Card/index.js.map +1 -1
- package/dist/elements/CodeEditor/index.js +1 -1
- package/dist/elements/CodeEditor/index.js.map +1 -1
- package/dist/elements/Collapsible/index.d.ts.map +1 -1
- package/dist/elements/Collapsible/index.js.map +1 -1
- package/dist/elements/ColumnSelector/index.d.ts.map +1 -1
- package/dist/elements/ColumnSelector/index.js +15 -3
- package/dist/elements/ColumnSelector/index.js.map +1 -1
- package/dist/elements/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/elements/DatePicker/DatePicker.js.map +1 -1
- package/dist/elements/DatePicker/index.js +1 -1
- package/dist/elements/DatePicker/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.d.ts +9 -6
- package/dist/elements/DeleteDocument/index.d.ts.map +1 -1
- package/dist/elements/DeleteDocument/index.js +65 -28
- package/dist/elements/DeleteDocument/index.js.map +1 -1
- package/dist/elements/DeleteDocument/index.scss +24 -11
- package/dist/elements/DeleteMany/index.d.ts.map +1 -1
- package/dist/elements/DeleteMany/index.js +26 -18
- package/dist/elements/DeleteMany/index.js.map +1 -1
- package/dist/elements/DeleteMany/index.scss +24 -5
- package/dist/elements/DocumentControls/index.d.ts +13 -2
- package/dist/elements/DocumentControls/index.d.ts.map +1 -1
- package/dist/elements/DocumentControls/index.js +66 -12
- package/dist/elements/DocumentControls/index.js.map +1 -1
- package/dist/elements/DocumentControls/index.scss +8 -0
- package/dist/elements/DocumentDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/DrawerContent.js +108 -37
- package/dist/elements/DocumentDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/DocumentDrawer/index.js +1 -1
- package/dist/elements/DocumentDrawer/index.js.map +1 -1
- package/dist/elements/DocumentDrawer/types.d.ts +10 -1
- package/dist/elements/DocumentDrawer/types.d.ts.map +1 -1
- package/dist/elements/DocumentDrawer/types.js.map +1 -1
- package/dist/elements/DraggableSortable/index.d.ts.map +1 -1
- package/dist/elements/DraggableSortable/index.js +2 -1
- package/dist/elements/DraggableSortable/index.js.map +1 -1
- package/dist/elements/Drawer/index.d.ts +1 -0
- package/dist/elements/Drawer/index.d.ts.map +1 -1
- package/dist/elements/Drawer/index.js +3 -3
- package/dist/elements/Drawer/index.js.map +1 -1
- package/dist/elements/Drawer/types.d.ts +1 -1
- package/dist/elements/Drawer/types.d.ts.map +1 -1
- package/dist/elements/Drawer/types.js.map +1 -1
- package/dist/elements/Dropzone/index.d.ts +3 -3
- package/dist/elements/Dropzone/index.d.ts.map +1 -1
- package/dist/elements/Dropzone/index.js +23 -50
- package/dist/elements/Dropzone/index.js.map +1 -1
- package/dist/elements/Dropzone/index.scss +6 -23
- package/dist/elements/DuplicateDocument/index.d.ts +6 -3
- package/dist/elements/DuplicateDocument/index.d.ts.map +1 -1
- package/dist/elements/DuplicateDocument/index.js +95 -137
- package/dist/elements/DuplicateDocument/index.js.map +1 -1
- package/dist/elements/DuplicateDocument/index.scss +25 -5
- package/dist/elements/EditMany/index.d.ts.map +1 -1
- package/dist/elements/EditMany/index.js +19 -12
- package/dist/elements/EditMany/index.js.map +1 -1
- package/dist/elements/EditUpload/index.d.ts.map +1 -1
- package/dist/elements/EditUpload/index.js +23 -11
- package/dist/elements/EditUpload/index.js.map +1 -1
- package/dist/elements/ErrorPill/index.d.ts.map +1 -1
- package/dist/elements/ErrorPill/index.js +3 -1
- package/dist/elements/ErrorPill/index.js.map +1 -1
- package/dist/elements/FieldSelect/index.d.ts.map +1 -1
- package/dist/elements/FieldSelect/index.js +3 -1
- package/dist/elements/FieldSelect/index.js.map +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.d.ts.map +1 -1
- package/dist/elements/FileDetails/DraggableFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/StaticFileDetails/index.d.ts.map +1 -1
- package/dist/elements/FileDetails/StaticFileDetails/index.js +0 -1
- package/dist/elements/FileDetails/StaticFileDetails/index.js.map +1 -1
- package/dist/elements/FileDetails/StaticFileDetails/index.scss +1 -0
- package/dist/elements/GenerateConfirmation/index.d.ts.map +1 -1
- package/dist/elements/GenerateConfirmation/index.js +31 -24
- package/dist/elements/GenerateConfirmation/index.js.map +1 -1
- package/dist/elements/GenerateConfirmation/index.scss +24 -5
- package/dist/elements/Hamburger/index.scss +4 -0
- package/dist/elements/ListControls/index.d.ts.map +1 -1
- package/dist/elements/ListControls/index.js +22 -23
- package/dist/elements/ListControls/index.js.map +1 -1
- package/dist/elements/ListControls/index.scss +0 -6
- package/dist/elements/ListDrawer/DrawerContent.d.ts +2 -0
- package/dist/elements/ListDrawer/DrawerContent.d.ts.map +1 -1
- package/dist/elements/ListDrawer/DrawerContent.js +312 -234
- package/dist/elements/ListDrawer/DrawerContent.js.map +1 -1
- package/dist/elements/ListDrawer/index.js +1 -1
- package/dist/elements/ListDrawer/index.js.map +1 -1
- package/dist/elements/ListDrawer/index.scss +7 -0
- package/dist/elements/Localizer/LocalizerLabel/index.d.ts.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.js +9 -5
- package/dist/elements/Localizer/LocalizerLabel/index.js.map +1 -1
- package/dist/elements/Localizer/LocalizerLabel/index.scss +7 -3
- package/dist/elements/Localizer/index.d.ts.map +1 -1
- package/dist/elements/Localizer/index.js +1 -1
- package/dist/elements/Localizer/index.js.map +1 -1
- package/dist/elements/Locked/index.d.ts +8 -0
- package/dist/elements/Locked/index.d.ts.map +1 -0
- package/dist/elements/Locked/index.js +72 -0
- package/dist/elements/Locked/index.js.map +1 -0
- package/dist/elements/Locked/index.scss +14 -0
- package/dist/elements/Logout/index.js +1 -1
- package/dist/elements/Logout/index.js.map +1 -1
- package/dist/elements/Pagination/index.d.ts.map +1 -1
- package/dist/elements/Pagination/index.js +20 -10
- package/dist/elements/Pagination/index.js.map +1 -1
- package/dist/elements/PerPage/index.d.ts +5 -5
- package/dist/elements/PerPage/index.d.ts.map +1 -1
- package/dist/elements/PerPage/index.js +2 -1
- package/dist/elements/PerPage/index.js.map +1 -1
- package/dist/elements/Pill/index.d.ts.map +1 -1
- package/dist/elements/Pill/index.js +11 -5
- package/dist/elements/Pill/index.js.map +1 -1
- package/dist/elements/Pill/index.scss +3 -1
- package/dist/elements/Popup/PopupTrigger/index.d.ts.map +1 -1
- package/dist/elements/Popup/PopupTrigger/index.js +3 -1
- package/dist/elements/Popup/PopupTrigger/index.js.map +1 -1
- package/dist/elements/Popup/index.d.ts.map +1 -1
- package/dist/elements/Popup/index.js +4 -2
- package/dist/elements/Popup/index.js.map +1 -1
- package/dist/elements/PreviewButton/usePreviewURL.d.ts.map +1 -1
- package/dist/elements/PreviewButton/usePreviewURL.js +19 -6
- package/dist/elements/PreviewButton/usePreviewURL.js.map +1 -1
- package/dist/elements/PreviewSizes/index.d.ts.map +1 -1
- package/dist/elements/PreviewSizes/index.js +15 -5
- package/dist/elements/PreviewSizes/index.js.map +1 -1
- package/dist/elements/PublishButton/index.d.ts.map +1 -1
- package/dist/elements/PublishButton/index.js +164 -48
- package/dist/elements/PublishButton/index.js.map +1 -1
- package/dist/elements/PublishMany/index.d.ts.map +1 -1
- package/dist/elements/PublishMany/index.js +25 -17
- package/dist/elements/PublishMany/index.js.map +1 -1
- package/dist/elements/PublishMany/index.scss +23 -4
- package/dist/elements/ReactSelect/DropdownIndicator/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.js +3 -1
- package/dist/elements/ReactSelect/DropdownIndicator/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.d.ts.map +1 -1
- package/dist/elements/ReactSelect/index.js +5 -3
- package/dist/elements/ReactSelect/index.js.map +1 -1
- package/dist/elements/ReactSelect/index.scss +4 -0
- package/dist/elements/ReactSelect/types.d.ts +9 -2
- package/dist/elements/ReactSelect/types.d.ts.map +1 -1
- package/dist/elements/ReactSelect/types.js.map +1 -1
- package/dist/elements/RelationshipTable/TableWrapper.d.ts +8 -0
- package/dist/elements/RelationshipTable/TableWrapper.d.ts.map +1 -0
- package/dist/elements/RelationshipTable/TableWrapper.js +69 -0
- package/dist/elements/RelationshipTable/TableWrapper.js.map +1 -0
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts +8 -0
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.d.ts.map +1 -0
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js +82 -0
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.js.map +1 -0
- package/dist/elements/RelationshipTable/cells/DrawerLink/index.scss +4 -0
- package/dist/elements/RelationshipTable/index.d.ts +13 -0
- package/dist/elements/RelationshipTable/index.d.ts.map +1 -0
- package/dist/elements/RelationshipTable/index.js +365 -0
- package/dist/elements/RelationshipTable/index.js.map +1 -0
- package/dist/elements/RelationshipTable/index.scss +26 -0
- package/dist/elements/SaveButton/index.d.ts.map +1 -1
- package/dist/elements/SaveButton/index.js +5 -3
- package/dist/elements/SaveButton/index.js.map +1 -1
- package/dist/elements/SaveDraftButton/index.d.ts.map +1 -1
- package/dist/elements/SaveDraftButton/index.js +12 -6
- package/dist/elements/SaveDraftButton/index.js.map +1 -1
- package/dist/elements/SearchFilter/index.d.ts.map +1 -1
- package/dist/elements/SearchFilter/index.js +33 -13
- package/dist/elements/SearchFilter/index.js.map +1 -1
- package/dist/elements/SelectRow/index.d.ts.map +1 -1
- package/dist/elements/SelectRow/index.js +60 -24
- package/dist/elements/SelectRow/index.js.map +1 -1
- package/dist/elements/ShimmerEffect/index.d.ts +3 -3
- package/dist/elements/ShimmerEffect/index.d.ts.map +1 -1
- package/dist/elements/ShimmerEffect/index.js.map +1 -1
- package/dist/elements/SortColumn/index.d.ts +5 -4
- package/dist/elements/SortColumn/index.d.ts.map +1 -1
- package/dist/elements/SortColumn/index.js +26 -31
- package/dist/elements/SortColumn/index.js.map +1 -1
- package/dist/elements/SortColumn/index.scss +10 -1
- package/dist/elements/SortComplex/index.d.ts.map +1 -1
- package/dist/elements/SortComplex/index.js.map +1 -1
- package/dist/elements/Status/index.d.ts.map +1 -1
- package/dist/elements/Status/index.js +43 -27
- package/dist/elements/Status/index.js.map +1 -1
- package/dist/elements/Status/index.scss +26 -7
- package/dist/elements/StepNav/index.d.ts +1 -1
- package/dist/elements/StepNav/index.d.ts.map +1 -1
- package/dist/elements/StepNav/index.js +2 -2
- package/dist/elements/StepNav/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts +2 -2
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Blocks/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.js +1 -1
- package/dist/elements/Table/DefaultCell/fields/Code/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/File/index.scss +5 -5
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts +2 -3
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js +43 -40
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.js.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/Relationship/index.scss +0 -3
- package/dist/elements/Table/DefaultCell/fields/index.d.ts +2 -1
- package/dist/elements/Table/DefaultCell/fields/index.d.ts.map +1 -1
- package/dist/elements/Table/DefaultCell/fields/index.js +2 -1
- package/dist/elements/Table/DefaultCell/fields/index.js.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts +1 -1
- package/dist/elements/Table/RelationshipProvider/index.d.ts.map +1 -1
- package/dist/elements/Table/RelationshipProvider/index.js.map +1 -1
- package/dist/elements/Table/RenderCell.d.ts +11 -0
- package/dist/elements/Table/RenderCell.d.ts.map +1 -0
- package/dist/elements/Table/RenderCell.js +30 -0
- package/dist/elements/Table/RenderCell.js.map +1 -0
- package/dist/elements/Table/index.d.ts +4 -7
- package/dist/elements/Table/index.d.ts.map +1 -1
- package/dist/elements/Table/index.js +40 -30
- package/dist/elements/Table/index.js.map +1 -1
- package/dist/elements/Table/index.scss +49 -0
- package/dist/elements/TableColumns/buildColumnState.d.ts +5 -2
- package/dist/elements/TableColumns/buildColumnState.d.ts.map +1 -1
- package/dist/elements/TableColumns/buildColumnState.js +47 -31
- package/dist/elements/TableColumns/buildColumnState.js.map +1 -1
- package/dist/elements/TableColumns/index.d.ts +4 -0
- package/dist/elements/TableColumns/index.d.ts.map +1 -1
- package/dist/elements/TableColumns/index.js +90 -101
- package/dist/elements/TableColumns/index.js.map +1 -1
- package/dist/elements/Thumbnail/index.d.ts +10 -6
- package/dist/elements/Thumbnail/index.d.ts.map +1 -1
- package/dist/elements/Thumbnail/index.js +84 -9
- package/dist/elements/Thumbnail/index.js.map +1 -1
- package/dist/elements/Tooltip/index.d.ts +1 -0
- package/dist/elements/Tooltip/index.d.ts.map +1 -1
- package/dist/elements/Tooltip/index.js +15 -13
- package/dist/elements/Tooltip/index.js.map +1 -1
- package/dist/elements/Tooltip/index.scss +2 -2
- package/dist/elements/Translation/index.d.ts.map +1 -1
- package/dist/elements/Translation/index.js +0 -2
- package/dist/elements/Translation/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.d.ts.map +1 -1
- package/dist/elements/UnpublishMany/index.js +26 -18
- package/dist/elements/UnpublishMany/index.js.map +1 -1
- package/dist/elements/UnpublishMany/index.scss +23 -4
- package/dist/elements/Upload/index.d.ts.map +1 -1
- package/dist/elements/Upload/index.js +64 -33
- package/dist/elements/Upload/index.js.map +1 -1
- package/dist/elements/Upload/index.scss +38 -0
- package/dist/elements/ViewDescription/index.d.ts +1 -1
- package/dist/elements/ViewDescription/index.d.ts.map +1 -1
- package/dist/elements/ViewDescription/index.js.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/Condition/index.js +2 -1
- package/dist/elements/WhereBuilder/Condition/index.js.map +1 -1
- package/dist/elements/WhereBuilder/index.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/index.js +5 -8
- package/dist/elements/WhereBuilder/index.js.map +1 -1
- package/dist/elements/WhereBuilder/reduceClientFields.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/reduceClientFields.js +3 -1
- package/dist/elements/WhereBuilder/reduceClientFields.js.map +1 -1
- package/dist/elements/WhereBuilder/types.d.ts +1 -1
- package/dist/elements/WhereBuilder/types.d.ts.map +1 -1
- package/dist/elements/WhereBuilder/types.js.map +1 -1
- package/dist/elements/WindowInfo/index.d.ts +2 -2
- package/dist/elements/WindowInfo/index.d.ts.map +1 -1
- package/dist/elements/WindowInfo/index.js +2 -2
- package/dist/elements/WindowInfo/index.js.map +1 -1
- package/dist/elements/WithServerSideProps/index.js.map +1 -1
- package/dist/exports/client/{CodeEditor-MTP455NO.js → CodeEditor-CHKRX3U2.js} +4 -4
- package/dist/exports/client/{CodeEditor-MTP455NO.js.map → CodeEditor-CHKRX3U2.js.map} +4 -4
- package/dist/exports/client/{DatePicker-E6IJFDN2.js → DatePicker-OLRZVTAD.js} +2 -2
- package/dist/exports/client/{chunk-NJHSEGFB.js → chunk-BGA6EPOL.js} +1 -1
- package/dist/exports/client/{chunk-NJHSEGFB.js.map → chunk-BGA6EPOL.js.map} +2 -2
- package/dist/exports/client/{chunk-OBXEO4WP.js → chunk-JINNHJP7.js} +1 -1
- package/dist/exports/client/{chunk-OBXEO4WP.js.map → chunk-JINNHJP7.js.map} +2 -2
- package/dist/exports/client/index.d.ts +6 -4
- package/dist/exports/client/index.d.ts.map +1 -1
- package/dist/exports/client/index.js +19 -19
- package/dist/exports/client/index.js.map +4 -4
- package/dist/exports/shared/index.d.ts +3 -2
- package/dist/exports/shared/index.d.ts.map +1 -1
- package/dist/exports/shared/index.js +2 -2
- package/dist/exports/shared/index.js.map +4 -4
- package/dist/fields/Array/ArrayRow.d.ts +1 -1
- package/dist/fields/Array/ArrayRow.d.ts.map +1 -1
- package/dist/fields/Array/ArrayRow.js +6 -6
- package/dist/fields/Array/ArrayRow.js.map +1 -1
- package/dist/fields/Array/index.d.ts +11 -3
- package/dist/fields/Array/index.d.ts.map +1 -1
- package/dist/fields/Array/index.js +8 -5
- package/dist/fields/Array/index.js.map +1 -1
- package/dist/fields/Blocks/BlockRow.d.ts +2 -2
- package/dist/fields/Blocks/BlockRow.d.ts.map +1 -1
- package/dist/fields/Blocks/BlockRow.js +4 -4
- package/dist/fields/Blocks/BlockRow.js.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.d.ts.map +1 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js +3 -1
- package/dist/fields/Blocks/BlocksDrawer/index.js.map +1 -1
- package/dist/fields/Blocks/RowActions.d.ts +1 -1
- package/dist/fields/Blocks/RowActions.d.ts.map +1 -1
- package/dist/fields/Blocks/RowActions.js +1 -1
- package/dist/fields/Blocks/RowActions.js.map +1 -1
- package/dist/fields/Blocks/index.d.ts +8 -2
- package/dist/fields/Blocks/index.d.ts.map +1 -1
- package/dist/fields/Blocks/index.js +2 -5
- package/dist/fields/Blocks/index.js.map +1 -1
- package/dist/fields/Checkbox/Input.d.ts +1 -1
- package/dist/fields/Checkbox/Input.d.ts.map +1 -1
- package/dist/fields/Checkbox/Input.js +3 -3
- package/dist/fields/Checkbox/Input.js.map +1 -1
- package/dist/fields/Checkbox/index.d.ts +16 -4
- package/dist/fields/Checkbox/index.d.ts.map +1 -1
- package/dist/fields/Checkbox/index.js +2 -2
- package/dist/fields/Checkbox/index.js.map +1 -1
- package/dist/fields/Checkbox/index.scss +13 -0
- package/dist/fields/Code/index.d.ts +9 -2
- package/dist/fields/Code/index.d.ts.map +1 -1
- package/dist/fields/Code/index.js +32 -37
- package/dist/fields/Code/index.js.map +1 -1
- package/dist/fields/Collapsible/index.d.ts +6 -2
- package/dist/fields/Collapsible/index.d.ts.map +1 -1
- package/dist/fields/Collapsible/index.js +49 -42
- package/dist/fields/Collapsible/index.js.map +1 -1
- package/dist/fields/DateTime/index.d.ts +9 -2
- package/dist/fields/DateTime/index.d.ts.map +1 -1
- package/dist/fields/DateTime/index.js +33 -38
- package/dist/fields/DateTime/index.js.map +1 -1
- package/dist/fields/Email/index.d.ts +10 -2
- package/dist/fields/Email/index.d.ts.map +1 -1
- package/dist/fields/Email/index.js +29 -33
- package/dist/fields/Email/index.js.map +1 -1
- package/dist/fields/FieldLabel/index.d.ts.map +1 -1
- package/dist/fields/FieldLabel/index.js +7 -1
- package/dist/fields/FieldLabel/index.js.map +1 -1
- package/dist/fields/Group/index.d.ts +8 -3
- package/dist/fields/Group/index.d.ts.map +1 -1
- package/dist/fields/Group/index.js +1 -1
- package/dist/fields/Group/index.js.map +1 -1
- package/dist/fields/JSON/index.d.ts +8 -2
- package/dist/fields/JSON/index.d.ts.map +1 -1
- package/dist/fields/JSON/index.js +17 -11
- package/dist/fields/JSON/index.js.map +1 -1
- package/dist/fields/Join/index.d.ts +9 -0
- package/dist/fields/Join/index.d.ts.map +1 -0
- package/dist/fields/Join/index.js +70 -0
- package/dist/fields/Join/index.js.map +1 -0
- package/dist/fields/Number/index.d.ts +9 -2
- package/dist/fields/Number/index.d.ts.map +1 -1
- package/dist/fields/Number/index.js +36 -41
- package/dist/fields/Number/index.js.map +1 -1
- package/dist/fields/Password/index.js +3 -3
- package/dist/fields/Password/index.js.map +1 -1
- package/dist/fields/Password/input.js +7 -7
- package/dist/fields/Password/input.js.map +1 -1
- package/dist/fields/Password/types.d.ts +5 -5
- package/dist/fields/Password/types.d.ts.map +1 -1
- package/dist/fields/Password/types.js.map +1 -1
- package/dist/fields/Point/index.d.ts +10 -3
- package/dist/fields/Point/index.d.ts.map +1 -1
- package/dist/fields/Point/index.js +2 -1
- package/dist/fields/Point/index.js.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.d.ts +2 -2
- package/dist/fields/RadioGroup/Radio/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/Radio/index.js.map +1 -1
- package/dist/fields/RadioGroup/index.d.ts +10 -2
- package/dist/fields/RadioGroup/index.d.ts.map +1 -1
- package/dist/fields/RadioGroup/index.js +36 -41
- package/dist/fields/RadioGroup/index.js.map +1 -1
- package/dist/fields/Relationship/createRelationMap.d.ts +1 -1
- package/dist/fields/Relationship/createRelationMap.d.ts.map +1 -1
- package/dist/fields/Relationship/createRelationMap.js.map +1 -1
- package/dist/fields/Relationship/index.d.ts +8 -2
- package/dist/fields/Relationship/index.d.ts.map +1 -1
- package/dist/fields/Relationship/index.js +133 -44
- package/dist/fields/Relationship/index.js.map +1 -1
- package/dist/fields/Relationship/optionsReducer.d.ts.map +1 -1
- package/dist/fields/Relationship/optionsReducer.js +31 -1
- package/dist/fields/Relationship/optionsReducer.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts +6 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js +45 -82
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/MultiValueLabel/index.scss +4 -0
- package/dist/fields/Relationship/select-components/SingleValue/index.d.ts +6 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.d.ts.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.js +49 -101
- package/dist/fields/Relationship/select-components/SingleValue/index.js.map +1 -1
- package/dist/fields/Relationship/select-components/SingleValue/index.scss +4 -0
- package/dist/fields/Relationship/types.d.ts +14 -5
- package/dist/fields/Relationship/types.d.ts.map +1 -1
- package/dist/fields/Relationship/types.js.map +1 -1
- package/dist/fields/RichText/index.d.ts +2 -2
- package/dist/fields/RichText/index.d.ts.map +1 -1
- package/dist/fields/RichText/index.js.map +1 -1
- package/dist/fields/Row/index.d.ts +9 -2
- package/dist/fields/Row/index.d.ts.map +1 -1
- package/dist/fields/Row/index.js.map +1 -1
- package/dist/fields/Row/index.scss +12 -2
- package/dist/fields/Select/Input.d.ts +5 -5
- package/dist/fields/Select/Input.d.ts.map +1 -1
- package/dist/fields/Select/Input.js +7 -7
- package/dist/fields/Select/Input.js.map +1 -1
- package/dist/fields/Select/index.d.ts +10 -2
- package/dist/fields/Select/index.d.ts.map +1 -1
- package/dist/fields/Select/index.js +11 -11
- package/dist/fields/Select/index.js.map +1 -1
- package/dist/fields/Tabs/index.d.ts +6 -2
- package/dist/fields/Tabs/index.d.ts.map +1 -1
- package/dist/fields/Tabs/index.js +1 -1
- package/dist/fields/Tabs/index.js.map +1 -1
- package/dist/fields/Text/Input.js +7 -7
- package/dist/fields/Text/Input.js.map +1 -1
- package/dist/fields/Text/index.d.ts +11 -3
- package/dist/fields/Text/index.d.ts.map +1 -1
- package/dist/fields/Text/index.js +4 -6
- package/dist/fields/Text/index.js.map +1 -1
- package/dist/fields/Text/types.d.ts +5 -5
- 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 +7 -7
- package/dist/fields/Textarea/Input.js.map +1 -1
- package/dist/fields/Textarea/index.d.ts +13 -4
- package/dist/fields/Textarea/index.d.ts.map +1 -1
- package/dist/fields/Textarea/index.js +4 -6
- package/dist/fields/Textarea/index.js.map +1 -1
- package/dist/fields/Textarea/types.d.ts +5 -5
- package/dist/fields/Textarea/types.d.ts.map +1 -1
- package/dist/fields/Textarea/types.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.d.ts +16 -2
- package/dist/fields/Upload/HasMany/index.d.ts.map +1 -1
- package/dist/fields/Upload/HasMany/index.js +154 -223
- package/dist/fields/Upload/HasMany/index.js.map +1 -1
- package/dist/fields/Upload/HasMany/index.scss +12 -56
- package/dist/fields/Upload/HasOne/index.d.ts +13 -9
- package/dist/fields/Upload/HasOne/index.d.ts.map +1 -1
- package/dist/fields/Upload/HasOne/index.js +36 -120
- package/dist/fields/Upload/HasOne/index.js.map +1 -1
- package/dist/fields/Upload/HasOne/index.scss +0 -69
- package/dist/fields/Upload/{HasOne/Input.d.ts → Input.d.ts} +14 -9
- package/dist/fields/Upload/Input.d.ts.map +1 -0
- package/dist/fields/Upload/Input.js +672 -0
- package/dist/fields/Upload/Input.js.map +1 -0
- package/dist/fields/Upload/RelationshipContent/index.d.ts +21 -0
- package/dist/fields/Upload/RelationshipContent/index.d.ts.map +1 -0
- package/dist/fields/Upload/RelationshipContent/index.js +140 -0
- package/dist/fields/Upload/RelationshipContent/index.js.map +1 -0
- package/dist/fields/Upload/RelationshipContent/index.scss +54 -0
- package/dist/fields/Upload/UploadCard/index.d.ts +10 -0
- package/dist/fields/Upload/UploadCard/index.d.ts.map +1 -0
- package/dist/fields/Upload/UploadCard/index.js +15 -0
- package/dist/fields/Upload/UploadCard/index.js.map +1 -0
- package/dist/fields/Upload/UploadCard/index.scss +26 -0
- package/dist/fields/Upload/index.d.ts +6 -6
- package/dist/fields/Upload/index.d.ts.map +1 -1
- package/dist/fields/Upload/index.js +85 -90
- package/dist/fields/Upload/index.js.map +1 -1
- package/dist/fields/Upload/index.scss +62 -0
- package/dist/fields/index.d.ts.map +1 -1
- package/dist/fields/index.js +2 -0
- package/dist/fields/index.js.map +1 -1
- package/dist/forms/Form/fieldReducer.d.ts.map +1 -1
- package/dist/forms/Form/fieldReducer.js +6 -2
- 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 +26 -10
- package/dist/forms/Form/index.js.map +1 -1
- package/dist/forms/Form/mergeServerFormState.d.ts.map +1 -1
- package/dist/forms/Form/mergeServerFormState.js +3 -1
- package/dist/forms/Form/mergeServerFormState.js.map +1 -1
- package/dist/forms/Form/rowHelpers.d.ts.map +1 -1
- package/dist/forms/Form/rowHelpers.js +9 -3
- package/dist/forms/Form/rowHelpers.js.map +1 -1
- package/dist/forms/Form/rows.d.ts.map +1 -1
- package/dist/forms/Form/rows.js +3 -1
- package/dist/forms/Form/rows.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.d.ts.map +1 -1
- package/dist/forms/NullifyField/index.js.map +1 -1
- package/dist/forms/RenderFields/RenderField.d.ts.map +1 -1
- package/dist/forms/RenderFields/RenderField.js +6 -2
- package/dist/forms/RenderFields/RenderField.js.map +1 -1
- package/dist/forms/RenderFields/index.d.ts.map +1 -1
- package/dist/forms/RenderFields/index.js +19 -16
- package/dist/forms/RenderFields/index.js.map +1 -1
- package/dist/forms/RowLabel/index.js +1 -1
- package/dist/forms/RowLabel/index.js.map +1 -1
- package/dist/forms/RowLabel/types.d.ts +1 -1
- package/dist/forms/RowLabel/types.d.ts.map +1 -1
- package/dist/forms/RowLabel/types.js.map +1 -1
- package/dist/forms/buildStateFromSchema/addFieldStatePromise.d.ts.map +1 -1
- package/dist/forms/buildStateFromSchema/addFieldStatePromise.js.map +1 -1
- package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.d.ts.map +1 -1
- package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js +6 -2
- package/dist/forms/buildStateFromSchema/calculateDefaultValues/promise.js.map +1 -1
- package/dist/forms/buildStateFromSchema/index.d.ts +2 -0
- package/dist/forms/buildStateFromSchema/index.d.ts.map +1 -1
- package/dist/forms/buildStateFromSchema/index.js.map +1 -1
- package/dist/graphics/Account/index.d.ts.map +1 -1
- package/dist/graphics/Account/index.js +1 -1
- package/dist/graphics/Account/index.js.map +1 -1
- package/dist/hooks/useHotkey.d.ts.map +1 -1
- package/dist/hooks/useHotkey.js.map +1 -1
- package/dist/hooks/useIgnoredEffect.d.ts +17 -0
- package/dist/hooks/useIgnoredEffect.d.ts.map +1 -0
- package/dist/hooks/useIgnoredEffect.js +28 -0
- package/dist/hooks/useIgnoredEffect.js.map +1 -0
- package/dist/hooks/useIntersect.d.ts.map +1 -1
- package/dist/hooks/useIntersect.js.map +1 -1
- package/dist/hooks/usePayloadAPI.d.ts.map +1 -1
- package/dist/hooks/usePayloadAPI.js.map +1 -1
- package/dist/hooks/useThrottledEffect.d.ts +7 -0
- package/dist/hooks/useThrottledEffect.d.ts.map +1 -1
- package/dist/hooks/useThrottledEffect.js +7 -0
- package/dist/hooks/useThrottledEffect.js.map +1 -1
- package/dist/icons/Chevron/index.d.ts +3 -3
- package/dist/icons/Chevron/index.d.ts.map +1 -1
- package/dist/icons/Chevron/index.js +4 -4
- package/dist/icons/Chevron/index.js.map +1 -1
- package/dist/icons/Chevron/index.scss +9 -1
- package/dist/icons/Lock/index.d.ts +6 -0
- package/dist/icons/Lock/index.d.ts.map +1 -0
- package/dist/icons/Lock/index.js +27 -0
- package/dist/icons/Lock/index.js.map +1 -0
- package/dist/icons/Lock/index.scss +8 -0
- package/dist/providers/Auth/index.d.ts +1 -1
- package/dist/providers/Auth/index.d.ts.map +1 -1
- package/dist/providers/Auth/index.js +6 -2
- package/dist/providers/Auth/index.js.map +1 -1
- package/dist/providers/Config/RenderComponent.d.ts +1 -1
- package/dist/providers/Config/RenderComponent.d.ts.map +1 -1
- package/dist/providers/Config/RenderComponent.js +2 -2
- package/dist/providers/Config/RenderComponent.js.map +1 -1
- package/dist/providers/Config/createClientConfig/collections.d.ts +6 -6
- package/dist/providers/Config/createClientConfig/collections.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/collections.js +17 -13
- package/dist/providers/Config/createClientConfig/collections.js.map +1 -1
- package/dist/providers/Config/createClientConfig/fields.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/fields.js +34 -11
- package/dist/providers/Config/createClientConfig/fields.js.map +1 -1
- package/dist/providers/Config/createClientConfig/getComponent.d.ts +1 -1
- package/dist/providers/Config/createClientConfig/getComponent.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/getComponent.js +2 -2
- package/dist/providers/Config/createClientConfig/getComponent.js.map +1 -1
- package/dist/providers/Config/createClientConfig/getCreateMappedComponent.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js +3 -1
- package/dist/providers/Config/createClientConfig/getCreateMappedComponent.js.map +1 -1
- package/dist/providers/Config/createClientConfig/globals.d.ts +4 -4
- package/dist/providers/Config/createClientConfig/globals.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/globals.js +3 -3
- package/dist/providers/Config/createClientConfig/globals.js.map +1 -1
- package/dist/providers/Config/createClientConfig/index.d.ts +3 -3
- package/dist/providers/Config/createClientConfig/index.d.ts.map +1 -1
- package/dist/providers/Config/createClientConfig/index.js +20 -5
- package/dist/providers/Config/createClientConfig/index.js.map +1 -1
- package/dist/providers/DocumentEvents/index.js.map +1 -1
- package/dist/providers/DocumentInfo/index.d.ts +1 -1
- package/dist/providers/DocumentInfo/index.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/index.js +124 -12
- package/dist/providers/DocumentInfo/index.js.map +1 -1
- package/dist/providers/DocumentInfo/types.d.ts +43 -20
- package/dist/providers/DocumentInfo/types.d.ts.map +1 -1
- package/dist/providers/DocumentInfo/types.js.map +1 -1
- package/dist/providers/ListInfo/index.d.ts +2 -2
- package/dist/providers/ListInfo/index.d.ts.map +1 -1
- package/dist/providers/ListInfo/index.js.map +1 -1
- package/dist/providers/ListQuery/index.d.ts +17 -11
- package/dist/providers/ListQuery/index.d.ts.map +1 -1
- package/dist/providers/ListQuery/index.js +32 -20
- package/dist/providers/ListQuery/index.js.map +1 -1
- package/dist/providers/Locale/index.d.ts.map +1 -1
- package/dist/providers/Locale/index.js.map +1 -1
- package/dist/providers/Preferences/index.d.ts.map +1 -1
- package/dist/providers/Preferences/index.js +3 -1
- package/dist/providers/Preferences/index.js.map +1 -1
- package/dist/providers/Root/index.d.ts +12 -12
- package/dist/providers/Root/index.d.ts.map +1 -1
- package/dist/providers/Root/index.js.map +1 -1
- package/dist/providers/Selection/index.d.ts +1 -1
- package/dist/providers/Selection/index.d.ts.map +1 -1
- package/dist/providers/Selection/index.js +59 -30
- package/dist/providers/Selection/index.js.map +1 -1
- package/dist/providers/WindowInfo/index.d.ts +1 -1
- package/dist/providers/WindowInfo/index.d.ts.map +1 -1
- package/dist/providers/WindowInfo/index.js +1 -1
- package/dist/providers/WindowInfo/index.js.map +1 -1
- package/dist/styles.css +1 -1
- package/dist/utilities/buildFormState.d.ts +9 -3
- package/dist/utilities/buildFormState.d.ts.map +1 -1
- package/dist/utilities/buildFormState.js +94 -6
- package/dist/utilities/buildFormState.js.map +1 -1
- package/dist/utilities/deepMerge.d.ts +12 -0
- package/dist/utilities/deepMerge.d.ts.map +1 -0
- package/dist/utilities/deepMerge.js +25 -0
- package/dist/utilities/deepMerge.js.map +1 -0
- package/dist/utilities/getFormState.d.ts +8 -2
- package/dist/utilities/getFormState.d.ts.map +1 -1
- package/dist/utilities/getFormState.js +3 -1
- package/dist/utilities/getFormState.js.map +1 -1
- package/dist/utilities/reduceFieldsToValuesWithValidation.d.ts.map +1 -1
- package/dist/utilities/reduceFieldsToValuesWithValidation.js +6 -2
- package/dist/utilities/reduceFieldsToValuesWithValidation.js.map +1 -1
- package/package.json +8 -8
- package/dist/fields/Upload/HasOne/Input.d.ts.map +0 -1
- package/dist/fields/Upload/HasOne/Input.js +0 -324
- package/dist/fields/Upload/HasOne/Input.js.map +0 -1
- /package/dist/exports/client/{DatePicker-E6IJFDN2.js.map → DatePicker-OLRZVTAD.js.map} +0 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["deepCopyObjectSimple","serverOnlyConfigProperties","React","createClientCollectionConfig","createClientCollectionConfigs","createClientField","createClientFields","getComponent","getCreateMappedComponent","createClientGlobalConfig","createClientGlobalConfigs","createClientConfig","DefaultEditView","DefaultListView","children","config","i18n","importMap","payload","clientConfig","createMappedComponent","serverProps","key","localization","locale","locales","toString","admin","avatar","components","Avatar","Component","undefined","logout","Button","LogoutButton","actions","length","map","graphics","Icon","Logo","livePreview","url","collections","clientCollections","globals","clientGlobals","NestProviders","providers","_jsx","slice","render","Array","isArray","identifier","payloadComponent"],"sources":["../../../../src/providers/Config/createClientConfig/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\n\nimport {\n type AdminViewProps,\n type ClientConfig,\n type EditViewProps,\n type ImportMap,\n type Payload,\n type SanitizedConfig,\n deepCopyObjectSimple,\n serverOnlyConfigProperties,\n} from 'payload'\nimport React from 'react'\n\nimport { createClientCollectionConfig, createClientCollectionConfigs } from './collections.js'\nimport { createClientField, createClientFields } from './fields.js'\nimport { getComponent } from './getComponent.js'\nimport { getCreateMappedComponent } from './getCreateMappedComponent.js'\nimport { createClientGlobalConfig, createClientGlobalConfigs } from './globals.js'\n\nexport {\n createClientCollectionConfig,\n createClientCollectionConfigs,\n createClientGlobalConfig,\n createClientGlobalConfigs,\n}\n\nexport const createClientConfig = async ({\n DefaultEditView,\n DefaultListView,\n children,\n config,\n i18n,\n importMap,\n payload,\n}: {\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n children: React.ReactNode\n config: SanitizedConfig\n i18n: I18nClient\n importMap: ImportMap\n payload: Payload\n // eslint-disable-next-line @typescript-eslint/require-await\n}): Promise<{ clientConfig: ClientConfig; render: React.ReactNode }> => {\n // We can use deepCopySimple here, as the clientConfig should be JSON serializable anyways, since it will be sent from server => client\n const clientConfig: ClientConfig = deepCopyObjectSimple(config) as unknown as ClientConfig\n\n const createMappedComponent = getCreateMappedComponent({\n importMap,\n serverProps: {\n i18n,\n payload,\n },\n })\n\n for (const key of serverOnlyConfigProperties) {\n if (key in clientConfig) {\n delete clientConfig[key]\n }\n }\n\n if ('localization' in clientConfig && clientConfig.localization) {\n for (const locale of clientConfig.localization.locales) {\n delete locale.toString\n }\n }\n\n if ('admin' in clientConfig) {\n if (\n config.admin?.avatar &&\n typeof config.admin?.avatar === 'object' &&\n config.admin?.avatar &&\n 'Component' in config.admin.avatar\n ) {\n clientConfig.admin.components.Avatar = createMappedComponent(\n config.admin.avatar.Component,\n undefined,\n undefined,\n 'config.admin.avatar.Component',\n )\n }\n\n if (config.admin?.components?.logout?.Button) {\n clientConfig.admin.components.LogoutButton = createMappedComponent(\n config.admin.components.logout.Button,\n undefined,\n undefined,\n 'config.admin.components.logout.Button',\n )\n }\n\n if (config.admin?.components?.actions && config.admin?.components?.actions.length > 0) {\n clientConfig.admin.components.actions = config.admin.components.actions.map((Component) =>\n createMappedComponent(Component, undefined, undefined, 'config.admin.components.actions'),\n )\n }\n\n if (config.admin?.components?.graphics?.Icon) {\n clientConfig.admin.components.graphics.Icon = createMappedComponent(\n config.admin.components.graphics.Icon,\n undefined,\n undefined,\n 'config.admin.components.graphics.Icon',\n )\n }\n\n if (config.admin?.components?.graphics?.Logo) {\n clientConfig.admin.components.graphics.Logo = createMappedComponent(\n config.admin.components.graphics.Logo,\n undefined,\n undefined,\n 'config.admin.components.graphics.Logo',\n )\n }\n }\n\n if (\n 'livePreview' in clientConfig.admin &&\n clientConfig.admin.livePreview &&\n 'url' in clientConfig.admin.livePreview\n ) {\n delete clientConfig.admin.livePreview.url\n }\n\n clientConfig.collections = createClientCollectionConfigs({\n DefaultEditView,\n DefaultListView,\n clientCollections: clientConfig.collections,\n collections: config.collections,\n createMappedComponent,\n i18n,\n importMap,\n payload,\n })\n\n clientConfig.globals = createClientGlobalConfigs({\n DefaultEditView,\n clientGlobals: clientConfig.globals,\n createMappedComponent,\n globals: config.globals,\n i18n,\n importMap,\n payload,\n })\n\n const NestProviders = ({\n children,\n providers,\n }: {\n readonly children: React.ReactNode\n readonly providers: React.FC<{ children?: React.ReactNode }>[]\n }) => {\n const Component = providers[0]\n if (providers.length > 1) {\n return (\n <Component>\n <NestProviders providers={providers.slice(1)}>{children}</NestProviders>\n </Component>\n )\n }\n return <Component>{children}</Component>\n }\n\n const render =\n Array.isArray(config.admin?.components?.providers) &&\n config.admin?.components?.providers.length > 0 ? (\n <NestProviders\n providers={config.admin?.components?.providers.map(\n (Component) =>\n getComponent({\n identifier: 'config.admin?.components?.providers',\n importMap,\n payloadComponent: Component,\n }).Component,\n )}\n >\n {children}\n </NestProviders>\n ) : (\n children\n )\n\n return { clientConfig, render }\n}\nexport { createClientField, createClientFields }\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["deepCopyObjectSimple","serverOnlyConfigProperties","React","createClientCollectionConfig","createClientCollectionConfigs","createClientField","createClientFields","getComponent","getCreateMappedComponent","createClientGlobalConfig","createClientGlobalConfigs","createClientConfig","children","config","DefaultEditView","DefaultListView","i18n","importMap","payload","clientConfig","createMappedComponent","serverProps","key","localization","locale","locales","toString","admin","avatar","components","Avatar","Component","undefined","logout","Button","LogoutButton","actions","length","map","graphics","Icon","Logo","dependencies","dependency","type","payloadComponent","clientProps","path","livePreview","url","collections","clientCollections","globals","clientGlobals","NestProviders","providers","_jsx","slice","render","Array","isArray","identifier"],"sources":["../../../../src/providers/Config/createClientConfig/index.tsx"],"sourcesContent":["import type { I18nClient } from '@payloadcms/translations'\n\nimport {\n type AdminViewProps,\n type ClientConfig,\n deepCopyObjectSimple,\n type EditViewProps,\n type ImportMap,\n type Payload,\n type PayloadComponent,\n type SanitizedConfig,\n serverOnlyConfigProperties,\n} from 'payload'\nimport React from 'react'\n\nimport { createClientCollectionConfig, createClientCollectionConfigs } from './collections.js'\nimport { createClientField, createClientFields } from './fields.js'\nimport { getComponent } from './getComponent.js'\nimport { getCreateMappedComponent } from './getCreateMappedComponent.js'\nimport { createClientGlobalConfig, createClientGlobalConfigs } from './globals.js'\n\nexport {\n createClientCollectionConfig,\n createClientCollectionConfigs,\n createClientGlobalConfig,\n createClientGlobalConfigs,\n}\n\nexport const createClientConfig = async ({\n children,\n config,\n DefaultEditView,\n DefaultListView,\n i18n,\n importMap,\n payload,\n}: {\n children: React.ReactNode\n config: SanitizedConfig\n DefaultEditView: React.FC<EditViewProps>\n DefaultListView: React.FC<AdminViewProps>\n i18n: I18nClient\n importMap: ImportMap\n payload: Payload\n // eslint-disable-next-line @typescript-eslint/require-await\n}): Promise<{ clientConfig: ClientConfig; render: React.ReactNode }> => {\n // We can use deepCopySimple here, as the clientConfig should be JSON serializable anyways, since it will be sent from server => client\n const clientConfig: ClientConfig = deepCopyObjectSimple(config) as unknown as ClientConfig\n\n const createMappedComponent = getCreateMappedComponent({\n importMap,\n serverProps: {\n i18n,\n payload,\n },\n })\n\n for (const key of serverOnlyConfigProperties) {\n if (key in clientConfig) {\n delete clientConfig[key]\n }\n }\n\n if ('localization' in clientConfig && clientConfig.localization) {\n for (const locale of clientConfig.localization.locales) {\n delete locale.toString\n }\n }\n\n if ('admin' in clientConfig) {\n if (\n config.admin?.avatar &&\n typeof config.admin?.avatar === 'object' &&\n config.admin?.avatar &&\n 'Component' in config.admin.avatar\n ) {\n clientConfig.admin.components.Avatar = createMappedComponent(\n config.admin.avatar.Component,\n undefined,\n undefined,\n 'config.admin.avatar.Component',\n )\n }\n\n if (config.admin?.components?.logout?.Button) {\n clientConfig.admin.components.LogoutButton = createMappedComponent(\n config.admin.components.logout.Button,\n undefined,\n undefined,\n 'config.admin.components.logout.Button',\n )\n }\n\n if (config.admin?.components?.actions && config.admin?.components?.actions.length > 0) {\n clientConfig.admin.components.actions = config.admin.components.actions.map((Component) =>\n createMappedComponent(Component, undefined, undefined, 'config.admin.components.actions'),\n )\n }\n\n if (config.admin?.components?.graphics?.Icon) {\n clientConfig.admin.components.graphics.Icon = createMappedComponent(\n config.admin.components.graphics.Icon,\n undefined,\n undefined,\n 'config.admin.components.graphics.Icon',\n )\n }\n\n if (config.admin?.components?.graphics?.Logo) {\n clientConfig.admin.components.graphics.Logo = createMappedComponent(\n config.admin.components.graphics.Logo,\n undefined,\n undefined,\n 'config.admin.components.graphics.Logo',\n )\n }\n\n if (config.admin?.dependencies) {\n clientConfig.admin.dependencies = {}\n for (const key in config.admin.dependencies) {\n const dependency = config.admin.dependencies[key]\n\n if (dependency.type === 'component') {\n const payloadComponent: PayloadComponent = {\n clientProps: dependency.clientProps,\n path: dependency.path,\n serverProps: dependency.serverProps,\n }\n\n clientConfig.admin.dependencies[key] = createMappedComponent(\n payloadComponent,\n undefined,\n undefined,\n `config.admin.dependencies.${key}`,\n )\n continue\n }\n }\n }\n }\n\n if (\n 'livePreview' in clientConfig.admin &&\n clientConfig.admin.livePreview &&\n 'url' in clientConfig.admin.livePreview\n ) {\n delete clientConfig.admin.livePreview.url\n }\n\n clientConfig.collections = createClientCollectionConfigs({\n clientCollections: clientConfig.collections,\n collections: config.collections,\n createMappedComponent,\n DefaultEditView,\n DefaultListView,\n i18n,\n importMap,\n payload,\n })\n\n clientConfig.globals = createClientGlobalConfigs({\n clientGlobals: clientConfig.globals,\n createMappedComponent,\n DefaultEditView,\n globals: config.globals,\n i18n,\n importMap,\n payload,\n })\n\n const NestProviders = ({\n children,\n providers,\n }: {\n readonly children: React.ReactNode\n readonly providers: React.FC<{ children?: React.ReactNode }>[]\n }) => {\n const Component = providers[0]\n if (providers.length > 1) {\n return (\n <Component>\n <NestProviders providers={providers.slice(1)}>{children}</NestProviders>\n </Component>\n )\n }\n return <Component>{children}</Component>\n }\n\n const render =\n Array.isArray(config.admin?.components?.providers) &&\n config.admin?.components?.providers.length > 0 ? (\n <NestProviders\n providers={config.admin?.components?.providers.map(\n (Component) =>\n getComponent({\n identifier: 'config.admin?.components?.providers',\n importMap,\n payloadComponent: Component,\n }).Component,\n )}\n >\n {children}\n </NestProviders>\n ) : (\n children\n )\n\n return { clientConfig, render }\n}\nexport { createClientField, createClientFields }\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["c","_c","React","createContext","useContext","useState","Context","mostRecentUpdate","reportUpdate","doc","DocumentEventsProvider","t0","$","children","t1","_jsx","Provider","value","useDocumentEvents"],"sources":["../../../src/providers/DocumentEvents/index.tsx"],"sourcesContent":["'use client'\nimport React, { createContext, useContext, useState } from 'react'\n\nexport type UpdatedDocument = {\n entitySlug: string\n id?: number | string\n updatedAt: string\n}\n\nconst Context = createContext({\n mostRecentUpdate: null,\n reportUpdate: (doc: UpdatedDocument) => null
|
|
1
|
+
{"version":3,"file":"index.js","names":["c","_c","React","createContext","useContext","useState","Context","mostRecentUpdate","reportUpdate","doc","DocumentEventsProvider","t0","$","children","t1","_jsx","Provider","value","useDocumentEvents"],"sources":["../../../src/providers/DocumentEvents/index.tsx"],"sourcesContent":["'use client'\nimport React, { createContext, useContext, useState } from 'react'\n\nexport type UpdatedDocument = {\n entitySlug: string\n id?: number | string\n updatedAt: string\n}\n\nconst Context = createContext({\n mostRecentUpdate: null,\n reportUpdate: (doc: UpdatedDocument) => null,\n})\n\nexport const DocumentEventsProvider: React.FC<{ children: React.ReactNode }> = ({ children }) => {\n const [mostRecentUpdate, reportUpdate] = useState<UpdatedDocument>(null)\n\n return <Context.Provider value={{ mostRecentUpdate, reportUpdate }}>{children}</Context.Provider>\n}\n\nexport const useDocumentEvents = () => useContext(Context)\n"],"mappings":"AAAA;;AAAA,SAAAA,CAAA,IAAAC,EAAA;;AACA,OAAOC,KAAA,IAASC,aAAa,EAAEC,UAAU,EAAEC,QAAQ,QAAQ;AAQ3D,MAAMC,OAAA,gBAAUH,aAAA,CAAc;EAC5BI,gBAAA,EAAkB;EAClBC,YAAA,EAAeC,GAAA,IAAyB;AAC1C;AAEA,OAAO,MAAMC,sBAAA,GAAkEC,EAAA;EAAA,MAAAC,CAAA,GAAAX,EAAA;EAAC;IAAAY;EAAA,IAAAF,EAAY;EAC1F,OAAAJ,gBAAA,EAAAC,YAAA,IAAyCH,QAAA,KAA0B;EAAA,IAAAS,EAAA;EAAA,IAAAF,CAAA,QAAAL,gBAAA,IAAAK,CAAA,QAAAC,QAAA;IAE5DC,EAAA,GAAAC,IAAA,CAAAT,OAAA,CAAAU,QAAA;MAAAC,KAAA;QAAAV,gBAAA;QAAAC;MAAA;MAAAK;IAAA,C;;;;;;;SAAAC,E;CACT;AAEA,OAAO,MAAMI,iBAAA,GAAoBA,CAAA;EAAA,OAAMd,UAAA,CAAAE,OAAW;AAAA","ignoreList":[]}
|
|
@@ -3,6 +3,6 @@ import type { DocumentInfoContext, DocumentInfoProps } from './types.js';
|
|
|
3
3
|
export type * from './types.js';
|
|
4
4
|
export declare const useDocumentInfo: () => DocumentInfoContext;
|
|
5
5
|
export declare const DocumentInfoProvider: React.FC<{
|
|
6
|
-
children: React.ReactNode;
|
|
6
|
+
readonly children: React.ReactNode;
|
|
7
7
|
} & DocumentInfoProps>;
|
|
8
8
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/index.tsx"],"names":[],"mappings":"AAiBA,OAAO,KAA8E,MAAM,OAAO,CAAA;AAElG,OAAO,KAAK,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,YAAY,CAAA;AAgBxE,mBAAmB,YAAY,CAAA;AAE/B,eAAO,MAAM,eAAe,QAAO,mBAA0C,CAAA;AAgqB7E,eAAO,MAAM,oBAAoB,EAAE,KAAK,CAAC,EAAE,CACzC;IACE,QAAQ,CAAC,QAAQ,EAAE,KAAK,CAAC,SAAS,CAAA;CACnC,GAAG,iBAAiB,CAOtB,CAAA"}
|
|
@@ -5,6 +5,7 @@ import { notFound } from 'next/navigation.js';
|
|
|
5
5
|
import { reduceFieldsToValues } from 'payload/shared';
|
|
6
6
|
import * as qs from 'qs-esm';
|
|
7
7
|
import React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react';
|
|
8
|
+
import { requests } from '../../utilities/api.js';
|
|
8
9
|
import { formatDocTitle } from '../../utilities/formatDocTitle.js';
|
|
9
10
|
import { getFormState } from '../../utilities/getFormState.js';
|
|
10
11
|
import { hasSavePermission as getHasSavePermission } from '../../utilities/hasSavePermission.js';
|
|
@@ -51,6 +52,8 @@ const DocumentInfo = ({
|
|
|
51
52
|
const collectionConfig = collections.find(c => c.slug === collectionSlug);
|
|
52
53
|
const globalConfig = globals.find(g => g.slug === globalSlug);
|
|
53
54
|
const docConfig = collectionConfig || globalConfig;
|
|
55
|
+
const lockWhenEditingProp = docConfig?.lockWhenEditing !== undefined ? docConfig?.lockWhenEditing : true;
|
|
56
|
+
const isLockingEnabled = lockWhenEditingProp === true || typeof lockWhenEditingProp === 'object';
|
|
54
57
|
const {
|
|
55
58
|
i18n
|
|
56
59
|
} = useTranslation();
|
|
@@ -58,7 +61,9 @@ const DocumentInfo = ({
|
|
|
58
61
|
uploadEdits
|
|
59
62
|
} = useUploadEdits();
|
|
60
63
|
const [documentTitle, setDocumentTitle] = useState(() => {
|
|
61
|
-
if (!initialDataFromProps)
|
|
64
|
+
if (!initialDataFromProps) {
|
|
65
|
+
return '';
|
|
66
|
+
}
|
|
62
67
|
return formatDocTitle({
|
|
63
68
|
collectionConfig,
|
|
64
69
|
data: {
|
|
@@ -80,6 +85,8 @@ const DocumentInfo = ({
|
|
|
80
85
|
const [docPermissions, setDocPermissions] = useState(docPermissionsFromProps);
|
|
81
86
|
const [hasSavePermission, setHasSavePermission] = useState(hasSavePermissionFromProps);
|
|
82
87
|
const [hasPublishPermission, setHasPublishPermission] = useState(hasPublishPermissionFromProps);
|
|
88
|
+
const [documentIsLocked, setDocumentIsLocked] = useState(false);
|
|
89
|
+
const [currentEditor, setCurrentEditor] = useState(null);
|
|
83
90
|
const isInitializing = initialState === undefined || data === undefined;
|
|
84
91
|
const [unpublishedVersions, setUnpublishedVersions] = useState(null);
|
|
85
92
|
const {
|
|
@@ -94,8 +101,6 @@ const DocumentInfo = ({
|
|
|
94
101
|
} = useLocale();
|
|
95
102
|
const prevLocale = useRef(locale);
|
|
96
103
|
const hasInitializedDocPermissions = useRef(false);
|
|
97
|
-
// Separate locale cache used for handling permissions
|
|
98
|
-
const prevLocalePermissions = useRef(locale);
|
|
99
104
|
const versionsConfig = docConfig?.versions;
|
|
100
105
|
const baseURL = `${serverURL}${api}`;
|
|
101
106
|
let slug;
|
|
@@ -120,6 +125,90 @@ const DocumentInfo = ({
|
|
|
120
125
|
});
|
|
121
126
|
const operation = isEditing ? 'update' : 'create';
|
|
122
127
|
const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission);
|
|
128
|
+
const unlockDocument = useCallback(async (docId, slug_0) => {
|
|
129
|
+
try {
|
|
130
|
+
const isGlobal = slug_0 === globalSlug;
|
|
131
|
+
const query = isGlobal ? `where[globalSlug][equals]=${slug_0}` : `where[document.value][equals]=${docId}&where[document.relationTo][equals]=${slug_0}`;
|
|
132
|
+
const request = await requests.get(`${serverURL}${api}/payload-locked-documents?${query}`);
|
|
133
|
+
const {
|
|
134
|
+
docs
|
|
135
|
+
} = await request.json();
|
|
136
|
+
if (docs.length > 0) {
|
|
137
|
+
const lockId = docs[0].id;
|
|
138
|
+
await requests.delete(`${serverURL}${api}/payload-locked-documents/${lockId}`, {
|
|
139
|
+
headers: {
|
|
140
|
+
'Content-Type': 'application/json'
|
|
141
|
+
}
|
|
142
|
+
});
|
|
143
|
+
setDocumentIsLocked(false);
|
|
144
|
+
}
|
|
145
|
+
} catch (error) {
|
|
146
|
+
// eslint-disable-next-line no-console
|
|
147
|
+
console.error('Failed to unlock the document', error);
|
|
148
|
+
}
|
|
149
|
+
}, [serverURL, api, globalSlug]);
|
|
150
|
+
const updateDocumentEditor = useCallback(async (docId_0, slug_1, user) => {
|
|
151
|
+
try {
|
|
152
|
+
const isGlobal_0 = slug_1 === globalSlug;
|
|
153
|
+
const query_0 = isGlobal_0 ? `where[globalSlug][equals]=${slug_1}` : `where[document.value][equals]=${docId_0}&where[document.relationTo][equals]=${slug_1}`;
|
|
154
|
+
// Check if the document is already locked
|
|
155
|
+
const request_0 = await requests.get(`${serverURL}${api}/payload-locked-documents?${query_0}`);
|
|
156
|
+
const {
|
|
157
|
+
docs: docs_0
|
|
158
|
+
} = await request_0.json();
|
|
159
|
+
if (docs_0.length > 0) {
|
|
160
|
+
const lockId_0 = docs_0[0].id;
|
|
161
|
+
// Send a patch request to update the _lastEdited info
|
|
162
|
+
await requests.patch(`${serverURL}${api}/payload-locked-documents/${lockId_0}`, {
|
|
163
|
+
body: JSON.stringify({
|
|
164
|
+
_lastEdited: {
|
|
165
|
+
editedAt: new Date(),
|
|
166
|
+
user: {
|
|
167
|
+
relationTo: user?.collection,
|
|
168
|
+
value: user?.id
|
|
169
|
+
}
|
|
170
|
+
}
|
|
171
|
+
}),
|
|
172
|
+
headers: {
|
|
173
|
+
'Content-Type': 'application/json'
|
|
174
|
+
}
|
|
175
|
+
});
|
|
176
|
+
}
|
|
177
|
+
} catch (error_0) {
|
|
178
|
+
// eslint-disable-next-line no-console
|
|
179
|
+
console.error('Failed to update the document editor', error_0);
|
|
180
|
+
}
|
|
181
|
+
}, [serverURL, api, globalSlug]);
|
|
182
|
+
useEffect(() => {
|
|
183
|
+
if (!isLockingEnabled || !id && !globalSlug) {
|
|
184
|
+
return;
|
|
185
|
+
}
|
|
186
|
+
const fetchDocumentLockState = async () => {
|
|
187
|
+
if (id || globalSlug) {
|
|
188
|
+
try {
|
|
189
|
+
const slug_2 = collectionSlug ?? globalSlug;
|
|
190
|
+
const isGlobal_1 = slug_2 === globalSlug;
|
|
191
|
+
const query_1 = isGlobal_1 ? `where[globalSlug][equals]=${slug_2}` : `where[document.value][equals]=${id}&where[document.relationTo][equals]=${slug_2}`;
|
|
192
|
+
const request_1 = await requests.get(`${serverURL}${api}/payload-locked-documents?${query_1}`);
|
|
193
|
+
const {
|
|
194
|
+
docs: docs_1
|
|
195
|
+
} = await request_1.json();
|
|
196
|
+
if (docs_1.length > 0) {
|
|
197
|
+
const newEditor = docs_1[0]._lastEdited?.user?.value;
|
|
198
|
+
if (newEditor && newEditor.id !== currentEditor?.id) {
|
|
199
|
+
setCurrentEditor(newEditor);
|
|
200
|
+
setDocumentIsLocked(true);
|
|
201
|
+
}
|
|
202
|
+
} else {
|
|
203
|
+
setDocumentIsLocked(false);
|
|
204
|
+
}
|
|
205
|
+
} catch (error_1) {
|
|
206
|
+
// swallow error
|
|
207
|
+
}
|
|
208
|
+
}
|
|
209
|
+
};
|
|
210
|
+
void fetchDocumentLockState();
|
|
211
|
+
}, [id, serverURL, api, collectionSlug, globalSlug, currentEditor, isLockingEnabled]);
|
|
123
212
|
const getVersions = useCallback(async () => {
|
|
124
213
|
let versionFetchURL;
|
|
125
214
|
let publishedFetchURL;
|
|
@@ -128,6 +217,7 @@ const DocumentInfo = ({
|
|
|
128
217
|
let shouldFetch = true;
|
|
129
218
|
const versionParams = {
|
|
130
219
|
depth: 0,
|
|
220
|
+
limit: 0,
|
|
131
221
|
where: {
|
|
132
222
|
and: []
|
|
133
223
|
}
|
|
@@ -196,9 +286,15 @@ const DocumentInfo = ({
|
|
|
196
286
|
where: {
|
|
197
287
|
...versionParams.where,
|
|
198
288
|
and: [...versionParams.where.and, {
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
289
|
+
or: [{
|
|
290
|
+
updatedAt: {
|
|
291
|
+
greater_than: publishedJSON.updatedAt
|
|
292
|
+
}
|
|
293
|
+
}, {
|
|
294
|
+
latest: {
|
|
295
|
+
equals: true
|
|
296
|
+
}
|
|
297
|
+
}]
|
|
202
298
|
}]
|
|
203
299
|
}
|
|
204
300
|
};
|
|
@@ -305,7 +401,9 @@ const DocumentInfo = ({
|
|
|
305
401
|
}
|
|
306
402
|
const docPreferences = await getDocPreferences();
|
|
307
403
|
const newData = collectionSlug ? json_0.doc : json_0.result;
|
|
308
|
-
const
|
|
404
|
+
const {
|
|
405
|
+
state: newState
|
|
406
|
+
} = await getFormState({
|
|
309
407
|
apiRoute: api,
|
|
310
408
|
body: {
|
|
311
409
|
id,
|
|
@@ -327,12 +425,16 @@ const DocumentInfo = ({
|
|
|
327
425
|
const abortController = new AbortController();
|
|
328
426
|
const localeChanged = locale !== prevLocale.current;
|
|
329
427
|
if (initialStateFromProps === undefined || initialDataFromProps === undefined || localeChanged) {
|
|
330
|
-
if (localeChanged)
|
|
428
|
+
if (localeChanged) {
|
|
429
|
+
prevLocale.current = locale;
|
|
430
|
+
}
|
|
331
431
|
const getInitialState = async () => {
|
|
332
432
|
setIsError(false);
|
|
333
433
|
setIsLoading(true);
|
|
334
434
|
try {
|
|
335
|
-
const
|
|
435
|
+
const {
|
|
436
|
+
state: result
|
|
437
|
+
} = await getFormState({
|
|
336
438
|
apiRoute: api,
|
|
337
439
|
body: {
|
|
338
440
|
id,
|
|
@@ -348,7 +450,9 @@ const DocumentInfo = ({
|
|
|
348
450
|
});
|
|
349
451
|
const data_1 = reduceFieldsToValues(result, true);
|
|
350
452
|
setData(data_1);
|
|
351
|
-
if (localeChanged)
|
|
453
|
+
if (localeChanged) {
|
|
454
|
+
void getDocPermissions(data_1);
|
|
455
|
+
}
|
|
352
456
|
setInitialState(result);
|
|
353
457
|
} catch (err) {
|
|
354
458
|
if (!abortController.signal.aborted) {
|
|
@@ -366,7 +470,7 @@ const DocumentInfo = ({
|
|
|
366
470
|
return () => {
|
|
367
471
|
try {
|
|
368
472
|
abortController.abort();
|
|
369
|
-
} catch (
|
|
473
|
+
} catch (error_2) {
|
|
370
474
|
// swallow error
|
|
371
475
|
}
|
|
372
476
|
};
|
|
@@ -407,12 +511,16 @@ const DocumentInfo = ({
|
|
|
407
511
|
addQueryPrefix: true
|
|
408
512
|
})}`;
|
|
409
513
|
}, [baseURL, locale, pluralType, id, slug, uploadEdits]);
|
|
410
|
-
if (isError)
|
|
514
|
+
if (isError) {
|
|
515
|
+
notFound();
|
|
516
|
+
}
|
|
411
517
|
const value = {
|
|
412
518
|
...props,
|
|
413
519
|
action,
|
|
520
|
+
currentEditor,
|
|
414
521
|
docConfig,
|
|
415
522
|
docPermissions,
|
|
523
|
+
documentIsLocked,
|
|
416
524
|
getDocPermissions,
|
|
417
525
|
getDocPreferences,
|
|
418
526
|
getVersions,
|
|
@@ -425,10 +533,14 @@ const DocumentInfo = ({
|
|
|
425
533
|
onSave,
|
|
426
534
|
preferencesKey,
|
|
427
535
|
publishedDoc,
|
|
536
|
+
setCurrentEditor,
|
|
428
537
|
setDocFieldPreferences,
|
|
538
|
+
setDocumentIsLocked,
|
|
429
539
|
setDocumentTitle,
|
|
430
540
|
title: documentTitle,
|
|
541
|
+
unlockDocument,
|
|
431
542
|
unpublishedVersions,
|
|
543
|
+
updateDocumentEditor,
|
|
432
544
|
versions
|
|
433
545
|
};
|
|
434
546
|
return /*#__PURE__*/_jsx(Context.Provider, {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","names":["notFound","reduceFieldsToValues","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","formatDocTitle","getFormState","hasSavePermission","getHasSavePermission","isEditing","getIsEditing","useAuth","useConfig","useLocale","usePreferences","useTranslation","UploadEditsProvider","useUploadEdits","Context","useDocumentInfo","DocumentInfo","children","props","id","collectionSlug","docPermissions","docPermissionsFromProps","globalSlug","hasPublishPermission","hasPublishPermissionFromProps","hasSavePermissionFromProps","initialData","initialDataFromProps","initialState","initialStateFromProps","onLoadError","onSave","onSaveFromProps","config","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","i18n","uploadEdits","documentTitle","setDocumentTitle","data","fallback","toString","isLoading","setIsLoading","isError","setIsError","setData","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","setDocPermissions","setHasSavePermission","setHasPublishPermission","isInitializing","undefined","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","permissions","code","locale","prevLocale","hasInitializedDocPermissions","prevLocalePermissions","versionsConfig","baseURL","pluralType","preferencesKey","operation","shouldFetchVersions","Boolean","readVersions","permission","getVersions","versionFetchURL","publishedFetchURL","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","depth","where","and","publishedVersionParams","or","_status","equals","exists","stringify","push","parent","publishedJSON","drafts","fetch","credentials","headers","language","then","res","json","docs","updatedAt","newerVersionParams","greater_than","newerVersionRes","status","getDocPermissions","params","idToUse","newIsEditing","docAccessURL","body","JSON","method","publishedAccessJSON","update","newDocPermissions","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","console","error","docPreferences","newData","doc","result","newState","apiRoute","schemaPath","abortController","AbortController","localeChanged","current","getInitialState","onError","signal","err","aborted","abort","action","useMemo","docURL","addQueryPrefix","value","title","_jsx","Provider","DocumentInfoProvider"],"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type {\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n PaginatedDocs,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n Where,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { formatDocTitle } from '../../utilities/formatDocTitle.js'\nimport { getFormState } from '../../utilities/getFormState.js'\nimport { hasSavePermission as getHasSavePermission } from '../../utilities/hasSavePermission.js'\nimport { isEditing as getIsEditing } from '../../utilities/isEditing.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\nimport { UploadEditsProvider, useUploadEdits } from '../UploadEdits/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nconst DocumentInfo: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\n> = ({ children, ...props }) => {\n const {\n id,\n collectionSlug,\n docPermissions: docPermissionsFromProps,\n globalSlug,\n hasPublishPermission: hasPublishPermissionFromProps,\n hasSavePermission: hasSavePermissionFromProps,\n initialData: initialDataFromProps,\n initialState: initialStateFromProps,\n onLoadError,\n onSave: onSaveFromProps,\n } = props\n\n const {\n config: {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((c) => c.slug === collectionSlug)\n const globalConfig = globals.find((g) => g.slug === globalSlug)\n const docConfig = collectionConfig || globalConfig\n\n const { i18n } = useTranslation()\n\n const { uploadEdits } = useUploadEdits()\n\n const [documentTitle, setDocumentTitle] = useState(() => {\n if (!initialDataFromProps) return ''\n\n return formatDocTitle({\n collectionConfig,\n data: { ...initialDataFromProps, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n })\n })\n\n const [isLoading, setIsLoading] = useState(false)\n const [isError, setIsError] = useState(false)\n const [data, setData] = useState<Data>(initialDataFromProps)\n const [initialState, setInitialState] = useState<FormState>(initialStateFromProps)\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(docPermissionsFromProps)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(hasSavePermissionFromProps)\n const [hasPublishPermission, setHasPublishPermission] = useState<boolean>(\n hasPublishPermissionFromProps,\n )\n const isInitializing = initialState === undefined || data === undefined\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n\n const { getPreference, setPreference } = usePreferences()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n const prevLocale = useRef(locale)\n const hasInitializedDocPermissions = useRef(false)\n // Separate locale cache used for handling permissions\n const prevLocalePermissions = useRef(locale)\n\n const versionsConfig = docConfig?.versions\n\n const baseURL = `${serverURL}${api}`\n let slug: string\n let pluralType: 'collections' | 'globals'\n let preferencesKey: string\n\n if (globalSlug) {\n slug = globalSlug\n pluralType = 'globals'\n preferencesKey = `global-${slug}`\n }\n\n if (collectionSlug) {\n slug = collectionSlug\n pluralType = 'collections'\n\n if (id) {\n preferencesKey = `collection-${slug}-${id}`\n }\n }\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n const operation = isEditing ? 'update' : 'create'\n const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission)\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: locale || undefined,\n where: {\n and: [\n {\n or: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n _status: {\n exists: false,\n },\n },\n ],\n },\n ],\n },\n }\n\n if (globalSlug) {\n versionFetchURL = `${baseURL}/globals/${globalSlug}/versions`\n publishedFetchURL = `${baseURL}/globals/${globalSlug}?${qs.stringify(publishedVersionParams)}`\n }\n\n if (collectionSlug) {\n versionFetchURL = `${baseURL}/${collectionSlug}/versions`\n\n publishedVersionParams.where.and.push({\n id: {\n equals: id,\n },\n })\n\n publishedFetchURL = `${baseURL}/${collectionSlug}?${qs.stringify(publishedVersionParams)}`\n\n if (!id) {\n shouldFetch = false\n }\n\n versionParams.where.and.push({\n parent: {\n equals: id,\n },\n })\n }\n\n if (shouldFetch) {\n let publishedJSON\n\n if (versionsConfig?.drafts) {\n publishedJSON = await fetch(publishedFetchURL, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (collectionSlug) {\n publishedJSON = publishedJSON?.docs?.[0]\n }\n }\n\n if (shouldFetchVersions) {\n versionJSON = await fetch(`${versionFetchURL}?${qs.stringify(versionParams)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (publishedJSON?.updatedAt) {\n const newerVersionParams = {\n ...versionParams,\n where: {\n ...versionParams.where,\n and: [\n ...versionParams.where.and,\n {\n updatedAt: {\n greater_than: publishedJSON?.updatedAt,\n },\n },\n ],\n },\n }\n\n // Get any newer versions available\n const newerVersionRes = await fetch(\n `${versionFetchURL}?${qs.stringify(newerVersionParams)}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (newerVersionRes.status === 200) {\n unpublishedVersionJSON = await newerVersionRes.json()\n }\n }\n }\n\n setPublishedDoc(publishedJSON)\n setVersions(versionJSON)\n setUnpublishedVersions(unpublishedVersionJSON)\n }\n }, [i18n, globalSlug, collectionSlug, id, baseURL, locale, versionsConfig, shouldFetchVersions])\n\n const getDocPermissions = React.useCallback(\n async (data: Data) => {\n const params = {\n locale: locale || undefined,\n }\n\n const idToUse = data?.id || id\n const newIsEditing = getIsEditing({ id: idToUse, collectionSlug, globalSlug })\n\n if (newIsEditing) {\n const docAccessURL = collectionSlug\n ? `/${collectionSlug}/access/${idToUse}`\n : globalSlug\n ? `/globals/${globalSlug}/access`\n : null\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n body: JSON.stringify(data),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n const json: DocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`,\n {\n body: JSON.stringify({\n ...(data || {}),\n _status: 'published',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n },\n ).then((res) => res.json())\n\n setDocPermissions(json)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: json,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n\n setHasPublishPermission(publishedAccessJSON?.update?.permission)\n }\n } else {\n // when creating new documents, there is no permissions saved for this document yet\n // use the generic entity permissions instead\n const newDocPermissions = collectionSlug\n ? permissions?.collections?.[collectionSlug]\n : permissions?.globals?.[globalSlug]\n\n setDocPermissions(newDocPermissions)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: newDocPermissions,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n }\n },\n [serverURL, api, id, permissions, i18n.language, locale, collectionSlug, globalSlug],\n )\n\n const getDocPreferences = useCallback(() => {\n return getPreference<DocumentPreferences>(preferencesKey)\n }, [getPreference, preferencesKey])\n\n const setDocFieldPreferences = useCallback<DocumentInfoContext['setDocFieldPreferences']>(\n async (path, fieldPreferences) => {\n const allPreferences = await getDocPreferences()\n\n if (preferencesKey) {\n try {\n await setPreference(preferencesKey, {\n ...allPreferences,\n fields: {\n ...(allPreferences?.fields || {}),\n [path]: {\n ...allPreferences?.fields?.[path],\n ...fieldPreferences,\n },\n },\n })\n } catch (e) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n },\n [setPreference, preferencesKey, getDocPreferences],\n )\n\n const onSave = React.useCallback<DocumentInfoContext['onSave']>(\n async (json) => {\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps(json)\n }\n\n const docPreferences = await getDocPreferences()\n\n const newData = collectionSlug ? json.doc : json.result\n\n const newState = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: newData,\n docPreferences,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n setInitialState(newState)\n setData(newData)\n await getDocPermissions(newData)\n },\n [\n api,\n collectionSlug,\n getDocPreferences,\n globalSlug,\n id,\n operation,\n locale,\n onSaveFromProps,\n serverURL,\n getDocPermissions,\n ],\n )\n\n useEffect(() => {\n const abortController = new AbortController()\n const localeChanged = locale !== prevLocale.current\n\n if (\n initialStateFromProps === undefined ||\n initialDataFromProps === undefined ||\n localeChanged\n ) {\n if (localeChanged) prevLocale.current = locale\n\n const getInitialState = async () => {\n setIsError(false)\n setIsLoading(true)\n\n try {\n const result = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n onError: onLoadError,\n serverURL,\n signal: abortController.signal,\n })\n const data = reduceFieldsToValues(result, true)\n setData(data)\n\n if (localeChanged) void getDocPermissions(data)\n\n setInitialState(result)\n } catch (err) {\n if (!abortController.signal.aborted) {\n if (typeof onLoadError === 'function') {\n void onLoadError()\n }\n setIsError(true)\n setIsLoading(false)\n }\n }\n setIsLoading(false)\n }\n\n void getInitialState()\n }\n\n return () => {\n try {\n abortController.abort()\n } catch (error) {\n // swallow error\n }\n }\n }, [\n api,\n operation,\n collectionSlug,\n serverURL,\n id,\n globalSlug,\n locale,\n onLoadError,\n initialDataFromProps,\n initialStateFromProps,\n getDocPermissions,\n ])\n\n useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data: { ...data, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }, [collectionConfig, data, dateFormat, i18n, id, globalConfig])\n\n useEffect(() => {\n if (data && (collectionSlug || globalSlug)) {\n if (\n hasInitializedDocPermissions.current === false &&\n (!docPermissions ||\n hasSavePermission === undefined ||\n hasSavePermission === null ||\n hasPublishPermission === undefined ||\n hasPublishPermission === null)\n ) {\n hasInitializedDocPermissions.current = true\n void getDocPermissions(data)\n }\n }\n }, [\n getDocPermissions,\n docPermissionsFromProps,\n hasSavePermissionFromProps,\n hasPublishPermissionFromProps,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n data,\n docPermissions,\n hasSavePermission,\n hasPublishPermission,\n ])\n\n const action: string = React.useMemo(() => {\n const docURL = `${baseURL}${pluralType === 'globals' ? `/globals` : ''}/${slug}${id ? `/${id}` : ''}`\n const params = {\n depth: 0,\n 'fallback-locale': 'null',\n locale,\n uploadEdits: uploadEdits || undefined,\n }\n\n return `${docURL}${qs.stringify(params, {\n addQueryPrefix: true,\n })}`\n }, [baseURL, locale, pluralType, id, slug, uploadEdits])\n\n if (isError) notFound()\n\n const value: DocumentInfoContext = {\n ...props,\n action,\n docConfig,\n docPermissions,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasPublishPermission,\n hasSavePermission,\n initialData: data,\n initialState,\n isInitializing,\n isLoading,\n onSave,\n preferencesKey,\n publishedDoc,\n setDocFieldPreferences,\n setDocumentTitle,\n title: documentTitle,\n unpublishedVersions,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n\nexport const DocumentInfoProvider: React.FC<\n {\n children: React.ReactNode\n } & DocumentInfoProps\n> = (props) => {\n return (\n <UploadEditsProvider>\n <DocumentInfo {...props} />\n </UploadEditsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"file":"index.js","names":["notFound","reduceFieldsToValues","qs","React","createContext","useCallback","useContext","useEffect","useRef","useState","requests","formatDocTitle","getFormState","hasSavePermission","getHasSavePermission","isEditing","getIsEditing","useAuth","useConfig","useLocale","usePreferences","useTranslation","UploadEditsProvider","useUploadEdits","Context","useDocumentInfo","DocumentInfo","children","props","id","collectionSlug","docPermissions","docPermissionsFromProps","globalSlug","hasPublishPermission","hasPublishPermissionFromProps","hasSavePermissionFromProps","initialData","initialDataFromProps","initialState","initialStateFromProps","onLoadError","onSave","onSaveFromProps","config","admin","dateFormat","collections","globals","routes","api","serverURL","collectionConfig","find","c","slug","globalConfig","g","docConfig","lockWhenEditingProp","lockWhenEditing","undefined","isLockingEnabled","i18n","uploadEdits","documentTitle","setDocumentTitle","data","fallback","toString","isLoading","setIsLoading","isError","setIsError","setData","setInitialState","publishedDoc","setPublishedDoc","versions","setVersions","setDocPermissions","setHasSavePermission","setHasPublishPermission","documentIsLocked","setDocumentIsLocked","currentEditor","setCurrentEditor","isInitializing","unpublishedVersions","setUnpublishedVersions","getPreference","setPreference","permissions","code","locale","prevLocale","hasInitializedDocPermissions","versionsConfig","baseURL","pluralType","preferencesKey","operation","shouldFetchVersions","Boolean","readVersions","permission","unlockDocument","docId","isGlobal","query","request","get","docs","json","length","lockId","delete","headers","error","console","updateDocumentEditor","user","patch","body","JSON","stringify","_lastEdited","editedAt","Date","relationTo","collection","value","fetchDocumentLockState","newEditor","getVersions","versionFetchURL","publishedFetchURL","unpublishedVersionJSON","versionJSON","shouldFetch","versionParams","depth","limit","where","and","publishedVersionParams","or","_status","equals","exists","push","parent","publishedJSON","drafts","fetch","credentials","language","then","res","updatedAt","newerVersionParams","greater_than","latest","newerVersionRes","status","getDocPermissions","params","idToUse","newIsEditing","docAccessURL","method","publishedAccessJSON","update","newDocPermissions","getDocPreferences","setDocFieldPreferences","path","fieldPreferences","allPreferences","fields","e","docPreferences","newData","doc","result","state","newState","apiRoute","schemaPath","abortController","AbortController","localeChanged","current","getInitialState","onError","signal","err","aborted","abort","action","useMemo","docURL","addQueryPrefix","title","_jsx","Provider","DocumentInfoProvider"],"sources":["../../../src/providers/DocumentInfo/index.tsx"],"sourcesContent":["'use client'\nimport type {\n ClientUser,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n PaginatedDocs,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n Where,\n} from 'payload'\n\nimport { notFound } from 'next/navigation.js'\nimport { reduceFieldsToValues } from 'payload/shared'\nimport * as qs from 'qs-esm'\nimport React, { createContext, useCallback, useContext, useEffect, useRef, useState } from 'react'\n\nimport type { DocumentInfoContext, DocumentInfoProps } from './types.js'\n\nimport { requests } from '../../utilities/api.js'\nimport { formatDocTitle } from '../../utilities/formatDocTitle.js'\nimport { getFormState } from '../../utilities/getFormState.js'\nimport { hasSavePermission as getHasSavePermission } from '../../utilities/hasSavePermission.js'\nimport { isEditing as getIsEditing } from '../../utilities/isEditing.js'\nimport { useAuth } from '../Auth/index.js'\nimport { useConfig } from '../Config/index.js'\nimport { useLocale } from '../Locale/index.js'\nimport { usePreferences } from '../Preferences/index.js'\nimport { useTranslation } from '../Translation/index.js'\nimport { UploadEditsProvider, useUploadEdits } from '../UploadEdits/index.js'\n\nconst Context = createContext({} as DocumentInfoContext)\n\nexport type * from './types.js'\n\nexport const useDocumentInfo = (): DocumentInfoContext => useContext(Context)\n\nconst DocumentInfo: React.FC<\n {\n readonly children: React.ReactNode\n } & DocumentInfoProps\n> = ({ children, ...props }) => {\n const {\n id,\n collectionSlug,\n docPermissions: docPermissionsFromProps,\n globalSlug,\n hasPublishPermission: hasPublishPermissionFromProps,\n hasSavePermission: hasSavePermissionFromProps,\n initialData: initialDataFromProps,\n initialState: initialStateFromProps,\n onLoadError,\n onSave: onSaveFromProps,\n } = props\n\n const {\n config: {\n admin: { dateFormat },\n collections,\n globals,\n routes: { api },\n serverURL,\n },\n } = useConfig()\n\n const collectionConfig = collections.find((c) => c.slug === collectionSlug)\n const globalConfig = globals.find((g) => g.slug === globalSlug)\n const docConfig = collectionConfig || globalConfig\n\n const lockWhenEditingProp =\n docConfig?.lockWhenEditing !== undefined ? docConfig?.lockWhenEditing : true\n\n const isLockingEnabled = lockWhenEditingProp === true || typeof lockWhenEditingProp === 'object'\n\n const { i18n } = useTranslation()\n\n const { uploadEdits } = useUploadEdits()\n\n const [documentTitle, setDocumentTitle] = useState(() => {\n if (!initialDataFromProps) {\n return ''\n }\n\n return formatDocTitle({\n collectionConfig,\n data: { ...initialDataFromProps, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n })\n })\n\n const [isLoading, setIsLoading] = useState(false)\n const [isError, setIsError] = useState(false)\n const [data, setData] = useState<Data>(initialDataFromProps)\n const [initialState, setInitialState] = useState<FormState>(initialStateFromProps)\n const [publishedDoc, setPublishedDoc] = useState<TypeWithID & TypeWithTimestamps>(null)\n const [versions, setVersions] = useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n const [docPermissions, setDocPermissions] = useState<DocumentPermissions>(docPermissionsFromProps)\n const [hasSavePermission, setHasSavePermission] = useState<boolean>(hasSavePermissionFromProps)\n const [hasPublishPermission, setHasPublishPermission] = useState<boolean>(\n hasPublishPermissionFromProps,\n )\n\n const [documentIsLocked, setDocumentIsLocked] = useState<boolean | undefined>(false)\n const [currentEditor, setCurrentEditor] = useState<ClientUser | null>(null)\n\n const isInitializing = initialState === undefined || data === undefined\n const [unpublishedVersions, setUnpublishedVersions] =\n useState<PaginatedDocs<TypeWithVersion<any>>>(null)\n\n const { getPreference, setPreference } = usePreferences()\n const { permissions } = useAuth()\n const { code: locale } = useLocale()\n const prevLocale = useRef(locale)\n const hasInitializedDocPermissions = useRef(false)\n\n const versionsConfig = docConfig?.versions\n\n const baseURL = `${serverURL}${api}`\n let slug: string\n let pluralType: 'collections' | 'globals'\n let preferencesKey: string\n\n if (globalSlug) {\n slug = globalSlug\n pluralType = 'globals'\n preferencesKey = `global-${slug}`\n }\n\n if (collectionSlug) {\n slug = collectionSlug\n pluralType = 'collections'\n\n if (id) {\n preferencesKey = `collection-${slug}-${id}`\n }\n }\n\n const isEditing = getIsEditing({ id, collectionSlug, globalSlug })\n const operation = isEditing ? 'update' : 'create'\n const shouldFetchVersions = Boolean(versionsConfig && docPermissions?.readVersions?.permission)\n\n const unlockDocument = useCallback(\n async (docId: number | string, slug: string) => {\n try {\n const isGlobal = slug === globalSlug\n\n const query = isGlobal\n ? `where[globalSlug][equals]=${slug}`\n : `where[document.value][equals]=${docId}&where[document.relationTo][equals]=${slug}`\n\n const request = await requests.get(`${serverURL}${api}/payload-locked-documents?${query}`)\n\n const { docs } = await request.json()\n\n if (docs.length > 0) {\n const lockId = docs[0].id\n await requests.delete(`${serverURL}${api}/payload-locked-documents/${lockId}`, {\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n setDocumentIsLocked(false)\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Failed to unlock the document', error)\n }\n },\n [serverURL, api, globalSlug],\n )\n\n const updateDocumentEditor = useCallback(\n async (docId: number | string, slug: string, user: ClientUser) => {\n try {\n const isGlobal = slug === globalSlug\n\n const query = isGlobal\n ? `where[globalSlug][equals]=${slug}`\n : `where[document.value][equals]=${docId}&where[document.relationTo][equals]=${slug}`\n\n // Check if the document is already locked\n const request = await requests.get(`${serverURL}${api}/payload-locked-documents?${query}`)\n\n const { docs } = await request.json()\n\n if (docs.length > 0) {\n const lockId = docs[0].id\n\n // Send a patch request to update the _lastEdited info\n await requests.patch(`${serverURL}${api}/payload-locked-documents/${lockId}`, {\n body: JSON.stringify({\n _lastEdited: {\n editedAt: new Date(),\n user: { relationTo: user?.collection, value: user?.id },\n },\n }),\n headers: {\n 'Content-Type': 'application/json',\n },\n })\n }\n } catch (error) {\n // eslint-disable-next-line no-console\n console.error('Failed to update the document editor', error)\n }\n },\n [serverURL, api, globalSlug],\n )\n\n useEffect(() => {\n if (!isLockingEnabled || (!id && !globalSlug)) {\n return\n }\n\n const fetchDocumentLockState = async () => {\n if (id || globalSlug) {\n try {\n const slug = collectionSlug ?? globalSlug\n const isGlobal = slug === globalSlug\n\n const query = isGlobal\n ? `where[globalSlug][equals]=${slug}`\n : `where[document.value][equals]=${id}&where[document.relationTo][equals]=${slug}`\n\n const request = await requests.get(`${serverURL}${api}/payload-locked-documents?${query}`)\n const { docs } = await request.json()\n\n if (docs.length > 0) {\n const newEditor = docs[0]._lastEdited?.user?.value\n if (newEditor && newEditor.id !== currentEditor?.id) {\n setCurrentEditor(newEditor)\n setDocumentIsLocked(true)\n }\n } else {\n setDocumentIsLocked(false)\n }\n } catch (error) {\n // swallow error\n }\n }\n }\n void fetchDocumentLockState()\n }, [id, serverURL, api, collectionSlug, globalSlug, currentEditor, isLockingEnabled])\n\n const getVersions = useCallback(async () => {\n let versionFetchURL\n let publishedFetchURL\n let unpublishedVersionJSON = null\n let versionJSON = null\n let shouldFetch = true\n\n const versionParams = {\n depth: 0,\n limit: 0,\n where: {\n and: [],\n },\n }\n\n const publishedVersionParams: { depth: number; locale: string; where: Where } = {\n depth: 0,\n locale: locale || undefined,\n where: {\n and: [\n {\n or: [\n {\n _status: {\n equals: 'published',\n },\n },\n {\n _status: {\n exists: false,\n },\n },\n ],\n },\n ],\n },\n }\n\n if (globalSlug) {\n versionFetchURL = `${baseURL}/globals/${globalSlug}/versions`\n publishedFetchURL = `${baseURL}/globals/${globalSlug}?${qs.stringify(publishedVersionParams)}`\n }\n\n if (collectionSlug) {\n versionFetchURL = `${baseURL}/${collectionSlug}/versions`\n\n publishedVersionParams.where.and.push({\n id: {\n equals: id,\n },\n })\n\n publishedFetchURL = `${baseURL}/${collectionSlug}?${qs.stringify(publishedVersionParams)}`\n\n if (!id) {\n shouldFetch = false\n }\n\n versionParams.where.and.push({\n parent: {\n equals: id,\n },\n })\n }\n\n if (shouldFetch) {\n let publishedJSON\n\n if (versionsConfig?.drafts) {\n publishedJSON = await fetch(publishedFetchURL, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (collectionSlug) {\n publishedJSON = publishedJSON?.docs?.[0]\n }\n }\n\n if (shouldFetchVersions) {\n versionJSON = await fetch(`${versionFetchURL}?${qs.stringify(versionParams)}`, {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n }).then((res) => res.json())\n\n if (publishedJSON?.updatedAt) {\n const newerVersionParams = {\n ...versionParams,\n where: {\n ...versionParams.where,\n and: [\n ...versionParams.where.and,\n {\n or: [\n {\n updatedAt: {\n greater_than: publishedJSON.updatedAt,\n },\n },\n {\n latest: {\n equals: true,\n },\n },\n ],\n },\n ],\n },\n }\n\n // Get any newer versions available\n const newerVersionRes = await fetch(\n `${versionFetchURL}?${qs.stringify(newerVersionParams)}`,\n {\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n },\n },\n )\n\n if (newerVersionRes.status === 200) {\n unpublishedVersionJSON = await newerVersionRes.json()\n }\n }\n }\n\n setPublishedDoc(publishedJSON)\n setVersions(versionJSON)\n setUnpublishedVersions(unpublishedVersionJSON)\n }\n }, [i18n, globalSlug, collectionSlug, id, baseURL, locale, versionsConfig, shouldFetchVersions])\n\n const getDocPermissions = React.useCallback(\n async (data: Data) => {\n const params = {\n locale: locale || undefined,\n }\n\n const idToUse = data?.id || id\n const newIsEditing = getIsEditing({ id: idToUse, collectionSlug, globalSlug })\n\n if (newIsEditing) {\n const docAccessURL = collectionSlug\n ? `/${collectionSlug}/access/${idToUse}`\n : globalSlug\n ? `/globals/${globalSlug}/access`\n : null\n\n if (docAccessURL) {\n const res = await fetch(`${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`, {\n body: JSON.stringify(data),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'post',\n })\n\n const json: DocumentPermissions = await res.json()\n const publishedAccessJSON = await fetch(\n `${serverURL}${api}${docAccessURL}?${qs.stringify(params)}`,\n {\n body: JSON.stringify({\n ...(data || {}),\n _status: 'published',\n }),\n credentials: 'include',\n headers: {\n 'Accept-Language': i18n.language,\n 'Content-Type': 'application/json',\n },\n method: 'POST',\n },\n ).then((res) => res.json())\n\n setDocPermissions(json)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: json,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n\n setHasPublishPermission(publishedAccessJSON?.update?.permission)\n }\n } else {\n // when creating new documents, there is no permissions saved for this document yet\n // use the generic entity permissions instead\n const newDocPermissions = collectionSlug\n ? permissions?.collections?.[collectionSlug]\n : permissions?.globals?.[globalSlug]\n\n setDocPermissions(newDocPermissions)\n\n setHasSavePermission(\n getHasSavePermission({\n collectionSlug,\n docPermissions: newDocPermissions,\n globalSlug,\n isEditing: newIsEditing,\n }),\n )\n }\n },\n [serverURL, api, id, permissions, i18n.language, locale, collectionSlug, globalSlug],\n )\n\n const getDocPreferences = useCallback(() => {\n return getPreference<DocumentPreferences>(preferencesKey)\n }, [getPreference, preferencesKey])\n\n const setDocFieldPreferences = useCallback<DocumentInfoContext['setDocFieldPreferences']>(\n async (path, fieldPreferences) => {\n const allPreferences = await getDocPreferences()\n\n if (preferencesKey) {\n try {\n await setPreference(preferencesKey, {\n ...allPreferences,\n fields: {\n ...(allPreferences?.fields || {}),\n [path]: {\n ...allPreferences?.fields?.[path],\n ...fieldPreferences,\n },\n },\n })\n } catch (e) {\n console.error(e) // eslint-disable-line no-console\n }\n }\n },\n [setPreference, preferencesKey, getDocPreferences],\n )\n\n const onSave = React.useCallback<DocumentInfoContext['onSave']>(\n async (json) => {\n if (typeof onSaveFromProps === 'function') {\n void onSaveFromProps(json)\n }\n\n const docPreferences = await getDocPreferences()\n\n const newData = collectionSlug ? json.doc : json.result\n\n const { state: newState } = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n data: newData,\n docPreferences,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n serverURL,\n })\n\n setInitialState(newState)\n setData(newData)\n\n await getDocPermissions(newData)\n },\n [\n api,\n collectionSlug,\n getDocPreferences,\n globalSlug,\n id,\n operation,\n locale,\n onSaveFromProps,\n serverURL,\n getDocPermissions,\n ],\n )\n\n useEffect(() => {\n const abortController = new AbortController()\n const localeChanged = locale !== prevLocale.current\n\n if (\n initialStateFromProps === undefined ||\n initialDataFromProps === undefined ||\n localeChanged\n ) {\n if (localeChanged) {\n prevLocale.current = locale\n }\n\n const getInitialState = async () => {\n setIsError(false)\n setIsLoading(true)\n\n try {\n const { state: result } = await getFormState({\n apiRoute: api,\n body: {\n id,\n collectionSlug,\n globalSlug,\n locale,\n operation,\n schemaPath: collectionSlug || globalSlug,\n },\n onError: onLoadError,\n serverURL,\n signal: abortController.signal,\n })\n const data = reduceFieldsToValues(result, true)\n setData(data)\n\n if (localeChanged) {\n void getDocPermissions(data)\n }\n\n setInitialState(result)\n } catch (err) {\n if (!abortController.signal.aborted) {\n if (typeof onLoadError === 'function') {\n void onLoadError()\n }\n setIsError(true)\n setIsLoading(false)\n }\n }\n setIsLoading(false)\n }\n\n void getInitialState()\n }\n\n return () => {\n try {\n abortController.abort()\n } catch (error) {\n // swallow error\n }\n }\n }, [\n api,\n operation,\n collectionSlug,\n serverURL,\n id,\n globalSlug,\n locale,\n onLoadError,\n initialDataFromProps,\n initialStateFromProps,\n getDocPermissions,\n ])\n\n useEffect(() => {\n void getVersions()\n }, [getVersions])\n\n useEffect(() => {\n setDocumentTitle(\n formatDocTitle({\n collectionConfig,\n data: { ...data, id },\n dateFormat,\n fallback: id?.toString(),\n globalConfig,\n i18n,\n }),\n )\n }, [collectionConfig, data, dateFormat, i18n, id, globalConfig])\n\n useEffect(() => {\n if (data && (collectionSlug || globalSlug)) {\n if (\n hasInitializedDocPermissions.current === false &&\n (!docPermissions ||\n hasSavePermission === undefined ||\n hasSavePermission === null ||\n hasPublishPermission === undefined ||\n hasPublishPermission === null)\n ) {\n hasInitializedDocPermissions.current = true\n void getDocPermissions(data)\n }\n }\n }, [\n getDocPermissions,\n docPermissionsFromProps,\n hasSavePermissionFromProps,\n hasPublishPermissionFromProps,\n setDocPermissions,\n collectionSlug,\n globalSlug,\n data,\n docPermissions,\n hasSavePermission,\n hasPublishPermission,\n ])\n\n const action: string = React.useMemo(() => {\n const docURL = `${baseURL}${pluralType === 'globals' ? `/globals` : ''}/${slug}${id ? `/${id}` : ''}`\n const params = {\n depth: 0,\n 'fallback-locale': 'null',\n locale,\n uploadEdits: uploadEdits || undefined,\n }\n\n return `${docURL}${qs.stringify(params, {\n addQueryPrefix: true,\n })}`\n }, [baseURL, locale, pluralType, id, slug, uploadEdits])\n\n if (isError) {\n notFound()\n }\n\n const value: DocumentInfoContext = {\n ...props,\n action,\n currentEditor,\n docConfig,\n docPermissions,\n documentIsLocked,\n getDocPermissions,\n getDocPreferences,\n getVersions,\n hasPublishPermission,\n hasSavePermission,\n initialData: data,\n initialState,\n isInitializing,\n isLoading,\n onSave,\n preferencesKey,\n publishedDoc,\n setCurrentEditor,\n setDocFieldPreferences,\n setDocumentIsLocked,\n setDocumentTitle,\n title: documentTitle,\n unlockDocument,\n unpublishedVersions,\n updateDocumentEditor,\n versions,\n }\n\n return <Context.Provider value={value}>{children}</Context.Provider>\n}\n\nexport const DocumentInfoProvider: React.FC<\n {\n readonly children: React.ReactNode\n } & DocumentInfoProps\n> = (props) => {\n return (\n <UploadEditsProvider>\n <DocumentInfo {...props} />\n </UploadEditsProvider>\n )\n}\n"],"mappings":"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","ignoreList":[]}
|
|
@@ -1,28 +1,47 @@
|
|
|
1
|
-
import type { ClientCollectionConfig, ClientGlobalConfig, Data, DocumentPermissions, DocumentPreferences, FormState, InsideFieldsPreferences, PaginatedDocs, SanitizedCollectionConfig, SanitizedGlobalConfig, TypeWithID, TypeWithTimestamps, TypeWithVersion } from 'payload';
|
|
1
|
+
import type { ClientCollectionConfig, ClientGlobalConfig, ClientUser, Data, DocumentPermissions, DocumentPreferences, FormState, InsideFieldsPreferences, PaginatedDocs, SanitizedCollectionConfig, SanitizedGlobalConfig, TypeWithID, TypeWithTimestamps, TypeWithVersion } from 'payload';
|
|
2
2
|
import type React from 'react';
|
|
3
3
|
export type DocumentInfoProps = {
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
collectionSlug?: SanitizedCollectionConfig['slug'];
|
|
11
|
-
disableActions?: boolean;
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
4
|
+
readonly action?: string;
|
|
5
|
+
readonly AfterDocument?: React.ReactNode;
|
|
6
|
+
readonly AfterFields?: React.ReactNode;
|
|
7
|
+
readonly apiURL?: string;
|
|
8
|
+
readonly BeforeDocument?: React.ReactNode;
|
|
9
|
+
readonly BeforeFields?: React.ReactNode;
|
|
10
|
+
readonly collectionSlug?: SanitizedCollectionConfig['slug'];
|
|
11
|
+
readonly disableActions?: boolean;
|
|
12
|
+
readonly disableCreate?: boolean;
|
|
13
|
+
readonly disableLeaveWithoutSaving?: boolean;
|
|
14
|
+
readonly docPermissions?: DocumentPermissions;
|
|
15
|
+
readonly globalSlug?: SanitizedGlobalConfig['slug'];
|
|
16
|
+
readonly hasPublishPermission?: boolean;
|
|
17
|
+
readonly hasSavePermission?: boolean;
|
|
18
|
+
readonly id: null | number | string;
|
|
19
|
+
readonly initialData?: Data;
|
|
20
|
+
readonly initialState?: FormState;
|
|
21
|
+
readonly isEditing?: boolean;
|
|
22
|
+
readonly onDelete?: (args: {
|
|
23
|
+
collectionConfig?: ClientCollectionConfig;
|
|
24
|
+
id: string;
|
|
25
|
+
}) => Promise<void> | void;
|
|
26
|
+
readonly onDrawerCreate?: () => void;
|
|
27
|
+
readonly onDuplicate?: (args: {
|
|
28
|
+
collectionConfig?: ClientCollectionConfig;
|
|
29
|
+
doc: TypeWithID;
|
|
30
|
+
}) => Promise<void> | void;
|
|
31
|
+
readonly onLoadError?: (data?: any) => Promise<void> | void;
|
|
32
|
+
readonly onSave?: (args: {
|
|
33
|
+
collectionConfig?: ClientCollectionConfig;
|
|
34
|
+
doc: TypeWithID;
|
|
35
|
+
operation: 'create' | 'update';
|
|
36
|
+
result: Data;
|
|
37
|
+
}) => Promise<void> | void;
|
|
38
|
+
readonly redirectAfterDelete?: boolean;
|
|
39
|
+
readonly redirectAfterDuplicate?: boolean;
|
|
23
40
|
};
|
|
24
41
|
export type DocumentInfoContext = {
|
|
42
|
+
currentEditor?: ClientUser;
|
|
25
43
|
docConfig?: ClientCollectionConfig | ClientGlobalConfig;
|
|
44
|
+
documentIsLocked?: boolean;
|
|
26
45
|
getDocPermissions: (data?: Data) => Promise<void>;
|
|
27
46
|
getDocPreferences: () => Promise<DocumentPreferences>;
|
|
28
47
|
getVersions: () => Promise<void>;
|
|
@@ -34,13 +53,17 @@ export type DocumentInfoContext = {
|
|
|
34
53
|
publishedDoc?: {
|
|
35
54
|
_status?: string;
|
|
36
55
|
} & TypeWithID & TypeWithTimestamps;
|
|
56
|
+
setCurrentEditor?: React.Dispatch<React.SetStateAction<ClientUser>>;
|
|
37
57
|
setDocFieldPreferences: (field: string, fieldPreferences: {
|
|
38
58
|
[key: string]: unknown;
|
|
39
59
|
} & Partial<InsideFieldsPreferences>) => void;
|
|
60
|
+
setDocumentIsLocked?: React.Dispatch<React.SetStateAction<boolean>>;
|
|
40
61
|
setDocumentTitle: (title: string) => void;
|
|
41
62
|
slug?: string;
|
|
42
63
|
title: string;
|
|
64
|
+
unlockDocument: (docId: number | string, slug: string) => Promise<void>;
|
|
43
65
|
unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>;
|
|
66
|
+
updateDocumentEditor: (docId: number | string, slug: string, user: ClientUser) => Promise<void>;
|
|
44
67
|
versions?: PaginatedDocs<TypeWithVersion<any>>;
|
|
45
68
|
versionsCount?: PaginatedDocs<TypeWithVersion<any>>;
|
|
46
69
|
} & DocumentInfoProps;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,sBAAsB,EACtB,kBAAkB,EAClB,IAAI,EACJ,mBAAmB,EACnB,mBAAmB,EACnB,SAAS,EACT,uBAAuB,EACvB,aAAa,EACb,yBAAyB,EACzB,qBAAqB,EACrB,UAAU,EACV,kBAAkB,EAClB,eAAe,EAChB,MAAM,SAAS,CAAA;AAChB,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAE9B,MAAM,MAAM,iBAAiB,GAAG;IAC9B,aAAa,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/providers/DocumentInfo/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","names":[],"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n PaginatedDocs,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n} from 'payload'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n AfterDocument?: React.ReactNode\n AfterFields?: React.ReactNode\n BeforeDocument?: React.ReactNode\n BeforeFields?: React.ReactNode\n
|
|
1
|
+
{"version":3,"file":"types.js","names":[],"sources":["../../../src/providers/DocumentInfo/types.ts"],"sourcesContent":["import type {\n ClientCollectionConfig,\n ClientGlobalConfig,\n ClientUser,\n Data,\n DocumentPermissions,\n DocumentPreferences,\n FormState,\n InsideFieldsPreferences,\n PaginatedDocs,\n SanitizedCollectionConfig,\n SanitizedGlobalConfig,\n TypeWithID,\n TypeWithTimestamps,\n TypeWithVersion,\n} from 'payload'\nimport type React from 'react'\n\nexport type DocumentInfoProps = {\n readonly action?: string\n readonly AfterDocument?: React.ReactNode\n readonly AfterFields?: React.ReactNode\n readonly apiURL?: string\n readonly BeforeDocument?: React.ReactNode\n readonly BeforeFields?: React.ReactNode\n readonly collectionSlug?: SanitizedCollectionConfig['slug']\n readonly disableActions?: boolean\n readonly disableCreate?: boolean\n readonly disableLeaveWithoutSaving?: boolean\n readonly docPermissions?: DocumentPermissions\n readonly globalSlug?: SanitizedGlobalConfig['slug']\n readonly hasPublishPermission?: boolean\n readonly hasSavePermission?: boolean\n readonly id: null | number | string\n readonly initialData?: Data\n readonly initialState?: FormState\n readonly isEditing?: boolean\n readonly onDelete?: (args: {\n collectionConfig?: ClientCollectionConfig\n id: string\n }) => Promise<void> | void\n readonly onDrawerCreate?: () => void\n /* only available if `redirectAfterDuplicate` is `false` */\n readonly onDuplicate?: (args: {\n collectionConfig?: ClientCollectionConfig\n doc: TypeWithID\n }) => Promise<void> | void\n readonly onLoadError?: (data?: any) => Promise<void> | void\n readonly onSave?: (args: {\n collectionConfig?: ClientCollectionConfig\n doc: TypeWithID\n operation: 'create' | 'update'\n result: Data\n }) => Promise<void> | void\n readonly redirectAfterDelete?: boolean\n readonly redirectAfterDuplicate?: boolean\n}\n\nexport type DocumentInfoContext = {\n currentEditor?: ClientUser\n docConfig?: ClientCollectionConfig | ClientGlobalConfig\n documentIsLocked?: boolean\n getDocPermissions: (data?: Data) => Promise<void>\n getDocPreferences: () => Promise<DocumentPreferences>\n getVersions: () => Promise<void>\n initialData: Data\n initialState?: FormState\n isInitializing: boolean\n isLoading: boolean\n preferencesKey?: string\n publishedDoc?: { _status?: string } & TypeWithID & TypeWithTimestamps\n setCurrentEditor?: React.Dispatch<React.SetStateAction<ClientUser>>\n setDocFieldPreferences: (\n field: string,\n fieldPreferences: { [key: string]: unknown } & Partial<InsideFieldsPreferences>,\n ) => void\n setDocumentIsLocked?: React.Dispatch<React.SetStateAction<boolean>>\n setDocumentTitle: (title: string) => void\n slug?: string\n title: string\n unlockDocument: (docId: number | string, slug: string) => Promise<void>\n unpublishedVersions?: PaginatedDocs<TypeWithVersion<any>>\n updateDocumentEditor: (docId: number | string, slug: string, user: ClientUser) => Promise<void>\n versions?: PaginatedDocs<TypeWithVersion<any>>\n versionsCount?: PaginatedDocs<TypeWithVersion<any>>\n} & DocumentInfoProps\n"],"mappings":"AA0DA","ignoreList":[]}
|