payload 3.84.1 → 4.0.0-internal.d28e9fb
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/README.md +5 -5
- package/dist/admin/elements/Nav.d.ts +13 -0
- package/dist/admin/elements/Nav.d.ts.map +1 -1
- package/dist/admin/elements/Nav.js.map +1 -1
- package/dist/admin/functions/index.d.ts +1 -38
- package/dist/admin/functions/index.d.ts.map +1 -1
- package/dist/admin/functions/index.js.map +1 -1
- package/dist/admin/types.d.ts +5 -4
- package/dist/admin/types.d.ts.map +1 -1
- package/dist/admin/types.js.map +1 -1
- package/dist/admin/views/hierarchyList.d.ts +9 -0
- package/dist/admin/views/hierarchyList.d.ts.map +1 -0
- package/dist/admin/views/hierarchyList.js +3 -0
- package/dist/admin/views/hierarchyList.js.map +1 -0
- package/dist/admin/views/index.d.ts +1 -3
- package/dist/admin/views/index.d.ts.map +1 -1
- package/dist/admin/views/index.js.map +1 -1
- package/dist/admin/views/list.d.ts +43 -2
- package/dist/admin/views/list.d.ts.map +1 -1
- package/dist/admin/views/list.js.map +1 -1
- package/dist/bin/generateImportMap/iterateCollections.d.ts.map +1 -1
- package/dist/bin/generateImportMap/iterateCollections.js +1 -0
- package/dist/bin/generateImportMap/iterateCollections.js.map +1 -1
- package/dist/bin/generateImportMap/iterateConfig.d.ts.map +1 -1
- package/dist/bin/generateImportMap/iterateConfig.js +7 -0
- package/dist/bin/generateImportMap/iterateConfig.js.map +1 -1
- package/dist/bin/generateImportMap/iterateGlobals.d.ts.map +1 -1
- package/dist/bin/generateImportMap/iterateGlobals.js +20 -8
- package/dist/bin/generateImportMap/iterateGlobals.js.map +1 -1
- package/dist/bin/index.d.ts.map +1 -1
- package/dist/bin/index.js +1 -3
- package/dist/bin/index.js.map +1 -1
- package/dist/collections/config/client.d.ts +4 -2
- package/dist/collections/config/client.d.ts.map +1 -1
- package/dist/collections/config/client.js +13 -1
- package/dist/collections/config/client.js.map +1 -1
- package/dist/collections/config/defaults.js +1 -1
- package/dist/collections/config/defaults.js.map +1 -1
- package/dist/collections/config/sanitize.d.ts.map +1 -1
- package/dist/collections/config/sanitize.js +231 -184
- package/dist/collections/config/sanitize.js.map +1 -1
- package/dist/collections/config/types.d.ts +76 -91
- package/dist/collections/config/types.d.ts.map +1 -1
- package/dist/collections/config/types.js.map +1 -1
- package/dist/collections/operations/create.d.ts.map +1 -1
- package/dist/collections/operations/create.js +24 -19
- package/dist/collections/operations/create.js.map +1 -1
- package/dist/collections/operations/delete.d.ts.map +1 -1
- package/dist/collections/operations/delete.js +7 -2
- package/dist/collections/operations/delete.js.map +1 -1
- package/dist/collections/operations/deleteByID.d.ts.map +1 -1
- package/dist/collections/operations/deleteByID.js +7 -2
- package/dist/collections/operations/deleteByID.js.map +1 -1
- package/dist/collections/operations/find.d.ts.map +1 -1
- package/dist/collections/operations/find.js +7 -2
- package/dist/collections/operations/find.js.map +1 -1
- package/dist/collections/operations/findByID.d.ts.map +1 -1
- package/dist/collections/operations/findByID.js +10 -5
- package/dist/collections/operations/findByID.js.map +1 -1
- package/dist/collections/operations/findVersionByID.d.ts.map +1 -1
- package/dist/collections/operations/findVersionByID.js +6 -4
- package/dist/collections/operations/findVersionByID.js.map +1 -1
- package/dist/collections/operations/findVersions.d.ts.map +1 -1
- package/dist/collections/operations/findVersions.js +6 -4
- package/dist/collections/operations/findVersions.js.map +1 -1
- package/dist/collections/operations/restoreVersion.d.ts.map +1 -1
- package/dist/collections/operations/restoreVersion.js +7 -2
- package/dist/collections/operations/restoreVersion.js.map +1 -1
- package/dist/collections/operations/update.d.ts.map +1 -1
- package/dist/collections/operations/update.js +7 -2
- package/dist/collections/operations/update.js.map +1 -1
- package/dist/collections/operations/updateByID.d.ts.map +1 -1
- package/dist/collections/operations/updateByID.js +7 -2
- package/dist/collections/operations/updateByID.js.map +1 -1
- package/dist/collections/operations/utilities/update.d.ts.map +1 -1
- package/dist/collections/operations/utilities/update.js +5 -4
- package/dist/collections/operations/utilities/update.js.map +1 -1
- package/dist/config/client.d.ts.map +1 -1
- package/dist/config/client.js +0 -10
- package/dist/config/client.js.map +1 -1
- package/dist/config/defaults.d.ts.map +1 -1
- package/dist/config/defaults.js +0 -15
- package/dist/config/defaults.js.map +1 -1
- package/dist/config/orderable/index.d.ts.map +1 -1
- package/dist/config/orderable/index.js +0 -4
- package/dist/config/orderable/index.js.map +1 -1
- package/dist/config/sanitize.d.ts.map +1 -1
- package/dist/config/sanitize.js +252 -266
- package/dist/config/sanitize.js.map +1 -1
- package/dist/config/types.d.ts +120 -13
- package/dist/config/types.d.ts.map +1 -1
- package/dist/config/types.js.map +1 -1
- package/dist/exports/internal.d.ts +1 -0
- package/dist/exports/internal.d.ts.map +1 -1
- package/dist/exports/internal.js +1 -0
- package/dist/exports/internal.js.map +1 -1
- package/dist/exports/shared.d.ts +5 -3
- package/dist/exports/shared.d.ts.map +1 -1
- package/dist/exports/shared.js +3 -2
- package/dist/exports/shared.js.map +1 -1
- package/dist/fields/baseFields/slug/index.d.ts.map +1 -1
- package/dist/fields/baseFields/slug/index.js +6 -4
- package/dist/fields/baseFields/slug/index.js.map +1 -1
- package/dist/fields/config/client.d.ts.map +1 -1
- package/dist/fields/config/client.js +3 -2
- package/dist/fields/config/client.js.map +1 -1
- package/dist/fields/config/sanitize.d.ts.map +1 -1
- package/dist/fields/config/sanitize.js +335 -322
- package/dist/fields/config/sanitize.js.map +1 -1
- package/dist/fields/config/sanitizeJoinField.d.ts.map +1 -1
- package/dist/fields/config/sanitizeJoinField.js +3 -0
- package/dist/fields/config/sanitizeJoinField.js.map +1 -1
- package/dist/fields/config/types.d.ts +17 -73
- package/dist/fields/config/types.d.ts.map +1 -1
- package/dist/fields/config/types.js +11 -1
- package/dist/fields/config/types.js.map +1 -1
- package/dist/fields/isFieldDisabled.d.ts +12 -0
- package/dist/fields/isFieldDisabled.d.ts.map +1 -0
- package/dist/fields/isFieldDisabled.js +15 -0
- package/dist/fields/isFieldDisabled.js.map +1 -0
- package/dist/fields/isFieldDisabled.spec.js +134 -0
- package/dist/fields/isFieldDisabled.spec.js.map +1 -0
- package/dist/fields/validations.js +1 -1
- package/dist/fields/validations.js.map +1 -1
- package/dist/globals/config/client.d.ts +1 -1
- package/dist/globals/config/client.d.ts.map +1 -1
- package/dist/globals/config/client.js +2 -1
- package/dist/globals/config/client.js.map +1 -1
- package/dist/globals/config/sanitize.d.ts.map +1 -1
- package/dist/globals/config/sanitize.js +132 -122
- package/dist/globals/config/sanitize.js.map +1 -1
- package/dist/globals/config/types.d.ts +4 -57
- package/dist/globals/config/types.d.ts.map +1 -1
- package/dist/globals/config/types.js.map +1 -1
- package/dist/globals/operations/findOne.d.ts.map +1 -1
- package/dist/globals/operations/findOne.js +7 -2
- package/dist/globals/operations/findOne.js.map +1 -1
- package/dist/globals/operations/findVersionByID.d.ts.map +1 -1
- package/dist/globals/operations/findVersionByID.js +6 -4
- package/dist/globals/operations/findVersionByID.js.map +1 -1
- package/dist/globals/operations/findVersions.d.ts.map +1 -1
- package/dist/globals/operations/findVersions.js +6 -4
- package/dist/globals/operations/findVersions.js.map +1 -1
- package/dist/globals/operations/update.d.ts.map +1 -1
- package/dist/globals/operations/update.js +7 -2
- package/dist/globals/operations/update.js.map +1 -1
- package/dist/hierarchy/addHierarchyToCollection.d.ts +9 -0
- package/dist/hierarchy/addHierarchyToCollection.d.ts.map +1 -0
- package/dist/hierarchy/addHierarchyToCollection.js +76 -0
- package/dist/hierarchy/addHierarchyToCollection.js.map +1 -0
- package/dist/hierarchy/buildParentField.d.ts +11 -0
- package/dist/hierarchy/buildParentField.d.ts.map +1 -0
- package/dist/hierarchy/buildParentField.js +42 -0
- package/dist/hierarchy/buildParentField.js.map +1 -0
- package/dist/hierarchy/constants.d.ts +15 -0
- package/dist/hierarchy/constants.d.ts.map +1 -0
- package/dist/hierarchy/constants.js +11 -0
- package/dist/hierarchy/constants.js.map +1 -0
- package/dist/hierarchy/createFolderField.d.ts +39 -0
- package/dist/hierarchy/createFolderField.d.ts.map +1 -0
- package/dist/hierarchy/createFolderField.js +54 -0
- package/dist/hierarchy/createFolderField.js.map +1 -0
- package/dist/hierarchy/createTagField.d.ts +44 -0
- package/dist/hierarchy/createTagField.d.ts.map +1 -0
- package/dist/hierarchy/createTagField.js +48 -0
- package/dist/hierarchy/createTagField.js.map +1 -0
- package/dist/hierarchy/getInitialTreeData.d.ts +27 -0
- package/dist/hierarchy/getInitialTreeData.d.ts.map +1 -0
- package/dist/hierarchy/getInitialTreeData.js +125 -0
- package/dist/hierarchy/getInitialTreeData.js.map +1 -0
- package/dist/hierarchy/hooks/collectionAfterDelete.d.ts +14 -0
- package/dist/hierarchy/hooks/collectionAfterDelete.d.ts.map +1 -0
- package/dist/hierarchy/hooks/collectionAfterDelete.js +21 -0
- package/dist/hierarchy/hooks/collectionAfterDelete.js.map +1 -0
- package/dist/hierarchy/hooks/collectionAfterRead.d.ts +27 -0
- package/dist/hierarchy/hooks/collectionAfterRead.d.ts.map +1 -0
- package/dist/hierarchy/hooks/collectionAfterRead.js +72 -0
- package/dist/hierarchy/hooks/collectionAfterRead.js.map +1 -0
- package/dist/hierarchy/hooks/collectionBeforeChange.d.ts +19 -0
- package/dist/hierarchy/hooks/collectionBeforeChange.d.ts.map +1 -0
- package/dist/hierarchy/hooks/collectionBeforeChange.js +90 -0
- package/dist/hierarchy/hooks/collectionBeforeChange.js.map +1 -0
- package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts +15 -0
- package/dist/hierarchy/hooks/collectionBeforeDelete.d.ts.map +1 -0
- package/dist/hierarchy/hooks/collectionBeforeDelete.js +20 -0
- package/dist/hierarchy/hooks/collectionBeforeDelete.js.map +1 -0
- package/dist/hierarchy/hooks/collectionBeforeOperation.d.ts +33 -0
- package/dist/hierarchy/hooks/collectionBeforeOperation.d.ts.map +1 -0
- package/dist/hierarchy/hooks/collectionBeforeOperation.js +66 -0
- package/dist/hierarchy/hooks/collectionBeforeOperation.js.map +1 -0
- package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts +8 -0
- package/dist/hierarchy/hooks/ensureSafeCollectionsChange.d.ts.map +1 -0
- package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js +108 -0
- package/dist/hierarchy/hooks/ensureSafeCollectionsChange.js.map +1 -0
- package/dist/hierarchy/injectHierarchyButton.d.ts +14 -0
- package/dist/hierarchy/injectHierarchyButton.d.ts.map +1 -0
- package/dist/hierarchy/injectHierarchyButton.js +37 -0
- package/dist/hierarchy/injectHierarchyButton.js.map +1 -0
- package/dist/hierarchy/presets.d.ts +13 -0
- package/dist/hierarchy/presets.d.ts.map +1 -0
- package/dist/hierarchy/presets.js +52 -0
- package/dist/hierarchy/presets.js.map +1 -0
- package/dist/hierarchy/resolveHierarchyCollections.d.ts +23 -0
- package/dist/hierarchy/resolveHierarchyCollections.d.ts.map +1 -0
- package/dist/hierarchy/resolveHierarchyCollections.js +321 -0
- package/dist/hierarchy/resolveHierarchyCollections.js.map +1 -0
- package/dist/hierarchy/sanitizeHierarchyCollection.d.ts +14 -0
- package/dist/hierarchy/sanitizeHierarchyCollection.d.ts.map +1 -0
- package/dist/hierarchy/sanitizeHierarchyCollection.js +117 -0
- package/dist/hierarchy/sanitizeHierarchyCollection.js.map +1 -0
- package/dist/hierarchy/types.d.ts +155 -0
- package/dist/hierarchy/types.d.ts.map +1 -0
- package/dist/hierarchy/types.js +6 -0
- package/dist/hierarchy/types.js.map +1 -0
- package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.d.ts +77 -0
- package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.d.ts.map +1 -0
- package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.js +77 -0
- package/dist/hierarchy/utils/buildLocalizedHierarchyPaths.js.map +1 -0
- package/dist/hierarchy/utils/computePaths.d.ts +31 -0
- package/dist/hierarchy/utils/computePaths.d.ts.map +1 -0
- package/dist/hierarchy/utils/computePaths.js +445 -0
- package/dist/hierarchy/utils/computePaths.js.map +1 -0
- package/dist/hierarchy/utils/findUseAsTitle.d.ts +14 -0
- package/dist/hierarchy/utils/findUseAsTitle.d.ts.map +1 -0
- package/dist/hierarchy/utils/findUseAsTitle.js +89 -0
- package/dist/hierarchy/utils/findUseAsTitle.js.map +1 -0
- package/dist/hierarchy/utils/getAncestors.d.ts +34 -0
- package/dist/hierarchy/utils/getAncestors.d.ts.map +1 -0
- package/dist/hierarchy/utils/getAncestors.js +94 -0
- package/dist/hierarchy/utils/getAncestors.js.map +1 -0
- package/dist/hierarchy/utils/getLocalizedValue.d.ts +30 -0
- package/dist/hierarchy/utils/getLocalizedValue.d.ts.map +1 -0
- package/dist/hierarchy/utils/getLocalizedValue.js +46 -0
- package/dist/hierarchy/utils/getLocalizedValue.js.map +1 -0
- package/dist/hierarchy/utils/getLocalizedValue.spec.js +250 -0
- package/dist/hierarchy/utils/getLocalizedValue.spec.js.map +1 -0
- package/dist/index.bundled.d.ts +709 -530
- package/dist/index.d.ts +28 -8
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +31 -8
- package/dist/index.js.map +1 -1
- package/dist/preferences/keys.d.ts +8 -4
- package/dist/preferences/keys.d.ts.map +1 -1
- package/dist/preferences/keys.js +7 -4
- package/dist/preferences/keys.js.map +1 -1
- package/dist/preferences/types.d.ts +1 -1
- package/dist/preferences/types.d.ts.map +1 -1
- package/dist/preferences/types.js.map +1 -1
- package/dist/query-presets/config.d.ts.map +1 -1
- package/dist/query-presets/config.js +5 -1
- package/dist/query-presets/config.js.map +1 -1
- package/dist/queues/config/types/index.d.ts +0 -21
- package/dist/queues/config/types/index.d.ts.map +1 -1
- package/dist/queues/config/types/index.js.map +1 -1
- package/dist/queues/config/types/taskTypes.d.ts +0 -20
- package/dist/queues/config/types/taskTypes.d.ts.map +1 -1
- package/dist/queues/config/types/taskTypes.js.map +1 -1
- package/dist/queues/errors/handleWorkflowError.d.ts.map +1 -1
- package/dist/queues/errors/handleWorkflowError.js +9 -1
- package/dist/queues/errors/handleWorkflowError.js.map +1 -1
- package/dist/queues/localAPI.d.ts.map +1 -1
- package/dist/queues/localAPI.js +26 -67
- package/dist/queues/localAPI.js.map +1 -1
- package/dist/queues/operations/handleSchedules/index.d.ts.map +1 -1
- package/dist/queues/operations/handleSchedules/index.js +1 -4
- package/dist/queues/operations/handleSchedules/index.js.map +1 -1
- package/dist/queues/operations/runJobs/index.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/index.js +40 -37
- package/dist/queues/operations/runJobs/index.js.map +1 -1
- package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js +3 -22
- package/dist/queues/operations/runJobs/runJob/getRunTaskFunction.js.map +1 -1
- package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.d.ts.map +1 -1
- package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js +0 -2
- package/dist/queues/operations/runJobs/runJob/getUpdateJobFunction.js.map +1 -1
- package/dist/queues/utilities/updateJob.d.ts +1 -3
- package/dist/queues/utilities/updateJob.d.ts.map +1 -1
- package/dist/queues/utilities/updateJob.js +2 -18
- package/dist/queues/utilities/updateJob.js.map +1 -1
- package/dist/types/index.d.ts +44 -0
- package/dist/types/index.d.ts.map +1 -1
- package/dist/types/index.js.map +1 -1
- package/dist/uploads/getBaseFields.d.ts.map +1 -1
- package/dist/uploads/getBaseFields.js +35 -69
- package/dist/uploads/getBaseFields.js.map +1 -1
- package/dist/uploads/getSafeFilename.d.ts +9 -4
- package/dist/uploads/getSafeFilename.d.ts.map +1 -1
- package/dist/uploads/getSafeFilename.js +5 -5
- package/dist/uploads/getSafeFilename.js.map +1 -1
- package/dist/utilities/appendDateTimezoneSelectFields.d.ts +13 -0
- package/dist/utilities/appendDateTimezoneSelectFields.d.ts.map +1 -0
- package/dist/utilities/appendDateTimezoneSelectFields.js +47 -0
- package/dist/utilities/appendDateTimezoneSelectFields.js.map +1 -0
- package/dist/utilities/appendUploadSelectFields.d.ts.map +1 -1
- package/dist/utilities/appendUploadSelectFields.js +3 -0
- package/dist/utilities/appendUploadSelectFields.js.map +1 -1
- package/dist/utilities/extractID.js +1 -1
- package/dist/utilities/extractID.js.map +1 -1
- package/dist/utilities/flattenAllFields.d.ts.map +1 -1
- package/dist/utilities/flattenAllFields.js +102 -93
- package/dist/utilities/flattenAllFields.js.map +1 -1
- package/dist/utilities/formatAdminURL.d.ts +13 -2
- package/dist/utilities/formatAdminURL.d.ts.map +1 -1
- package/dist/utilities/formatAdminURL.js.map +1 -1
- package/dist/utilities/handleEndpoints.d.ts.map +1 -1
- package/dist/utilities/handleEndpoints.js +0 -1
- package/dist/utilities/handleEndpoints.js.map +1 -1
- package/dist/utilities/resolveSelect.d.ts +16 -0
- package/dist/utilities/resolveSelect.d.ts.map +1 -0
- package/dist/utilities/resolveSelect.js +19 -0
- package/dist/utilities/resolveSelect.js.map +1 -0
- package/dist/utilities/sanitizeProfiler.d.ts +38 -0
- package/dist/utilities/sanitizeProfiler.d.ts.map +1 -0
- package/dist/utilities/sanitizeProfiler.js +101 -0
- package/dist/utilities/sanitizeProfiler.js.map +1 -0
- package/dist/utilities/sanitizeSelect.d.ts +1 -2
- package/dist/utilities/sanitizeSelect.d.ts.map +1 -1
- package/dist/utilities/sanitizeSelect.js +19 -25
- package/dist/utilities/sanitizeSelect.js.map +1 -1
- package/dist/versions/baseFields.d.ts.map +1 -1
- package/dist/versions/baseFields.js +3 -2
- package/dist/versions/baseFields.js.map +1 -1
- package/dist/versions/buildCollectionFields.d.ts.map +1 -1
- package/dist/versions/buildCollectionFields.js +0 -1
- package/dist/versions/buildCollectionFields.js.map +1 -1
- package/dist/versions/buildGlobalFields.d.ts.map +1 -1
- package/dist/versions/buildGlobalFields.js +0 -1
- package/dist/versions/buildGlobalFields.js.map +1 -1
- package/dist/versions/payloadPackageList.d.ts.map +1 -1
- package/dist/versions/payloadPackageList.js +0 -1
- package/dist/versions/payloadPackageList.js.map +1 -1
- package/package.json +4 -4
- package/dist/admin/views/folderList.d.ts +0 -56
- package/dist/admin/views/folderList.d.ts.map +0 -1
- package/dist/admin/views/folderList.js +0 -3
- package/dist/admin/views/folderList.js.map +0 -1
- package/dist/folders/addFolderCollection.d.ts +0 -10
- package/dist/folders/addFolderCollection.d.ts.map +0 -1
- package/dist/folders/addFolderCollection.js +0 -26
- package/dist/folders/addFolderCollection.js.map +0 -1
- package/dist/folders/addFolderFieldToCollection.d.ts +0 -8
- package/dist/folders/addFolderFieldToCollection.d.ts.map +0 -1
- package/dist/folders/addFolderFieldToCollection.js +0 -20
- package/dist/folders/addFolderFieldToCollection.js.map +0 -1
- package/dist/folders/buildFolderField.d.ts +0 -8
- package/dist/folders/buildFolderField.d.ts.map +0 -1
- package/dist/folders/buildFolderField.js +0 -87
- package/dist/folders/buildFolderField.js.map +0 -1
- package/dist/folders/constants.d.ts +0 -3
- package/dist/folders/constants.d.ts.map +0 -1
- package/dist/folders/constants.js +0 -4
- package/dist/folders/constants.js.map +0 -1
- package/dist/folders/createFolderCollection.d.ts +0 -11
- package/dist/folders/createFolderCollection.d.ts.map +0 -1
- package/dist/folders/createFolderCollection.js +0 -115
- package/dist/folders/createFolderCollection.js.map +0 -1
- package/dist/folders/hooks/deleteSubfoldersAfterDelete.d.ts +0 -8
- package/dist/folders/hooks/deleteSubfoldersAfterDelete.d.ts.map +0 -1
- package/dist/folders/hooks/deleteSubfoldersAfterDelete.js +0 -15
- package/dist/folders/hooks/deleteSubfoldersAfterDelete.js.map +0 -1
- package/dist/folders/hooks/dissasociateAfterDelete.d.ts +0 -8
- package/dist/folders/hooks/dissasociateAfterDelete.d.ts.map +0 -1
- package/dist/folders/hooks/dissasociateAfterDelete.js +0 -20
- package/dist/folders/hooks/dissasociateAfterDelete.js.map +0 -1
- package/dist/folders/hooks/ensureSafeCollectionsChange.d.ts +0 -5
- package/dist/folders/hooks/ensureSafeCollectionsChange.d.ts.map +0 -1
- package/dist/folders/hooks/ensureSafeCollectionsChange.js +0 -107
- package/dist/folders/hooks/ensureSafeCollectionsChange.js.map +0 -1
- package/dist/folders/hooks/reparentChildFolder.d.ts +0 -24
- package/dist/folders/hooks/reparentChildFolder.d.ts.map +0 -1
- package/dist/folders/hooks/reparentChildFolder.js +0 -72
- package/dist/folders/hooks/reparentChildFolder.js.map +0 -1
- package/dist/folders/types.d.ts +0 -118
- package/dist/folders/types.d.ts.map +0 -1
- package/dist/folders/types.js +0 -3
- package/dist/folders/types.js.map +0 -1
- package/dist/folders/utils/buildFolderWhereConstraints.d.ts +0 -13
- package/dist/folders/utils/buildFolderWhereConstraints.d.ts.map +0 -1
- package/dist/folders/utils/buildFolderWhereConstraints.js +0 -45
- package/dist/folders/utils/buildFolderWhereConstraints.js.map +0 -1
- package/dist/folders/utils/formatFolderOrDocumentItem.d.ts +0 -12
- package/dist/folders/utils/formatFolderOrDocumentItem.d.ts.map +0 -1
- package/dist/folders/utils/formatFolderOrDocumentItem.js +0 -30
- package/dist/folders/utils/formatFolderOrDocumentItem.js.map +0 -1
- package/dist/folders/utils/getFolderBreadcrumbs.d.ts +0 -14
- package/dist/folders/utils/getFolderBreadcrumbs.d.ts.map +0 -1
- package/dist/folders/utils/getFolderBreadcrumbs.js +0 -45
- package/dist/folders/utils/getFolderBreadcrumbs.js.map +0 -1
- package/dist/folders/utils/getFolderData.d.ts +0 -33
- package/dist/folders/utils/getFolderData.d.ts.map +0 -1
- package/dist/folders/utils/getFolderData.js +0 -88
- package/dist/folders/utils/getFolderData.js.map +0 -1
- package/dist/folders/utils/getFoldersAndDocumentsFromJoin.d.ts +0 -24
- package/dist/folders/utils/getFoldersAndDocumentsFromJoin.d.ts.map +0 -1
- package/dist/folders/utils/getFoldersAndDocumentsFromJoin.js +0 -66
- package/dist/folders/utils/getFoldersAndDocumentsFromJoin.js.map +0 -1
- package/dist/folders/utils/getOrphanedDocs.d.ts +0 -15
- package/dist/folders/utils/getOrphanedDocs.d.ts.map +0 -1
- package/dist/folders/utils/getOrphanedDocs.js +0 -40
- package/dist/folders/utils/getOrphanedDocs.js.map +0 -1
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
import { combineWhereConstraints } from '../../utilities/combineWhereConstraints.js';
|
|
2
|
-
import { mergeListSearchAndWhere } from '../../utilities/mergeListSearchAndWhere.js';
|
|
3
|
-
export async function buildFolderWhereConstraints({ collectionConfig, folderID, localeCode, req, search = '', sort }) {
|
|
4
|
-
const constraints = [
|
|
5
|
-
mergeListSearchAndWhere({
|
|
6
|
-
collectionConfig,
|
|
7
|
-
search
|
|
8
|
-
})
|
|
9
|
-
];
|
|
10
|
-
const baseFilterConstraint = await (collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter)?.({
|
|
11
|
-
limit: 0,
|
|
12
|
-
locale: localeCode,
|
|
13
|
-
page: 1,
|
|
14
|
-
req,
|
|
15
|
-
sort: sort || (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : 'id')
|
|
16
|
-
});
|
|
17
|
-
if (baseFilterConstraint) {
|
|
18
|
-
constraints.push(baseFilterConstraint);
|
|
19
|
-
}
|
|
20
|
-
if (folderID) {
|
|
21
|
-
// build folder join where constraints
|
|
22
|
-
constraints.push({
|
|
23
|
-
relationTo: {
|
|
24
|
-
equals: collectionConfig.slug
|
|
25
|
-
}
|
|
26
|
-
});
|
|
27
|
-
// join queries need to omit trashed documents
|
|
28
|
-
if (collectionConfig.trash) {
|
|
29
|
-
constraints.push({
|
|
30
|
-
deletedAt: {
|
|
31
|
-
exists: false
|
|
32
|
-
}
|
|
33
|
-
});
|
|
34
|
-
}
|
|
35
|
-
}
|
|
36
|
-
const filteredConstraints = constraints.filter(Boolean);
|
|
37
|
-
if (filteredConstraints.length > 1) {
|
|
38
|
-
return combineWhereConstraints(filteredConstraints);
|
|
39
|
-
} else if (filteredConstraints.length === 1) {
|
|
40
|
-
return filteredConstraints[0];
|
|
41
|
-
}
|
|
42
|
-
return undefined;
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
//# sourceMappingURL=buildFolderWhereConstraints.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/folders/utils/buildFolderWhereConstraints.ts"],"sourcesContent":["import type { SanitizedCollectionConfig } from '../../collections/config/types.js'\nimport type { PayloadRequest, Where } from '../../types/index.js'\n\nimport { combineWhereConstraints } from '../../utilities/combineWhereConstraints.js'\nimport { mergeListSearchAndWhere } from '../../utilities/mergeListSearchAndWhere.js'\n\ntype Args = {\n collectionConfig: SanitizedCollectionConfig\n folderID?: number | string\n localeCode?: string\n req: PayloadRequest\n search?: string\n sort?: string\n}\nexport async function buildFolderWhereConstraints({\n collectionConfig,\n folderID,\n localeCode,\n req,\n search = '',\n sort,\n}: Args): Promise<undefined | Where> {\n const constraints: Where[] = [\n mergeListSearchAndWhere({\n collectionConfig,\n search,\n // where // cannot have where since fields in folders and collection will differ\n }),\n ]\n\n const baseFilterConstraint = await (\n collectionConfig.admin?.baseFilter ?? collectionConfig.admin?.baseListFilter\n )?.({\n limit: 0,\n locale: localeCode,\n page: 1,\n req,\n sort:\n sort ||\n (typeof collectionConfig.defaultSort === 'string' ? collectionConfig.defaultSort : 'id'),\n })\n\n if (baseFilterConstraint) {\n constraints.push(baseFilterConstraint)\n }\n\n if (folderID) {\n // build folder join where constraints\n constraints.push({\n relationTo: {\n equals: collectionConfig.slug,\n },\n })\n\n // join queries need to omit trashed documents\n if (collectionConfig.trash) {\n constraints.push({\n deletedAt: {\n exists: false,\n },\n })\n }\n }\n\n const filteredConstraints = constraints.filter(Boolean)\n\n if (filteredConstraints.length > 1) {\n return combineWhereConstraints(filteredConstraints)\n } else if (filteredConstraints.length === 1) {\n return filteredConstraints[0]\n }\n\n return undefined\n}\n"],"names":["combineWhereConstraints","mergeListSearchAndWhere","buildFolderWhereConstraints","collectionConfig","folderID","localeCode","req","search","sort","constraints","baseFilterConstraint","admin","baseFilter","baseListFilter","limit","locale","page","defaultSort","push","relationTo","equals","slug","trash","deletedAt","exists","filteredConstraints","filter","Boolean","length","undefined"],"mappings":"AAGA,SAASA,uBAAuB,QAAQ,6CAA4C;AACpF,SAASC,uBAAuB,QAAQ,6CAA4C;AAUpF,OAAO,eAAeC,4BAA4B,EAChDC,gBAAgB,EAChBC,QAAQ,EACRC,UAAU,EACVC,GAAG,EACHC,SAAS,EAAE,EACXC,IAAI,EACC;IACL,MAAMC,cAAuB;QAC3BR,wBAAwB;YACtBE;YACAI;QAEF;KACD;IAED,MAAMG,uBAAuB,MAC3BP,CAAAA,iBAAiBQ,KAAK,EAAEC,cAAcT,iBAAiBQ,KAAK,EAAEE,cAAa,IACzE;QACFC,OAAO;QACPC,QAAQV;QACRW,MAAM;QACNV;QACAE,MACEA,QACC,CAAA,OAAOL,iBAAiBc,WAAW,KAAK,WAAWd,iBAAiBc,WAAW,GAAG,IAAG;IAC1F;IAEA,IAAIP,sBAAsB;QACxBD,YAAYS,IAAI,CAACR;IACnB;IAEA,IAAIN,UAAU;QACZ,sCAAsC;QACtCK,YAAYS,IAAI,CAAC;YACfC,YAAY;gBACVC,QAAQjB,iBAAiBkB,IAAI;YAC/B;QACF;QAEA,8CAA8C;QAC9C,IAAIlB,iBAAiBmB,KAAK,EAAE;YAC1Bb,YAAYS,IAAI,CAAC;gBACfK,WAAW;oBACTC,QAAQ;gBACV;YACF;QACF;IACF;IAEA,MAAMC,sBAAsBhB,YAAYiB,MAAM,CAACC;IAE/C,IAAIF,oBAAoBG,MAAM,GAAG,GAAG;QAClC,OAAO5B,wBAAwByB;IACjC,OAAO,IAAIA,oBAAoBG,MAAM,KAAK,GAAG;QAC3C,OAAOH,mBAAmB,CAAC,EAAE;IAC/B;IAEA,OAAOI;AACT"}
|
|
@@ -1,12 +0,0 @@
|
|
|
1
|
-
import type { CollectionSlug, Document } from '../../index.js';
|
|
2
|
-
import type { FolderOrDocument } from '../types.js';
|
|
3
|
-
type Args = {
|
|
4
|
-
folderFieldName: string;
|
|
5
|
-
isUpload: boolean;
|
|
6
|
-
relationTo: CollectionSlug;
|
|
7
|
-
useAsTitle?: string;
|
|
8
|
-
value: Document;
|
|
9
|
-
};
|
|
10
|
-
export declare function formatFolderOrDocumentItem({ folderFieldName, isUpload, relationTo, useAsTitle, value, }: Args): FolderOrDocument;
|
|
11
|
-
export {};
|
|
12
|
-
//# sourceMappingURL=formatFolderOrDocumentItem.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"formatFolderOrDocumentItem.d.ts","sourceRoot":"","sources":["../../../src/folders/utils/formatFolderOrDocumentItem.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAA;AAC9D,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKnD,KAAK,IAAI,GAAG;IACV,eAAe,EAAE,MAAM,CAAA;IACvB,QAAQ,EAAE,OAAO,CAAA;IACjB,UAAU,EAAE,cAAc,CAAA;IAC1B,UAAU,CAAC,EAAE,MAAM,CAAA;IACnB,KAAK,EAAE,QAAQ,CAAA;CAChB,CAAA;AACD,wBAAgB,0BAA0B,CAAC,EACzC,eAAe,EACf,QAAQ,EACR,UAAU,EACV,UAAU,EACV,KAAK,GACN,EAAE,IAAI,GAAG,gBAAgB,CA+BzB"}
|
|
@@ -1,30 +0,0 @@
|
|
|
1
|
-
import { isImage } from '../../uploads/isImage.js';
|
|
2
|
-
import { getBestFitFromSizes } from '../../utilities/getBestFitFromSizes.js';
|
|
3
|
-
export function formatFolderOrDocumentItem({ folderFieldName, isUpload, relationTo, useAsTitle, value }) {
|
|
4
|
-
const itemValue = {
|
|
5
|
-
id: value?.id,
|
|
6
|
-
_folderOrDocumentTitle: String(useAsTitle && value?.[useAsTitle] || value['id']),
|
|
7
|
-
createdAt: value?.createdAt,
|
|
8
|
-
folderID: value?.[folderFieldName],
|
|
9
|
-
folderType: value?.folderType || [],
|
|
10
|
-
updatedAt: value?.updatedAt
|
|
11
|
-
};
|
|
12
|
-
if (isUpload) {
|
|
13
|
-
itemValue.filename = value.filename;
|
|
14
|
-
itemValue.mimeType = value.mimeType;
|
|
15
|
-
itemValue.url = value.thumbnailURL || (isImage(value.mimeType) ? getBestFitFromSizes({
|
|
16
|
-
sizes: value.sizes,
|
|
17
|
-
targetSizeMax: 520,
|
|
18
|
-
targetSizeMin: 300,
|
|
19
|
-
url: value.url,
|
|
20
|
-
width: value.width
|
|
21
|
-
}) : undefined);
|
|
22
|
-
}
|
|
23
|
-
return {
|
|
24
|
-
itemKey: `${relationTo}-${value.id}`,
|
|
25
|
-
relationTo,
|
|
26
|
-
value: itemValue
|
|
27
|
-
};
|
|
28
|
-
}
|
|
29
|
-
|
|
30
|
-
//# sourceMappingURL=formatFolderOrDocumentItem.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/folders/utils/formatFolderOrDocumentItem.ts"],"sourcesContent":["import type { CollectionSlug, Document } from '../../index.js'\nimport type { FolderOrDocument } from '../types.js'\n\nimport { isImage } from '../../uploads/isImage.js'\nimport { getBestFitFromSizes } from '../../utilities/getBestFitFromSizes.js'\n\ntype Args = {\n folderFieldName: string\n isUpload: boolean\n relationTo: CollectionSlug\n useAsTitle?: string\n value: Document\n}\nexport function formatFolderOrDocumentItem({\n folderFieldName,\n isUpload,\n relationTo,\n useAsTitle,\n value,\n}: Args): FolderOrDocument {\n const itemValue: FolderOrDocument['value'] = {\n id: value?.id,\n _folderOrDocumentTitle: String((useAsTitle && value?.[useAsTitle]) || value['id']),\n createdAt: value?.createdAt,\n folderID: value?.[folderFieldName],\n folderType: value?.folderType || [],\n updatedAt: value?.updatedAt,\n }\n\n if (isUpload) {\n itemValue.filename = value.filename\n itemValue.mimeType = value.mimeType\n itemValue.url =\n value.thumbnailURL ||\n (isImage(value.mimeType)\n ? getBestFitFromSizes({\n sizes: value.sizes,\n targetSizeMax: 520,\n targetSizeMin: 300,\n url: value.url,\n width: value.width,\n })\n : undefined)\n }\n\n return {\n itemKey: `${relationTo}-${value.id}`,\n relationTo,\n value: itemValue,\n }\n}\n"],"names":["isImage","getBestFitFromSizes","formatFolderOrDocumentItem","folderFieldName","isUpload","relationTo","useAsTitle","value","itemValue","id","_folderOrDocumentTitle","String","createdAt","folderID","folderType","updatedAt","filename","mimeType","url","thumbnailURL","sizes","targetSizeMax","targetSizeMin","width","undefined","itemKey"],"mappings":"AAGA,SAASA,OAAO,QAAQ,2BAA0B;AAClD,SAASC,mBAAmB,QAAQ,yCAAwC;AAS5E,OAAO,SAASC,2BAA2B,EACzCC,eAAe,EACfC,QAAQ,EACRC,UAAU,EACVC,UAAU,EACVC,KAAK,EACA;IACL,MAAMC,YAAuC;QAC3CC,IAAIF,OAAOE;QACXC,wBAAwBC,OAAO,AAACL,cAAcC,OAAO,CAACD,WAAW,IAAKC,KAAK,CAAC,KAAK;QACjFK,WAAWL,OAAOK;QAClBC,UAAUN,OAAO,CAACJ,gBAAgB;QAClCW,YAAYP,OAAOO,cAAc,EAAE;QACnCC,WAAWR,OAAOQ;IACpB;IAEA,IAAIX,UAAU;QACZI,UAAUQ,QAAQ,GAAGT,MAAMS,QAAQ;QACnCR,UAAUS,QAAQ,GAAGV,MAAMU,QAAQ;QACnCT,UAAUU,GAAG,GACXX,MAAMY,YAAY,IACjBnB,CAAAA,QAAQO,MAAMU,QAAQ,IACnBhB,oBAAoB;YAClBmB,OAAOb,MAAMa,KAAK;YAClBC,eAAe;YACfC,eAAe;YACfJ,KAAKX,MAAMW,GAAG;YACdK,OAAOhB,MAAMgB,KAAK;QACpB,KACAC,SAAQ;IAChB;IAEA,OAAO;QACLC,SAAS,GAAGpB,WAAW,CAAC,EAAEE,MAAME,EAAE,EAAE;QACpCJ;QACAE,OAAOC;IACT;AACF"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
import type { PayloadRequest } from '../../types/index.js';
|
|
2
|
-
import type { FolderBreadcrumb } from '../types.js';
|
|
3
|
-
type GetFolderBreadcrumbsArgs = {
|
|
4
|
-
breadcrumbs?: FolderBreadcrumb[];
|
|
5
|
-
folderID?: number | string;
|
|
6
|
-
req: PayloadRequest;
|
|
7
|
-
};
|
|
8
|
-
/**
|
|
9
|
-
* Builds breadcrumbs up from child folder
|
|
10
|
-
* all the way up to root folder
|
|
11
|
-
*/
|
|
12
|
-
export declare const getFolderBreadcrumbs: ({ breadcrumbs, folderID, req, }: GetFolderBreadcrumbsArgs) => Promise<FolderBreadcrumb[] | null>;
|
|
13
|
-
export {};
|
|
14
|
-
//# sourceMappingURL=getFolderBreadcrumbs.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getFolderBreadcrumbs.d.ts","sourceRoot":"","sources":["../../../src/folders/utils/getFolderBreadcrumbs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAY,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACpE,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAEnD,KAAK,wBAAwB,GAAG;IAC9B,WAAW,CAAC,EAAE,gBAAgB,EAAE,CAAA;IAChC,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AACD;;;GAGG;AACH,eAAO,MAAM,oBAAoB,oCAI9B,wBAAwB,KAAG,OAAO,CAAC,gBAAgB,EAAE,GAAG,IAAI,CA8C9D,CAAA"}
|
|
@@ -1,45 +0,0 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Builds breadcrumbs up from child folder
|
|
3
|
-
* all the way up to root folder
|
|
4
|
-
*/ export const getFolderBreadcrumbs = async ({ breadcrumbs = [], folderID, req })=>{
|
|
5
|
-
const { payload, user } = req;
|
|
6
|
-
if (folderID && payload.config.folders) {
|
|
7
|
-
const folderFieldName = payload.config.folders.fieldName;
|
|
8
|
-
const folderQuery = await payload.find({
|
|
9
|
-
collection: payload.config.folders.slug,
|
|
10
|
-
depth: 0,
|
|
11
|
-
limit: 1,
|
|
12
|
-
overrideAccess: false,
|
|
13
|
-
req,
|
|
14
|
-
select: {
|
|
15
|
-
name: true,
|
|
16
|
-
[folderFieldName]: true,
|
|
17
|
-
folderType: true
|
|
18
|
-
},
|
|
19
|
-
user,
|
|
20
|
-
where: {
|
|
21
|
-
id: {
|
|
22
|
-
equals: folderID
|
|
23
|
-
}
|
|
24
|
-
}
|
|
25
|
-
});
|
|
26
|
-
const folder = folderQuery.docs[0];
|
|
27
|
-
if (folder) {
|
|
28
|
-
breadcrumbs.push({
|
|
29
|
-
id: folder.id,
|
|
30
|
-
name: folder.name,
|
|
31
|
-
folderType: folder.folderType
|
|
32
|
-
});
|
|
33
|
-
if (folder[folderFieldName]) {
|
|
34
|
-
return getFolderBreadcrumbs({
|
|
35
|
-
breadcrumbs,
|
|
36
|
-
folderID: typeof folder[folderFieldName] === 'number' || typeof folder[folderFieldName] === 'string' ? folder[folderFieldName] : folder[folderFieldName].id,
|
|
37
|
-
req
|
|
38
|
-
});
|
|
39
|
-
}
|
|
40
|
-
}
|
|
41
|
-
}
|
|
42
|
-
return breadcrumbs.reverse();
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
//# sourceMappingURL=getFolderBreadcrumbs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/folders/utils/getFolderBreadcrumbs.ts"],"sourcesContent":["import type { Document, PayloadRequest } from '../../types/index.js'\nimport type { FolderBreadcrumb } from '../types.js'\n\ntype GetFolderBreadcrumbsArgs = {\n breadcrumbs?: FolderBreadcrumb[]\n folderID?: number | string\n req: PayloadRequest\n}\n/**\n * Builds breadcrumbs up from child folder\n * all the way up to root folder\n */\nexport const getFolderBreadcrumbs = async ({\n breadcrumbs = [],\n folderID,\n req,\n}: GetFolderBreadcrumbsArgs): Promise<FolderBreadcrumb[] | null> => {\n const { payload, user } = req\n if (folderID && payload.config.folders) {\n const folderFieldName: string = payload.config.folders.fieldName\n const folderQuery = await payload.find({\n collection: payload.config.folders.slug,\n depth: 0,\n limit: 1,\n overrideAccess: false,\n req,\n select: {\n name: true,\n [folderFieldName]: true,\n folderType: true,\n },\n user,\n where: {\n id: {\n equals: folderID,\n },\n },\n })\n\n const folder = folderQuery.docs[0] as Document\n\n if (folder) {\n breadcrumbs.push({\n id: folder.id,\n name: folder.name,\n folderType: folder.folderType,\n })\n if (folder[folderFieldName]) {\n return getFolderBreadcrumbs({\n breadcrumbs,\n folderID:\n typeof folder[folderFieldName] === 'number' ||\n typeof folder[folderFieldName] === 'string'\n ? folder[folderFieldName]\n : folder[folderFieldName].id,\n req,\n })\n }\n }\n }\n\n return breadcrumbs.reverse()\n}\n"],"names":["getFolderBreadcrumbs","breadcrumbs","folderID","req","payload","user","config","folders","folderFieldName","fieldName","folderQuery","find","collection","slug","depth","limit","overrideAccess","select","name","folderType","where","id","equals","folder","docs","push","reverse"],"mappings":"AAQA;;;CAGC,GACD,OAAO,MAAMA,uBAAuB,OAAO,EACzCC,cAAc,EAAE,EAChBC,QAAQ,EACRC,GAAG,EACsB;IACzB,MAAM,EAAEC,OAAO,EAAEC,IAAI,EAAE,GAAGF;IAC1B,IAAID,YAAYE,QAAQE,MAAM,CAACC,OAAO,EAAE;QACtC,MAAMC,kBAA0BJ,QAAQE,MAAM,CAACC,OAAO,CAACE,SAAS;QAChE,MAAMC,cAAc,MAAMN,QAAQO,IAAI,CAAC;YACrCC,YAAYR,QAAQE,MAAM,CAACC,OAAO,CAACM,IAAI;YACvCC,OAAO;YACPC,OAAO;YACPC,gBAAgB;YAChBb;YACAc,QAAQ;gBACNC,MAAM;gBACN,CAACV,gBAAgB,EAAE;gBACnBW,YAAY;YACd;YACAd;YACAe,OAAO;gBACLC,IAAI;oBACFC,QAAQpB;gBACV;YACF;QACF;QAEA,MAAMqB,SAASb,YAAYc,IAAI,CAAC,EAAE;QAElC,IAAID,QAAQ;YACVtB,YAAYwB,IAAI,CAAC;gBACfJ,IAAIE,OAAOF,EAAE;gBACbH,MAAMK,OAAOL,IAAI;gBACjBC,YAAYI,OAAOJ,UAAU;YAC/B;YACA,IAAII,MAAM,CAACf,gBAAgB,EAAE;gBAC3B,OAAOR,qBAAqB;oBAC1BC;oBACAC,UACE,OAAOqB,MAAM,CAACf,gBAAgB,KAAK,YACnC,OAAOe,MAAM,CAACf,gBAAgB,KAAK,WAC/Be,MAAM,CAACf,gBAAgB,GACvBe,MAAM,CAACf,gBAAgB,CAACa,EAAE;oBAChClB;gBACF;YACF;QACF;IACF;IAEA,OAAOF,YAAYyB,OAAO;AAC5B,EAAC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { CollectionSlug } from '../../index.js';
|
|
2
|
-
import type { PayloadRequest, Where } from '../../types/index.js';
|
|
3
|
-
import type { FolderSortKeys, GetFolderDataResult } from '../types.js';
|
|
4
|
-
type Args = {
|
|
5
|
-
/**
|
|
6
|
-
* Specify to query documents from a specific collection
|
|
7
|
-
* @default undefined
|
|
8
|
-
* @example 'posts'
|
|
9
|
-
*/
|
|
10
|
-
collectionSlug?: CollectionSlug;
|
|
11
|
-
/**
|
|
12
|
-
* Optional where clause to filter documents by
|
|
13
|
-
* @default undefined
|
|
14
|
-
*/
|
|
15
|
-
documentWhere?: Where;
|
|
16
|
-
/**
|
|
17
|
-
* The ID of the folder to query documents from
|
|
18
|
-
* @default undefined
|
|
19
|
-
*/
|
|
20
|
-
folderID?: number | string;
|
|
21
|
-
/** Optional where clause to filter subfolders by
|
|
22
|
-
* @default undefined
|
|
23
|
-
*/
|
|
24
|
-
folderWhere?: Where;
|
|
25
|
-
req: PayloadRequest;
|
|
26
|
-
sort: FolderSortKeys;
|
|
27
|
-
};
|
|
28
|
-
/**
|
|
29
|
-
* Query for documents, subfolders and breadcrumbs for a given folder
|
|
30
|
-
*/
|
|
31
|
-
export declare const getFolderData: ({ collectionSlug, documentWhere, folderID: _folderID, folderWhere, req, sort, }: Args) => Promise<GetFolderDataResult>;
|
|
32
|
-
export {};
|
|
33
|
-
//# sourceMappingURL=getFolderData.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getFolderData.d.ts","sourceRoot":"","sources":["../../../src/folders/utils/getFolderData.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AACjE,OAAO,KAAK,EAAoB,cAAc,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAA;AAOxF,KAAK,IAAI,GAAG;IACV;;;;OAIG;IACH,cAAc,CAAC,EAAE,cAAc,CAAA;IAC/B;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAA;IACrB;;;OAGG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAAA;IAC1B;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,GAAG,EAAE,cAAc,CAAA;IACnB,IAAI,EAAE,cAAc,CAAA;CACrB,CAAA;AACD;;GAEG;AACH,eAAO,MAAM,aAAa,oFAOvB,IAAI,KAAG,OAAO,CAAC,mBAAmB,CAqDpC,CAAA"}
|
|
@@ -1,88 +0,0 @@
|
|
|
1
|
-
import { parseDocumentID } from '../../index.js';
|
|
2
|
-
import { getFolderBreadcrumbs } from './getFolderBreadcrumbs.js';
|
|
3
|
-
import { queryDocumentsAndFoldersFromJoin } from './getFoldersAndDocumentsFromJoin.js';
|
|
4
|
-
import { getOrphanedDocs } from './getOrphanedDocs.js';
|
|
5
|
-
/**
|
|
6
|
-
* Query for documents, subfolders and breadcrumbs for a given folder
|
|
7
|
-
*/ export const getFolderData = async ({ collectionSlug, documentWhere, folderID: _folderID, folderWhere, req, sort = 'name' })=>{
|
|
8
|
-
const { payload } = req;
|
|
9
|
-
if (payload.config.folders === false) {
|
|
10
|
-
throw new Error('Folders are not enabled');
|
|
11
|
-
}
|
|
12
|
-
const parentFolderID = parseDocumentID({
|
|
13
|
-
id: _folderID,
|
|
14
|
-
collectionSlug: payload.config.folders.slug,
|
|
15
|
-
payload
|
|
16
|
-
});
|
|
17
|
-
const breadcrumbsPromise = getFolderBreadcrumbs({
|
|
18
|
-
folderID: parentFolderID,
|
|
19
|
-
req
|
|
20
|
-
});
|
|
21
|
-
if (parentFolderID) {
|
|
22
|
-
// subfolders and documents are queried together
|
|
23
|
-
const documentAndSubfolderPromise = queryDocumentsAndFoldersFromJoin({
|
|
24
|
-
documentWhere,
|
|
25
|
-
folderWhere,
|
|
26
|
-
parentFolderID,
|
|
27
|
-
req
|
|
28
|
-
});
|
|
29
|
-
const [breadcrumbs, result] = await Promise.all([
|
|
30
|
-
breadcrumbsPromise,
|
|
31
|
-
documentAndSubfolderPromise
|
|
32
|
-
]);
|
|
33
|
-
return {
|
|
34
|
-
breadcrumbs,
|
|
35
|
-
documents: sortDocs({
|
|
36
|
-
docs: result.documents,
|
|
37
|
-
sort
|
|
38
|
-
}),
|
|
39
|
-
folderAssignedCollections: result.folderAssignedCollections,
|
|
40
|
-
subfolders: sortDocs({
|
|
41
|
-
docs: result.subfolders,
|
|
42
|
-
sort
|
|
43
|
-
})
|
|
44
|
-
};
|
|
45
|
-
} else {
|
|
46
|
-
const subfoldersPromise = getOrphanedDocs({
|
|
47
|
-
collectionSlug: payload.config.folders.slug,
|
|
48
|
-
folderFieldName: payload.config.folders.fieldName,
|
|
49
|
-
req,
|
|
50
|
-
where: folderWhere
|
|
51
|
-
});
|
|
52
|
-
const [breadcrumbs, subfolders] = await Promise.all([
|
|
53
|
-
breadcrumbsPromise,
|
|
54
|
-
subfoldersPromise
|
|
55
|
-
]);
|
|
56
|
-
return {
|
|
57
|
-
breadcrumbs,
|
|
58
|
-
documents: [],
|
|
59
|
-
folderAssignedCollections: collectionSlug ? [
|
|
60
|
-
collectionSlug
|
|
61
|
-
] : undefined,
|
|
62
|
-
subfolders: sortDocs({
|
|
63
|
-
docs: subfolders,
|
|
64
|
-
sort
|
|
65
|
-
})
|
|
66
|
-
};
|
|
67
|
-
}
|
|
68
|
-
};
|
|
69
|
-
function sortDocs({ docs, sort }) {
|
|
70
|
-
if (!sort) {
|
|
71
|
-
return docs;
|
|
72
|
-
}
|
|
73
|
-
const isDesc = typeof sort === 'string' && sort.startsWith('-');
|
|
74
|
-
const sortKey = isDesc ? sort.slice(1) : sort;
|
|
75
|
-
return docs.sort((a, b)=>{
|
|
76
|
-
let result = 0;
|
|
77
|
-
if (sortKey === 'name') {
|
|
78
|
-
result = a.value._folderOrDocumentTitle.localeCompare(b.value._folderOrDocumentTitle);
|
|
79
|
-
} else if (sortKey === 'createdAt') {
|
|
80
|
-
result = new Date(a.value.createdAt || '').getTime() - new Date(b.value.createdAt || '').getTime();
|
|
81
|
-
} else if (sortKey === 'updatedAt') {
|
|
82
|
-
result = new Date(a.value.updatedAt || '').getTime() - new Date(b.value.updatedAt || '').getTime();
|
|
83
|
-
}
|
|
84
|
-
return isDesc ? -result : result;
|
|
85
|
-
});
|
|
86
|
-
}
|
|
87
|
-
|
|
88
|
-
//# sourceMappingURL=getFolderData.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/folders/utils/getFolderData.ts"],"sourcesContent":["import type { CollectionSlug } from '../../index.js'\nimport type { PayloadRequest, Where } from '../../types/index.js'\nimport type { FolderOrDocument, FolderSortKeys, GetFolderDataResult } from '../types.js'\n\nimport { parseDocumentID } from '../../index.js'\nimport { getFolderBreadcrumbs } from './getFolderBreadcrumbs.js'\nimport { queryDocumentsAndFoldersFromJoin } from './getFoldersAndDocumentsFromJoin.js'\nimport { getOrphanedDocs } from './getOrphanedDocs.js'\n\ntype Args = {\n /**\n * Specify to query documents from a specific collection\n * @default undefined\n * @example 'posts'\n */\n collectionSlug?: CollectionSlug\n /**\n * Optional where clause to filter documents by\n * @default undefined\n */\n documentWhere?: Where\n /**\n * The ID of the folder to query documents from\n * @default undefined\n */\n folderID?: number | string\n /** Optional where clause to filter subfolders by\n * @default undefined\n */\n folderWhere?: Where\n req: PayloadRequest\n sort: FolderSortKeys\n}\n/**\n * Query for documents, subfolders and breadcrumbs for a given folder\n */\nexport const getFolderData = async ({\n collectionSlug,\n documentWhere,\n folderID: _folderID,\n folderWhere,\n req,\n sort = 'name',\n}: Args): Promise<GetFolderDataResult> => {\n const { payload } = req\n\n if (payload.config.folders === false) {\n throw new Error('Folders are not enabled')\n }\n\n const parentFolderID = parseDocumentID({\n id: _folderID,\n collectionSlug: payload.config.folders.slug,\n payload,\n })\n\n const breadcrumbsPromise = getFolderBreadcrumbs({\n folderID: parentFolderID,\n req,\n })\n\n if (parentFolderID) {\n // subfolders and documents are queried together\n const documentAndSubfolderPromise = queryDocumentsAndFoldersFromJoin({\n documentWhere,\n folderWhere,\n parentFolderID,\n req,\n })\n const [breadcrumbs, result] = await Promise.all([\n breadcrumbsPromise,\n documentAndSubfolderPromise,\n ])\n\n return {\n breadcrumbs,\n documents: sortDocs({ docs: result.documents, sort }),\n folderAssignedCollections: result.folderAssignedCollections,\n subfolders: sortDocs({ docs: result.subfolders, sort }),\n }\n } else {\n const subfoldersPromise = getOrphanedDocs({\n collectionSlug: payload.config.folders.slug,\n folderFieldName: payload.config.folders.fieldName,\n req,\n where: folderWhere,\n })\n const [breadcrumbs, subfolders] = await Promise.all([breadcrumbsPromise, subfoldersPromise])\n\n return {\n breadcrumbs,\n documents: [],\n folderAssignedCollections: collectionSlug ? [collectionSlug] : undefined,\n subfolders: sortDocs({ docs: subfolders, sort }),\n }\n }\n}\n\nfunction sortDocs({\n docs,\n sort,\n}: {\n docs: FolderOrDocument[]\n sort?: FolderSortKeys\n}): FolderOrDocument[] {\n if (!sort) {\n return docs\n }\n const isDesc = typeof sort === 'string' && sort.startsWith('-')\n const sortKey = (isDesc ? sort.slice(1) : sort) as FolderSortKeys\n\n return docs.sort((a, b) => {\n let result = 0\n if (sortKey === 'name') {\n result = a.value._folderOrDocumentTitle.localeCompare(b.value._folderOrDocumentTitle)\n } else if (sortKey === 'createdAt') {\n result =\n new Date(a.value.createdAt || '').getTime() - new Date(b.value.createdAt || '').getTime()\n } else if (sortKey === 'updatedAt') {\n result =\n new Date(a.value.updatedAt || '').getTime() - new Date(b.value.updatedAt || '').getTime()\n }\n return isDesc ? -result : result\n })\n}\n"],"names":["parseDocumentID","getFolderBreadcrumbs","queryDocumentsAndFoldersFromJoin","getOrphanedDocs","getFolderData","collectionSlug","documentWhere","folderID","_folderID","folderWhere","req","sort","payload","config","folders","Error","parentFolderID","id","slug","breadcrumbsPromise","documentAndSubfolderPromise","breadcrumbs","result","Promise","all","documents","sortDocs","docs","folderAssignedCollections","subfolders","subfoldersPromise","folderFieldName","fieldName","where","undefined","isDesc","startsWith","sortKey","slice","a","b","value","_folderOrDocumentTitle","localeCompare","Date","createdAt","getTime","updatedAt"],"mappings":"AAIA,SAASA,eAAe,QAAQ,iBAAgB;AAChD,SAASC,oBAAoB,QAAQ,4BAA2B;AAChE,SAASC,gCAAgC,QAAQ,sCAAqC;AACtF,SAASC,eAAe,QAAQ,uBAAsB;AA0BtD;;CAEC,GACD,OAAO,MAAMC,gBAAgB,OAAO,EAClCC,cAAc,EACdC,aAAa,EACbC,UAAUC,SAAS,EACnBC,WAAW,EACXC,GAAG,EACHC,OAAO,MAAM,EACR;IACL,MAAM,EAAEC,OAAO,EAAE,GAAGF;IAEpB,IAAIE,QAAQC,MAAM,CAACC,OAAO,KAAK,OAAO;QACpC,MAAM,IAAIC,MAAM;IAClB;IAEA,MAAMC,iBAAiBhB,gBAAgB;QACrCiB,IAAIT;QACJH,gBAAgBO,QAAQC,MAAM,CAACC,OAAO,CAACI,IAAI;QAC3CN;IACF;IAEA,MAAMO,qBAAqBlB,qBAAqB;QAC9CM,UAAUS;QACVN;IACF;IAEA,IAAIM,gBAAgB;QAClB,gDAAgD;QAChD,MAAMI,8BAA8BlB,iCAAiC;YACnEI;YACAG;YACAO;YACAN;QACF;QACA,MAAM,CAACW,aAAaC,OAAO,GAAG,MAAMC,QAAQC,GAAG,CAAC;YAC9CL;YACAC;SACD;QAED,OAAO;YACLC;YACAI,WAAWC,SAAS;gBAAEC,MAAML,OAAOG,SAAS;gBAAEd;YAAK;YACnDiB,2BAA2BN,OAAOM,yBAAyB;YAC3DC,YAAYH,SAAS;gBAAEC,MAAML,OAAOO,UAAU;gBAAElB;YAAK;QACvD;IACF,OAAO;QACL,MAAMmB,oBAAoB3B,gBAAgB;YACxCE,gBAAgBO,QAAQC,MAAM,CAACC,OAAO,CAACI,IAAI;YAC3Ca,iBAAiBnB,QAAQC,MAAM,CAACC,OAAO,CAACkB,SAAS;YACjDtB;YACAuB,OAAOxB;QACT;QACA,MAAM,CAACY,aAAaQ,WAAW,GAAG,MAAMN,QAAQC,GAAG,CAAC;YAACL;YAAoBW;SAAkB;QAE3F,OAAO;YACLT;YACAI,WAAW,EAAE;YACbG,2BAA2BvB,iBAAiB;gBAACA;aAAe,GAAG6B;YAC/DL,YAAYH,SAAS;gBAAEC,MAAME;gBAAYlB;YAAK;QAChD;IACF;AACF,EAAC;AAED,SAASe,SAAS,EAChBC,IAAI,EACJhB,IAAI,EAIL;IACC,IAAI,CAACA,MAAM;QACT,OAAOgB;IACT;IACA,MAAMQ,SAAS,OAAOxB,SAAS,YAAYA,KAAKyB,UAAU,CAAC;IAC3D,MAAMC,UAAWF,SAASxB,KAAK2B,KAAK,CAAC,KAAK3B;IAE1C,OAAOgB,KAAKhB,IAAI,CAAC,CAAC4B,GAAGC;QACnB,IAAIlB,SAAS;QACb,IAAIe,YAAY,QAAQ;YACtBf,SAASiB,EAAEE,KAAK,CAACC,sBAAsB,CAACC,aAAa,CAACH,EAAEC,KAAK,CAACC,sBAAsB;QACtF,OAAO,IAAIL,YAAY,aAAa;YAClCf,SACE,IAAIsB,KAAKL,EAAEE,KAAK,CAACI,SAAS,IAAI,IAAIC,OAAO,KAAK,IAAIF,KAAKJ,EAAEC,KAAK,CAACI,SAAS,IAAI,IAAIC,OAAO;QAC3F,OAAO,IAAIT,YAAY,aAAa;YAClCf,SACE,IAAIsB,KAAKL,EAAEE,KAAK,CAACM,SAAS,IAAI,IAAID,OAAO,KAAK,IAAIF,KAAKJ,EAAEC,KAAK,CAACM,SAAS,IAAI,IAAID,OAAO;QAC3F;QACA,OAAOX,SAAS,CAACb,SAASA;IAC5B;AACF"}
|
|
@@ -1,24 +0,0 @@
|
|
|
1
|
-
import type { CollectionSlug } from '../../index.js';
|
|
2
|
-
import type { PayloadRequest, Where } from '../../types/index.js';
|
|
3
|
-
import type { FolderOrDocument } from '../types.js';
|
|
4
|
-
type QueryDocumentsAndFoldersResults = {
|
|
5
|
-
documents: FolderOrDocument[];
|
|
6
|
-
folderAssignedCollections: CollectionSlug[];
|
|
7
|
-
subfolders: FolderOrDocument[];
|
|
8
|
-
};
|
|
9
|
-
type QueryDocumentsAndFoldersArgs = {
|
|
10
|
-
/**
|
|
11
|
-
* Optional where clause to filter documents by
|
|
12
|
-
* @default undefined
|
|
13
|
-
*/
|
|
14
|
-
documentWhere?: Where;
|
|
15
|
-
/** Optional where clause to filter subfolders by
|
|
16
|
-
* @default undefined
|
|
17
|
-
*/
|
|
18
|
-
folderWhere?: Where;
|
|
19
|
-
parentFolderID: number | string;
|
|
20
|
-
req: PayloadRequest;
|
|
21
|
-
};
|
|
22
|
-
export declare function queryDocumentsAndFoldersFromJoin({ documentWhere, folderWhere, parentFolderID, req, }: QueryDocumentsAndFoldersArgs): Promise<QueryDocumentsAndFoldersResults>;
|
|
23
|
-
export {};
|
|
24
|
-
//# sourceMappingURL=getFoldersAndDocumentsFromJoin.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getFoldersAndDocumentsFromJoin.d.ts","sourceRoot":"","sources":["../../../src/folders/utils/getFoldersAndDocumentsFromJoin.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,gBAAgB,CAAA;AACpD,OAAO,KAAK,EAAY,cAAc,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAA;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAMnD,KAAK,+BAA+B,GAAG;IACrC,SAAS,EAAE,gBAAgB,EAAE,CAAA;IAC7B,yBAAyB,EAAE,cAAc,EAAE,CAAA;IAC3C,UAAU,EAAE,gBAAgB,EAAE,CAAA;CAC/B,CAAA;AACD,KAAK,4BAA4B,GAAG;IAClC;;;OAGG;IACH,aAAa,CAAC,EAAE,KAAK,CAAA;IACrB;;OAEG;IACH,WAAW,CAAC,EAAE,KAAK,CAAA;IACnB,cAAc,EAAE,MAAM,GAAG,MAAM,CAAA;IAC/B,GAAG,EAAE,cAAc,CAAA;CACpB,CAAA;AACD,wBAAsB,gCAAgC,CAAC,EACrD,aAAa,EACb,WAAW,EACX,cAAc,EACd,GAAG,GACJ,EAAE,4BAA4B,GAAG,OAAO,CAAC,+BAA+B,CAAC,CAmEzE"}
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
import { APIError } from '../../errors/APIError.js';
|
|
2
|
-
import { combineWhereConstraints } from '../../utilities/combineWhereConstraints.js';
|
|
3
|
-
import { formatFolderOrDocumentItem } from './formatFolderOrDocumentItem.js';
|
|
4
|
-
export async function queryDocumentsAndFoldersFromJoin({ documentWhere, folderWhere, parentFolderID, req }) {
|
|
5
|
-
const { payload, user } = req;
|
|
6
|
-
if (payload.config.folders === false) {
|
|
7
|
-
throw new APIError('Folders are not enabled', 500);
|
|
8
|
-
}
|
|
9
|
-
const subfolderDoc = await payload.find({
|
|
10
|
-
collection: payload.config.folders.slug,
|
|
11
|
-
depth: 1,
|
|
12
|
-
joins: {
|
|
13
|
-
documentsAndFolders: {
|
|
14
|
-
limit: 100_000_000,
|
|
15
|
-
sort: 'name',
|
|
16
|
-
where: combineWhereConstraints([
|
|
17
|
-
folderWhere,
|
|
18
|
-
documentWhere
|
|
19
|
-
], 'or')
|
|
20
|
-
}
|
|
21
|
-
},
|
|
22
|
-
limit: 1,
|
|
23
|
-
overrideAccess: false,
|
|
24
|
-
req,
|
|
25
|
-
select: {
|
|
26
|
-
documentsAndFolders: true,
|
|
27
|
-
folderType: true
|
|
28
|
-
},
|
|
29
|
-
user,
|
|
30
|
-
where: {
|
|
31
|
-
id: {
|
|
32
|
-
equals: parentFolderID
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
});
|
|
36
|
-
const childrenDocs = subfolderDoc?.docs[0]?.documentsAndFolders?.docs || [];
|
|
37
|
-
const results = childrenDocs.reduce((acc, doc)=>{
|
|
38
|
-
if (!payload.config.folders) {
|
|
39
|
-
return acc;
|
|
40
|
-
}
|
|
41
|
-
const { relationTo, value } = doc;
|
|
42
|
-
const item = formatFolderOrDocumentItem({
|
|
43
|
-
folderFieldName: payload.config.folders.fieldName,
|
|
44
|
-
isUpload: Boolean(payload.collections[relationTo].config.upload),
|
|
45
|
-
relationTo,
|
|
46
|
-
useAsTitle: payload.collections[relationTo].config.admin?.useAsTitle,
|
|
47
|
-
value
|
|
48
|
-
});
|
|
49
|
-
if (relationTo === payload.config.folders.slug) {
|
|
50
|
-
acc.subfolders.push(item);
|
|
51
|
-
} else {
|
|
52
|
-
acc.documents.push(item);
|
|
53
|
-
}
|
|
54
|
-
return acc;
|
|
55
|
-
}, {
|
|
56
|
-
documents: [],
|
|
57
|
-
subfolders: []
|
|
58
|
-
});
|
|
59
|
-
return {
|
|
60
|
-
documents: results.documents,
|
|
61
|
-
folderAssignedCollections: subfolderDoc?.docs[0]?.folderType || [],
|
|
62
|
-
subfolders: results.subfolders
|
|
63
|
-
};
|
|
64
|
-
}
|
|
65
|
-
|
|
66
|
-
//# sourceMappingURL=getFoldersAndDocumentsFromJoin.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/folders/utils/getFoldersAndDocumentsFromJoin.ts"],"sourcesContent":["import type { PaginatedDocs } from '../../database/types.js'\nimport type { CollectionSlug } from '../../index.js'\nimport type { Document, PayloadRequest, Where } from '../../types/index.js'\nimport type { FolderOrDocument } from '../types.js'\n\nimport { APIError } from '../../errors/APIError.js'\nimport { combineWhereConstraints } from '../../utilities/combineWhereConstraints.js'\nimport { formatFolderOrDocumentItem } from './formatFolderOrDocumentItem.js'\n\ntype QueryDocumentsAndFoldersResults = {\n documents: FolderOrDocument[]\n folderAssignedCollections: CollectionSlug[]\n subfolders: FolderOrDocument[]\n}\ntype QueryDocumentsAndFoldersArgs = {\n /**\n * Optional where clause to filter documents by\n * @default undefined\n */\n documentWhere?: Where\n /** Optional where clause to filter subfolders by\n * @default undefined\n */\n folderWhere?: Where\n parentFolderID: number | string\n req: PayloadRequest\n}\nexport async function queryDocumentsAndFoldersFromJoin({\n documentWhere,\n folderWhere,\n parentFolderID,\n req,\n}: QueryDocumentsAndFoldersArgs): Promise<QueryDocumentsAndFoldersResults> {\n const { payload, user } = req\n\n if (payload.config.folders === false) {\n throw new APIError('Folders are not enabled', 500)\n }\n\n const subfolderDoc = (await payload.find({\n collection: payload.config.folders.slug,\n depth: 1,\n joins: {\n documentsAndFolders: {\n limit: 100_000_000,\n sort: 'name',\n where: combineWhereConstraints([folderWhere, documentWhere], 'or'),\n },\n },\n limit: 1,\n overrideAccess: false,\n req,\n select: {\n documentsAndFolders: true,\n folderType: true,\n },\n user,\n where: {\n id: {\n equals: parentFolderID,\n },\n },\n })) as PaginatedDocs<Document>\n\n const childrenDocs = subfolderDoc?.docs[0]?.documentsAndFolders?.docs || []\n\n const results: QueryDocumentsAndFoldersResults = childrenDocs.reduce(\n (acc: QueryDocumentsAndFoldersResults, doc: Document) => {\n if (!payload.config.folders) {\n return acc\n }\n const { relationTo, value } = doc\n const item = formatFolderOrDocumentItem({\n folderFieldName: payload.config.folders.fieldName,\n isUpload: Boolean(payload.collections[relationTo]!.config.upload),\n relationTo,\n useAsTitle: payload.collections[relationTo]!.config.admin?.useAsTitle,\n value,\n })\n\n if (relationTo === payload.config.folders.slug) {\n acc.subfolders.push(item)\n } else {\n acc.documents.push(item)\n }\n\n return acc\n },\n {\n documents: [],\n subfolders: [],\n },\n )\n\n return {\n documents: results.documents,\n folderAssignedCollections: subfolderDoc?.docs[0]?.folderType || [],\n subfolders: results.subfolders,\n }\n}\n"],"names":["APIError","combineWhereConstraints","formatFolderOrDocumentItem","queryDocumentsAndFoldersFromJoin","documentWhere","folderWhere","parentFolderID","req","payload","user","config","folders","subfolderDoc","find","collection","slug","depth","joins","documentsAndFolders","limit","sort","where","overrideAccess","select","folderType","id","equals","childrenDocs","docs","results","reduce","acc","doc","relationTo","value","item","folderFieldName","fieldName","isUpload","Boolean","collections","upload","useAsTitle","admin","subfolders","push","documents","folderAssignedCollections"],"mappings":"AAKA,SAASA,QAAQ,QAAQ,2BAA0B;AACnD,SAASC,uBAAuB,QAAQ,6CAA4C;AACpF,SAASC,0BAA0B,QAAQ,kCAAiC;AAoB5E,OAAO,eAAeC,iCAAiC,EACrDC,aAAa,EACbC,WAAW,EACXC,cAAc,EACdC,GAAG,EAC0B;IAC7B,MAAM,EAAEC,OAAO,EAAEC,IAAI,EAAE,GAAGF;IAE1B,IAAIC,QAAQE,MAAM,CAACC,OAAO,KAAK,OAAO;QACpC,MAAM,IAAIX,SAAS,2BAA2B;IAChD;IAEA,MAAMY,eAAgB,MAAMJ,QAAQK,IAAI,CAAC;QACvCC,YAAYN,QAAQE,MAAM,CAACC,OAAO,CAACI,IAAI;QACvCC,OAAO;QACPC,OAAO;YACLC,qBAAqB;gBACnBC,OAAO;gBACPC,MAAM;gBACNC,OAAOpB,wBAAwB;oBAACI;oBAAaD;iBAAc,EAAE;YAC/D;QACF;QACAe,OAAO;QACPG,gBAAgB;QAChBf;QACAgB,QAAQ;YACNL,qBAAqB;YACrBM,YAAY;QACd;QACAf;QACAY,OAAO;YACLI,IAAI;gBACFC,QAAQpB;YACV;QACF;IACF;IAEA,MAAMqB,eAAef,cAAcgB,IAAI,CAAC,EAAE,EAAEV,qBAAqBU,QAAQ,EAAE;IAE3E,MAAMC,UAA2CF,aAAaG,MAAM,CAClE,CAACC,KAAsCC;QACrC,IAAI,CAACxB,QAAQE,MAAM,CAACC,OAAO,EAAE;YAC3B,OAAOoB;QACT;QACA,MAAM,EAAEE,UAAU,EAAEC,KAAK,EAAE,GAAGF;QAC9B,MAAMG,OAAOjC,2BAA2B;YACtCkC,iBAAiB5B,QAAQE,MAAM,CAACC,OAAO,CAAC0B,SAAS;YACjDC,UAAUC,QAAQ/B,QAAQgC,WAAW,CAACP,WAAW,CAAEvB,MAAM,CAAC+B,MAAM;YAChER;YACAS,YAAYlC,QAAQgC,WAAW,CAACP,WAAW,CAAEvB,MAAM,CAACiC,KAAK,EAAED;YAC3DR;QACF;QAEA,IAAID,eAAezB,QAAQE,MAAM,CAACC,OAAO,CAACI,IAAI,EAAE;YAC9CgB,IAAIa,UAAU,CAACC,IAAI,CAACV;QACtB,OAAO;YACLJ,IAAIe,SAAS,CAACD,IAAI,CAACV;QACrB;QAEA,OAAOJ;IACT,GACA;QACEe,WAAW,EAAE;QACbF,YAAY,EAAE;IAChB;IAGF,OAAO;QACLE,WAAWjB,QAAQiB,SAAS;QAC5BC,2BAA2BnC,cAAcgB,IAAI,CAAC,EAAE,EAAEJ,cAAc,EAAE;QAClEoB,YAAYf,QAAQe,UAAU;IAChC;AACF"}
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import type { CollectionSlug, PayloadRequest, Where } from '../../index.js';
|
|
2
|
-
import type { FolderOrDocument } from '../types.js';
|
|
3
|
-
type Args = {
|
|
4
|
-
collectionSlug: CollectionSlug;
|
|
5
|
-
folderFieldName: string;
|
|
6
|
-
req: PayloadRequest;
|
|
7
|
-
/**
|
|
8
|
-
* Optional where clause to filter documents by
|
|
9
|
-
* @default undefined
|
|
10
|
-
*/
|
|
11
|
-
where?: Where;
|
|
12
|
-
};
|
|
13
|
-
export declare function getOrphanedDocs({ collectionSlug, folderFieldName, req, where, }: Args): Promise<FolderOrDocument[]>;
|
|
14
|
-
export {};
|
|
15
|
-
//# sourceMappingURL=getOrphanedDocs.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"getOrphanedDocs.d.ts","sourceRoot":"","sources":["../../../src/folders/utils/getOrphanedDocs.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,cAAc,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAA;AAC3E,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,aAAa,CAAA;AAKnD,KAAK,IAAI,GAAG;IACV,cAAc,EAAE,cAAc,CAAA;IAC9B,eAAe,EAAE,MAAM,CAAA;IACvB,GAAG,EAAE,cAAc,CAAA;IACnB;;;OAGG;IACH,KAAK,CAAC,EAAE,KAAK,CAAA;CACd,CAAA;AACD,wBAAsB,eAAe,CAAC,EACpC,cAAc,EACd,eAAe,EACf,GAAG,EACH,KAAK,GACN,EAAE,IAAI,GAAG,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAwCpC"}
|
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { combineWhereConstraints } from '../../utilities/combineWhereConstraints.js';
|
|
2
|
-
import { formatFolderOrDocumentItem } from './formatFolderOrDocumentItem.js';
|
|
3
|
-
export async function getOrphanedDocs({ collectionSlug, folderFieldName, req, where }) {
|
|
4
|
-
const { payload, user } = req;
|
|
5
|
-
const noParentFolderConstraint = {
|
|
6
|
-
or: [
|
|
7
|
-
{
|
|
8
|
-
[folderFieldName]: {
|
|
9
|
-
exists: false
|
|
10
|
-
}
|
|
11
|
-
},
|
|
12
|
-
{
|
|
13
|
-
[folderFieldName]: {
|
|
14
|
-
equals: null
|
|
15
|
-
}
|
|
16
|
-
}
|
|
17
|
-
]
|
|
18
|
-
};
|
|
19
|
-
const orphanedFolders = await payload.find({
|
|
20
|
-
collection: collectionSlug,
|
|
21
|
-
limit: 0,
|
|
22
|
-
overrideAccess: false,
|
|
23
|
-
req,
|
|
24
|
-
sort: payload.collections[collectionSlug]?.config.admin.useAsTitle,
|
|
25
|
-
user,
|
|
26
|
-
where: where ? combineWhereConstraints([
|
|
27
|
-
noParentFolderConstraint,
|
|
28
|
-
where
|
|
29
|
-
]) : noParentFolderConstraint
|
|
30
|
-
});
|
|
31
|
-
return orphanedFolders?.docs.map((doc)=>formatFolderOrDocumentItem({
|
|
32
|
-
folderFieldName,
|
|
33
|
-
isUpload: Boolean(payload.collections[collectionSlug]?.config.upload),
|
|
34
|
-
relationTo: collectionSlug,
|
|
35
|
-
useAsTitle: payload.collections[collectionSlug]?.config.admin.useAsTitle,
|
|
36
|
-
value: doc
|
|
37
|
-
})) || [];
|
|
38
|
-
}
|
|
39
|
-
|
|
40
|
-
//# sourceMappingURL=getOrphanedDocs.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"sources":["../../../src/folders/utils/getOrphanedDocs.ts"],"sourcesContent":["import type { CollectionSlug, PayloadRequest, Where } from '../../index.js'\nimport type { FolderOrDocument } from '../types.js'\n\nimport { combineWhereConstraints } from '../../utilities/combineWhereConstraints.js'\nimport { formatFolderOrDocumentItem } from './formatFolderOrDocumentItem.js'\n\ntype Args = {\n collectionSlug: CollectionSlug\n folderFieldName: string\n req: PayloadRequest\n /**\n * Optional where clause to filter documents by\n * @default undefined\n */\n where?: Where\n}\nexport async function getOrphanedDocs({\n collectionSlug,\n folderFieldName,\n req,\n where,\n}: Args): Promise<FolderOrDocument[]> {\n const { payload, user } = req\n const noParentFolderConstraint: Where = {\n or: [\n {\n [folderFieldName]: {\n exists: false,\n },\n },\n {\n [folderFieldName]: {\n equals: null,\n },\n },\n ],\n }\n\n const orphanedFolders = await payload.find({\n collection: collectionSlug,\n limit: 0,\n overrideAccess: false,\n req,\n sort: payload.collections[collectionSlug]?.config.admin.useAsTitle,\n user,\n where: where\n ? combineWhereConstraints([noParentFolderConstraint, where])\n : noParentFolderConstraint,\n })\n\n return (\n orphanedFolders?.docs.map((doc) =>\n formatFolderOrDocumentItem({\n folderFieldName,\n isUpload: Boolean(payload.collections[collectionSlug]?.config.upload),\n relationTo: collectionSlug,\n useAsTitle: payload.collections[collectionSlug]?.config.admin.useAsTitle,\n value: doc,\n }),\n ) || []\n )\n}\n"],"names":["combineWhereConstraints","formatFolderOrDocumentItem","getOrphanedDocs","collectionSlug","folderFieldName","req","where","payload","user","noParentFolderConstraint","or","exists","equals","orphanedFolders","find","collection","limit","overrideAccess","sort","collections","config","admin","useAsTitle","docs","map","doc","isUpload","Boolean","upload","relationTo","value"],"mappings":"AAGA,SAASA,uBAAuB,QAAQ,6CAA4C;AACpF,SAASC,0BAA0B,QAAQ,kCAAiC;AAY5E,OAAO,eAAeC,gBAAgB,EACpCC,cAAc,EACdC,eAAe,EACfC,GAAG,EACHC,KAAK,EACA;IACL,MAAM,EAAEC,OAAO,EAAEC,IAAI,EAAE,GAAGH;IAC1B,MAAMI,2BAAkC;QACtCC,IAAI;YACF;gBACE,CAACN,gBAAgB,EAAE;oBACjBO,QAAQ;gBACV;YACF;YACA;gBACE,CAACP,gBAAgB,EAAE;oBACjBQ,QAAQ;gBACV;YACF;SACD;IACH;IAEA,MAAMC,kBAAkB,MAAMN,QAAQO,IAAI,CAAC;QACzCC,YAAYZ;QACZa,OAAO;QACPC,gBAAgB;QAChBZ;QACAa,MAAMX,QAAQY,WAAW,CAAChB,eAAe,EAAEiB,OAAOC,MAAMC;QACxDd;QACAF,OAAOA,QACHN,wBAAwB;YAACS;YAA0BH;SAAM,IACzDG;IACN;IAEA,OACEI,iBAAiBU,KAAKC,IAAI,CAACC,MACzBxB,2BAA2B;YACzBG;YACAsB,UAAUC,QAAQpB,QAAQY,WAAW,CAAChB,eAAe,EAAEiB,OAAOQ;YAC9DC,YAAY1B;YACZmB,YAAYf,QAAQY,WAAW,CAAChB,eAAe,EAAEiB,OAAOC,MAAMC;YAC9DQ,OAAOL;QACT,OACG,EAAE;AAEX"}
|