@webiny/api-website-builder 0.0.0-unstable.6f45466a1d → 0.0.0-unstable.7be00a75a9
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/constants.js +4 -3
- package/constants.js.map +1 -1
- package/domain/page/EntryToPageMapper.js +30 -26
- package/domain/page/EntryToPageMapper.js.map +1 -1
- package/domain/page/PagePath.d.ts +7 -0
- package/domain/page/PagePath.js +26 -0
- package/domain/page/PagePath.js.map +1 -0
- package/domain/page/abstractions.d.ts +22 -3
- package/domain/page/abstractions.js +2 -5
- package/domain/page/abstractions.js.map +1 -1
- package/domain/page/errors.d.ts +12 -0
- package/domain/page/errors.js +48 -31
- package/domain/page/errors.js.map +1 -1
- package/domain/page/page.model.d.ts +8 -1
- package/domain/page/page.model.js +25 -30
- package/domain/page/page.model.js.map +1 -1
- package/domain/permissionsSchema.d.ts +29 -0
- package/domain/permissionsSchema.js +53 -0
- package/domain/permissionsSchema.js.map +1 -0
- package/domain/redirect/EntryToRedirectMapper.js +21 -20
- package/domain/redirect/EntryToRedirectMapper.js.map +1 -1
- package/domain/redirect/abstractions.js +2 -9
- package/domain/redirect/abstractions.js.map +1 -1
- package/domain/redirect/errors.js +28 -31
- package/domain/redirect/errors.js.map +1 -1
- package/domain/redirect/redirect.model.d.ts +8 -1
- package/domain/redirect/redirect.model.js +24 -30
- package/domain/redirect/redirect.model.js.map +1 -1
- package/domain/shared/abstractions.js +0 -3
- package/exports/api/website-builder/nextjs.js +0 -2
- package/exports/api/website-builder/page.d.ts +12 -8
- package/exports/api/website-builder/page.js +12 -10
- package/exports/api/website-builder/redirect.d.ts +4 -4
- package/exports/api/website-builder/redirect.js +4 -6
- package/features/installer/ApiKeyInstaller.d.ts +1 -1
- package/features/installer/ApiKeyInstaller.js +34 -28
- package/features/installer/ApiKeyInstaller.js.map +1 -1
- package/features/installer/feature.d.ts +4 -1
- package/features/installer/feature.js +6 -5
- package/features/installer/feature.js.map +1 -1
- package/features/nextjs/MarkdownContentBuilder.js +67 -76
- package/features/nextjs/MarkdownContentBuilder.js.map +1 -1
- package/features/nextjs/MarkdownContentBuilder.test.js +266 -273
- package/features/nextjs/MarkdownContentBuilder.test.js.map +1 -1
- package/features/nextjs/NextjsConfig.js +43 -46
- package/features/nextjs/NextjsConfig.js.map +1 -1
- package/features/nextjs/abstractions.d.ts +1 -0
- package/features/nextjs/abstractions.js +2 -1
- package/features/nextjs/abstractions.js.map +1 -1
- package/features/nextjs/feature.d.ts +4 -1
- package/features/nextjs/feature.js +6 -5
- package/features/nextjs/feature.js.map +1 -1
- package/features/nextjs/index.js +0 -2
- package/features/pages/CreatePage/CreatePageRepository.js +23 -25
- package/features/pages/CreatePage/CreatePageRepository.js.map +1 -1
- package/features/pages/CreatePage/CreatePageUseCase.d.ts +4 -2
- package/features/pages/CreatePage/CreatePageUseCase.js +33 -30
- package/features/pages/CreatePage/CreatePageUseCase.js.map +1 -1
- package/features/pages/CreatePage/abstractions.d.ts +10 -6
- package/features/pages/CreatePage/abstractions.js +5 -27
- package/features/pages/CreatePage/abstractions.js.map +1 -1
- package/features/pages/CreatePage/events.d.ts +3 -3
- package/features/pages/CreatePage/events.js +17 -15
- package/features/pages/CreatePage/events.js.map +1 -1
- package/features/pages/CreatePage/feature.d.ts +4 -1
- package/features/pages/CreatePage/feature.js +7 -6
- package/features/pages/CreatePage/feature.js.map +1 -1
- package/features/pages/CreatePage/index.d.ts +1 -1
- package/features/pages/CreatePage/index.js +1 -3
- package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js +30 -36
- package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.d.ts +6 -2
- package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js +38 -30
- package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/abstractions.d.ts +11 -7
- package/features/pages/CreatePageRevisionFrom/abstractions.js +5 -27
- package/features/pages/CreatePageRevisionFrom/abstractions.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/events.d.ts +3 -3
- package/features/pages/CreatePageRevisionFrom/events.js +17 -15
- package/features/pages/CreatePageRevisionFrom/events.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/feature.d.ts +4 -1
- package/features/pages/CreatePageRevisionFrom/feature.js +7 -6
- package/features/pages/CreatePageRevisionFrom/feature.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/index.d.ts +1 -1
- package/features/pages/CreatePageRevisionFrom/index.js +1 -3
- package/features/pages/DeletePage/DeletePageRepository.d.ts +1 -3
- package/features/pages/DeletePage/DeletePageRepository.js +18 -28
- package/features/pages/DeletePage/DeletePageRepository.js.map +1 -1
- package/features/pages/DeletePage/DeletePageUseCase.d.ts +7 -5
- package/features/pages/DeletePage/DeletePageUseCase.js +37 -37
- package/features/pages/DeletePage/DeletePageUseCase.js.map +1 -1
- package/features/pages/DeletePage/abstractions.d.ts +12 -7
- package/features/pages/DeletePage/abstractions.js +5 -27
- package/features/pages/DeletePage/abstractions.js.map +1 -1
- package/features/pages/DeletePage/events.d.ts +3 -3
- package/features/pages/DeletePage/events.js +17 -15
- package/features/pages/DeletePage/events.js.map +1 -1
- package/features/pages/DeletePage/feature.d.ts +4 -1
- package/features/pages/DeletePage/feature.js +7 -6
- package/features/pages/DeletePage/feature.js.map +1 -1
- package/features/pages/DeletePage/index.d.ts +1 -1
- package/features/pages/DeletePage/index.js +1 -3
- package/features/pages/DuplicatePage/DuplicatePageRepository.d.ts +2 -2
- package/features/pages/DuplicatePage/DuplicatePageRepository.js +50 -45
- package/features/pages/DuplicatePage/DuplicatePageRepository.js.map +1 -1
- package/features/pages/DuplicatePage/DuplicatePageUseCase.d.ts +4 -2
- package/features/pages/DuplicatePage/DuplicatePageUseCase.js +38 -38
- package/features/pages/DuplicatePage/DuplicatePageUseCase.js.map +1 -1
- package/features/pages/DuplicatePage/abstractions.d.ts +18 -8
- package/features/pages/DuplicatePage/abstractions.js +5 -27
- package/features/pages/DuplicatePage/abstractions.js.map +1 -1
- package/features/pages/DuplicatePage/events.d.ts +3 -3
- package/features/pages/DuplicatePage/events.js +17 -15
- package/features/pages/DuplicatePage/events.js.map +1 -1
- package/features/pages/DuplicatePage/feature.d.ts +4 -1
- package/features/pages/DuplicatePage/feature.js +7 -6
- package/features/pages/DuplicatePage/feature.js.map +1 -1
- package/features/pages/DuplicatePage/index.d.ts +2 -1
- package/features/pages/DuplicatePage/index.js +1 -3
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.d.ts +13 -0
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js +32 -0
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js.map +1 -0
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.d.ts +12 -0
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js +29 -0
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js.map +1 -0
- package/features/pages/GetDeletedPageById/abstractions.d.ts +42 -0
- package/features/pages/GetDeletedPageById/abstractions.js +6 -0
- package/features/pages/GetDeletedPageById/abstractions.js.map +1 -0
- package/features/pages/GetDeletedPageById/feature.d.ts +4 -0
- package/features/pages/GetDeletedPageById/feature.js +13 -0
- package/features/pages/GetDeletedPageById/feature.js.map +1 -0
- package/features/pages/GetDeletedPageById/index.d.ts +1 -0
- package/features/pages/GetDeletedPageById/index.js +1 -0
- package/features/pages/GetPageById/GetPageByIdRepository.js +20 -18
- package/features/pages/GetPageById/GetPageByIdRepository.js.map +1 -1
- package/features/pages/GetPageById/GetPageByIdUseCase.d.ts +3 -1
- package/features/pages/GetPageById/GetPageByIdUseCase.js +24 -10
- package/features/pages/GetPageById/GetPageByIdUseCase.js.map +1 -1
- package/features/pages/GetPageById/abstractions.d.ts +3 -1
- package/features/pages/GetPageById/abstractions.js +3 -12
- package/features/pages/GetPageById/abstractions.js.map +1 -1
- package/features/pages/GetPageById/feature.d.ts +4 -1
- package/features/pages/GetPageById/feature.js +7 -6
- package/features/pages/GetPageById/feature.js.map +1 -1
- package/features/pages/GetPageById/index.js +0 -2
- package/features/pages/GetPageByPath/GetPageByPathRepository.js +26 -26
- package/features/pages/GetPageByPath/GetPageByPathRepository.js.map +1 -1
- package/features/pages/GetPageByPath/GetPageByPathUseCase.d.ts +3 -1
- package/features/pages/GetPageByPath/GetPageByPathUseCase.js +24 -10
- package/features/pages/GetPageByPath/GetPageByPathUseCase.js.map +1 -1
- package/features/pages/GetPageByPath/abstractions.d.ts +3 -1
- package/features/pages/GetPageByPath/abstractions.js +3 -12
- package/features/pages/GetPageByPath/abstractions.js.map +1 -1
- package/features/pages/GetPageByPath/feature.d.ts +4 -1
- package/features/pages/GetPageByPath/feature.js +7 -6
- package/features/pages/GetPageByPath/feature.js.map +1 -1
- package/features/pages/GetPageByPath/index.js +0 -2
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.d.ts +15 -0
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js +55 -0
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js.map +1 -0
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.d.ts +10 -0
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js +21 -0
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js.map +1 -0
- package/features/pages/GetPageLanguagePaths/abstractions.d.ts +20 -0
- package/features/pages/GetPageLanguagePaths/abstractions.js +6 -0
- package/features/pages/GetPageLanguagePaths/abstractions.js.map +1 -0
- package/features/pages/GetPageLanguagePaths/feature.d.ts +4 -0
- package/features/pages/GetPageLanguagePaths/feature.js +13 -0
- package/features/pages/GetPageLanguagePaths/feature.js.map +1 -0
- package/features/pages/GetPageLanguagePaths/index.d.ts +1 -0
- package/features/pages/GetPageLanguagePaths/index.js +1 -0
- package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js +17 -15
- package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js.map +1 -1
- package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.d.ts +3 -1
- package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js +27 -10
- package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js.map +1 -1
- package/features/pages/GetPageRevisions/abstractions.d.ts +3 -1
- package/features/pages/GetPageRevisions/abstractions.js +3 -12
- package/features/pages/GetPageRevisions/abstractions.js.map +1 -1
- package/features/pages/GetPageRevisions/feature.d.ts +4 -1
- package/features/pages/GetPageRevisions/feature.js +7 -6
- package/features/pages/GetPageRevisions/feature.js.map +1 -1
- package/features/pages/GetPageRevisions/index.js +0 -2
- package/features/pages/ListDeletedPages/ListDeletedPagesRepository.d.ts +17 -0
- package/features/pages/ListDeletedPages/ListDeletedPagesRepository.js +50 -0
- package/features/pages/ListDeletedPages/ListDeletedPagesRepository.js.map +1 -0
- package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.d.ts +14 -0
- package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js +38 -0
- package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js.map +1 -0
- package/features/pages/ListDeletedPages/abstractions.d.ts +56 -0
- package/features/pages/ListDeletedPages/abstractions.js +6 -0
- package/features/pages/ListDeletedPages/abstractions.js.map +1 -0
- package/features/pages/ListDeletedPages/feature.d.ts +4 -0
- package/features/pages/ListDeletedPages/feature.js +13 -0
- package/features/pages/ListDeletedPages/feature.js.map +1 -0
- package/features/pages/ListDeletedPages/index.d.ts +1 -0
- package/features/pages/ListDeletedPages/index.js +1 -0
- package/features/pages/ListPages/ListPagesRepository.d.ts +5 -1
- package/features/pages/ListPages/ListPagesRepository.js +39 -28
- package/features/pages/ListPages/ListPagesRepository.js.map +1 -1
- package/features/pages/ListPages/ListPagesUseCase.d.ts +5 -1
- package/features/pages/ListPages/ListPagesUseCase.js +33 -10
- package/features/pages/ListPages/ListPagesUseCase.js.map +1 -1
- package/features/pages/ListPages/abstractions.d.ts +3 -1
- package/features/pages/ListPages/abstractions.js +3 -12
- package/features/pages/ListPages/abstractions.js.map +1 -1
- package/features/pages/ListPages/feature.d.ts +4 -1
- package/features/pages/ListPages/feature.js +7 -6
- package/features/pages/ListPages/feature.js.map +1 -1
- package/features/pages/ListPages/index.js +0 -2
- package/features/pages/MovePage/MovePageRepository.js +25 -27
- package/features/pages/MovePage/MovePageRepository.js.map +1 -1
- package/features/pages/MovePage/MovePageUseCase.d.ts +4 -2
- package/features/pages/MovePage/MovePageUseCase.js +42 -40
- package/features/pages/MovePage/MovePageUseCase.js.map +1 -1
- package/features/pages/MovePage/abstractions.d.ts +11 -7
- package/features/pages/MovePage/abstractions.js +5 -27
- package/features/pages/MovePage/abstractions.js.map +1 -1
- package/features/pages/MovePage/events.d.ts +3 -3
- package/features/pages/MovePage/events.js +17 -15
- package/features/pages/MovePage/events.js.map +1 -1
- package/features/pages/MovePage/feature.d.ts +4 -1
- package/features/pages/MovePage/feature.js +7 -6
- package/features/pages/MovePage/feature.js.map +1 -1
- package/features/pages/MovePage/index.d.ts +1 -1
- package/features/pages/MovePage/index.js +1 -3
- package/features/pages/PublishPage/PublishPageRepository.js +26 -28
- package/features/pages/PublishPage/PublishPageRepository.js.map +1 -1
- package/features/pages/PublishPage/PublishPageUseCase.d.ts +4 -2
- package/features/pages/PublishPage/PublishPageUseCase.js +39 -37
- package/features/pages/PublishPage/PublishPageUseCase.js.map +1 -1
- package/features/pages/PublishPage/abstractions.d.ts +11 -7
- package/features/pages/PublishPage/abstractions.js +5 -27
- package/features/pages/PublishPage/abstractions.js.map +1 -1
- package/features/pages/PublishPage/events.d.ts +3 -3
- package/features/pages/PublishPage/events.js +17 -15
- package/features/pages/PublishPage/events.js.map +1 -1
- package/features/pages/PublishPage/feature.d.ts +4 -1
- package/features/pages/PublishPage/feature.js +7 -6
- package/features/pages/PublishPage/feature.js.map +1 -1
- package/features/pages/PublishPage/index.d.ts +1 -1
- package/features/pages/PublishPage/index.js +1 -3
- package/features/pages/RestorePage/RestorePageRepository.d.ts +13 -0
- package/features/pages/RestorePage/RestorePageRepository.js +31 -0
- package/features/pages/RestorePage/RestorePageRepository.js.map +1 -0
- package/features/pages/RestorePage/RestorePageUseCase.d.ts +16 -0
- package/features/pages/RestorePage/RestorePageUseCase.js +45 -0
- package/features/pages/RestorePage/RestorePageUseCase.js.map +1 -0
- package/features/pages/RestorePage/abstractions.d.ts +59 -0
- package/features/pages/RestorePage/abstractions.js +8 -0
- package/features/pages/RestorePage/abstractions.js.map +1 -0
- package/features/pages/RestorePage/events.d.ts +10 -0
- package/features/pages/RestorePage/events.js +21 -0
- package/features/pages/RestorePage/events.js.map +1 -0
- package/features/pages/RestorePage/feature.d.ts +4 -0
- package/features/pages/RestorePage/feature.js +13 -0
- package/features/pages/RestorePage/feature.js.map +1 -0
- package/features/pages/RestorePage/index.d.ts +1 -0
- package/features/pages/RestorePage/index.js +1 -0
- package/features/pages/TranslatePage/TranslatePageUseCase.d.ts +17 -0
- package/features/pages/TranslatePage/TranslatePageUseCase.js +58 -0
- package/features/pages/TranslatePage/TranslatePageUseCase.js.map +1 -0
- package/features/pages/TranslatePage/abstractions.d.ts +29 -0
- package/features/pages/TranslatePage/abstractions.js +5 -0
- package/features/pages/TranslatePage/abstractions.js.map +1 -0
- package/features/pages/TranslatePage/feature.d.ts +4 -0
- package/features/pages/TranslatePage/feature.js +11 -0
- package/features/pages/TranslatePage/feature.js.map +1 -0
- package/features/pages/TranslatePage/index.d.ts +1 -0
- package/features/pages/TranslatePage/index.js +1 -0
- package/features/pages/TrashPage/TrashPageRepository.d.ts +13 -0
- package/features/pages/TrashPage/TrashPageRepository.js +31 -0
- package/features/pages/TrashPage/TrashPageRepository.js.map +1 -0
- package/features/pages/TrashPage/TrashPageUseCase.d.ts +16 -0
- package/features/pages/TrashPage/TrashPageUseCase.js +45 -0
- package/features/pages/TrashPage/TrashPageUseCase.js.map +1 -0
- package/features/pages/TrashPage/abstractions.d.ts +58 -0
- package/features/pages/TrashPage/abstractions.js +8 -0
- package/features/pages/TrashPage/abstractions.js.map +1 -0
- package/features/pages/TrashPage/events.d.ts +10 -0
- package/features/pages/TrashPage/events.js +21 -0
- package/features/pages/TrashPage/events.js.map +1 -0
- package/features/pages/TrashPage/feature.d.ts +4 -0
- package/features/pages/TrashPage/feature.js +13 -0
- package/features/pages/TrashPage/feature.js.map +1 -0
- package/features/pages/TrashPage/index.d.ts +1 -0
- package/features/pages/TrashPage/index.js +1 -0
- package/features/pages/UnpublishPage/UnpublishPageRepository.js +26 -28
- package/features/pages/UnpublishPage/UnpublishPageRepository.js.map +1 -1
- package/features/pages/UnpublishPage/UnpublishPageUseCase.d.ts +4 -2
- package/features/pages/UnpublishPage/UnpublishPageUseCase.js +38 -36
- package/features/pages/UnpublishPage/UnpublishPageUseCase.js.map +1 -1
- package/features/pages/UnpublishPage/abstractions.d.ts +11 -7
- package/features/pages/UnpublishPage/abstractions.js +5 -27
- package/features/pages/UnpublishPage/abstractions.js.map +1 -1
- package/features/pages/UnpublishPage/events.d.ts +3 -3
- package/features/pages/UnpublishPage/events.js +17 -15
- package/features/pages/UnpublishPage/events.js.map +1 -1
- package/features/pages/UnpublishPage/feature.d.ts +4 -1
- package/features/pages/UnpublishPage/feature.js +7 -6
- package/features/pages/UnpublishPage/feature.js.map +1 -1
- package/features/pages/UnpublishPage/index.d.ts +1 -1
- package/features/pages/UnpublishPage/index.js +1 -3
- package/features/pages/UpdatePage/UpdatePageRepository.js +30 -34
- package/features/pages/UpdatePage/UpdatePageRepository.js.map +1 -1
- package/features/pages/UpdatePage/UpdatePageUseCase.d.ts +4 -2
- package/features/pages/UpdatePage/UpdatePageUseCase.js +47 -45
- package/features/pages/UpdatePage/UpdatePageUseCase.js.map +1 -1
- package/features/pages/UpdatePage/abstractions.d.ts +12 -9
- package/features/pages/UpdatePage/abstractions.js +5 -27
- package/features/pages/UpdatePage/abstractions.js.map +1 -1
- package/features/pages/UpdatePage/events.d.ts +3 -3
- package/features/pages/UpdatePage/events.js +17 -15
- package/features/pages/UpdatePage/events.js.map +1 -1
- package/features/pages/UpdatePage/feature.d.ts +4 -1
- package/features/pages/UpdatePage/feature.js +7 -6
- package/features/pages/UpdatePage/feature.js.map +1 -1
- package/features/pages/UpdatePage/index.d.ts +1 -1
- package/features/pages/UpdatePage/index.js +1 -3
- package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionRepository.d.ts +15 -0
- package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionRepository.js +40 -0
- package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionRepository.js.map +1 -0
- package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionUseCase.d.ts +16 -0
- package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionUseCase.js +56 -0
- package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionUseCase.js.map +1 -0
- package/features/pages/UpdatePageRevisionDescription/abstractions.d.ts +67 -0
- package/features/pages/UpdatePageRevisionDescription/abstractions.js +8 -0
- package/features/pages/UpdatePageRevisionDescription/abstractions.js.map +1 -0
- package/features/pages/UpdatePageRevisionDescription/events.d.ts +10 -0
- package/features/pages/UpdatePageRevisionDescription/events.js +21 -0
- package/features/pages/UpdatePageRevisionDescription/events.js.map +1 -0
- package/features/pages/UpdatePageRevisionDescription/feature.d.ts +4 -0
- package/features/pages/UpdatePageRevisionDescription/feature.js +13 -0
- package/features/pages/UpdatePageRevisionDescription/feature.js.map +1 -0
- package/features/pages/UpdatePageRevisionDescription/index.d.ts +1 -0
- package/features/pages/UpdatePageRevisionDescription/index.js +1 -0
- package/features/permissions/abstractions.d.ts +34 -0
- package/features/permissions/abstractions.js +6 -0
- package/features/permissions/abstractions.js.map +1 -0
- package/features/permissions/feature.d.ts +4 -0
- package/features/permissions/feature.js +7 -0
- package/features/permissions/feature.js.map +1 -0
- package/features/redirects/CreateRedirect/CreateRedirectRepository.js +23 -21
- package/features/redirects/CreateRedirect/CreateRedirectRepository.js.map +1 -1
- package/features/redirects/CreateRedirect/CreateRedirectUseCase.d.ts +4 -2
- package/features/redirects/CreateRedirect/CreateRedirectUseCase.js +33 -30
- package/features/redirects/CreateRedirect/CreateRedirectUseCase.js.map +1 -1
- package/features/redirects/CreateRedirect/abstractions.d.ts +11 -7
- package/features/redirects/CreateRedirect/abstractions.js +5 -27
- package/features/redirects/CreateRedirect/abstractions.js.map +1 -1
- package/features/redirects/CreateRedirect/events.d.ts +3 -3
- package/features/redirects/CreateRedirect/events.js +17 -15
- package/features/redirects/CreateRedirect/events.js.map +1 -1
- package/features/redirects/CreateRedirect/feature.d.ts +4 -1
- package/features/redirects/CreateRedirect/feature.js +7 -6
- package/features/redirects/CreateRedirect/feature.js.map +1 -1
- package/features/redirects/CreateRedirect/index.d.ts +1 -1
- package/features/redirects/CreateRedirect/index.js +1 -3
- package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js +19 -17
- package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js.map +1 -1
- package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.d.ts +4 -2
- package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js +37 -37
- package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js.map +1 -1
- package/features/redirects/DeleteRedirect/abstractions.d.ts +11 -7
- package/features/redirects/DeleteRedirect/abstractions.js +5 -27
- package/features/redirects/DeleteRedirect/abstractions.js.map +1 -1
- package/features/redirects/DeleteRedirect/events.d.ts +3 -3
- package/features/redirects/DeleteRedirect/events.js +17 -15
- package/features/redirects/DeleteRedirect/events.js.map +1 -1
- package/features/redirects/DeleteRedirect/feature.d.ts +4 -1
- package/features/redirects/DeleteRedirect/feature.js +7 -6
- package/features/redirects/DeleteRedirect/feature.js.map +1 -1
- package/features/redirects/DeleteRedirect/index.d.ts +1 -1
- package/features/redirects/DeleteRedirect/index.js +1 -3
- package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js +22 -21
- package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js.map +1 -1
- package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.d.ts +3 -1
- package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js +21 -12
- package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js.map +1 -1
- package/features/redirects/GetActiveRedirects/abstractions.d.ts +3 -1
- package/features/redirects/GetActiveRedirects/abstractions.js +3 -12
- package/features/redirects/GetActiveRedirects/abstractions.js.map +1 -1
- package/features/redirects/GetActiveRedirects/feature.d.ts +4 -1
- package/features/redirects/GetActiveRedirects/feature.js +7 -6
- package/features/redirects/GetActiveRedirects/feature.js.map +1 -1
- package/features/redirects/GetActiveRedirects/index.js +0 -2
- package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js +20 -18
- package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js.map +1 -1
- package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.d.ts +3 -1
- package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js +25 -12
- package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js.map +1 -1
- package/features/redirects/GetRedirectById/abstractions.d.ts +3 -1
- package/features/redirects/GetRedirectById/abstractions.js +3 -12
- package/features/redirects/GetRedirectById/abstractions.js.map +1 -1
- package/features/redirects/GetRedirectById/feature.d.ts +4 -1
- package/features/redirects/GetRedirectById/feature.js +7 -6
- package/features/redirects/GetRedirectById/feature.js.map +1 -1
- package/features/redirects/GetRedirectById/index.js +0 -2
- package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js +23 -20
- package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.d.ts +3 -3
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js +14 -17
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.d.ts +3 -3
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js +14 -17
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.d.ts +3 -3
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js +14 -18
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/abstractions.d.ts +1 -0
- package/features/redirects/InvalidateRedirectsCache/abstractions.js +2 -6
- package/features/redirects/InvalidateRedirectsCache/abstractions.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/feature.d.ts +4 -1
- package/features/redirects/InvalidateRedirectsCache/feature.js +9 -8
- package/features/redirects/InvalidateRedirectsCache/feature.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/index.js +0 -2
- package/features/redirects/ListRedirects/ListRedirectsRepository.js +35 -34
- package/features/redirects/ListRedirects/ListRedirectsRepository.js.map +1 -1
- package/features/redirects/ListRedirects/ListRedirectsUseCase.d.ts +5 -1
- package/features/redirects/ListRedirects/ListRedirectsUseCase.js +34 -12
- package/features/redirects/ListRedirects/ListRedirectsUseCase.js.map +1 -1
- package/features/redirects/ListRedirects/abstractions.d.ts +8 -5
- package/features/redirects/ListRedirects/abstractions.js +3 -16
- package/features/redirects/ListRedirects/abstractions.js.map +1 -1
- package/features/redirects/ListRedirects/feature.d.ts +4 -1
- package/features/redirects/ListRedirects/feature.js +7 -6
- package/features/redirects/ListRedirects/feature.js.map +1 -1
- package/features/redirects/ListRedirects/index.js +0 -2
- package/features/redirects/MoveRedirect/MoveRedirectRepository.js +25 -27
- package/features/redirects/MoveRedirect/MoveRedirectRepository.js.map +1 -1
- package/features/redirects/MoveRedirect/MoveRedirectUseCase.d.ts +4 -2
- package/features/redirects/MoveRedirect/MoveRedirectUseCase.js +42 -40
- package/features/redirects/MoveRedirect/MoveRedirectUseCase.js.map +1 -1
- package/features/redirects/MoveRedirect/abstractions.d.ts +11 -7
- package/features/redirects/MoveRedirect/abstractions.js +5 -27
- package/features/redirects/MoveRedirect/abstractions.js.map +1 -1
- package/features/redirects/MoveRedirect/events.d.ts +3 -3
- package/features/redirects/MoveRedirect/events.js +17 -15
- package/features/redirects/MoveRedirect/events.js.map +1 -1
- package/features/redirects/MoveRedirect/feature.d.ts +4 -1
- package/features/redirects/MoveRedirect/feature.js +7 -6
- package/features/redirects/MoveRedirect/feature.js.map +1 -1
- package/features/redirects/MoveRedirect/index.d.ts +1 -1
- package/features/redirects/MoveRedirect/index.js +1 -3
- package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js +31 -35
- package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js.map +1 -1
- package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.d.ts +4 -2
- package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js +47 -45
- package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js.map +1 -1
- package/features/redirects/UpdateRedirect/abstractions.d.ts +11 -7
- package/features/redirects/UpdateRedirect/abstractions.js +5 -27
- package/features/redirects/UpdateRedirect/abstractions.js.map +1 -1
- package/features/redirects/UpdateRedirect/events.d.ts +3 -3
- package/features/redirects/UpdateRedirect/events.js +17 -15
- package/features/redirects/UpdateRedirect/events.js.map +1 -1
- package/features/redirects/UpdateRedirect/feature.d.ts +4 -1
- package/features/redirects/UpdateRedirect/feature.js +7 -6
- package/features/redirects/UpdateRedirect/feature.js.map +1 -1
- package/features/redirects/UpdateRedirect/index.d.ts +1 -1
- package/features/redirects/UpdateRedirect/index.js +1 -3
- package/features/tenantManager/TenantModelExtension.js +52 -32
- package/features/tenantManager/TenantModelExtension.js.map +1 -1
- package/features/tenantManager/feature.d.ts +4 -1
- package/features/tenantManager/feature.js +6 -5
- package/features/tenantManager/feature.js.map +1 -1
- package/features/webhooks/WbWebhookEventProvider.d.ts +8 -0
- package/features/webhooks/WbWebhookEventProvider.js +95 -0
- package/features/webhooks/WbWebhookEventProvider.js.map +1 -0
- package/features/webhooks/constants.d.ts +12 -0
- package/features/webhooks/constants.js +16 -0
- package/features/webhooks/constants.js.map +1 -0
- package/features/webhooks/feature.d.ts +4 -0
- package/features/webhooks/feature.js +31 -0
- package/features/webhooks/feature.js.map +1 -0
- package/features/webhooks/handlers/OnPageCreatedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnPageCreatedHandler.js +22 -0
- package/features/webhooks/handlers/OnPageCreatedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnPageDeletedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnPageDeletedHandler.js +22 -0
- package/features/webhooks/handlers/OnPageDeletedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnPagePublishedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnPagePublishedHandler.js +22 -0
- package/features/webhooks/handlers/OnPagePublishedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnPageRestoredHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnPageRestoredHandler.js +22 -0
- package/features/webhooks/handlers/OnPageRestoredHandler.js.map +1 -0
- package/features/webhooks/handlers/OnPageTrashedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnPageTrashedHandler.js +22 -0
- package/features/webhooks/handlers/OnPageTrashedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnPageUnpublishedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnPageUnpublishedHandler.js +22 -0
- package/features/webhooks/handlers/OnPageUnpublishedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnPageUpdatedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnPageUpdatedHandler.js +23 -0
- package/features/webhooks/handlers/OnPageUpdatedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnRedirectCreatedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnRedirectCreatedHandler.js +22 -0
- package/features/webhooks/handlers/OnRedirectCreatedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnRedirectDeletedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnRedirectDeletedHandler.js +22 -0
- package/features/webhooks/handlers/OnRedirectDeletedHandler.js.map +1 -0
- package/features/webhooks/handlers/OnRedirectUpdatedHandler.d.ts +11 -0
- package/features/webhooks/handlers/OnRedirectUpdatedHandler.js +23 -0
- package/features/webhooks/handlers/OnRedirectUpdatedHandler.js.map +1 -0
- package/graphql/createGraphQL.js +15 -12
- package/graphql/createGraphQL.js.map +1 -1
- package/graphql/nextjs/NextjsGraphQLSchema.js +28 -29
- package/graphql/nextjs/NextjsGraphQLSchema.js.map +1 -1
- package/graphql/pages/pages.gql.js +226 -254
- package/graphql/pages/pages.gql.js.map +1 -1
- package/graphql/pages/pages.typeDefs.d.ts +1 -1
- package/graphql/pages/pages.typeDefs.js +24 -2
- package/graphql/pages/pages.typeDefs.js.map +1 -1
- package/graphql/redirects/redirects.gql.js +56 -86
- package/graphql/redirects/redirects.gql.js.map +1 -1
- package/graphql/redirects/redirects.typeDefs.js +3 -4
- package/graphql/redirects/redirects.typeDefs.js.map +1 -1
- package/index.d.ts +1 -1
- package/index.js +73 -55
- package/index.js.map +1 -1
- package/package.json +30 -27
- package/rest/ActiveRedirectDto.js +0 -3
- package/rest/ActiveRedirectRestMapper.js +10 -9
- package/rest/ActiveRedirectRestMapper.js.map +1 -1
- package/rest/getRedirects.js +19 -26
- package/rest/getRedirects.js.map +1 -1
- package/utils/ensureAuthentication.js +6 -9
- package/utils/ensureAuthentication.js.map +1 -1
- package/utils/resolve.js +7 -6
- package/utils/resolve.js.map +1 -1
- package/domain/shared/abstractions.js.map +0 -1
- package/exports/api/website-builder/nextjs.js.map +0 -1
- package/exports/api/website-builder/page.js.map +0 -1
- package/exports/api/website-builder/redirect.js.map +0 -1
- package/features/nextjs/index.js.map +0 -1
- package/features/pages/CreatePage/index.js.map +0 -1
- package/features/pages/CreatePageRevisionFrom/index.js.map +0 -1
- package/features/pages/DeletePage/index.js.map +0 -1
- package/features/pages/DuplicatePage/index.js.map +0 -1
- package/features/pages/GetPageById/index.js.map +0 -1
- package/features/pages/GetPageByPath/index.js.map +0 -1
- package/features/pages/GetPageRevisions/index.js.map +0 -1
- package/features/pages/ListPages/index.js.map +0 -1
- package/features/pages/MovePage/index.js.map +0 -1
- package/features/pages/PagePermissions/feature.d.ts +0 -1
- package/features/pages/PagePermissions/feature.js +0 -53
- package/features/pages/PagePermissions/feature.js.map +0 -1
- package/features/pages/PublishPage/index.js.map +0 -1
- package/features/pages/UnpublishPage/index.js.map +0 -1
- package/features/pages/UpdatePage/index.js.map +0 -1
- package/features/redirects/CreateRedirect/index.js.map +0 -1
- package/features/redirects/DeleteRedirect/index.js.map +0 -1
- package/features/redirects/GetActiveRedirects/index.js.map +0 -1
- package/features/redirects/GetRedirectById/index.js.map +0 -1
- package/features/redirects/InvalidateRedirectsCache/index.js.map +0 -1
- package/features/redirects/ListRedirects/index.js.map +0 -1
- package/features/redirects/MoveRedirect/index.js.map +0 -1
- package/features/redirects/RedirectPermissions/feature.d.ts +0 -1
- package/features/redirects/RedirectPermissions/feature.js +0 -45
- package/features/redirects/RedirectPermissions/feature.js.map +0 -1
- package/features/redirects/UpdateRedirect/index.js.map +0 -1
- package/rest/ActiveRedirectDto.js.map +0 -1
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import type { Result } from "@webiny/feature/api";
|
|
2
|
+
import type { WbPage } from "../../../domain/page/abstractions.js";
|
|
3
|
+
import type { PagePersistenceError, PageNotAuthorizedError } from "../../../domain/page/errors.js";
|
|
4
|
+
import type { CmsEntryListSort, CmsEntryListWhere } from "@webiny/api-headless-cms/types/index.js";
|
|
5
|
+
export interface IListDeletedPagesParams {
|
|
6
|
+
where: CmsEntryListWhere;
|
|
7
|
+
sort: CmsEntryListSort;
|
|
8
|
+
limit: number;
|
|
9
|
+
after: string | null;
|
|
10
|
+
search?: string;
|
|
11
|
+
}
|
|
12
|
+
export interface IListDeletedPagesMeta {
|
|
13
|
+
hasMoreItems: boolean;
|
|
14
|
+
totalCount: number;
|
|
15
|
+
cursor: string | null;
|
|
16
|
+
}
|
|
17
|
+
export type IListDeletedPagesResult = {
|
|
18
|
+
pages: WbPage[];
|
|
19
|
+
meta: IListDeletedPagesMeta;
|
|
20
|
+
};
|
|
21
|
+
/**
|
|
22
|
+
* ListDeletedPages repository interface
|
|
23
|
+
*/
|
|
24
|
+
export interface IListDeletedPagesRepository {
|
|
25
|
+
execute(params: IListDeletedPagesParams): Promise<Result<IListDeletedPagesResult, RepositoryError>>;
|
|
26
|
+
}
|
|
27
|
+
export interface IListDeletedPagesRepositoryErrors {
|
|
28
|
+
persistence: PagePersistenceError;
|
|
29
|
+
}
|
|
30
|
+
type RepositoryError = IListDeletedPagesRepositoryErrors[keyof IListDeletedPagesRepositoryErrors];
|
|
31
|
+
export declare const ListDeletedPagesRepository: import("@webiny/di").Abstraction<IListDeletedPagesRepository>;
|
|
32
|
+
export declare namespace ListDeletedPagesRepository {
|
|
33
|
+
type Interface = IListDeletedPagesRepository;
|
|
34
|
+
type Error = RepositoryError;
|
|
35
|
+
type Params = IListDeletedPagesParams;
|
|
36
|
+
type Return = Promise<Result<IListDeletedPagesResult, RepositoryError>>;
|
|
37
|
+
}
|
|
38
|
+
/**
|
|
39
|
+
* ListDeletedPages use case interface
|
|
40
|
+
*/
|
|
41
|
+
export interface IListDeletedPagesUseCase {
|
|
42
|
+
execute(params: IListDeletedPagesParams): Promise<Result<IListDeletedPagesResult, UseCaseError>>;
|
|
43
|
+
}
|
|
44
|
+
export interface IListDeletedPagesUseCaseErrors {
|
|
45
|
+
notAuthorized: PageNotAuthorizedError;
|
|
46
|
+
persistence: PagePersistenceError;
|
|
47
|
+
}
|
|
48
|
+
type UseCaseError = IListDeletedPagesUseCaseErrors[keyof IListDeletedPagesUseCaseErrors];
|
|
49
|
+
export declare const ListDeletedPagesUseCase: import("@webiny/di").Abstraction<IListDeletedPagesUseCase>;
|
|
50
|
+
export declare namespace ListDeletedPagesUseCase {
|
|
51
|
+
type Interface = IListDeletedPagesUseCase;
|
|
52
|
+
type Error = UseCaseError;
|
|
53
|
+
type Params = IListDeletedPagesParams;
|
|
54
|
+
type Return = Promise<Result<IListDeletedPagesResult, UseCaseError>>;
|
|
55
|
+
}
|
|
56
|
+
export {};
|
|
@@ -0,0 +1,6 @@
|
|
|
1
|
+
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
+
const ListDeletedPagesRepository = createAbstraction("Wb/ListDeletedPagesRepository");
|
|
3
|
+
const ListDeletedPagesUseCase = createAbstraction("Wb/ListDeletedPagesUseCase");
|
|
4
|
+
export { ListDeletedPagesRepository, ListDeletedPagesUseCase };
|
|
5
|
+
|
|
6
|
+
//# sourceMappingURL=abstractions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/pages/ListDeletedPages/abstractions.js","sources":["../../../../src/features/pages/ListDeletedPages/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { PagePersistenceError, PageNotAuthorizedError } from \"~/domain/page/errors.js\";\nimport type { CmsEntryListSort, CmsEntryListWhere } from \"@webiny/api-headless-cms/types/index.js\";\n\nexport interface IListDeletedPagesParams {\n where: CmsEntryListWhere;\n sort: CmsEntryListSort;\n limit: number;\n after: string | null;\n search?: string;\n}\n\nexport interface IListDeletedPagesMeta {\n hasMoreItems: boolean;\n totalCount: number;\n cursor: string | null;\n}\n\nexport type IListDeletedPagesResult = { pages: WbPage[]; meta: IListDeletedPagesMeta };\n\n/**\n * ListDeletedPages repository interface\n */\nexport interface IListDeletedPagesRepository {\n execute(\n params: IListDeletedPagesParams\n ): Promise<Result<IListDeletedPagesResult, RepositoryError>>;\n}\n\nexport interface IListDeletedPagesRepositoryErrors {\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IListDeletedPagesRepositoryErrors[keyof IListDeletedPagesRepositoryErrors];\n\nexport const ListDeletedPagesRepository = createAbstraction<IListDeletedPagesRepository>(\n \"Wb/ListDeletedPagesRepository\"\n);\n\nexport namespace ListDeletedPagesRepository {\n export type Interface = IListDeletedPagesRepository;\n export type Error = RepositoryError;\n export type Params = IListDeletedPagesParams;\n export type Return = Promise<Result<IListDeletedPagesResult, RepositoryError>>;\n}\n\n/**\n * ListDeletedPages use case interface\n */\nexport interface IListDeletedPagesUseCase {\n execute(\n params: IListDeletedPagesParams\n ): Promise<Result<IListDeletedPagesResult, UseCaseError>>;\n}\n\nexport interface IListDeletedPagesUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IListDeletedPagesUseCaseErrors[keyof IListDeletedPagesUseCaseErrors];\n\nexport const ListDeletedPagesUseCase = createAbstraction<IListDeletedPagesUseCase>(\n \"Wb/ListDeletedPagesUseCase\"\n);\n\nexport namespace ListDeletedPagesUseCase {\n export type Interface = IListDeletedPagesUseCase;\n export type Error = UseCaseError;\n export type Params = IListDeletedPagesParams;\n export type Return = Promise<Result<IListDeletedPagesResult, UseCaseError>>;\n}\n"],"names":["ListDeletedPagesRepository","createAbstraction","ListDeletedPagesUseCase"],"mappings":";AAqCO,MAAMA,6BAA6BC,kBACtC;AA0BG,MAAMC,0BAA0BD,kBACnC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { createFeature } from "@webiny/feature/api";
|
|
2
|
+
import { ListDeletedPagesRepository } from "./ListDeletedPagesRepository.js";
|
|
3
|
+
import { ListDeletedPagesUseCase } from "./ListDeletedPagesUseCase.js";
|
|
4
|
+
const ListDeletedPagesFeature = createFeature({
|
|
5
|
+
name: "WebsiteBuilder/ListDeletedPages",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(ListDeletedPagesRepository).inSingletonScope();
|
|
8
|
+
container.register(ListDeletedPagesUseCase);
|
|
9
|
+
}
|
|
10
|
+
});
|
|
11
|
+
export { ListDeletedPagesFeature };
|
|
12
|
+
|
|
13
|
+
//# sourceMappingURL=feature.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"features/pages/ListDeletedPages/feature.js","sources":["../../../../src/features/pages/ListDeletedPages/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListDeletedPagesRepository } from \"./ListDeletedPagesRepository.js\";\nimport { ListDeletedPagesUseCase } from \"./ListDeletedPagesUseCase.js\";\n\nexport const ListDeletedPagesFeature = createFeature({\n name: \"WebsiteBuilder/ListDeletedPages\",\n register(container) {\n container.register(ListDeletedPagesRepository).inSingletonScope();\n container.register(ListDeletedPagesUseCase);\n }\n});\n"],"names":["ListDeletedPagesFeature","createFeature","container","ListDeletedPagesRepository","ListDeletedPagesUseCase"],"mappings":";;;AAIO,MAAMA,0BAA0BC,cAAc;IACjD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,4BAA4B,gBAAgB;QAC/DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./abstractions.js";
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
export * from "./abstractions.js";
|
|
@@ -1,10 +1,14 @@
|
|
|
1
1
|
import { ListPagesRepository as RepositoryAbstraction } from "./abstractions.js";
|
|
2
2
|
import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries";
|
|
3
3
|
import { PageModel } from "../../../domain/page/abstractions.js";
|
|
4
|
+
import { CmsWhereMapper } from "@webiny/api-headless-cms/features/whereMapper/abstractions.js";
|
|
5
|
+
import { CmsSortMapper } from "@webiny/api-headless-cms/features/sortMapper/abstractions.js";
|
|
4
6
|
declare class ListPagesRepositoryImpl implements RepositoryAbstraction.Interface {
|
|
5
7
|
private pageModel;
|
|
6
8
|
private listLatestEntries;
|
|
7
|
-
|
|
9
|
+
private whereMapper;
|
|
10
|
+
private sortMapper;
|
|
11
|
+
constructor(pageModel: PageModel.Interface, listLatestEntries: ListLatestEntriesUseCase.Interface, whereMapper: CmsWhereMapper.Interface, sortMapper: CmsSortMapper.Interface);
|
|
8
12
|
execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return;
|
|
9
13
|
}
|
|
10
14
|
export declare const ListPagesRepository: typeof ListPagesRepositoryImpl & {
|
|
@@ -1,39 +1,50 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import { ListPagesRepository
|
|
2
|
+
import { ListPagesRepository } from "./abstractions.js";
|
|
3
3
|
import { ListLatestEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries";
|
|
4
4
|
import { PageModel } from "../../../domain/page/abstractions.js";
|
|
5
5
|
import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
|
|
6
6
|
import { PagePersistenceError } from "../../../domain/page/errors.js";
|
|
7
|
+
import { CmsWhereMapper } from "@webiny/api-headless-cms/features/whereMapper/abstractions.js";
|
|
8
|
+
import { CmsSortMapper } from "@webiny/api-headless-cms/features/sortMapper/abstractions.js";
|
|
7
9
|
class ListPagesRepositoryImpl {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
10
|
+
constructor(pageModel, listLatestEntries, whereMapper, sortMapper){
|
|
11
|
+
this.pageModel = pageModel;
|
|
12
|
+
this.listLatestEntries = listLatestEntries;
|
|
13
|
+
this.whereMapper = whereMapper;
|
|
14
|
+
this.sortMapper = sortMapper;
|
|
15
|
+
}
|
|
16
|
+
async execute(params) {
|
|
17
|
+
const result = await this.listLatestEntries.execute(this.pageModel, {
|
|
18
|
+
where: this.whereMapper.map({
|
|
19
|
+
fields: this.pageModel.fields,
|
|
20
|
+
input: params.where
|
|
21
|
+
}),
|
|
22
|
+
sort: this.sortMapper.map({
|
|
23
|
+
fields: this.pageModel.fields,
|
|
24
|
+
input: params.sort
|
|
25
|
+
}),
|
|
26
|
+
limit: params.limit,
|
|
27
|
+
after: params.after,
|
|
28
|
+
search: params.search
|
|
29
|
+
});
|
|
30
|
+
if (result.isFail()) return Result.fail(new PagePersistenceError(result.error));
|
|
31
|
+
const { entries, meta } = result.value;
|
|
32
|
+
const pages = entries.map((entry)=>EntryToPageMapper.toPage(entry));
|
|
33
|
+
return Result.ok({
|
|
34
|
+
pages,
|
|
35
|
+
meta
|
|
36
|
+
});
|
|
22
37
|
}
|
|
23
|
-
const {
|
|
24
|
-
entries,
|
|
25
|
-
meta
|
|
26
|
-
} = result.value;
|
|
27
|
-
const pages = entries.map(entry => EntryToPageMapper.toPage(entry));
|
|
28
|
-
return Result.ok({
|
|
29
|
-
pages,
|
|
30
|
-
meta
|
|
31
|
-
});
|
|
32
|
-
}
|
|
33
38
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
39
|
+
const ListPagesRepository_ListPagesRepository = ListPagesRepository.createImplementation({
|
|
40
|
+
implementation: ListPagesRepositoryImpl,
|
|
41
|
+
dependencies: [
|
|
42
|
+
PageModel,
|
|
43
|
+
ListLatestEntriesUseCase,
|
|
44
|
+
CmsWhereMapper,
|
|
45
|
+
CmsSortMapper
|
|
46
|
+
]
|
|
37
47
|
});
|
|
48
|
+
export { ListPagesRepository_ListPagesRepository as ListPagesRepository };
|
|
38
49
|
|
|
39
50
|
//# sourceMappingURL=ListPagesRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/ListPages/ListPagesRepository.js","sources":["../../../../src/features/pages/ListPages/ListPagesRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListPagesRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { ListLatestEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport { PagePersistenceError } from \"~/domain/page/errors.js\";\nimport { CmsWhereMapper } from \"@webiny/api-headless-cms/features/whereMapper/abstractions.js\";\nimport { CmsSortMapper } from \"@webiny/api-headless-cms/features/sortMapper/abstractions.js\";\n\nclass ListPagesRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private listLatestEntries: ListLatestEntriesUseCase.Interface,\n private whereMapper: CmsWhereMapper.Interface,\n private sortMapper: CmsSortMapper.Interface\n ) {}\n\n async execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return {\n const result = await this.listLatestEntries.execute(this.pageModel, {\n where: this.whereMapper.map({\n fields: this.pageModel.fields,\n input: params.where\n }),\n sort: this.sortMapper.map({\n fields: this.pageModel.fields,\n input: params.sort\n }),\n limit: params.limit,\n after: params.after,\n search: params.search\n });\n\n if (result.isFail()) {\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const { entries, meta } = result.value;\n const pages = entries.map(entry => EntryToPageMapper.toPage(entry));\n\n return Result.ok({ pages, meta });\n }\n}\n\nexport const ListPagesRepository = RepositoryAbstraction.createImplementation({\n implementation: ListPagesRepositoryImpl,\n dependencies: [PageModel, ListLatestEntriesUseCase, CmsWhereMapper, CmsSortMapper]\n});\n"],"names":["ListPagesRepositoryImpl","pageModel","listLatestEntries","whereMapper","sortMapper","params","result","Result","PagePersistenceError","entries","meta","pages","entry","EntryToPageMapper","ListPagesRepository","RepositoryAbstraction","PageModel","ListLatestEntriesUseCase","CmsWhereMapper","CmsSortMapper"],"mappings":";;;;;;;;AASA,MAAMA;IACF,YACYC,SAA8B,EAC9BC,iBAAqD,EACrDC,WAAqC,EACrCC,UAAmC,CAC7C;aAJUH,SAAS,GAATA;aACAC,iBAAiB,GAAjBA;aACAC,WAAW,GAAXA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,MAAoC,EAAgC;QAC9E,MAAMC,SAAS,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE;YAChE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;gBACxB,QAAQ,IAAI,CAAC,SAAS,CAAC,MAAM;gBAC7B,OAAOD,OAAO,KAAK;YACvB;YACA,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBACtB,QAAQ,IAAI,CAAC,SAAS,CAAC,MAAM;gBAC7B,OAAOA,OAAO,IAAI;YACtB;YACA,OAAOA,OAAO,KAAK;YACnB,OAAOA,OAAO,KAAK;YACnB,QAAQA,OAAO,MAAM;QACzB;QAEA,IAAIC,OAAO,MAAM,IACb,OAAOC,OAAO,IAAI,CAAC,IAAIC,qBAAqBF,OAAO,KAAK;QAG5D,MAAM,EAAEG,OAAO,EAAEC,IAAI,EAAE,GAAGJ,OAAO,KAAK;QACtC,MAAMK,QAAQF,QAAQ,GAAG,CAACG,CAAAA,QAASC,kBAAkB,MAAM,CAACD;QAE5D,OAAOL,OAAO,EAAE,CAAC;YAAEI;YAAOD;QAAK;IACnC;AACJ;AAEO,MAAMI,0CAAsBC,oBAAAA,oBAA0C,CAAC;IAC1E,gBAAgBf;IAChB,cAAc;QAACgB;QAAWC;QAA0BC;QAAgBC;KAAc;AACtF"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
1
|
import { ListPagesUseCase as UseCaseAbstraction, ListPagesRepository } from "./abstractions.js";
|
|
2
|
+
import { WbPermissions } from "../../../features/permissions/abstractions.js";
|
|
3
|
+
import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
|
|
2
4
|
declare class ListPagesUseCaseImpl implements UseCaseAbstraction.Interface {
|
|
5
|
+
private permissions;
|
|
6
|
+
private identityContext;
|
|
3
7
|
private repository;
|
|
4
|
-
constructor(repository: ListPagesRepository.Interface);
|
|
8
|
+
constructor(permissions: WbPermissions.Interface, identityContext: IdentityContext.Interface, repository: ListPagesRepository.Interface);
|
|
5
9
|
execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return;
|
|
6
10
|
}
|
|
7
11
|
export declare const ListPagesUseCase: typeof ListPagesUseCaseImpl & {
|
|
@@ -1,15 +1,38 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { Result } from "@webiny/feature/api";
|
|
2
|
+
import { ListPagesRepository, ListPagesUseCase } from "./abstractions.js";
|
|
3
|
+
import { WbPermissions } from "../../permissions/abstractions.js";
|
|
4
|
+
import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
|
|
5
|
+
import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
|
|
2
6
|
class ListPagesUseCaseImpl {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
7
|
+
constructor(permissions, identityContext, repository){
|
|
8
|
+
this.permissions = permissions;
|
|
9
|
+
this.identityContext = identityContext;
|
|
10
|
+
this.repository = repository;
|
|
11
|
+
}
|
|
12
|
+
async execute(params) {
|
|
13
|
+
const hasPermission = await this.permissions.canRead("page");
|
|
14
|
+
if (!hasPermission) return Result.fail(new PageNotAuthorizedError());
|
|
15
|
+
const where = {
|
|
16
|
+
...params.where
|
|
17
|
+
};
|
|
18
|
+
if (await this.permissions.onlyOwnRecords("page")) {
|
|
19
|
+
const identity = this.identityContext.getIdentity();
|
|
20
|
+
where.createdBy = identity.id;
|
|
21
|
+
}
|
|
22
|
+
return this.repository.execute({
|
|
23
|
+
...params,
|
|
24
|
+
where
|
|
25
|
+
});
|
|
26
|
+
}
|
|
9
27
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
28
|
+
const ListPagesUseCase_ListPagesUseCase = ListPagesUseCase.createImplementation({
|
|
29
|
+
implementation: ListPagesUseCaseImpl,
|
|
30
|
+
dependencies: [
|
|
31
|
+
WbPermissions,
|
|
32
|
+
IdentityContext,
|
|
33
|
+
ListPagesRepository
|
|
34
|
+
]
|
|
13
35
|
});
|
|
36
|
+
export { ListPagesUseCase_ListPagesUseCase as ListPagesUseCase };
|
|
14
37
|
|
|
15
38
|
//# sourceMappingURL=ListPagesUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/ListPages/ListPagesUseCase.js","sources":["../../../../src/features/pages/ListPages/ListPagesUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListPagesUseCase as UseCaseAbstraction, ListPagesRepository } from \"./abstractions.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\n\nclass ListPagesUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private identityContext: IdentityContext.Interface,\n private repository: ListPagesRepository.Interface\n ) {}\n\n async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canRead(\"page\");\n if (!hasPermission) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n const where = { ...params.where };\n\n if (await this.permissions.onlyOwnRecords(\"page\")) {\n const identity = this.identityContext.getIdentity();\n where.createdBy = identity.id;\n }\n\n return this.repository.execute({ ...params, where });\n }\n}\n\nexport const ListPagesUseCase = UseCaseAbstraction.createImplementation({\n implementation: ListPagesUseCaseImpl,\n dependencies: [WbPermissions, IdentityContext, ListPagesRepository]\n});\n"],"names":["ListPagesUseCaseImpl","permissions","identityContext","repository","params","hasPermission","Result","PageNotAuthorizedError","where","identity","ListPagesUseCase","UseCaseAbstraction","WbPermissions","IdentityContext","ListPagesRepository"],"mappings":";;;;;AAMA,MAAMA;IACF,YACYC,WAAoC,EACpCC,eAA0C,EAC1CC,UAAyC,CACnD;aAHUF,WAAW,GAAXA;aACAC,eAAe,GAAfA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,MAAiC,EAA6B;QACxE,MAAMC,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACrD,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,MAAMC,QAAQ;YAAE,GAAGJ,OAAO,KAAK;QAAC;QAEhC,IAAI,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS;YAC/C,MAAMK,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;YACjDD,MAAM,SAAS,GAAGC,SAAS,EAAE;QACjC;QAEA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,GAAGL,MAAM;YAAEI;QAAM;IACtD;AACJ;AAEO,MAAME,oCAAmBC,iBAAAA,oBAAuC,CAAC;IACpE,gBAAgBX;IAChB,cAAc;QAACY;QAAeC;QAAiBC;KAAoB;AACvE"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { Result } from "@webiny/feature/api";
|
|
2
2
|
import type { WbPage } from "../../../domain/page/abstractions.js";
|
|
3
|
-
import type { PagePersistenceError } from "../../../domain/page/errors.js";
|
|
3
|
+
import type { PagePersistenceError, PageNotAuthorizedError } from "../../../domain/page/errors.js";
|
|
4
4
|
import type { CmsEntryListSort, CmsEntryListWhere } from "@webiny/api-headless-cms/types/index.js";
|
|
5
5
|
export interface IListPagesParams {
|
|
6
6
|
where: CmsEntryListWhere;
|
|
@@ -42,9 +42,11 @@ export interface IListPagesUseCase {
|
|
|
42
42
|
execute(params: IListPagesParams): Promise<Result<IListPagesResult, UseCaseError>>;
|
|
43
43
|
}
|
|
44
44
|
export interface IListPagesUseCaseErrors {
|
|
45
|
+
notAuthorized: PageNotAuthorizedError;
|
|
45
46
|
persistence: PagePersistenceError;
|
|
46
47
|
}
|
|
47
48
|
type UseCaseError = IListPagesUseCaseErrors[keyof IListPagesUseCaseErrors];
|
|
49
|
+
/** List pages with filtering and pagination. */
|
|
48
50
|
export declare const ListPagesUseCase: import("@webiny/di").Abstraction<IListPagesUseCase>;
|
|
49
51
|
export declare namespace ListPagesUseCase {
|
|
50
52
|
type Interface = IListPagesUseCase;
|
|
@@ -1,15 +1,6 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export const ListPagesRepository = createAbstraction("Wb/ListPagesRepository");
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* ListPages use case interface
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
export const ListPagesUseCase = createAbstraction("Wb/ListPagesUseCase");
|
|
2
|
+
const ListPagesRepository = createAbstraction("Wb/ListPagesRepository");
|
|
3
|
+
const ListPagesUseCase = createAbstraction("Wb/ListPagesUseCase");
|
|
4
|
+
export { ListPagesRepository, ListPagesUseCase };
|
|
14
5
|
|
|
15
6
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/ListPages/abstractions.js","sources":["../../../../src/features/pages/ListPages/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { PagePersistenceError, PageNotAuthorizedError } from \"~/domain/page/errors.js\";\nimport type { CmsEntryListSort, CmsEntryListWhere } from \"@webiny/api-headless-cms/types/index.js\";\n\nexport interface IListPagesParams {\n where: CmsEntryListWhere;\n sort: CmsEntryListSort;\n limit: number;\n after: string | null;\n search?: string;\n}\n\nexport interface IListPagesMeta {\n hasMoreItems: boolean;\n totalCount: number;\n cursor: string | null;\n}\n\nexport type IListPagesResult = { pages: WbPage[]; meta: IListPagesMeta };\n\n/**\n * ListPages repository interface\n */\nexport interface IListPagesRepository {\n execute(params: IListPagesParams): Promise<Result<IListPagesResult, RepositoryError>>;\n}\n\nexport interface IListPagesRepositoryErrors {\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IListPagesRepositoryErrors[keyof IListPagesRepositoryErrors];\n\nexport const ListPagesRepository =\n createAbstraction<IListPagesRepository>(\"Wb/ListPagesRepository\");\n\nexport namespace ListPagesRepository {\n export type Interface = IListPagesRepository;\n export type Error = RepositoryError;\n export type Params = IListPagesParams;\n export type Return = Promise<Result<IListPagesResult, RepositoryError>>;\n}\n\n/**\n * ListPages use case interface\n */\nexport interface IListPagesUseCase {\n execute(params: IListPagesParams): Promise<Result<IListPagesResult, UseCaseError>>;\n}\n\nexport interface IListPagesUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IListPagesUseCaseErrors[keyof IListPagesUseCaseErrors];\n\n/** List pages with filtering and pagination. */\nexport const ListPagesUseCase = createAbstraction<IListPagesUseCase>(\"Wb/ListPagesUseCase\");\n\nexport namespace ListPagesUseCase {\n export type Interface = IListPagesUseCase;\n export type Error = UseCaseError;\n export type Params = IListPagesParams;\n export type Return = Promise<Result<IListPagesResult, UseCaseError>>;\n}\n"],"names":["ListPagesRepository","createAbstraction","ListPagesUseCase"],"mappings":";AAmCO,MAAMA,sBACTC,kBAAwC;AAwBrC,MAAMC,mBAAmBD,kBAAqC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { ListPagesRepository } from "./ListPagesRepository.js";
|
|
3
3
|
import { ListPagesUseCase } from "./ListPagesUseCase.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const ListPagesFeature = createFeature({
|
|
5
|
+
name: "WebsiteBuilder/ListPages",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(ListPagesRepository).inSingletonScope();
|
|
8
|
+
container.register(ListPagesUseCase);
|
|
9
|
+
}
|
|
10
10
|
});
|
|
11
|
+
export { ListPagesFeature };
|
|
11
12
|
|
|
12
13
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/ListPages/feature.js","sources":["../../../../src/features/pages/ListPages/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListPagesRepository } from \"./ListPagesRepository.js\";\nimport { ListPagesUseCase } from \"./ListPagesUseCase.js\";\n\nexport const ListPagesFeature = createFeature({\n name: \"WebsiteBuilder/ListPages\",\n register(container) {\n container.register(ListPagesRepository).inSingletonScope();\n container.register(ListPagesUseCase);\n }\n});\n"],"names":["ListPagesFeature","createFeature","container","ListPagesRepository","ListPagesUseCase"],"mappings":";;;AAIO,MAAMA,mBAAmBC,cAAc;IAC1C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,qBAAqB,gBAAgB;QACxDD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -1,39 +1,37 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import { MovePageRepository
|
|
2
|
+
import { MovePageRepository } from "./abstractions.js";
|
|
3
3
|
import { PageModel } from "../../../domain/page/abstractions.js";
|
|
4
4
|
import { PagePersistenceError } from "../../../domain/page/errors.js";
|
|
5
5
|
import { MoveEntryRepository } from "@webiny/api-headless-cms/features/contentEntry/MoveEntry/index.js";
|
|
6
6
|
import { GetPageByIdRepository } from "../GetPageById/abstractions.js";
|
|
7
7
|
class MovePageRepositoryImpl {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
}
|
|
13
|
-
async execute(params) {
|
|
14
|
-
// First, validate the page exists
|
|
15
|
-
const getResult = await this.getPageById.execute(params.id);
|
|
16
|
-
if (getResult.isFail()) {
|
|
17
|
-
return Result.fail(getResult.error);
|
|
8
|
+
constructor(moveEntry, getPageById, pageModel){
|
|
9
|
+
this.moveEntry = moveEntry;
|
|
10
|
+
this.getPageById = getPageById;
|
|
11
|
+
this.pageModel = pageModel;
|
|
18
12
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
13
|
+
async execute(params) {
|
|
14
|
+
const getResult = await this.getPageById.execute(params.id);
|
|
15
|
+
if (getResult.isFail()) return Result.fail(getResult.error);
|
|
16
|
+
const result = await this.moveEntry.execute(this.pageModel, params.id, params.folderId);
|
|
17
|
+
if (result.isFail()) return Result.fail(new PagePersistenceError(result.error));
|
|
18
|
+
const movedPage = {
|
|
19
|
+
...getResult.value,
|
|
20
|
+
location: {
|
|
21
|
+
folderId: params.folderId
|
|
22
|
+
}
|
|
23
|
+
};
|
|
24
|
+
return Result.ok(movedPage);
|
|
24
25
|
}
|
|
25
|
-
const movedPage = {
|
|
26
|
-
...getResult.value,
|
|
27
|
-
location: {
|
|
28
|
-
folderId: params.folderId
|
|
29
|
-
}
|
|
30
|
-
};
|
|
31
|
-
return Result.ok(movedPage);
|
|
32
|
-
}
|
|
33
26
|
}
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
27
|
+
const MovePageRepository_MovePageRepository = MovePageRepository.createImplementation({
|
|
28
|
+
implementation: MovePageRepositoryImpl,
|
|
29
|
+
dependencies: [
|
|
30
|
+
MoveEntryRepository,
|
|
31
|
+
GetPageByIdRepository,
|
|
32
|
+
PageModel
|
|
33
|
+
]
|
|
37
34
|
});
|
|
35
|
+
export { MovePageRepository_MovePageRepository as MovePageRepository };
|
|
38
36
|
|
|
39
37
|
//# sourceMappingURL=MovePageRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/MovePage/MovePageRepository.js","sources":["../../../../src/features/pages/MovePage/MovePageRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { MovePageRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { PageModel, type WbPage } from \"~/domain/page/abstractions.js\";\nimport { PagePersistenceError } from \"~/domain/page/errors.js\";\nimport { MoveEntryRepository } from \"@webiny/api-headless-cms/features/contentEntry/MoveEntry/index.js\";\nimport { GetPageByIdRepository } from \"~/features/pages/GetPageById/abstractions.js\";\n\nclass MovePageRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private moveEntry: MoveEntryRepository.Interface,\n private getPageById: GetPageByIdRepository.Interface,\n private pageModel: PageModel.Interface\n ) {}\n\n async execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return {\n // First, validate the page exists\n const getResult = await this.getPageById.execute(params.id);\n\n if (getResult.isFail()) {\n return Result.fail(getResult.error);\n }\n\n // Update the page location with the new folderId\n const result = await this.moveEntry.execute(this.pageModel, params.id, params.folderId);\n\n if (result.isFail()) {\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const movedPage: WbPage = {\n ...getResult.value,\n location: {\n folderId: params.folderId\n }\n };\n\n return Result.ok(movedPage);\n }\n}\n\nexport const MovePageRepository = RepositoryAbstraction.createImplementation({\n implementation: MovePageRepositoryImpl,\n dependencies: [MoveEntryRepository, GetPageByIdRepository, PageModel]\n});\n"],"names":["MovePageRepositoryImpl","moveEntry","getPageById","pageModel","params","getResult","Result","result","PagePersistenceError","movedPage","MovePageRepository","RepositoryAbstraction","MoveEntryRepository","GetPageByIdRepository","PageModel"],"mappings":";;;;;;AAOA,MAAMA;IACF,YACYC,SAAwC,EACxCC,WAA4C,EAC5CC,SAA8B,CACxC;aAHUF,SAAS,GAATA;aACAC,WAAW,GAAXA;aACAC,SAAS,GAATA;IACT;IAEH,MAAM,QAAQC,MAAoC,EAAgC;QAE9E,MAAMC,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAACD,OAAO,EAAE;QAE1D,IAAIC,UAAU,MAAM,IAChB,OAAOC,OAAO,IAAI,CAACD,UAAU,KAAK;QAItC,MAAME,SAAS,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAEH,OAAO,EAAE,EAAEA,OAAO,QAAQ;QAEtF,IAAIG,OAAO,MAAM,IACb,OAAOD,OAAO,IAAI,CAAC,IAAIE,qBAAqBD,OAAO,KAAK;QAG5D,MAAME,YAAoB;YACtB,GAAGJ,UAAU,KAAK;YAClB,UAAU;gBACN,UAAUD,OAAO,QAAQ;YAC7B;QACJ;QAEA,OAAOE,OAAO,EAAE,CAACG;IACrB;AACJ;AAEO,MAAMC,wCAAqBC,mBAAAA,oBAA0C,CAAC;IACzE,gBAAgBX;IAChB,cAAc;QAACY;QAAqBC;QAAuBC;KAAU;AACzE"}
|
|
@@ -1,11 +1,13 @@
|
|
|
1
|
-
import { EventPublisher as EventPublisherAbstraction } from "@webiny/api-core/features/
|
|
1
|
+
import { EventPublisher as EventPublisherAbstraction } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
2
2
|
import { MovePageUseCase as UseCaseAbstraction, MovePageRepository } from "./abstractions.js";
|
|
3
3
|
import { GetPageByIdUseCase } from "../../../features/pages/GetPageById/index.js";
|
|
4
|
+
import { WbPermissions } from "../../../features/permissions/abstractions.js";
|
|
4
5
|
declare class MovePageUseCaseImpl implements UseCaseAbstraction.Interface {
|
|
6
|
+
private permissions;
|
|
5
7
|
private eventPublisher;
|
|
6
8
|
private getPageById;
|
|
7
9
|
private repository;
|
|
8
|
-
constructor(eventPublisher: EventPublisherAbstraction.Interface, getPageById: GetPageByIdUseCase.Interface, repository: MovePageRepository.Interface);
|
|
10
|
+
constructor(permissions: WbPermissions.Interface, eventPublisher: EventPublisherAbstraction.Interface, getPageById: GetPageByIdUseCase.Interface, repository: MovePageRepository.Interface);
|
|
9
11
|
execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return;
|
|
10
12
|
}
|
|
11
13
|
export declare const MovePageUseCase: import("@webiny/di").Implementation<typeof MovePageUseCaseImpl>;
|
|
@@ -1,49 +1,51 @@
|
|
|
1
1
|
import { Result, createImplementation } from "@webiny/feature/api";
|
|
2
|
-
import { EventPublisher } from "@webiny/api-core/features/
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
2
|
+
import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
3
|
+
import { MovePageRepository, MovePageUseCase } from "./abstractions.js";
|
|
4
|
+
import { PageAfterMoveEvent, PageBeforeMoveEvent } from "./events.js";
|
|
5
5
|
import { GetPageByIdUseCase } from "../GetPageById/index.js";
|
|
6
|
+
import { WbPermissions } from "../../permissions/abstractions.js";
|
|
7
|
+
import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
|
|
6
8
|
class MovePageUseCaseImpl {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
async execute(params) {
|
|
13
|
-
// Get the original page for events
|
|
14
|
-
const getResult = await this.getPageById.execute(params.id);
|
|
15
|
-
if (getResult.isFail()) {
|
|
16
|
-
return getResult;
|
|
9
|
+
constructor(permissions, eventPublisher, getPageById, repository){
|
|
10
|
+
this.permissions = permissions;
|
|
11
|
+
this.eventPublisher = eventPublisher;
|
|
12
|
+
this.getPageById = getPageById;
|
|
13
|
+
this.repository = repository;
|
|
17
14
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
15
|
+
async execute(params) {
|
|
16
|
+
const hasPermission = await this.permissions.canEdit("page");
|
|
17
|
+
if (!hasPermission) return Result.fail(new PageNotAuthorizedError());
|
|
18
|
+
const getResult = await this.getPageById.execute(params.id);
|
|
19
|
+
if (getResult.isFail()) return getResult;
|
|
20
|
+
const original = getResult.value;
|
|
21
|
+
const canEdit = await this.permissions.canEdit("page", original);
|
|
22
|
+
if (!canEdit) return Result.fail(new PageNotAuthorizedError());
|
|
23
|
+
const beforeEvent = new PageBeforeMoveEvent({
|
|
24
|
+
original,
|
|
25
|
+
input: params
|
|
26
|
+
});
|
|
27
|
+
await this.eventPublisher.publish(beforeEvent);
|
|
28
|
+
const result = await this.repository.execute(params);
|
|
29
|
+
if (result.isFail()) return result;
|
|
30
|
+
const afterEvent = new PageAfterMoveEvent({
|
|
31
|
+
original,
|
|
32
|
+
input: params,
|
|
33
|
+
page: result.value
|
|
34
|
+
});
|
|
35
|
+
await this.eventPublisher.publish(afterEvent);
|
|
36
|
+
return Result.ok(result.value);
|
|
31
37
|
}
|
|
32
|
-
|
|
33
|
-
// Publish after move event
|
|
34
|
-
const afterEvent = new PageAfterMoveEvent({
|
|
35
|
-
original,
|
|
36
|
-
input: params,
|
|
37
|
-
page: result.value
|
|
38
|
-
});
|
|
39
|
-
await this.eventPublisher.publish(afterEvent);
|
|
40
|
-
return Result.ok(result.value);
|
|
41
|
-
}
|
|
42
38
|
}
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
39
|
+
const MovePageUseCase_MovePageUseCase = createImplementation({
|
|
40
|
+
abstraction: MovePageUseCase,
|
|
41
|
+
implementation: MovePageUseCaseImpl,
|
|
42
|
+
dependencies: [
|
|
43
|
+
WbPermissions,
|
|
44
|
+
EventPublisher,
|
|
45
|
+
GetPageByIdUseCase,
|
|
46
|
+
MovePageRepository
|
|
47
|
+
]
|
|
47
48
|
});
|
|
49
|
+
export { MovePageUseCase_MovePageUseCase as MovePageUseCase };
|
|
48
50
|
|
|
49
51
|
//# sourceMappingURL=MovePageUseCase.js.map
|