@webiny/api-aco 0.0.0-unstable.aa00eecd97 → 0.0.0-unstable.ac6ebf63c6
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 +6 -28
- package/constants.d.ts +2 -0
- package/constants.js +4 -0
- package/constants.js.map +1 -0
- package/createAcoContext.d.ts +8 -2
- package/createAcoContext.js +128 -50
- package/createAcoContext.js.map +1 -1
- package/createAcoGraphQL.d.ts +3 -2
- package/createAcoGraphQL.js +48 -29
- package/createAcoGraphQL.js.map +1 -1
- package/createAcoStorageOperations.d.ts +8 -6
- package/createAcoStorageOperations.js +9 -18
- package/createAcoStorageOperations.js.map +1 -1
- package/createAcoTasks.d.ts +1 -0
- package/createAcoTasks.js +15 -0
- package/createAcoTasks.js.map +1 -0
- package/domain/folder/abstractions.d.ts +9 -0
- package/domain/folder/abstractions.js +8 -0
- package/domain/folder/abstractions.js.map +1 -0
- package/domain/folder/errors.d.ts +29 -0
- package/domain/folder/errors.js +56 -0
- package/domain/folder/errors.js.map +1 -0
- package/domain/folder/folder.model.d.ts +9 -0
- package/domain/folder/folder.model.js +42 -0
- package/domain/folder/folder.model.js.map +1 -0
- package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.d.ts +13 -0
- package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js +43 -0
- package/features/cms/decorators/CreateEntryRevisionFromWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/CreateEntryWithFlpDecorator.d.ts +12 -0
- package/features/cms/decorators/CreateEntryWithFlpDecorator.js +36 -0
- package/features/cms/decorators/CreateEntryWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.d.ts +13 -0
- package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js +43 -0
- package/features/cms/decorators/DeleteEntryRevisionWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/DeleteEntryWithFlpDecorator.d.ts +13 -0
- package/features/cms/decorators/DeleteEntryWithFlpDecorator.js +45 -0
- package/features/cms/decorators/DeleteEntryWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/GetEntryByIdWithFlpDecorator.d.ts +12 -0
- package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js +41 -0
- package/features/cms/decorators/GetEntryByIdWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/GetEntryWithFlpDecorator.d.ts +12 -0
- package/features/cms/decorators/GetEntryWithFlpDecorator.js +41 -0
- package/features/cms/decorators/GetEntryWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.d.ts +13 -0
- package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js +45 -0
- package/features/cms/decorators/GetLatestEntriesByIdsWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.d.ts +13 -0
- package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js +44 -0
- package/features/cms/decorators/GetPublishedEntriesByIdsWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.d.ts +11 -0
- package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js +36 -0
- package/features/cms/decorators/ListDeletedEntriesWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/ListEntriesWithFlpDecorator.d.ts +11 -0
- package/features/cms/decorators/ListEntriesWithFlpDecorator.js +35 -0
- package/features/cms/decorators/ListEntriesWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.d.ts +11 -0
- package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js +36 -0
- package/features/cms/decorators/ListLatestEntriesWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.d.ts +11 -0
- package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js +36 -0
- package/features/cms/decorators/ListPublishedEntriesWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/MoveEntryWithFlpDecorator.d.ts +15 -0
- package/features/cms/decorators/MoveEntryWithFlpDecorator.js +63 -0
- package/features/cms/decorators/MoveEntryWithFlpDecorator.js.map +1 -0
- package/features/cms/decorators/UpdateEntryWithFlpDecorator.d.ts +15 -0
- package/features/cms/decorators/UpdateEntryWithFlpDecorator.js +43 -0
- package/features/cms/decorators/UpdateEntryWithFlpDecorator.js.map +1 -0
- package/features/cms/feature.d.ts +1 -0
- package/features/cms/feature.js +43 -0
- package/features/cms/feature.js.map +1 -0
- package/features/cms/index.d.ts +1 -0
- package/features/cms/index.js +3 -0
- package/features/cms/index.js.map +1 -0
- package/features/flp/CreateFlp/CreateFlpUseCase.d.ts +8 -0
- package/features/flp/CreateFlp/CreateFlpUseCase.js +41 -0
- package/features/flp/CreateFlp/CreateFlpUseCase.js.map +1 -0
- package/features/flp/CreateFlp/abstractions.d.ts +8 -0
- package/features/flp/CreateFlp/abstractions.js +7 -0
- package/features/flp/CreateFlp/abstractions.js.map +1 -0
- package/features/flp/CreateFlp/feature.d.ts +6 -0
- package/features/flp/CreateFlp/feature.js +13 -0
- package/features/flp/CreateFlp/feature.js.map +1 -0
- package/features/flp/CreateFlp/index.d.ts +2 -0
- package/features/flp/CreateFlp/index.js +4 -0
- package/features/flp/CreateFlp/index.js.map +1 -0
- package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.d.ts +14 -0
- package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js +37 -0
- package/features/flp/CreateFlpOnFolderCreated/CreateFlpOnFolderCreatedHandler.js.map +1 -0
- package/features/flp/CreateFlpOnFolderCreated/feature.d.ts +1 -0
- package/features/flp/CreateFlpOnFolderCreated/feature.js +10 -0
- package/features/flp/CreateFlpOnFolderCreated/feature.js.map +1 -0
- package/features/flp/CreateFlpOnFolderCreated/index.d.ts +1 -0
- package/features/flp/CreateFlpOnFolderCreated/index.js +3 -0
- package/features/flp/CreateFlpOnFolderCreated/index.js.map +1 -0
- package/features/flp/DeleteFlp/DeleteFlpUseCase.d.ts +8 -0
- package/features/flp/DeleteFlp/DeleteFlpUseCase.js +23 -0
- package/features/flp/DeleteFlp/DeleteFlpUseCase.js.map +1 -0
- package/features/flp/DeleteFlp/abstractions.d.ts +8 -0
- package/features/flp/DeleteFlp/abstractions.js +7 -0
- package/features/flp/DeleteFlp/abstractions.js.map +1 -0
- package/features/flp/DeleteFlp/feature.d.ts +6 -0
- package/features/flp/DeleteFlp/feature.js +13 -0
- package/features/flp/DeleteFlp/feature.js.map +1 -0
- package/features/flp/DeleteFlp/index.d.ts +2 -0
- package/features/flp/DeleteFlp/index.js +4 -0
- package/features/flp/DeleteFlp/index.js.map +1 -0
- package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.d.ts +14 -0
- package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js +37 -0
- package/features/flp/DeleteFlpOnFolderDeleted/DeleteFlpOnFolderDeletedHandler.js.map +1 -0
- package/features/flp/DeleteFlpOnFolderDeleted/feature.d.ts +1 -0
- package/features/flp/DeleteFlpOnFolderDeleted/feature.js +10 -0
- package/features/flp/DeleteFlpOnFolderDeleted/feature.js.map +1 -0
- package/features/flp/DeleteFlpOnFolderDeleted/index.d.ts +1 -0
- package/features/flp/DeleteFlpOnFolderDeleted/index.js +3 -0
- package/features/flp/DeleteFlpOnFolderDeleted/index.js.map +1 -0
- package/features/flp/FolderLevelPermissions/FolderLevelPermissions.d.ts +35 -0
- package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js +133 -0
- package/features/flp/FolderLevelPermissions/FolderLevelPermissions.js.map +1 -0
- package/features/flp/FolderLevelPermissions/abstractions.d.ts +25 -0
- package/features/flp/FolderLevelPermissions/abstractions.js +4 -0
- package/features/flp/FolderLevelPermissions/abstractions.js.map +1 -0
- package/features/flp/FolderLevelPermissions/feature.d.ts +1 -0
- package/features/flp/FolderLevelPermissions/feature.js +10 -0
- package/features/flp/FolderLevelPermissions/feature.js.map +1 -0
- package/features/flp/FolderLevelPermissions/index.d.ts +2 -0
- package/features/flp/FolderLevelPermissions/index.js +4 -0
- package/features/flp/FolderLevelPermissions/index.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.d.ts +7 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js +41 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/CanAccessFolder.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.d.ts +9 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/ICanAccessFolder.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.d.ts +2 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolder/index.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.d.ts +7 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js +34 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/CanAccessFolderContent.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.d.ts +8 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/ICanAccessFolderContent.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.d.ts +2 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CanAccessFolderContent/index.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.d.ts +4 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js +7 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/CanCreateFolderInRoot.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.d.ts +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/ICanCreateFolderInRoot.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.d.ts +2 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CanCreateFolderInRoot/index.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.d.ts +5 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js +7 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/CheckNotInheritedPermissions.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.d.ts +4 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/ICheckNotInheritedPermissions.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.d.ts +2 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/CheckNotInheritedPermissions/index.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.d.ts +5 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js +70 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/DefaultPermissionsMerger.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.d.ts +8 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js +13 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissions.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.d.ts +11 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js +38 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/GetDefaultPermissionsWithTeams.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.d.ts +4 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js +3 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/IGetDefaultPermissions.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.d.ts +3 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js +4 -0
- package/features/flp/FolderLevelPermissions/useCases/GetDefaultPermissions/index.js.map +1 -0
- package/features/flp/FolderLevelPermissions/useCases/index.d.ts +5 -0
- package/features/flp/FolderLevelPermissions/useCases/index.js +7 -0
- package/features/flp/FolderLevelPermissions/useCases/index.js.map +1 -0
- package/features/flp/GetFlp/GetFlpUseCase.d.ts +7 -0
- package/features/flp/GetFlp/GetFlpUseCase.js +10 -0
- package/features/flp/GetFlp/GetFlpUseCase.js.map +1 -0
- package/features/flp/GetFlp/abstractions.d.ts +8 -0
- package/features/flp/GetFlp/abstractions.js +4 -0
- package/features/flp/GetFlp/abstractions.js.map +1 -0
- package/features/flp/GetFlp/feature.d.ts +1 -0
- package/features/flp/GetFlp/feature.js +13 -0
- package/features/flp/GetFlp/feature.js.map +1 -0
- package/features/flp/GetFlp/index.d.ts +1 -0
- package/features/flp/GetFlp/index.js +3 -0
- package/features/flp/GetFlp/index.js.map +1 -0
- package/features/flp/ListFlps/ListFlpsUseCase.d.ts +7 -0
- package/features/flp/ListFlps/ListFlpsUseCase.js +10 -0
- package/features/flp/ListFlps/ListFlpsUseCase.js.map +1 -0
- package/features/flp/ListFlps/abstractions.d.ts +16 -0
- package/features/flp/ListFlps/abstractions.js +4 -0
- package/features/flp/ListFlps/abstractions.js.map +1 -0
- package/features/flp/ListFlps/feature.d.ts +1 -0
- package/features/flp/ListFlps/feature.js +13 -0
- package/features/flp/ListFlps/feature.js.map +1 -0
- package/features/flp/ListFlps/index.d.ts +1 -0
- package/features/flp/ListFlps/index.js +3 -0
- package/features/flp/ListFlps/index.js.map +1 -0
- package/features/flp/UpdateFlp/UpdateFlpUseCase.d.ts +19 -0
- package/features/flp/UpdateFlp/UpdateFlpUseCase.js +203 -0
- package/features/flp/UpdateFlp/UpdateFlpUseCase.js.map +1 -0
- package/features/flp/UpdateFlp/abstractions.d.ts +14 -0
- package/features/flp/UpdateFlp/abstractions.js +7 -0
- package/features/flp/UpdateFlp/abstractions.js.map +1 -0
- package/features/flp/UpdateFlp/feature.d.ts +6 -0
- package/features/flp/UpdateFlp/feature.js +13 -0
- package/features/flp/UpdateFlp/feature.js.map +1 -0
- package/features/flp/UpdateFlp/index.d.ts +2 -0
- package/features/flp/UpdateFlp/index.js +4 -0
- package/features/flp/UpdateFlp/index.js.map +1 -0
- package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.d.ts +14 -0
- package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js +39 -0
- package/features/flp/UpdateFlpOnFolderUpdated/UpdateFlpOnFolderUpdatedHandler.js.map +1 -0
- package/features/flp/UpdateFlpOnFolderUpdated/feature.d.ts +1 -0
- package/features/flp/UpdateFlpOnFolderUpdated/feature.js +10 -0
- package/features/flp/UpdateFlpOnFolderUpdated/feature.js.map +1 -0
- package/features/flp/UpdateFlpOnFolderUpdated/index.d.ts +1 -0
- package/features/flp/UpdateFlpOnFolderUpdated/index.js +3 -0
- package/features/flp/UpdateFlpOnFolderUpdated/index.js.map +1 -0
- package/features/folder/CreateFolder/CreateFolderRepository.d.ts +21 -0
- package/features/folder/CreateFolder/CreateFolderRepository.js +108 -0
- package/features/folder/CreateFolder/CreateFolderRepository.js.map +1 -0
- package/features/folder/CreateFolder/CreateFolderUseCase.d.ts +12 -0
- package/features/folder/CreateFolder/CreateFolderUseCase.js +39 -0
- package/features/folder/CreateFolder/CreateFolderUseCase.js.map +1 -0
- package/features/folder/CreateFolder/abstractions.d.ts +55 -0
- package/features/folder/CreateFolder/abstractions.js +21 -0
- package/features/folder/CreateFolder/abstractions.js.map +1 -0
- package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.d.ts +11 -0
- package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js +44 -0
- package/features/folder/CreateFolder/decorators/CreateFolderWithFolderLevelPermissions.js.map +1 -0
- package/features/folder/CreateFolder/events.d.ts +10 -0
- package/features/folder/CreateFolder/events.js +19 -0
- package/features/folder/CreateFolder/events.js.map +1 -0
- package/features/folder/CreateFolder/feature.d.ts +1 -0
- package/features/folder/CreateFolder/feature.js +14 -0
- package/features/folder/CreateFolder/feature.js.map +1 -0
- package/features/folder/CreateFolder/index.d.ts +2 -0
- package/features/folder/CreateFolder/index.js +4 -0
- package/features/folder/CreateFolder/index.js.map +1 -0
- package/features/folder/DeleteFolder/DeleteFolderRepository.d.ts +15 -0
- package/features/folder/DeleteFolder/DeleteFolderRepository.js +30 -0
- package/features/folder/DeleteFolder/DeleteFolderRepository.js.map +1 -0
- package/features/folder/DeleteFolder/DeleteFolderUseCase.d.ts +13 -0
- package/features/folder/DeleteFolder/DeleteFolderUseCase.js +55 -0
- package/features/folder/DeleteFolder/DeleteFolderUseCase.js.map +1 -0
- package/features/folder/DeleteFolder/abstractions.d.ts +55 -0
- package/features/folder/DeleteFolder/abstractions.js +21 -0
- package/features/folder/DeleteFolder/abstractions.js.map +1 -0
- package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.d.ts +11 -0
- package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js +28 -0
- package/features/folder/DeleteFolder/decorators/DeleteFolderWithFolderLevelPermissions.js.map +1 -0
- package/features/folder/DeleteFolder/events.d.ts +10 -0
- package/features/folder/DeleteFolder/events.js +19 -0
- package/features/folder/DeleteFolder/events.js.map +1 -0
- package/features/folder/DeleteFolder/feature.d.ts +1 -0
- package/features/folder/DeleteFolder/feature.js +14 -0
- package/features/folder/DeleteFolder/feature.js.map +1 -0
- package/features/folder/DeleteFolder/index.d.ts +2 -0
- package/features/folder/DeleteFolder/index.js +4 -0
- package/features/folder/DeleteFolder/index.js.map +1 -0
- package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.d.ts +15 -0
- package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js +56 -0
- package/features/folder/EnsureFolderIsEmpty/EnsureFolderIsEmpty.js.map +1 -0
- package/features/folder/EnsureFolderIsEmpty/abstractions.d.ts +20 -0
- package/features/folder/EnsureFolderIsEmpty/abstractions.js +4 -0
- package/features/folder/EnsureFolderIsEmpty/abstractions.js.map +1 -0
- package/features/folder/EnsureFolderIsEmpty/feature.d.ts +1 -0
- package/features/folder/EnsureFolderIsEmpty/feature.js +10 -0
- package/features/folder/EnsureFolderIsEmpty/feature.js.map +1 -0
- package/features/folder/EnsureFolderIsEmpty/index.d.ts +1 -0
- package/features/folder/EnsureFolderIsEmpty/index.js +3 -0
- package/features/folder/EnsureFolderIsEmpty/index.js.map +1 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.d.ts +12 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js +29 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/GenericFolderBeforeDeleteHandler.js.map +1 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/feature.d.ts +7 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js +17 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/feature.js.map +1 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/index.d.ts +1 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/index.js +3 -0
- package/features/folder/EnsureFolderIsEmptyOnDelete/index.js.map +1 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.d.ts +16 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js +56 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/ModelFolderBeforeDeleteHandler.js.map +1 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.d.ts +1 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js +10 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/feature.js.map +1 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.d.ts +1 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js +3 -0
- package/features/folder/EnsureHcmsFolderIsEmptyOnDelete/index.js.map +1 -0
- package/features/folder/GetAncestors/GetAncestorsRepository.d.ts +15 -0
- package/features/folder/GetAncestors/GetAncestorsRepository.js +88 -0
- package/features/folder/GetAncestors/GetAncestorsRepository.js.map +1 -0
- package/features/folder/GetAncestors/GetAncestorsUseCase.d.ts +10 -0
- package/features/folder/GetAncestors/GetAncestorsUseCase.js +17 -0
- package/features/folder/GetAncestors/GetAncestorsUseCase.js.map +1 -0
- package/features/folder/GetAncestors/abstractions.d.ts +38 -0
- package/features/folder/GetAncestors/abstractions.js +15 -0
- package/features/folder/GetAncestors/abstractions.js.map +1 -0
- package/features/folder/GetAncestors/feature.d.ts +1 -0
- package/features/folder/GetAncestors/feature.js +12 -0
- package/features/folder/GetAncestors/feature.js.map +1 -0
- package/features/folder/GetAncestors/index.d.ts +2 -0
- package/features/folder/GetAncestors/index.js +4 -0
- package/features/folder/GetAncestors/index.js.map +1 -0
- package/features/folder/GetFolder/GetFolderRepository.d.ts +15 -0
- package/features/folder/GetFolder/GetFolderRepository.js +31 -0
- package/features/folder/GetFolder/GetFolderRepository.js.map +1 -0
- package/features/folder/GetFolder/GetFolderUseCase.d.ts +10 -0
- package/features/folder/GetFolder/GetFolderUseCase.js +17 -0
- package/features/folder/GetFolder/GetFolderUseCase.js.map +1 -0
- package/features/folder/GetFolder/abstractions.d.ts +54 -0
- package/features/folder/GetFolder/abstractions.js +21 -0
- package/features/folder/GetFolder/abstractions.js.map +1 -0
- package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.d.ts +29 -0
- package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js +37 -0
- package/features/folder/GetFolder/decorators/GetFolderWithFolderLevelPermissions.js.map +1 -0
- package/features/folder/GetFolder/feature.d.ts +1 -0
- package/features/folder/GetFolder/feature.js +14 -0
- package/features/folder/GetFolder/feature.js.map +1 -0
- package/features/folder/GetFolder/index.d.ts +2 -0
- package/features/folder/GetFolder/index.js +4 -0
- package/features/folder/GetFolder/index.js.map +1 -0
- package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.d.ts +18 -0
- package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js +103 -0
- package/features/folder/GetFolderHierarchy/GetFolderHierarchyRepository.js.map +1 -0
- package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.d.ts +10 -0
- package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js +17 -0
- package/features/folder/GetFolderHierarchy/GetFolderHierarchyUseCase.js.map +1 -0
- package/features/folder/GetFolderHierarchy/abstractions.d.ts +36 -0
- package/features/folder/GetFolderHierarchy/abstractions.js +15 -0
- package/features/folder/GetFolderHierarchy/abstractions.js.map +1 -0
- package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.d.ts +16 -0
- package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js +64 -0
- package/features/folder/GetFolderHierarchy/decorators/GetFolderHierarchyWithFolderLevelPermissions.js.map +1 -0
- package/features/folder/GetFolderHierarchy/feature.d.ts +1 -0
- package/features/folder/GetFolderHierarchy/feature.js +14 -0
- package/features/folder/GetFolderHierarchy/feature.js.map +1 -0
- package/features/folder/GetFolderHierarchy/index.d.ts +2 -0
- package/features/folder/GetFolderHierarchy/index.js +4 -0
- package/features/folder/GetFolderHierarchy/index.js.map +1 -0
- package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.d.ts +13 -0
- package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js +68 -0
- package/features/folder/ListFolderLevelPermissionsTargets/ListFolderLevelPermissionsTargetsUseCase.js.map +1 -0
- package/features/folder/ListFolderLevelPermissionsTargets/abstractions.d.ts +10 -0
- package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js +7 -0
- package/features/folder/ListFolderLevelPermissionsTargets/abstractions.js.map +1 -0
- package/features/folder/ListFolderLevelPermissionsTargets/feature.d.ts +1 -0
- package/features/folder/ListFolderLevelPermissionsTargets/feature.js +10 -0
- package/features/folder/ListFolderLevelPermissionsTargets/feature.js.map +1 -0
- package/features/folder/ListFolderLevelPermissionsTargets/index.d.ts +1 -0
- package/features/folder/ListFolderLevelPermissionsTargets/index.js +3 -0
- package/features/folder/ListFolderLevelPermissionsTargets/index.js.map +1 -0
- package/features/folder/ListFolders/ListFoldersRepository.d.ts +17 -0
- package/features/folder/ListFolders/ListFoldersRepository.js +54 -0
- package/features/folder/ListFolders/ListFoldersRepository.js.map +1 -0
- package/features/folder/ListFolders/ListFoldersUseCase.d.ts +9 -0
- package/features/folder/ListFolders/ListFoldersUseCase.js +17 -0
- package/features/folder/ListFolders/ListFoldersUseCase.js.map +1 -0
- package/features/folder/ListFolders/abstractions.d.ts +42 -0
- package/features/folder/ListFolders/abstractions.js +15 -0
- package/features/folder/ListFolders/abstractions.js.map +1 -0
- package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.d.ts +17 -0
- package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js +77 -0
- package/features/folder/ListFolders/decorators/ListFoldersWithFolderLevelPermissions.js.map +1 -0
- package/features/folder/ListFolders/feature.d.ts +1 -0
- package/features/folder/ListFolders/feature.js +14 -0
- package/features/folder/ListFolders/feature.js.map +1 -0
- package/features/folder/ListFolders/index.d.ts +2 -0
- package/features/folder/ListFolders/index.js +4 -0
- package/features/folder/ListFolders/index.js.map +1 -0
- package/features/folder/UpdateFolder/UpdateFolderRepository.d.ts +21 -0
- package/features/folder/UpdateFolder/UpdateFolderRepository.js +110 -0
- package/features/folder/UpdateFolder/UpdateFolderRepository.js.map +1 -0
- package/features/folder/UpdateFolder/UpdateFolderUseCase.d.ts +14 -0
- package/features/folder/UpdateFolder/UpdateFolderUseCase.js +55 -0
- package/features/folder/UpdateFolder/UpdateFolderUseCase.js.map +1 -0
- package/features/folder/UpdateFolder/abstractions.d.ts +60 -0
- package/features/folder/UpdateFolder/abstractions.js +21 -0
- package/features/folder/UpdateFolder/abstractions.js.map +1 -0
- package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.d.ts +13 -0
- package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js +77 -0
- package/features/folder/UpdateFolder/decorators/UpdateFolderWithFolderLevelPermissions.js.map +1 -0
- package/features/folder/UpdateFolder/events.d.ts +10 -0
- package/features/folder/UpdateFolder/events.js +19 -0
- package/features/folder/UpdateFolder/events.js.map +1 -0
- package/features/folder/UpdateFolder/feature.d.ts +1 -0
- package/features/folder/UpdateFolder/feature.js +14 -0
- package/features/folder/UpdateFolder/feature.js.map +1 -0
- package/features/folder/UpdateFolder/index.d.ts +2 -0
- package/features/folder/UpdateFolder/index.js +4 -0
- package/features/folder/UpdateFolder/index.js.map +1 -0
- package/features/folder/shared/EntryToFolderMapper.d.ts +5 -0
- package/features/folder/shared/EntryToFolderMapper.js +22 -0
- package/features/folder/shared/EntryToFolderMapper.js.map +1 -0
- package/features/folder/shared/abstractions.d.ts +5 -0
- package/features/folder/shared/abstractions.js +4 -0
- package/features/folder/shared/abstractions.js.map +1 -0
- package/filter/filter.crud.d.ts +3 -0
- package/filter/filter.crud.js +33 -0
- package/filter/filter.crud.js.map +1 -0
- package/filter/filter.gql.d.ts +3 -0
- package/filter/filter.gql.js +146 -0
- package/filter/filter.gql.js.map +1 -0
- package/filter/filter.model.d.ts +9 -0
- package/filter/filter.model.js +41 -0
- package/filter/filter.model.js.map +1 -0
- package/filter/filter.so.d.ts +3 -0
- package/filter/filter.so.js +104 -0
- package/filter/filter.so.js.map +1 -0
- package/filter/filter.types.d.ts +67 -0
- package/filter/filter.types.js +7 -0
- package/filter/filter.types.js.map +1 -0
- package/flp/flp.crud.d.ts +7 -0
- package/flp/flp.crud.js +91 -0
- package/flp/flp.crud.js.map +1 -0
- package/flp/flp.so.d.ts +20 -0
- package/flp/flp.so.js +220 -0
- package/flp/flp.so.js.map +1 -0
- package/flp/flp.types.d.ts +93 -0
- package/flp/flp.types.js +3 -0
- package/flp/flp.types.js.map +1 -0
- package/flp/index.d.ts +3 -0
- package/flp/index.js +5 -0
- package/flp/index.js.map +1 -0
- package/flp/tasks/createFlp.task.d.ts +16 -0
- package/flp/tasks/createFlp.task.js +35 -0
- package/flp/tasks/createFlp.task.js.map +1 -0
- package/flp/tasks/deleteFlp.task.d.ts +16 -0
- package/flp/tasks/deleteFlp.task.js +35 -0
- package/flp/tasks/deleteFlp.task.js.map +1 -0
- package/flp/tasks/index.d.ts +5 -0
- package/flp/tasks/index.js +19 -0
- package/flp/tasks/index.js.map +1 -0
- package/flp/tasks/syncFlp.task.d.ts +20 -0
- package/flp/tasks/syncFlp.task.js +127 -0
- package/flp/tasks/syncFlp.task.js.map +1 -0
- package/flp/tasks/updateFlp.task.d.ts +16 -0
- package/flp/tasks/updateFlp.task.js +40 -0
- package/flp/tasks/updateFlp.task.js.map +1 -0
- package/folder/createFolderModelModifier.d.ts +36 -0
- package/folder/createFolderModelModifier.js +61 -0
- package/folder/createFolderModelModifier.js.map +1 -0
- package/folder/createFolderTypeDefs.d.ts +7 -0
- package/folder/createFolderTypeDefs.js +186 -0
- package/folder/createFolderTypeDefs.js.map +1 -0
- package/folder/folder.gql.d.ts +4 -3
- package/folder/folder.gql.js +146 -112
- package/folder/folder.gql.js.map +1 -1
- package/folder/folder.types.d.ts +51 -58
- package/folder/folder.types.js +2 -4
- package/folder/folder.types.js.map +1 -1
- package/index.d.ts +8 -3
- package/index.js +9 -27
- package/index.js.map +1 -1
- package/package.json +43 -35
- package/types.d.ts +27 -22
- package/types.js +6 -37
- package/types.js.map +1 -1
- package/utils/FoldersCacheFactory.d.ts +10 -0
- package/utils/FoldersCacheFactory.js +24 -0
- package/utils/FoldersCacheFactory.js.map +1 -0
- package/utils/ListCache.d.ts +23 -0
- package/utils/ListCache.js +23 -0
- package/utils/ListCache.js.map +1 -0
- package/utils/Path.d.ts +3 -0
- package/utils/Path.js +11 -0
- package/utils/Path.js.map +1 -0
- package/utils/acoRecordId.js +4 -10
- package/utils/acoRecordId.js.map +1 -1
- package/utils/compress.d.ts +4 -0
- package/utils/compress.js +12 -0
- package/utils/compress.js.map +1 -0
- package/utils/createListSort.d.ts +3 -2
- package/utils/createListSort.js +6 -9
- package/utils/createListSort.js.map +1 -1
- package/utils/createOperationsWrapper.d.ts +2 -2
- package/utils/createOperationsWrapper.js +11 -18
- package/utils/createOperationsWrapper.js.map +1 -1
- package/utils/decorators/CmsEntriesCrudDecorators.d.ts +11 -0
- package/utils/decorators/CmsEntriesCrudDecorators.js +206 -0
- package/utils/decorators/CmsEntriesCrudDecorators.js.map +1 -0
- package/utils/decorators/FilterEntriesByFolderFactory.d.ts +7 -0
- package/utils/decorators/FilterEntriesByFolderFactory.js +23 -0
- package/utils/decorators/FilterEntriesByFolderFactory.js.map +1 -0
- package/utils/decorators/ListEntriesFactory.d.ts +17 -0
- package/utils/decorators/ListEntriesFactory.js +106 -0
- package/utils/decorators/ListEntriesFactory.js.map +1 -0
- package/utils/decorators/hasRootFolderId.d.ts +7 -0
- package/utils/decorators/hasRootFolderId.js +19 -0
- package/utils/decorators/hasRootFolderId.js.map +1 -0
- package/utils/decorators/isPageModel.d.ts +5 -0
- package/utils/decorators/isPageModel.js +13 -0
- package/utils/decorators/isPageModel.js.map +1 -0
- package/utils/ensureAuthentication.d.ts +2 -0
- package/utils/ensureAuthentication.js +12 -0
- package/utils/ensureAuthentication.js.map +1 -0
- package/utils/pickEntryFieldValues.d.ts +3 -0
- package/utils/pickEntryFieldValues.js +23 -0
- package/utils/pickEntryFieldValues.js.map +1 -0
- package/utils/resolve.d.ts +1 -1
- package/utils/resolve.js +6 -11
- package/utils/resolve.js.map +1 -1
- package/createAcoCrud.d.ts +0 -2
- package/createAcoCrud.js +0 -17
- package/createAcoCrud.js.map +0 -1
- package/createAcoFields.d.ts +0 -2
- package/createAcoFields.js +0 -40
- package/createAcoFields.js.map +0 -1
- package/createAcoHooks.d.ts +0 -2
- package/createAcoHooks.js +0 -11
- package/createAcoHooks.js.map +0 -1
- package/createAcoModels.d.ts +0 -2
- package/createAcoModels.js +0 -57
- package/createAcoModels.js.map +0 -1
- package/folder/folder.crud.d.ts +0 -3
- package/folder/folder.crud.js +0 -92
- package/folder/folder.crud.js.map +0 -1
- package/folder/folder.model.d.ts +0 -4
- package/folder/folder.model.js +0 -75
- package/folder/folder.model.js.map +0 -1
- package/folder/folder.so.d.ts +0 -3
- package/folder/folder.so.js +0 -151
- package/folder/folder.so.js.map +0 -1
- package/folder/onFolderBeforeDelete.hook.d.ts +0 -2
- package/folder/onFolderBeforeDelete.hook.js +0 -53
- package/folder/onFolderBeforeDelete.hook.js.map +0 -1
- package/record/record.crud.d.ts +0 -3
- package/record/record.crud.js +0 -95
- package/record/record.crud.js.map +0 -1
- package/record/record.gql.d.ts +0 -3
- package/record/record.gql.js +0 -187
- package/record/record.gql.js.map +0 -1
- package/record/record.model.d.ts +0 -4
- package/record/record.model.js +0 -62
- package/record/record.model.js.map +0 -1
- package/record/record.so.d.ts +0 -3
- package/record/record.so.js +0 -139
- package/record/record.so.js.map +0 -1
- package/record/record.types.d.ts +0 -109
- package/record/record.types.js +0 -5
- package/record/record.types.js.map +0 -1
- package/utils/checkPermissions.d.ts +0 -2
- package/utils/checkPermissions.js +0 -14
- package/utils/checkPermissions.js.map +0 -1
- package/utils/createModelField.d.ts +0 -5
- package/utils/createModelField.js +0 -37
- package/utils/createModelField.js.map +0 -1
- package/utils/fieldResolver.d.ts +0 -16
- package/utils/fieldResolver.js +0 -44
- package/utils/fieldResolver.js.map +0 -1
- package/utils/getFieldValues.d.ts +0 -5
- package/utils/getFieldValues.js +0 -16
- package/utils/getFieldValues.js.map +0 -1
- package/utils/isInstallationPending.d.ts +0 -4
- package/utils/isInstallationPending.js +0 -21
- package/utils/isInstallationPending.js.map +0 -1
- package/utils/modelFactory.d.ts +0 -15
- package/utils/modelFactory.js +0 -25
- package/utils/modelFactory.js.map +0 -1
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
import { type IDeleteFlpTaskInput } from "../../types.js";
|
|
3
|
+
import { DeleteFlpUseCase } from "../../features/flp/DeleteFlp/index.js";
|
|
4
|
+
declare class DeleteFlpTaskImpl implements TaskDefinition.Interface<IDeleteFlpTaskInput> {
|
|
5
|
+
private deleteFlp;
|
|
6
|
+
id: string;
|
|
7
|
+
title: string;
|
|
8
|
+
description: string;
|
|
9
|
+
databaseLogs: boolean;
|
|
10
|
+
constructor(deleteFlp: DeleteFlpUseCase.Interface);
|
|
11
|
+
run({ input, controller }: TaskDefinition.RunParams<IDeleteFlpTaskInput>): Promise<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskResultError | import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskResultAborted | TaskDefinition.ResultDone<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput> | TaskDefinition.ResultContinue<IDeleteFlpTaskInput>>;
|
|
12
|
+
}
|
|
13
|
+
export declare const DeleteFlpTask: typeof DeleteFlpTaskImpl & {
|
|
14
|
+
__abstraction: import("@webiny/di").Abstraction<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskDefinition<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskInput, import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>>;
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,35 @@
|
|
|
1
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
import { DELETE_FLP_TASK_ID } from "./index.js";
|
|
3
|
+
import { DeleteFlpUseCase } from "../../features/flp/DeleteFlp/index.js";
|
|
4
|
+
class DeleteFlpTaskImpl {
|
|
5
|
+
id = DELETE_FLP_TASK_ID;
|
|
6
|
+
title = "ACO - Delete FLP record";
|
|
7
|
+
description = "Synchronizes the FLP catalog by deleting the FLP record based on the provided folder.";
|
|
8
|
+
databaseLogs = false;
|
|
9
|
+
constructor(deleteFlp) {
|
|
10
|
+
this.deleteFlp = deleteFlp;
|
|
11
|
+
}
|
|
12
|
+
async run({
|
|
13
|
+
input,
|
|
14
|
+
controller
|
|
15
|
+
}) {
|
|
16
|
+
try {
|
|
17
|
+
if (controller.runtime.isAborted()) {
|
|
18
|
+
return controller.response.aborted();
|
|
19
|
+
}
|
|
20
|
+
if (controller.runtime.isCloseToTimeout()) {
|
|
21
|
+
return controller.response.continue(input);
|
|
22
|
+
}
|
|
23
|
+
await this.deleteFlp.execute(input.folder);
|
|
24
|
+
return controller.response.done("Task done: FLP record deleted.");
|
|
25
|
+
} catch (error) {
|
|
26
|
+
return controller.response.error(error);
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export const DeleteFlpTask = TaskDefinition.createImplementation({
|
|
31
|
+
implementation: DeleteFlpTaskImpl,
|
|
32
|
+
dependencies: [DeleteFlpUseCase]
|
|
33
|
+
});
|
|
34
|
+
|
|
35
|
+
//# sourceMappingURL=deleteFlp.task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TaskDefinition","DELETE_FLP_TASK_ID","DeleteFlpUseCase","DeleteFlpTaskImpl","id","title","description","databaseLogs","constructor","deleteFlp","run","input","controller","runtime","isAborted","response","aborted","isCloseToTimeout","continue","execute","folder","done","error","DeleteFlpTask","createImplementation","implementation","dependencies"],"sources":["deleteFlp.task.ts"],"sourcesContent":["import { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\nimport { DELETE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { type IDeleteFlpTaskInput } from \"~/types.js\";\nimport { DeleteFlpUseCase } from \"~/features/flp/DeleteFlp/index.js\";\n\nclass DeleteFlpTaskImpl implements TaskDefinition.Interface<IDeleteFlpTaskInput> {\n id = DELETE_FLP_TASK_ID;\n title = \"ACO - Delete FLP record\";\n description =\n \"Synchronizes the FLP catalog by deleting the FLP record based on the provided folder.\";\n databaseLogs = false;\n\n constructor(private deleteFlp: DeleteFlpUseCase.Interface) {}\n\n async run({ input, controller }: TaskDefinition.RunParams<IDeleteFlpTaskInput>) {\n try {\n if (controller.runtime.isAborted()) {\n return controller.response.aborted();\n }\n\n if (controller.runtime.isCloseToTimeout()) {\n return controller.response.continue(input);\n }\n\n await this.deleteFlp.execute(input.folder);\n\n return controller.response.done(\"Task done: FLP record deleted.\");\n } catch (error) {\n return controller.response.error(error);\n }\n }\n}\n\nexport const DeleteFlpTask = TaskDefinition.createImplementation({\n implementation: DeleteFlpTaskImpl,\n dependencies: [DeleteFlpUseCase]\n});\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,wDAAwD;AACvF,SAASC,kBAAkB;AAE3B,SAASC,gBAAgB;AAEzB,MAAMC,iBAAiB,CAA0D;EAC7EC,EAAE,GAAGH,kBAAkB;EACvBI,KAAK,GAAG,yBAAyB;EACjCC,WAAW,GACP,uFAAuF;EAC3FC,YAAY,GAAG,KAAK;EAEpBC,WAAWA,CAASC,SAAqC,EAAE;IAAA,KAAvCA,SAAqC,GAArCA,SAAqC;EAAG;EAE5D,MAAMC,GAAGA,CAAC;IAAEC,KAAK;IAAEC;EAA0D,CAAC,EAAE;IAC5E,IAAI;MACA,IAAIA,UAAU,CAACC,OAAO,CAACC,SAAS,CAAC,CAAC,EAAE;QAChC,OAAOF,UAAU,CAACG,QAAQ,CAACC,OAAO,CAAC,CAAC;MACxC;MAEA,IAAIJ,UAAU,CAACC,OAAO,CAACI,gBAAgB,CAAC,CAAC,EAAE;QACvC,OAAOL,UAAU,CAACG,QAAQ,CAACG,QAAQ,CAACP,KAAK,CAAC;MAC9C;MAEA,MAAM,IAAI,CAACF,SAAS,CAACU,OAAO,CAACR,KAAK,CAACS,MAAM,CAAC;MAE1C,OAAOR,UAAU,CAACG,QAAQ,CAACM,IAAI,CAAC,gCAAgC,CAAC;IACrE,CAAC,CAAC,OAAOC,KAAK,EAAE;MACZ,OAAOV,UAAU,CAACG,QAAQ,CAACO,KAAK,CAACA,KAAK,CAAC;IAC3C;EACJ;AACJ;AAEA,OAAO,MAAMC,aAAa,GAAGvB,cAAc,CAACwB,oBAAoB,CAAC;EAC7DC,cAAc,EAAEtB,iBAAiB;EACjCuB,YAAY,EAAE,CAACxB,gBAAgB;AACnC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
export declare const CREATE_FLP_TASK_ID = "acoCreateFlp";
|
|
2
|
+
export declare const DELETE_FLP_TASK_ID = "acoDeleteFlp";
|
|
3
|
+
export declare const UPDATE_FLP_TASK_ID = "acoUpdateFlp";
|
|
4
|
+
export declare const SYNC_FLP_TASK_ID = "acoSyncFlp";
|
|
5
|
+
export declare const flpTasks: () => import("@webiny/api").ContextPlugin<import("@webiny/api/types.js").Context>[];
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { CreateFlpTask } from "./createFlp.task.js";
|
|
2
|
+
import { UpdateFlpTask } from "./updateFlp.task.js";
|
|
3
|
+
import { DeleteFlpTask } from "./deleteFlp.task.js";
|
|
4
|
+
import { SyncFlpTask } from "./syncFlp.task.js";
|
|
5
|
+
import { createContextPlugin } from "@webiny/api";
|
|
6
|
+
export const CREATE_FLP_TASK_ID = "acoCreateFlp";
|
|
7
|
+
export const DELETE_FLP_TASK_ID = "acoDeleteFlp";
|
|
8
|
+
export const UPDATE_FLP_TASK_ID = "acoUpdateFlp";
|
|
9
|
+
export const SYNC_FLP_TASK_ID = "acoSyncFlp";
|
|
10
|
+
export const flpTasks = () => {
|
|
11
|
+
return [createContextPlugin(context => {
|
|
12
|
+
context.container.register(CreateFlpTask);
|
|
13
|
+
context.container.register(UpdateFlpTask);
|
|
14
|
+
context.container.register(DeleteFlpTask);
|
|
15
|
+
context.container.register(SyncFlpTask);
|
|
16
|
+
})];
|
|
17
|
+
};
|
|
18
|
+
|
|
19
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["CreateFlpTask","UpdateFlpTask","DeleteFlpTask","SyncFlpTask","createContextPlugin","CREATE_FLP_TASK_ID","DELETE_FLP_TASK_ID","UPDATE_FLP_TASK_ID","SYNC_FLP_TASK_ID","flpTasks","context","container","register"],"sources":["index.ts"],"sourcesContent":["import { CreateFlpTask } from \"./createFlp.task.js\";\nimport { UpdateFlpTask } from \"./updateFlp.task.js\";\nimport { DeleteFlpTask } from \"./deleteFlp.task.js\";\nimport { SyncFlpTask } from \"./syncFlp.task.js\";\nimport { createContextPlugin } from \"@webiny/api\";\n\nexport const CREATE_FLP_TASK_ID = \"acoCreateFlp\";\nexport const DELETE_FLP_TASK_ID = \"acoDeleteFlp\";\nexport const UPDATE_FLP_TASK_ID = \"acoUpdateFlp\";\nexport const SYNC_FLP_TASK_ID = \"acoSyncFlp\";\n\nexport const flpTasks = () => {\n return [\n createContextPlugin(context => {\n context.container.register(CreateFlpTask);\n context.container.register(UpdateFlpTask);\n context.container.register(DeleteFlpTask);\n context.container.register(SyncFlpTask);\n })\n ];\n};\n"],"mappings":"AAAA,SAASA,aAAa;AACtB,SAASC,aAAa;AACtB,SAASC,aAAa;AACtB,SAASC,WAAW;AACpB,SAASC,mBAAmB,QAAQ,aAAa;AAEjD,OAAO,MAAMC,kBAAkB,GAAG,cAAc;AAChD,OAAO,MAAMC,kBAAkB,GAAG,cAAc;AAChD,OAAO,MAAMC,kBAAkB,GAAG,cAAc;AAChD,OAAO,MAAMC,gBAAgB,GAAG,YAAY;AAE5C,OAAO,MAAMC,QAAQ,GAAGA,CAAA,KAAM;EAC1B,OAAO,CACHL,mBAAmB,CAACM,OAAO,IAAI;IAC3BA,OAAO,CAACC,SAAS,CAACC,QAAQ,CAACZ,aAAa,CAAC;IACzCU,OAAO,CAACC,SAAS,CAACC,QAAQ,CAACX,aAAa,CAAC;IACzCS,OAAO,CAACC,SAAS,CAACC,QAAQ,CAACV,aAAa,CAAC;IACzCQ,OAAO,CAACC,SAAS,CAACC,QAAQ,CAACT,WAAW,CAAC;EAC3C,CAAC,CAAC,CACL;AACL,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
import { ListModelsUseCase } from "@webiny/api-headless-cms/features/contentModel/ListModels/index.js";
|
|
3
|
+
import { type ISyncFlpTaskInput } from "../../types.js";
|
|
4
|
+
import { GetFolderUseCase } from "../../features/folder/GetFolder/index.js";
|
|
5
|
+
import { ListFoldersUseCase } from "../../features/folder/ListFolders/index.js";
|
|
6
|
+
declare class SyncFlpTaskImpl implements TaskDefinition.Interface<ISyncFlpTaskInput> {
|
|
7
|
+
private getFolder;
|
|
8
|
+
private listFolders;
|
|
9
|
+
private listModels;
|
|
10
|
+
id: string;
|
|
11
|
+
title: string;
|
|
12
|
+
description: string;
|
|
13
|
+
databaseLogs: boolean;
|
|
14
|
+
constructor(getFolder: GetFolderUseCase.Interface, listFolders: ListFoldersUseCase.Interface, listModels: ListModelsUseCase.Interface);
|
|
15
|
+
run({ input, controller }: TaskDefinition.RunParams<ISyncFlpTaskInput>): Promise<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskResultError | import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskResultAborted | TaskDefinition.ResultDone<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>>;
|
|
16
|
+
}
|
|
17
|
+
export declare const SyncFlpTask: typeof SyncFlpTaskImpl & {
|
|
18
|
+
__abstraction: import("@webiny/di").Abstraction<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskDefinition<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskInput, import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>>;
|
|
19
|
+
};
|
|
20
|
+
export {};
|
|
@@ -0,0 +1,127 @@
|
|
|
1
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
import { ListModelsUseCase } from "@webiny/api-headless-cms/features/contentModel/ListModels/index.js";
|
|
3
|
+
import { SYNC_FLP_TASK_ID, UPDATE_FLP_TASK_ID } from "./index.js";
|
|
4
|
+
import { FM_FILE_TYPE } from "../../constants.js";
|
|
5
|
+
import { GetFolderUseCase } from "../../features/folder/GetFolder/index.js";
|
|
6
|
+
import { ListFoldersUseCase } from "../../features/folder/ListFolders/index.js";
|
|
7
|
+
class SyncFlpTaskImpl {
|
|
8
|
+
id = SYNC_FLP_TASK_ID;
|
|
9
|
+
title = "ACO - Sync FLP record";
|
|
10
|
+
description = "Synchronizes the FLP catalog by updating the FLP record and its descendants.";
|
|
11
|
+
databaseLogs = false;
|
|
12
|
+
constructor(getFolder, listFolders, listModels) {
|
|
13
|
+
this.getFolder = getFolder;
|
|
14
|
+
this.listFolders = listFolders;
|
|
15
|
+
this.listModels = listModels;
|
|
16
|
+
}
|
|
17
|
+
async run({
|
|
18
|
+
input,
|
|
19
|
+
controller
|
|
20
|
+
}) {
|
|
21
|
+
try {
|
|
22
|
+
if (controller.runtime.isAborted()) {
|
|
23
|
+
return controller.response.aborted();
|
|
24
|
+
}
|
|
25
|
+
|
|
26
|
+
/**
|
|
27
|
+
* `folderId` provided in the task input. We need to:
|
|
28
|
+
*
|
|
29
|
+
* - update the FLP records for the found folder and all its descendants.
|
|
30
|
+
*/
|
|
31
|
+
if (input.folderId) {
|
|
32
|
+
const result = await this.getFolder.execute(input.folderId);
|
|
33
|
+
const folder = result.value;
|
|
34
|
+
await controller.task.trigger({
|
|
35
|
+
definition: UPDATE_FLP_TASK_ID,
|
|
36
|
+
input: {
|
|
37
|
+
folder
|
|
38
|
+
}
|
|
39
|
+
});
|
|
40
|
+
return controller.response.done(`Task completed successfully: all FLP records for folderId "${input.folderId}" and its children have been queued to be synchronized.`);
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
/**
|
|
44
|
+
* Full update required. We need to:
|
|
45
|
+
*
|
|
46
|
+
* - list cms models to collect their types, together with the default ones [FM_FILE_TYPE]
|
|
47
|
+
* - list all root folders
|
|
48
|
+
* - update the FLP records for the found folders and all its descendants.
|
|
49
|
+
*/
|
|
50
|
+
if (input.type && input.type === "*") {
|
|
51
|
+
// Some folder types are fixed: pages and files.
|
|
52
|
+
const folderTypes = [FM_FILE_TYPE];
|
|
53
|
+
|
|
54
|
+
// List all non-private models
|
|
55
|
+
const modelsResult = await this.listModels.execute();
|
|
56
|
+
if (modelsResult.isOk()) {
|
|
57
|
+
const models = modelsResult.value;
|
|
58
|
+
for (const model of models) {
|
|
59
|
+
folderTypes.push(`cms:${model.modelId}`);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
for (const folderType of folderTypes) {
|
|
63
|
+
const result = await this.listFolders.execute({
|
|
64
|
+
where: {
|
|
65
|
+
type: folderType,
|
|
66
|
+
parentId: null
|
|
67
|
+
}
|
|
68
|
+
});
|
|
69
|
+
const {
|
|
70
|
+
folders
|
|
71
|
+
} = result.value;
|
|
72
|
+
for (const folder of folders) {
|
|
73
|
+
await controller.task.trigger({
|
|
74
|
+
definition: UPDATE_FLP_TASK_ID,
|
|
75
|
+
input: {
|
|
76
|
+
folder
|
|
77
|
+
}
|
|
78
|
+
});
|
|
79
|
+
}
|
|
80
|
+
await controller.logger.info({
|
|
81
|
+
message: `FLP Update task triggered for type ${folderType}`,
|
|
82
|
+
data: {
|
|
83
|
+
type: folderType
|
|
84
|
+
}
|
|
85
|
+
});
|
|
86
|
+
}
|
|
87
|
+
return controller.response.done(`Task completed successfully: all FLP records have been queued to be synchronized.`);
|
|
88
|
+
}
|
|
89
|
+
|
|
90
|
+
/**
|
|
91
|
+
* `type` provided in the task input. We need to:
|
|
92
|
+
*
|
|
93
|
+
* - list all root folders for the provided type
|
|
94
|
+
* - update the FLP records for the found folders and all its descendants.
|
|
95
|
+
*/
|
|
96
|
+
if (input.type) {
|
|
97
|
+
const result = await this.listFolders.execute({
|
|
98
|
+
where: {
|
|
99
|
+
type: input.type,
|
|
100
|
+
parentId: null
|
|
101
|
+
}
|
|
102
|
+
});
|
|
103
|
+
const {
|
|
104
|
+
folders
|
|
105
|
+
} = result.value;
|
|
106
|
+
for (const folder of folders) {
|
|
107
|
+
await controller.task.trigger({
|
|
108
|
+
definition: UPDATE_FLP_TASK_ID,
|
|
109
|
+
input: {
|
|
110
|
+
folder
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
}
|
|
114
|
+
return controller.response.done(`Task completed successfully: all FLP records for type "${input.type}" have been queued to be synchronized.`);
|
|
115
|
+
}
|
|
116
|
+
return controller.response.error("Invalid input: please provide either `type` or `folderId`.");
|
|
117
|
+
} catch (error) {
|
|
118
|
+
return controller.response.error(error);
|
|
119
|
+
}
|
|
120
|
+
}
|
|
121
|
+
}
|
|
122
|
+
export const SyncFlpTask = TaskDefinition.createImplementation({
|
|
123
|
+
implementation: SyncFlpTaskImpl,
|
|
124
|
+
dependencies: [GetFolderUseCase, ListFoldersUseCase, ListModelsUseCase]
|
|
125
|
+
});
|
|
126
|
+
|
|
127
|
+
//# sourceMappingURL=syncFlp.task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TaskDefinition","ListModelsUseCase","SYNC_FLP_TASK_ID","UPDATE_FLP_TASK_ID","FM_FILE_TYPE","GetFolderUseCase","ListFoldersUseCase","SyncFlpTaskImpl","id","title","description","databaseLogs","constructor","getFolder","listFolders","listModels","run","input","controller","runtime","isAborted","response","aborted","folderId","result","execute","folder","value","task","trigger","definition","done","type","folderTypes","modelsResult","isOk","models","model","push","modelId","folderType","where","parentId","folders","logger","info","message","data","error","SyncFlpTask","createImplementation","implementation","dependencies"],"sources":["syncFlp.task.ts"],"sourcesContent":["import { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\nimport { ListModelsUseCase } from \"@webiny/api-headless-cms/features/contentModel/ListModels/index.js\";\nimport { SYNC_FLP_TASK_ID, UPDATE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { type ISyncFlpTaskInput, type IUpdateFlpTaskInput } from \"~/types.js\";\nimport { FM_FILE_TYPE } from \"~/constants.js\";\nimport { GetFolderUseCase } from \"~/features/folder/GetFolder/index.js\";\nimport { ListFoldersUseCase } from \"~/features/folder/ListFolders/index.js\";\n\nclass SyncFlpTaskImpl implements TaskDefinition.Interface<ISyncFlpTaskInput> {\n id = SYNC_FLP_TASK_ID;\n title = \"ACO - Sync FLP record\";\n description = \"Synchronizes the FLP catalog by updating the FLP record and its descendants.\";\n databaseLogs = false;\n\n constructor(\n private getFolder: GetFolderUseCase.Interface,\n private listFolders: ListFoldersUseCase.Interface,\n private listModels: ListModelsUseCase.Interface\n ) {}\n\n async run({ input, controller }: TaskDefinition.RunParams<ISyncFlpTaskInput>) {\n try {\n if (controller.runtime.isAborted()) {\n return controller.response.aborted();\n }\n\n /**\n * `folderId` provided in the task input. We need to:\n *\n * - update the FLP records for the found folder and all its descendants.\n */\n if (input.folderId) {\n const result = await this.getFolder.execute(input.folderId!);\n const folder = result.value;\n\n await controller.task.trigger<IUpdateFlpTaskInput>({\n definition: UPDATE_FLP_TASK_ID,\n input: {\n folder\n }\n });\n\n return controller.response.done(\n `Task completed successfully: all FLP records for folderId \"${input.folderId}\" and its children have been queued to be synchronized.`\n );\n }\n\n /**\n * Full update required. We need to:\n *\n * - list cms models to collect their types, together with the default ones [FM_FILE_TYPE]\n * - list all root folders\n * - update the FLP records for the found folders and all its descendants.\n */\n if (input.type && input.type === \"*\") {\n // Some folder types are fixed: pages and files.\n const folderTypes = [FM_FILE_TYPE];\n\n // List all non-private models\n const modelsResult = await this.listModels.execute();\n if (modelsResult.isOk()) {\n const models = modelsResult.value;\n for (const model of models) {\n folderTypes.push(`cms:${model.modelId}`);\n }\n }\n\n for (const folderType of folderTypes) {\n const result = await this.listFolders.execute({\n where: {\n type: folderType,\n parentId: null\n }\n });\n\n const { folders } = result.value;\n\n for (const folder of folders) {\n await controller.task.trigger<IUpdateFlpTaskInput>({\n definition: UPDATE_FLP_TASK_ID,\n input: {\n folder\n }\n });\n }\n\n await controller.logger.info({\n message: `FLP Update task triggered for type ${folderType}`,\n data: {\n type: folderType\n }\n });\n }\n\n return controller.response.done(\n `Task completed successfully: all FLP records have been queued to be synchronized.`\n );\n }\n\n /**\n * `type` provided in the task input. We need to:\n *\n * - list all root folders for the provided type\n * - update the FLP records for the found folders and all its descendants.\n */\n if (input.type) {\n const result = await this.listFolders.execute({\n where: {\n type: input.type!,\n parentId: null\n }\n });\n\n const { folders } = result.value;\n\n for (const folder of folders) {\n await controller.task.trigger<IUpdateFlpTaskInput>({\n definition: UPDATE_FLP_TASK_ID,\n input: {\n folder\n }\n });\n }\n\n return controller.response.done(\n `Task completed successfully: all FLP records for type \"${input.type}\" have been queued to be synchronized.`\n );\n }\n\n return controller.response.error(\n \"Invalid input: please provide either `type` or `folderId`.\"\n );\n } catch (error) {\n return controller.response.error(error);\n }\n }\n}\n\nexport const SyncFlpTask = TaskDefinition.createImplementation({\n implementation: SyncFlpTaskImpl,\n dependencies: [GetFolderUseCase, ListFoldersUseCase, ListModelsUseCase]\n});\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,wDAAwD;AACvF,SAASC,iBAAiB,QAAQ,oEAAoE;AACtG,SAASC,gBAAgB,EAAEC,kBAAkB;AAE7C,SAASC,YAAY;AACrB,SAASC,gBAAgB;AACzB,SAASC,kBAAkB;AAE3B,MAAMC,eAAe,CAAwD;EACzEC,EAAE,GAAGN,gBAAgB;EACrBO,KAAK,GAAG,uBAAuB;EAC/BC,WAAW,GAAG,8EAA8E;EAC5FC,YAAY,GAAG,KAAK;EAEpBC,WAAWA,CACCC,SAAqC,EACrCC,WAAyC,EACzCC,UAAuC,EACjD;IAAA,KAHUF,SAAqC,GAArCA,SAAqC;IAAA,KACrCC,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,UAAuC,GAAvCA,UAAuC;EAChD;EAEH,MAAMC,GAAGA,CAAC;IAAEC,KAAK;IAAEC;EAAwD,CAAC,EAAE;IAC1E,IAAI;MACA,IAAIA,UAAU,CAACC,OAAO,CAACC,SAAS,CAAC,CAAC,EAAE;QAChC,OAAOF,UAAU,CAACG,QAAQ,CAACC,OAAO,CAAC,CAAC;MACxC;;MAEA;AACZ;AACA;AACA;AACA;MACY,IAAIL,KAAK,CAACM,QAAQ,EAAE;QAChB,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACX,SAAS,CAACY,OAAO,CAACR,KAAK,CAACM,QAAS,CAAC;QAC5D,MAAMG,MAAM,GAAGF,MAAM,CAACG,KAAK;QAE3B,MAAMT,UAAU,CAACU,IAAI,CAACC,OAAO,CAAsB;UAC/CC,UAAU,EAAE3B,kBAAkB;UAC9Bc,KAAK,EAAE;YACHS;UACJ;QACJ,CAAC,CAAC;QAEF,OAAOR,UAAU,CAACG,QAAQ,CAACU,IAAI,CAC3B,8DAA8Dd,KAAK,CAACM,QAAQ,yDAChF,CAAC;MACL;;MAEA;AACZ;AACA;AACA;AACA;AACA;AACA;MACY,IAAIN,KAAK,CAACe,IAAI,IAAIf,KAAK,CAACe,IAAI,KAAK,GAAG,EAAE;QAClC;QACA,MAAMC,WAAW,GAAG,CAAC7B,YAAY,CAAC;;QAElC;QACA,MAAM8B,YAAY,GAAG,MAAM,IAAI,CAACnB,UAAU,CAACU,OAAO,CAAC,CAAC;QACpD,IAAIS,YAAY,CAACC,IAAI,CAAC,CAAC,EAAE;UACrB,MAAMC,MAAM,GAAGF,YAAY,CAACP,KAAK;UACjC,KAAK,MAAMU,KAAK,IAAID,MAAM,EAAE;YACxBH,WAAW,CAACK,IAAI,CAAC,OAAOD,KAAK,CAACE,OAAO,EAAE,CAAC;UAC5C;QACJ;QAEA,KAAK,MAAMC,UAAU,IAAIP,WAAW,EAAE;UAClC,MAAMT,MAAM,GAAG,MAAM,IAAI,CAACV,WAAW,CAACW,OAAO,CAAC;YAC1CgB,KAAK,EAAE;cACHT,IAAI,EAAEQ,UAAU;cAChBE,QAAQ,EAAE;YACd;UACJ,CAAC,CAAC;UAEF,MAAM;YAAEC;UAAQ,CAAC,GAAGnB,MAAM,CAACG,KAAK;UAEhC,KAAK,MAAMD,MAAM,IAAIiB,OAAO,EAAE;YAC1B,MAAMzB,UAAU,CAACU,IAAI,CAACC,OAAO,CAAsB;cAC/CC,UAAU,EAAE3B,kBAAkB;cAC9Bc,KAAK,EAAE;gBACHS;cACJ;YACJ,CAAC,CAAC;UACN;UAEA,MAAMR,UAAU,CAAC0B,MAAM,CAACC,IAAI,CAAC;YACzBC,OAAO,EAAE,sCAAsCN,UAAU,EAAE;YAC3DO,IAAI,EAAE;cACFf,IAAI,EAAEQ;YACV;UACJ,CAAC,CAAC;QACN;QAEA,OAAOtB,UAAU,CAACG,QAAQ,CAACU,IAAI,CAC3B,mFACJ,CAAC;MACL;;MAEA;AACZ;AACA;AACA;AACA;AACA;MACY,IAAId,KAAK,CAACe,IAAI,EAAE;QACZ,MAAMR,MAAM,GAAG,MAAM,IAAI,CAACV,WAAW,CAACW,OAAO,CAAC;UAC1CgB,KAAK,EAAE;YACHT,IAAI,EAAEf,KAAK,CAACe,IAAK;YACjBU,QAAQ,EAAE;UACd;QACJ,CAAC,CAAC;QAEF,MAAM;UAAEC;QAAQ,CAAC,GAAGnB,MAAM,CAACG,KAAK;QAEhC,KAAK,MAAMD,MAAM,IAAIiB,OAAO,EAAE;UAC1B,MAAMzB,UAAU,CAACU,IAAI,CAACC,OAAO,CAAsB;YAC/CC,UAAU,EAAE3B,kBAAkB;YAC9Bc,KAAK,EAAE;cACHS;YACJ;UACJ,CAAC,CAAC;QACN;QAEA,OAAOR,UAAU,CAACG,QAAQ,CAACU,IAAI,CAC3B,0DAA0Dd,KAAK,CAACe,IAAI,wCACxE,CAAC;MACL;MAEA,OAAOd,UAAU,CAACG,QAAQ,CAAC2B,KAAK,CAC5B,4DACJ,CAAC;IACL,CAAC,CAAC,OAAOA,KAAK,EAAE;MACZ,OAAO9B,UAAU,CAACG,QAAQ,CAAC2B,KAAK,CAACA,KAAK,CAAC;IAC3C;EACJ;AACJ;AAEA,OAAO,MAAMC,WAAW,GAAGjD,cAAc,CAACkD,oBAAoB,CAAC;EAC3DC,cAAc,EAAE5C,eAAe;EAC/B6C,YAAY,EAAE,CAAC/C,gBAAgB,EAAEC,kBAAkB,EAAEL,iBAAiB;AAC1E,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
import { type IUpdateFlpTaskInput } from "../../types.js";
|
|
3
|
+
import { UpdateFlpUseCase } from "../../features/flp/UpdateFlp/index.js";
|
|
4
|
+
declare class UpdateFlpTaskImpl implements TaskDefinition.Interface<IUpdateFlpTaskInput> {
|
|
5
|
+
private updateFlp;
|
|
6
|
+
id: string;
|
|
7
|
+
title: string;
|
|
8
|
+
description: string;
|
|
9
|
+
databaseLogs: boolean;
|
|
10
|
+
constructor(updateFlp: UpdateFlpUseCase.Interface);
|
|
11
|
+
run({ input, controller }: TaskDefinition.RunParams<IUpdateFlpTaskInput>): Promise<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskResultError | import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskResultAborted | TaskDefinition.ResultDone<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>>;
|
|
12
|
+
}
|
|
13
|
+
export declare const UpdateFlpTask: typeof UpdateFlpTaskImpl & {
|
|
14
|
+
__abstraction: import("@webiny/di").Abstraction<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskDefinition<import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskInput, import("@webiny/api-core/features/task/TaskDefinition/abstractions").ITaskOutput>>;
|
|
15
|
+
};
|
|
16
|
+
export {};
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
import { TaskDefinition } from "@webiny/api-core/features/task/TaskDefinition/index.js";
|
|
2
|
+
import { UPDATE_FLP_TASK_ID } from "./index.js";
|
|
3
|
+
import { UpdateFlpUseCase } from "../../features/flp/UpdateFlp/index.js";
|
|
4
|
+
class UpdateFlpTaskImpl {
|
|
5
|
+
id = UPDATE_FLP_TASK_ID;
|
|
6
|
+
title = "ACO - Update FLP record";
|
|
7
|
+
description = "Synchronizes the FLP catalog by updating the FLP record and its descendants based on the provided folder.";
|
|
8
|
+
databaseLogs = false;
|
|
9
|
+
constructor(updateFlp) {
|
|
10
|
+
this.updateFlp = updateFlp;
|
|
11
|
+
}
|
|
12
|
+
async run({
|
|
13
|
+
input,
|
|
14
|
+
controller
|
|
15
|
+
}) {
|
|
16
|
+
try {
|
|
17
|
+
if (controller.runtime.isAborted()) {
|
|
18
|
+
return controller.response.aborted();
|
|
19
|
+
}
|
|
20
|
+
await this.updateFlp.execute({
|
|
21
|
+
folder: input.folder,
|
|
22
|
+
queued: input.queued,
|
|
23
|
+
isCloseToTimeout: controller.runtime.isCloseToTimeout,
|
|
24
|
+
handleTimeout: queued => controller.response.continue({
|
|
25
|
+
...input,
|
|
26
|
+
queued
|
|
27
|
+
})
|
|
28
|
+
});
|
|
29
|
+
return controller.response.done("Task done: FLP record updated.");
|
|
30
|
+
} catch (error) {
|
|
31
|
+
return controller.response.error(error);
|
|
32
|
+
}
|
|
33
|
+
}
|
|
34
|
+
}
|
|
35
|
+
export const UpdateFlpTask = TaskDefinition.createImplementation({
|
|
36
|
+
implementation: UpdateFlpTaskImpl,
|
|
37
|
+
dependencies: [UpdateFlpUseCase]
|
|
38
|
+
});
|
|
39
|
+
|
|
40
|
+
//# sourceMappingURL=updateFlp.task.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["TaskDefinition","UPDATE_FLP_TASK_ID","UpdateFlpUseCase","UpdateFlpTaskImpl","id","title","description","databaseLogs","constructor","updateFlp","run","input","controller","runtime","isAborted","response","aborted","execute","folder","queued","isCloseToTimeout","handleTimeout","continue","done","error","UpdateFlpTask","createImplementation","implementation","dependencies"],"sources":["updateFlp.task.ts"],"sourcesContent":["import { TaskDefinition } from \"@webiny/api-core/features/task/TaskDefinition/index.js\";\nimport { UPDATE_FLP_TASK_ID } from \"~/flp/tasks/index.js\";\nimport { type IUpdateFlpTaskInput } from \"~/types.js\";\nimport { UpdateFlpUseCase } from \"~/features/flp/UpdateFlp/index.js\";\n\nclass UpdateFlpTaskImpl implements TaskDefinition.Interface<IUpdateFlpTaskInput> {\n id = UPDATE_FLP_TASK_ID;\n title = \"ACO - Update FLP record\";\n description =\n \"Synchronizes the FLP catalog by updating the FLP record and its descendants based on the provided folder.\";\n databaseLogs = false;\n\n constructor(private updateFlp: UpdateFlpUseCase.Interface) {}\n\n async run({ input, controller }: TaskDefinition.RunParams<IUpdateFlpTaskInput>) {\n try {\n if (controller.runtime.isAborted()) {\n return controller.response.aborted();\n }\n\n await this.updateFlp.execute({\n folder: input.folder,\n queued: input.queued,\n isCloseToTimeout: controller.runtime.isCloseToTimeout,\n handleTimeout: queued => controller.response.continue({ ...input, queued })\n });\n\n return controller.response.done(\"Task done: FLP record updated.\");\n } catch (error) {\n return controller.response.error(error);\n }\n }\n}\n\nexport const UpdateFlpTask = TaskDefinition.createImplementation({\n implementation: UpdateFlpTaskImpl,\n dependencies: [UpdateFlpUseCase]\n});\n"],"mappings":"AAAA,SAASA,cAAc,QAAQ,wDAAwD;AACvF,SAASC,kBAAkB;AAE3B,SAASC,gBAAgB;AAEzB,MAAMC,iBAAiB,CAA0D;EAC7EC,EAAE,GAAGH,kBAAkB;EACvBI,KAAK,GAAG,yBAAyB;EACjCC,WAAW,GACP,2GAA2G;EAC/GC,YAAY,GAAG,KAAK;EAEpBC,WAAWA,CAASC,SAAqC,EAAE;IAAA,KAAvCA,SAAqC,GAArCA,SAAqC;EAAG;EAE5D,MAAMC,GAAGA,CAAC;IAAEC,KAAK;IAAEC;EAA0D,CAAC,EAAE;IAC5E,IAAI;MACA,IAAIA,UAAU,CAACC,OAAO,CAACC,SAAS,CAAC,CAAC,EAAE;QAChC,OAAOF,UAAU,CAACG,QAAQ,CAACC,OAAO,CAAC,CAAC;MACxC;MAEA,MAAM,IAAI,CAACP,SAAS,CAACQ,OAAO,CAAC;QACzBC,MAAM,EAAEP,KAAK,CAACO,MAAM;QACpBC,MAAM,EAAER,KAAK,CAACQ,MAAM;QACpBC,gBAAgB,EAAER,UAAU,CAACC,OAAO,CAACO,gBAAgB;QACrDC,aAAa,EAAEF,MAAM,IAAIP,UAAU,CAACG,QAAQ,CAACO,QAAQ,CAAC;UAAE,GAAGX,KAAK;UAAEQ;QAAO,CAAC;MAC9E,CAAC,CAAC;MAEF,OAAOP,UAAU,CAACG,QAAQ,CAACQ,IAAI,CAAC,gCAAgC,CAAC;IACrE,CAAC,CAAC,OAAOC,KAAK,EAAE;MACZ,OAAOZ,UAAU,CAACG,QAAQ,CAACS,KAAK,CAACA,KAAK,CAAC;IAC3C;EACJ;AACJ;AAEA,OAAO,MAAMC,aAAa,GAAGzB,cAAc,CAAC0B,oBAAoB,CAAC;EAC7DC,cAAc,EAAExB,iBAAiB;EACjCyB,YAAY,EAAE,CAAC1B,gBAAgB;AACnC,CAAC,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
import { Plugin } from "@webiny/plugins";
|
|
2
|
+
import type { CmsPrivateModelFull } from "@webiny/api-headless-cms";
|
|
3
|
+
import type { CmsModelField as BaseModelField } from "@webiny/api-headless-cms/types/index.js";
|
|
4
|
+
export type CmsModelField = Omit<BaseModelField, "storageId"> & {
|
|
5
|
+
modelIds?: string[];
|
|
6
|
+
};
|
|
7
|
+
export interface IFolderModelFieldsModifier {
|
|
8
|
+
setFields: (fields: BaseModelField[]) => void;
|
|
9
|
+
addField: (field: CmsModelField) => void;
|
|
10
|
+
}
|
|
11
|
+
export declare class FolderModelFieldsModifier implements IFolderModelFieldsModifier {
|
|
12
|
+
private fields;
|
|
13
|
+
private readonly namespace;
|
|
14
|
+
constructor(namespace: string);
|
|
15
|
+
setFields(fields: BaseModelField[]): void;
|
|
16
|
+
addField(field: CmsModelField): void;
|
|
17
|
+
}
|
|
18
|
+
interface CmsModelModifierCallableParams {
|
|
19
|
+
modifier: IFolderModelFieldsModifier;
|
|
20
|
+
}
|
|
21
|
+
export interface CmsModelModifierCallable {
|
|
22
|
+
(params: CmsModelModifierCallableParams): Promise<void> | void;
|
|
23
|
+
}
|
|
24
|
+
interface FolderCmsModelModifierPluginParams {
|
|
25
|
+
modifier: IFolderModelFieldsModifier;
|
|
26
|
+
callback: CmsModelModifierCallable;
|
|
27
|
+
}
|
|
28
|
+
export declare class FolderCmsModelModifierPlugin extends Plugin {
|
|
29
|
+
static type: string;
|
|
30
|
+
private readonly modifier;
|
|
31
|
+
private readonly callback;
|
|
32
|
+
constructor(params: FolderCmsModelModifierPluginParams);
|
|
33
|
+
modifyModel(model: CmsPrivateModelFull): Promise<void>;
|
|
34
|
+
}
|
|
35
|
+
export declare const createFolderModelModifier: (callback: CmsModelModifierCallable) => FolderCmsModelModifierPlugin;
|
|
36
|
+
export {};
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import { Plugin } from "@webiny/plugins";
|
|
2
|
+
import { createModelField } from "@webiny/api-headless-cms";
|
|
3
|
+
import { FOLDER_MODEL_ID } from "../domain/folder/folder.model.js";
|
|
4
|
+
export class FolderModelFieldsModifier {
|
|
5
|
+
fields = [];
|
|
6
|
+
constructor(namespace) {
|
|
7
|
+
this.namespace = namespace;
|
|
8
|
+
}
|
|
9
|
+
setFields(fields) {
|
|
10
|
+
this.fields = fields;
|
|
11
|
+
}
|
|
12
|
+
addField(field) {
|
|
13
|
+
const {
|
|
14
|
+
tags,
|
|
15
|
+
...rest
|
|
16
|
+
} = field;
|
|
17
|
+
this.fields.push({
|
|
18
|
+
...rest,
|
|
19
|
+
storageId: `${field.type}@${this.namespace}_${field.id}`,
|
|
20
|
+
tags: (tags ?? []).concat([`$namespace:${this.namespace}`])
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
export class FolderCmsModelModifierPlugin extends Plugin {
|
|
25
|
+
static type = "aco.folder.cms-model-modifier";
|
|
26
|
+
constructor(params) {
|
|
27
|
+
super();
|
|
28
|
+
this.modifier = params.modifier;
|
|
29
|
+
this.callback = params.callback;
|
|
30
|
+
}
|
|
31
|
+
async modifyModel(model) {
|
|
32
|
+
if (model.modelId !== FOLDER_MODEL_ID) {
|
|
33
|
+
return;
|
|
34
|
+
}
|
|
35
|
+
let extensionsField = model.fields.find(field => field.fieldId === "extensions");
|
|
36
|
+
if (!extensionsField) {
|
|
37
|
+
extensionsField = createModelField({
|
|
38
|
+
label: "Extensions",
|
|
39
|
+
type: "object",
|
|
40
|
+
settings: {
|
|
41
|
+
layout: [],
|
|
42
|
+
fields: []
|
|
43
|
+
}
|
|
44
|
+
});
|
|
45
|
+
model.fields.push(extensionsField);
|
|
46
|
+
}
|
|
47
|
+
this.modifier.setFields(extensionsField.settings.fields);
|
|
48
|
+
await this.callback({
|
|
49
|
+
modifier: this.modifier
|
|
50
|
+
});
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
export const createFolderModelModifier = callback => {
|
|
54
|
+
const modifier = new FolderModelFieldsModifier("global");
|
|
55
|
+
return new FolderCmsModelModifierPlugin({
|
|
56
|
+
callback,
|
|
57
|
+
modifier
|
|
58
|
+
});
|
|
59
|
+
};
|
|
60
|
+
|
|
61
|
+
//# sourceMappingURL=createFolderModelModifier.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Plugin","createModelField","FOLDER_MODEL_ID","FolderModelFieldsModifier","fields","constructor","namespace","setFields","addField","field","tags","rest","push","storageId","type","id","concat","FolderCmsModelModifierPlugin","params","modifier","callback","modifyModel","model","modelId","extensionsField","find","fieldId","label","settings","layout","createFolderModelModifier"],"sources":["createFolderModelModifier.ts"],"sourcesContent":["import { Plugin } from \"@webiny/plugins\";\nimport type { CmsPrivateModelFull } from \"@webiny/api-headless-cms\";\nimport { createModelField } from \"@webiny/api-headless-cms\";\nimport type { CmsModelField as BaseModelField } from \"@webiny/api-headless-cms/types/index.js\";\nimport { FOLDER_MODEL_ID } from \"~/domain/folder/folder.model.js\";\n\nexport type CmsModelField = Omit<BaseModelField, \"storageId\"> & { modelIds?: string[] };\n\nexport interface IFolderModelFieldsModifier {\n setFields: (fields: BaseModelField[]) => void;\n addField: (field: CmsModelField) => void;\n}\n\nexport class FolderModelFieldsModifier implements IFolderModelFieldsModifier {\n private fields: BaseModelField[] = [];\n private readonly namespace: string;\n\n constructor(namespace: string) {\n this.namespace = namespace;\n }\n\n setFields(fields: BaseModelField[]) {\n this.fields = fields;\n }\n\n addField(field: CmsModelField) {\n const { tags, ...rest } = field;\n\n this.fields.push({\n ...rest,\n storageId: `${field.type}@${this.namespace}_${field.id}`,\n tags: (tags ?? []).concat([`$namespace:${this.namespace}`])\n });\n }\n}\n\ninterface CmsModelModifierCallableParams {\n modifier: IFolderModelFieldsModifier;\n}\n\nexport interface CmsModelModifierCallable {\n (params: CmsModelModifierCallableParams): Promise<void> | void;\n}\n\ninterface FolderCmsModelModifierPluginParams {\n modifier: IFolderModelFieldsModifier;\n callback: CmsModelModifierCallable;\n}\n\nexport class FolderCmsModelModifierPlugin extends Plugin {\n public static override type = \"aco.folder.cms-model-modifier\";\n private readonly modifier: IFolderModelFieldsModifier;\n private readonly callback: CmsModelModifierCallable;\n\n constructor(params: FolderCmsModelModifierPluginParams) {\n super();\n this.modifier = params.modifier;\n this.callback = params.callback;\n }\n\n async modifyModel(model: CmsPrivateModelFull): Promise<void> {\n if (model.modelId !== FOLDER_MODEL_ID) {\n return;\n }\n\n let extensionsField = model.fields.find(field => field.fieldId === \"extensions\");\n if (!extensionsField) {\n extensionsField = createModelField({\n label: \"Extensions\",\n type: \"object\",\n settings: {\n layout: [],\n fields: []\n }\n });\n model.fields.push(extensionsField);\n }\n\n this.modifier.setFields(extensionsField.settings!.fields!);\n\n await this.callback({ modifier: this.modifier });\n }\n}\n\nexport const createFolderModelModifier = (callback: CmsModelModifierCallable) => {\n const modifier = new FolderModelFieldsModifier(\"global\");\n\n return new FolderCmsModelModifierPlugin({\n callback,\n modifier\n });\n};\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,iBAAiB;AAExC,SAASC,gBAAgB,QAAQ,0BAA0B;AAE3D,SAASC,eAAe;AASxB,OAAO,MAAMC,yBAAyB,CAAuC;EACjEC,MAAM,GAAqB,EAAE;EAGrCC,WAAWA,CAACC,SAAiB,EAAE;IAC3B,IAAI,CAACA,SAAS,GAAGA,SAAS;EAC9B;EAEAC,SAASA,CAACH,MAAwB,EAAE;IAChC,IAAI,CAACA,MAAM,GAAGA,MAAM;EACxB;EAEAI,QAAQA,CAACC,KAAoB,EAAE;IAC3B,MAAM;MAAEC,IAAI;MAAE,GAAGC;IAAK,CAAC,GAAGF,KAAK;IAE/B,IAAI,CAACL,MAAM,CAACQ,IAAI,CAAC;MACb,GAAGD,IAAI;MACPE,SAAS,EAAE,GAAGJ,KAAK,CAACK,IAAI,IAAI,IAAI,CAACR,SAAS,IAAIG,KAAK,CAACM,EAAE,EAAE;MACxDL,IAAI,EAAE,CAACA,IAAI,IAAI,EAAE,EAAEM,MAAM,CAAC,CAAC,cAAc,IAAI,CAACV,SAAS,EAAE,CAAC;IAC9D,CAAC,CAAC;EACN;AACJ;AAeA,OAAO,MAAMW,4BAA4B,SAASjB,MAAM,CAAC;EACrD,OAAuBc,IAAI,GAAG,+BAA+B;EAI7DT,WAAWA,CAACa,MAA0C,EAAE;IACpD,KAAK,CAAC,CAAC;IACP,IAAI,CAACC,QAAQ,GAAGD,MAAM,CAACC,QAAQ;IAC/B,IAAI,CAACC,QAAQ,GAAGF,MAAM,CAACE,QAAQ;EACnC;EAEA,MAAMC,WAAWA,CAACC,KAA0B,EAAiB;IACzD,IAAIA,KAAK,CAACC,OAAO,KAAKrB,eAAe,EAAE;MACnC;IACJ;IAEA,IAAIsB,eAAe,GAAGF,KAAK,CAAClB,MAAM,CAACqB,IAAI,CAAChB,KAAK,IAAIA,KAAK,CAACiB,OAAO,KAAK,YAAY,CAAC;IAChF,IAAI,CAACF,eAAe,EAAE;MAClBA,eAAe,GAAGvB,gBAAgB,CAAC;QAC/B0B,KAAK,EAAE,YAAY;QACnBb,IAAI,EAAE,QAAQ;QACdc,QAAQ,EAAE;UACNC,MAAM,EAAE,EAAE;UACVzB,MAAM,EAAE;QACZ;MACJ,CAAC,CAAC;MACFkB,KAAK,CAAClB,MAAM,CAACQ,IAAI,CAACY,eAAe,CAAC;IACtC;IAEA,IAAI,CAACL,QAAQ,CAACZ,SAAS,CAACiB,eAAe,CAACI,QAAQ,CAAExB,MAAO,CAAC;IAE1D,MAAM,IAAI,CAACgB,QAAQ,CAAC;MAAED,QAAQ,EAAE,IAAI,CAACA;IAAS,CAAC,CAAC;EACpD;AACJ;AAEA,OAAO,MAAMW,yBAAyB,GAAIV,QAAkC,IAAK;EAC7E,MAAMD,QAAQ,GAAG,IAAIhB,yBAAyB,CAAC,QAAQ,CAAC;EAExD,OAAO,IAAIc,4BAA4B,CAAC;IACpCG,QAAQ;IACRD;EACJ,CAAC,CAAC;AACN,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,7 @@
|
|
|
1
|
+
import type { CmsFieldTypePlugins, CmsModel } from "@webiny/api-headless-cms/types/index.js";
|
|
2
|
+
export interface CreateFolderTypeDefsParams {
|
|
3
|
+
model: CmsModel;
|
|
4
|
+
models: CmsModel[];
|
|
5
|
+
plugins: CmsFieldTypePlugins;
|
|
6
|
+
}
|
|
7
|
+
export declare const createFolderTypeDefs: (params: CreateFolderTypeDefsParams) => string;
|
|
@@ -0,0 +1,186 @@
|
|
|
1
|
+
import { renderFields } from "@webiny/api-headless-cms/utils/renderFields.js";
|
|
2
|
+
import { renderInputFields } from "@webiny/api-headless-cms/utils/renderInputFields.js";
|
|
3
|
+
const removeFieldRequiredValidation = field => {
|
|
4
|
+
if (field.validation) {
|
|
5
|
+
field.validation = field.validation.filter(validation => validation.name !== "required");
|
|
6
|
+
}
|
|
7
|
+
if (field.listValidation) {
|
|
8
|
+
field.listValidation = field.listValidation.filter(v => v.name !== "required");
|
|
9
|
+
}
|
|
10
|
+
return field;
|
|
11
|
+
};
|
|
12
|
+
const createUpdateFields = fields => {
|
|
13
|
+
return fields.reduce((collection, field) => {
|
|
14
|
+
collection.push(removeFieldRequiredValidation({
|
|
15
|
+
...field
|
|
16
|
+
}));
|
|
17
|
+
return collection;
|
|
18
|
+
}, []);
|
|
19
|
+
};
|
|
20
|
+
export const createFolderTypeDefs = params => {
|
|
21
|
+
const {
|
|
22
|
+
model,
|
|
23
|
+
models,
|
|
24
|
+
plugins: fieldTypePlugins
|
|
25
|
+
} = params;
|
|
26
|
+
const {
|
|
27
|
+
fields
|
|
28
|
+
} = model;
|
|
29
|
+
const fieldTypes = renderFields({
|
|
30
|
+
models,
|
|
31
|
+
model,
|
|
32
|
+
fields,
|
|
33
|
+
type: "manage",
|
|
34
|
+
fieldTypePlugins
|
|
35
|
+
});
|
|
36
|
+
const inputCreateFields = renderInputFields({
|
|
37
|
+
models,
|
|
38
|
+
model,
|
|
39
|
+
fields,
|
|
40
|
+
fieldTypePlugins
|
|
41
|
+
});
|
|
42
|
+
const inputUpdateFields = renderInputFields({
|
|
43
|
+
models,
|
|
44
|
+
model,
|
|
45
|
+
fields: createUpdateFields(fields),
|
|
46
|
+
fieldTypePlugins
|
|
47
|
+
});
|
|
48
|
+
return /* GraphQL */`
|
|
49
|
+
${fieldTypes.map(f => f.typeDefs).join("\n")}
|
|
50
|
+
|
|
51
|
+
type Folder {
|
|
52
|
+
id: ID!
|
|
53
|
+
# Tells us if the current user can manage folder structure.
|
|
54
|
+
canManageStructure: Boolean
|
|
55
|
+
|
|
56
|
+
# Tells us if the current user can manage folder permissions.
|
|
57
|
+
canManagePermissions: Boolean
|
|
58
|
+
|
|
59
|
+
# Tells us if the current user can manage folder content.
|
|
60
|
+
canManageContent: Boolean
|
|
61
|
+
|
|
62
|
+
# Tells us if the folder contains non-inherited permissions.
|
|
63
|
+
hasNonInheritedPermissions: Boolean
|
|
64
|
+
|
|
65
|
+
createdOn: DateTime
|
|
66
|
+
modifiedOn: DateTime
|
|
67
|
+
savedOn: DateTime
|
|
68
|
+
createdBy: AcoUser
|
|
69
|
+
modifiedBy: AcoUser
|
|
70
|
+
savedBy: AcoUser
|
|
71
|
+
|
|
72
|
+
${fieldTypes.map(f => f.fields).join("\n")}
|
|
73
|
+
}
|
|
74
|
+
|
|
75
|
+
${inputCreateFields.map(f => f.typeDefs).join("\n")}
|
|
76
|
+
|
|
77
|
+
input FolderCreateInput {
|
|
78
|
+
# Pass an ID if you want to create a folder with a specific ID.
|
|
79
|
+
id: ID
|
|
80
|
+
|
|
81
|
+
${inputCreateFields.map(f => f.fields).join("\n")}
|
|
82
|
+
}
|
|
83
|
+
|
|
84
|
+
input FolderUpdateInput {
|
|
85
|
+
${inputUpdateFields.map(f => f.fields).join("\n")}
|
|
86
|
+
}
|
|
87
|
+
|
|
88
|
+
input FoldersListWhereInput {
|
|
89
|
+
type: String!
|
|
90
|
+
parentId: ID
|
|
91
|
+
parentId_in: [ID]
|
|
92
|
+
slug: String
|
|
93
|
+
slug_not: String
|
|
94
|
+
slug_contains: String
|
|
95
|
+
slug_not_contains: String
|
|
96
|
+
slug_in: [String]
|
|
97
|
+
slug_not_in: [String]
|
|
98
|
+
slug_startsWith: String
|
|
99
|
+
slug_not_startsWith: String
|
|
100
|
+
path: String
|
|
101
|
+
path_not: String
|
|
102
|
+
path_contains: String
|
|
103
|
+
path_not_contains: String
|
|
104
|
+
path_in: [String]
|
|
105
|
+
path_not_in: [String]
|
|
106
|
+
path_startsWith: String
|
|
107
|
+
path_not_startsWith: String
|
|
108
|
+
createdBy: ID
|
|
109
|
+
}
|
|
110
|
+
|
|
111
|
+
type FolderResponse {
|
|
112
|
+
data: Folder
|
|
113
|
+
error: AcoError
|
|
114
|
+
}
|
|
115
|
+
|
|
116
|
+
type FoldersListResponse {
|
|
117
|
+
data: [Folder]
|
|
118
|
+
error: AcoError
|
|
119
|
+
meta: AcoMeta
|
|
120
|
+
}
|
|
121
|
+
|
|
122
|
+
type FoldersHierarchyData {
|
|
123
|
+
parents: [Folder]
|
|
124
|
+
siblings: [Folder]
|
|
125
|
+
}
|
|
126
|
+
|
|
127
|
+
type FoldersHierarchyResponse {
|
|
128
|
+
data: FoldersHierarchyData
|
|
129
|
+
error: AcoError
|
|
130
|
+
}
|
|
131
|
+
|
|
132
|
+
type FolderLevelPermissionsTarget {
|
|
133
|
+
id: ID!
|
|
134
|
+
type: String!
|
|
135
|
+
target: ID!
|
|
136
|
+
name: String!
|
|
137
|
+
meta: JSON
|
|
138
|
+
}
|
|
139
|
+
|
|
140
|
+
type FolderLevelPermissionsTargetsListMeta {
|
|
141
|
+
totalCount: Int!
|
|
142
|
+
}
|
|
143
|
+
|
|
144
|
+
type FolderLevelPermissionsTargetsListResponse {
|
|
145
|
+
data: [FolderLevelPermissionsTarget]
|
|
146
|
+
meta: FolderLevelPermissionsTargetsListMeta
|
|
147
|
+
error: AcoError
|
|
148
|
+
}
|
|
149
|
+
|
|
150
|
+
type FolderModelResponse {
|
|
151
|
+
data: JSON
|
|
152
|
+
error: AcoError
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
extend type AcoQuery {
|
|
156
|
+
getFolderModel: FolderModelResponse!
|
|
157
|
+
getFolder(id: ID!): FolderResponse
|
|
158
|
+
listFolders(
|
|
159
|
+
where: FoldersListWhereInput!
|
|
160
|
+
limit: Int
|
|
161
|
+
after: String
|
|
162
|
+
sort: AcoSort
|
|
163
|
+
): FoldersListResponse
|
|
164
|
+
getFolderHierarchy(type: String!, id: ID!): FoldersHierarchyResponse
|
|
165
|
+
listFolderLevelPermissionsTargets: FolderLevelPermissionsTargetsListResponse
|
|
166
|
+
}
|
|
167
|
+
|
|
168
|
+
extend type AcoMutation {
|
|
169
|
+
createFolder(data: FolderCreateInput!): FolderResponse
|
|
170
|
+
updateFolder(id: ID!, data: FolderUpdateInput!): FolderResponse
|
|
171
|
+
deleteFolder(id: ID!): AcoBooleanResponse
|
|
172
|
+
}
|
|
173
|
+
|
|
174
|
+
# The base type is dynamically generated from a Folder model
|
|
175
|
+
|
|
176
|
+
extend type AcoFolder_Permissions {
|
|
177
|
+
inheritedFrom: ID
|
|
178
|
+
}
|
|
179
|
+
|
|
180
|
+
extend input AcoFolder_PermissionsInput {
|
|
181
|
+
inheritedFrom: ID
|
|
182
|
+
}
|
|
183
|
+
`;
|
|
184
|
+
};
|
|
185
|
+
|
|
186
|
+
//# sourceMappingURL=createFolderTypeDefs.js.map
|