@webiny/api-website-builder 6.3.0 → 6.4.0-beta.0
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 -28
- package/domain/page/EntryToPageMapper.js.map +1 -1
- package/domain/page/PagePath.js +20 -30
- package/domain/page/PagePath.js.map +1 -1
- package/domain/page/abstractions.d.ts +13 -0
- package/domain/page/abstractions.js +2 -5
- package/domain/page/abstractions.js.map +1 -1
- package/domain/page/errors.js +46 -51
- package/domain/page/errors.js.map +1 -1
- package/domain/page/page.model.js +33 -29
- package/domain/page/page.model.js.map +1 -1
- package/domain/permissionsSchema.js +49 -28
- package/domain/permissionsSchema.js.map +1 -1
- 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.js +32 -29
- 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.js +5 -7
- package/exports/api/website-builder/redirect.js +1 -3
- package/features/installer/ApiKeyInstaller.js +33 -30
- package/features/installer/ApiKeyInstaller.js.map +1 -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.js +2 -2
- package/features/nextjs/abstractions.js.map +1 -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.js +29 -34
- package/features/pages/CreatePage/CreatePageUseCase.js.map +1 -1
- package/features/pages/CreatePage/abstractions.js +5 -30
- package/features/pages/CreatePage/abstractions.js.map +1 -1
- package/features/pages/CreatePage/events.js +16 -14
- package/features/pages/CreatePage/events.js.map +1 -1
- package/features/pages/CreatePage/feature.js +7 -6
- package/features/pages/CreatePage/feature.js.map +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.js +33 -41
- package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/abstractions.js +5 -30
- package/features/pages/CreatePageRevisionFrom/abstractions.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/events.js +16 -14
- package/features/pages/CreatePageRevisionFrom/events.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/feature.js +7 -6
- package/features/pages/CreatePageRevisionFrom/feature.js.map +1 -1
- package/features/pages/CreatePageRevisionFrom/index.js +1 -3
- package/features/pages/DeletePage/DeletePageRepository.js +19 -18
- package/features/pages/DeletePage/DeletePageRepository.js.map +1 -1
- package/features/pages/DeletePage/DeletePageUseCase.js +32 -39
- package/features/pages/DeletePage/DeletePageUseCase.js.map +1 -1
- package/features/pages/DeletePage/abstractions.js +5 -30
- package/features/pages/DeletePage/abstractions.js.map +1 -1
- package/features/pages/DeletePage/events.js +16 -14
- package/features/pages/DeletePage/events.js.map +1 -1
- package/features/pages/DeletePage/feature.js +7 -6
- package/features/pages/DeletePage/feature.js.map +1 -1
- package/features/pages/DeletePage/index.js +1 -3
- package/features/pages/DuplicatePage/DuplicatePageRepository.js +50 -53
- package/features/pages/DuplicatePage/DuplicatePageRepository.js.map +1 -1
- package/features/pages/DuplicatePage/DuplicatePageUseCase.js +35 -43
- package/features/pages/DuplicatePage/DuplicatePageUseCase.js.map +1 -1
- package/features/pages/DuplicatePage/abstractions.js +5 -30
- package/features/pages/DuplicatePage/abstractions.js.map +1 -1
- package/features/pages/DuplicatePage/events.js +16 -14
- package/features/pages/DuplicatePage/events.js.map +1 -1
- package/features/pages/DuplicatePage/feature.js +7 -6
- package/features/pages/DuplicatePage/feature.js.map +1 -1
- package/features/pages/DuplicatePage/index.js +1 -3
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js +20 -20
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js.map +1 -1
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js +19 -21
- package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js.map +1 -1
- package/features/pages/GetDeletedPageById/abstractions.js +3 -12
- package/features/pages/GetDeletedPageById/abstractions.js.map +1 -1
- package/features/pages/GetDeletedPageById/feature.js +7 -6
- package/features/pages/GetDeletedPageById/feature.js.map +1 -1
- package/features/pages/GetDeletedPageById/index.js +0 -2
- package/features/pages/GetPageById/GetPageByIdRepository.js +20 -18
- package/features/pages/GetPageById/GetPageByIdRepository.js.map +1 -1
- package/features/pages/GetPageById/GetPageByIdUseCase.js +19 -21
- package/features/pages/GetPageById/GetPageByIdUseCase.js.map +1 -1
- package/features/pages/GetPageById/abstractions.js +3 -13
- package/features/pages/GetPageById/abstractions.js.map +1 -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.js +19 -21
- package/features/pages/GetPageByPath/GetPageByPathUseCase.js.map +1 -1
- package/features/pages/GetPageByPath/abstractions.js +3 -13
- package/features/pages/GetPageByPath/abstractions.js.map +1 -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.js +42 -48
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js.map +1 -1
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js +14 -13
- package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js.map +1 -1
- package/features/pages/GetPageLanguagePaths/abstractions.js +3 -3
- package/features/pages/GetPageLanguagePaths/abstractions.js.map +1 -1
- package/features/pages/GetPageLanguagePaths/feature.js +7 -6
- package/features/pages/GetPageLanguagePaths/feature.js.map +1 -1
- package/features/pages/GetPageLanguagePaths/index.js +0 -2
- package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js +17 -15
- package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js.map +1 -1
- package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js +22 -24
- package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js.map +1 -1
- package/features/pages/GetPageRevisions/abstractions.js +3 -13
- package/features/pages/GetPageRevisions/abstractions.js.map +1 -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.js +37 -36
- package/features/pages/ListDeletedPages/ListDeletedPagesRepository.js.map +1 -1
- package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js +27 -24
- package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js.map +1 -1
- package/features/pages/ListDeletedPages/abstractions.js +3 -12
- package/features/pages/ListDeletedPages/abstractions.js.map +1 -1
- package/features/pages/ListDeletedPages/feature.js +7 -6
- package/features/pages/ListDeletedPages/feature.js.map +1 -1
- package/features/pages/ListDeletedPages/index.js +0 -2
- package/features/pages/ListPages/ListPagesRepository.js +37 -36
- package/features/pages/ListPages/ListPagesRepository.js.map +1 -1
- package/features/pages/ListPages/ListPagesUseCase.js +27 -24
- package/features/pages/ListPages/ListPagesUseCase.js.map +1 -1
- package/features/pages/ListPages/abstractions.js +3 -13
- package/features/pages/ListPages/abstractions.js.map +1 -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.js +39 -49
- package/features/pages/MovePage/MovePageUseCase.js.map +1 -1
- package/features/pages/MovePage/abstractions.js +5 -30
- package/features/pages/MovePage/abstractions.js.map +1 -1
- package/features/pages/MovePage/events.js +16 -14
- package/features/pages/MovePage/events.js.map +1 -1
- package/features/pages/MovePage/feature.js +7 -6
- package/features/pages/MovePage/feature.js.map +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.js +36 -46
- package/features/pages/PublishPage/PublishPageUseCase.js.map +1 -1
- package/features/pages/PublishPage/abstractions.js +5 -30
- package/features/pages/PublishPage/abstractions.js.map +1 -1
- package/features/pages/PublishPage/events.js +16 -14
- package/features/pages/PublishPage/events.js.map +1 -1
- package/features/pages/PublishPage/feature.js +7 -6
- package/features/pages/PublishPage/feature.js.map +1 -1
- package/features/pages/PublishPage/index.js +0 -2
- package/features/pages/RestorePage/RestorePageRepository.js +20 -19
- package/features/pages/RestorePage/RestorePageRepository.js.map +1 -1
- package/features/pages/RestorePage/RestorePageUseCase.js +32 -39
- package/features/pages/RestorePage/RestorePageUseCase.js.map +1 -1
- package/features/pages/RestorePage/abstractions.js +5 -27
- package/features/pages/RestorePage/abstractions.js.map +1 -1
- package/features/pages/RestorePage/events.js +16 -14
- package/features/pages/RestorePage/events.js.map +1 -1
- package/features/pages/RestorePage/feature.js +7 -6
- package/features/pages/RestorePage/feature.js.map +1 -1
- package/features/pages/RestorePage/index.js +0 -2
- package/features/pages/TranslatePage/TranslatePageUseCase.js +46 -62
- package/features/pages/TranslatePage/TranslatePageUseCase.js.map +1 -1
- package/features/pages/TranslatePage/abstractions.js +2 -11
- package/features/pages/TranslatePage/abstractions.js.map +1 -1
- package/features/pages/TranslatePage/feature.js +6 -5
- package/features/pages/TranslatePage/feature.js.map +1 -1
- package/features/pages/TranslatePage/index.js +0 -2
- package/features/pages/TrashPage/TrashPageRepository.js +21 -20
- package/features/pages/TrashPage/TrashPageRepository.js.map +1 -1
- package/features/pages/TrashPage/TrashPageUseCase.js +33 -40
- package/features/pages/TrashPage/TrashPageUseCase.js.map +1 -1
- package/features/pages/TrashPage/abstractions.js +5 -27
- package/features/pages/TrashPage/abstractions.js.map +1 -1
- package/features/pages/TrashPage/events.js +16 -14
- package/features/pages/TrashPage/events.js.map +1 -1
- package/features/pages/TrashPage/feature.js +7 -6
- package/features/pages/TrashPage/feature.js.map +1 -1
- package/features/pages/TrashPage/index.js +0 -2
- package/features/pages/UnpublishPage/UnpublishPageRepository.js +26 -28
- package/features/pages/UnpublishPage/UnpublishPageRepository.js.map +1 -1
- package/features/pages/UnpublishPage/UnpublishPageUseCase.js +35 -45
- package/features/pages/UnpublishPage/UnpublishPageUseCase.js.map +1 -1
- package/features/pages/UnpublishPage/abstractions.js +5 -30
- package/features/pages/UnpublishPage/abstractions.js.map +1 -1
- package/features/pages/UnpublishPage/events.js +16 -14
- package/features/pages/UnpublishPage/events.js.map +1 -1
- package/features/pages/UnpublishPage/feature.js +7 -6
- package/features/pages/UnpublishPage/feature.js.map +1 -1
- package/features/pages/UnpublishPage/index.js +0 -2
- package/features/pages/UpdatePage/UpdatePageRepository.js +30 -34
- package/features/pages/UpdatePage/UpdatePageRepository.js.map +1 -1
- package/features/pages/UpdatePage/UpdatePageUseCase.js +44 -54
- package/features/pages/UpdatePage/UpdatePageUseCase.js.map +1 -1
- package/features/pages/UpdatePage/abstractions.js +5 -30
- package/features/pages/UpdatePage/abstractions.js.map +1 -1
- package/features/pages/UpdatePage/events.js +16 -14
- package/features/pages/UpdatePage/events.js.map +1 -1
- package/features/pages/UpdatePage/feature.js +7 -6
- package/features/pages/UpdatePage/feature.js.map +1 -1
- package/features/pages/UpdatePage/index.js +0 -2
- 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.js +2 -1
- package/features/permissions/abstractions.js.map +1 -1
- package/features/permissions/feature.js +2 -1
- package/features/permissions/feature.js.map +1 -1
- package/features/redirects/CreateRedirect/CreateRedirectRepository.js +23 -21
- package/features/redirects/CreateRedirect/CreateRedirectRepository.js.map +1 -1
- package/features/redirects/CreateRedirect/CreateRedirectUseCase.js +29 -34
- package/features/redirects/CreateRedirect/CreateRedirectUseCase.js.map +1 -1
- package/features/redirects/CreateRedirect/abstractions.js +5 -30
- package/features/redirects/CreateRedirect/abstractions.js.map +1 -1
- package/features/redirects/CreateRedirect/events.js +16 -14
- package/features/redirects/CreateRedirect/events.js.map +1 -1
- package/features/redirects/CreateRedirect/feature.js +7 -6
- package/features/redirects/CreateRedirect/feature.js.map +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.js +34 -41
- package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js.map +1 -1
- package/features/redirects/DeleteRedirect/abstractions.js +5 -30
- package/features/redirects/DeleteRedirect/abstractions.js.map +1 -1
- package/features/redirects/DeleteRedirect/events.js +16 -14
- package/features/redirects/DeleteRedirect/events.js.map +1 -1
- package/features/redirects/DeleteRedirect/feature.js +7 -6
- package/features/redirects/DeleteRedirect/feature.js.map +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.js +17 -15
- package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js.map +1 -1
- package/features/redirects/GetActiveRedirects/abstractions.js +3 -13
- package/features/redirects/GetActiveRedirects/abstractions.js.map +1 -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.js +20 -22
- package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js.map +1 -1
- package/features/redirects/GetRedirectById/abstractions.js +3 -13
- package/features/redirects/GetRedirectById/abstractions.js.map +1 -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.js +13 -16
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js +13 -16
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js +13 -17
- package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js.map +1 -1
- package/features/redirects/InvalidateRedirectsCache/abstractions.js +2 -7
- package/features/redirects/InvalidateRedirectsCache/abstractions.js.map +1 -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.js +28 -25
- package/features/redirects/ListRedirects/ListRedirectsUseCase.js.map +1 -1
- package/features/redirects/ListRedirects/abstractions.js +3 -17
- package/features/redirects/ListRedirects/abstractions.js.map +1 -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.js +39 -49
- package/features/redirects/MoveRedirect/MoveRedirectUseCase.js.map +1 -1
- package/features/redirects/MoveRedirect/abstractions.js +5 -30
- package/features/redirects/MoveRedirect/abstractions.js.map +1 -1
- package/features/redirects/MoveRedirect/events.js +16 -14
- package/features/redirects/MoveRedirect/events.js.map +1 -1
- package/features/redirects/MoveRedirect/feature.js +7 -6
- package/features/redirects/MoveRedirect/feature.js.map +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.js +44 -54
- package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js.map +1 -1
- package/features/redirects/UpdateRedirect/abstractions.js +5 -30
- package/features/redirects/UpdateRedirect/abstractions.js.map +1 -1
- package/features/redirects/UpdateRedirect/events.js +16 -14
- package/features/redirects/UpdateRedirect/events.js.map +1 -1
- package/features/redirects/UpdateRedirect/feature.js +7 -6
- package/features/redirects/UpdateRedirect/feature.js.map +1 -1
- package/features/redirects/UpdateRedirect/index.js +0 -2
- package/features/tenantManager/TenantModelExtension.js +52 -32
- package/features/tenantManager/TenantModelExtension.js.map +1 -1
- package/features/tenantManager/feature.js +6 -5
- package/features/tenantManager/feature.js.map +1 -1
- 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 +221 -324
- package/graphql/pages/pages.gql.js.map +1 -1
- package/graphql/pages/pages.typeDefs.d.ts +1 -1
- package/graphql/pages/pages.typeDefs.js +7 -1
- 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.js +57 -62
- package/index.js.map +1 -1
- package/package.json +20 -20
- 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/GetDeletedPageById/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/GetPageLanguagePaths/index.js.map +0 -1
- package/features/pages/GetPageRevisions/index.js.map +0 -1
- package/features/pages/ListDeletedPages/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/PublishPage/index.js.map +0 -1
- package/features/pages/RestorePage/index.js.map +0 -1
- package/features/pages/TranslatePage/index.js.map +0 -1
- package/features/pages/TrashPage/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/UpdateRedirect/index.js.map +0 -1
- package/rest/ActiveRedirectDto.js.map +0 -1
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
import { RedirectAfterCreateEventHandler, RedirectBeforeCreateEventHandler } from "./abstractions.js";
|
|
3
|
+
class RedirectBeforeCreateEvent extends DomainEvent {
|
|
4
|
+
getHandlerAbstraction() {
|
|
5
|
+
return RedirectBeforeCreateEventHandler;
|
|
6
|
+
}
|
|
7
|
+
constructor(...args){
|
|
8
|
+
super(...args), this.eventType = "redirect.beforeCreate";
|
|
9
|
+
}
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
class RedirectAfterCreateEvent extends DomainEvent {
|
|
12
|
+
getHandlerAbstraction() {
|
|
13
|
+
return RedirectAfterCreateEventHandler;
|
|
14
|
+
}
|
|
15
|
+
constructor(...args){
|
|
16
|
+
super(...args), this.eventType = "redirect.afterCreate";
|
|
17
|
+
}
|
|
17
18
|
}
|
|
19
|
+
export { RedirectAfterCreateEvent, RedirectBeforeCreateEvent };
|
|
18
20
|
|
|
19
21
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/CreateRedirect/events.js","sources":["../../../../src/features/redirects/CreateRedirect/events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport {\n RedirectBeforeCreateEventHandler,\n RedirectAfterCreateEventHandler\n} from \"./abstractions.js\";\nimport type { RedirectBeforeCreatePayload, RedirectAfterCreatePayload } from \"./abstractions.js\";\n\n// RedirectBeforeCreate Event\nexport class RedirectBeforeCreateEvent extends DomainEvent<RedirectBeforeCreatePayload> {\n eventType = \"redirect.beforeCreate\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeCreateEventHandler;\n }\n}\n\n// RedirectAfterCreate Event\nexport class RedirectAfterCreateEvent extends DomainEvent<RedirectAfterCreatePayload> {\n eventType = \"redirect.afterCreate\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterCreateEventHandler;\n }\n}\n"],"names":["RedirectBeforeCreateEvent","DomainEvent","RedirectBeforeCreateEventHandler","RedirectAfterCreateEvent","RedirectAfterCreateEventHandler"],"mappings":";;AAQO,MAAMA,kCAAkCC;IAG3C,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMC,iCAAiCF;IAG1C,wBAAwB;QACpB,OAAOG;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { CreateRedirectRepository } from "./CreateRedirectRepository.js";
|
|
3
3
|
import { CreateRedirectUseCase } from "./CreateRedirectUseCase.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const CreateRedirectFeature = createFeature({
|
|
5
|
+
name: "WebsiteBuilder/CreateRedirect",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(CreateRedirectRepository).inSingletonScope();
|
|
8
|
+
container.register(CreateRedirectUseCase);
|
|
9
|
+
}
|
|
10
10
|
});
|
|
11
|
+
export { CreateRedirectFeature };
|
|
11
12
|
|
|
12
13
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/CreateRedirect/feature.js","sources":["../../../../src/features/redirects/CreateRedirect/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { CreateRedirectRepository } from \"./CreateRedirectRepository.js\";\nimport { CreateRedirectUseCase } from \"./CreateRedirectUseCase.js\";\n\nexport const CreateRedirectFeature = createFeature({\n name: \"WebsiteBuilder/CreateRedirect\",\n register(container) {\n container.register(CreateRedirectRepository).inSingletonScope();\n container.register(CreateRedirectUseCase);\n }\n});\n"],"names":["CreateRedirectFeature","createFeature","container","CreateRedirectRepository","CreateRedirectUseCase"],"mappings":";;;AAIO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,0BAA0B,gBAAgB;QAC7DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
export { RedirectAfterCreateEventHandler, RedirectBeforeCreateEventHandler
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { CreateRedirectUseCase, RedirectAfterCreateEventHandler, RedirectBeforeCreateEventHandler } from "./abstractions.js";
|
|
@@ -1,27 +1,29 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
2
|
import { DeleteEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/DeleteEntry";
|
|
3
|
-
import { DeleteRedirectRepository
|
|
3
|
+
import { DeleteRedirectRepository } from "./abstractions.js";
|
|
4
4
|
import { RedirectModel } from "../../../domain/redirect/abstractions.js";
|
|
5
5
|
import { RedirectNotFoundError, RedirectPersistenceError } from "../../../domain/redirect/errors.js";
|
|
6
6
|
class DeleteRedirectRepositoryImpl {
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
7
|
+
constructor(redirectModel, deleteEntry){
|
|
8
|
+
this.redirectModel = redirectModel;
|
|
9
|
+
this.deleteEntry = deleteEntry;
|
|
10
|
+
}
|
|
11
|
+
async execute(params) {
|
|
12
|
+
const result = await this.deleteEntry.execute(this.redirectModel, params.id);
|
|
13
|
+
if (result.isFail()) {
|
|
14
|
+
if ("Cms/Entry/NotFound" === result.error.code) return Result.fail(new RedirectNotFoundError(params.id));
|
|
15
|
+
return Result.fail(new RedirectPersistenceError(result.error));
|
|
16
|
+
}
|
|
17
|
+
return Result.ok();
|
|
18
18
|
}
|
|
19
|
-
return Result.ok();
|
|
20
|
-
}
|
|
21
19
|
}
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
20
|
+
const DeleteRedirectRepository_DeleteRedirectRepository = DeleteRedirectRepository.createImplementation({
|
|
21
|
+
implementation: DeleteRedirectRepositoryImpl,
|
|
22
|
+
dependencies: [
|
|
23
|
+
RedirectModel,
|
|
24
|
+
DeleteEntryUseCase
|
|
25
|
+
]
|
|
25
26
|
});
|
|
27
|
+
export { DeleteRedirectRepository_DeleteRedirectRepository as DeleteRedirectRepository };
|
|
26
28
|
|
|
27
29
|
//# sourceMappingURL=DeleteRedirectRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/DeleteRedirect/DeleteRedirectRepository.js","sources":["../../../../src/features/redirects/DeleteRedirect/DeleteRedirectRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { DeleteEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/DeleteEntry\";\nimport { DeleteRedirectRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { RedirectModel } from \"~/domain/redirect/abstractions.js\";\nimport { RedirectNotFoundError, RedirectPersistenceError } from \"~/domain/redirect/errors.js\";\n\nclass DeleteRedirectRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private redirectModel: RedirectModel.Interface,\n private deleteEntry: DeleteEntryUseCase.Interface\n ) {}\n\n async execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return {\n const result = await this.deleteEntry.execute(this.redirectModel, params.id);\n\n if (result.isFail()) {\n if (result.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new RedirectNotFoundError(params.id));\n }\n return Result.fail(new RedirectPersistenceError(result.error));\n }\n\n return Result.ok();\n }\n}\n\nexport const DeleteRedirectRepository = RepositoryAbstraction.createImplementation({\n implementation: DeleteRedirectRepositoryImpl,\n dependencies: [RedirectModel, DeleteEntryUseCase]\n});\n"],"names":["DeleteRedirectRepositoryImpl","redirectModel","deleteEntry","params","result","Result","RedirectNotFoundError","RedirectPersistenceError","DeleteRedirectRepository","RepositoryAbstraction","RedirectModel","DeleteEntryUseCase"],"mappings":";;;;;AAMA,MAAMA;IACF,YACYC,aAAsC,EACtCC,WAAyC,CACnD;aAFUD,aAAa,GAAbA;aACAC,WAAW,GAAXA;IACT;IAEH,MAAM,QAAQC,MAAoC,EAAgC;QAC9E,MAAMC,SAAS,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAED,OAAO,EAAE;QAE3E,IAAIC,OAAO,MAAM,IAAI;YACjB,IAAIA,AAAsB,yBAAtBA,OAAO,KAAK,CAAC,IAAI,EACjB,OAAOC,OAAO,IAAI,CAAC,IAAIC,sBAAsBH,OAAO,EAAE;YAE1D,OAAOE,OAAO,IAAI,CAAC,IAAIE,yBAAyBH,OAAO,KAAK;QAChE;QAEA,OAAOC,OAAO,EAAE;IACpB;AACJ;AAEO,MAAMG,oDAA2BC,yBAAAA,oBAA0C,CAAC;IAC/E,gBAAgBT;IAChB,cAAc;QAACU;QAAeC;KAAmB;AACrD"}
|
|
@@ -1,53 +1,46 @@
|
|
|
1
1
|
import { Result, createImplementation } from "@webiny/feature/api";
|
|
2
2
|
import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
3
|
-
import {
|
|
4
|
-
import {
|
|
3
|
+
import { DeleteRedirectRepository, DeleteRedirectUseCase } from "./abstractions.js";
|
|
4
|
+
import { RedirectAfterDeleteEvent, RedirectBeforeDeleteEvent } from "./events.js";
|
|
5
5
|
import { GetRedirectByIdUseCase } from "../GetRedirectById/index.js";
|
|
6
6
|
import { WbPermissions } from "../../permissions/abstractions.js";
|
|
7
7
|
import { RedirectNotAuthorizedError } from "../../../domain/redirect/errors.js";
|
|
8
8
|
class DeleteRedirectUseCaseImpl {
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
}
|
|
15
|
-
async execute(params) {
|
|
16
|
-
// Get the redirect first to include in events and for item-level permission check
|
|
17
|
-
const getResult = await this.getRedirectById.execute(params.id);
|
|
18
|
-
if (getResult.isFail()) {
|
|
19
|
-
return Result.fail(getResult.error);
|
|
9
|
+
constructor(permissions, eventPublisher, getRedirectById, repository){
|
|
10
|
+
this.permissions = permissions;
|
|
11
|
+
this.eventPublisher = eventPublisher;
|
|
12
|
+
this.getRedirectById = getRedirectById;
|
|
13
|
+
this.repository = repository;
|
|
20
14
|
}
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
15
|
+
async execute(params) {
|
|
16
|
+
const getResult = await this.getRedirectById.execute(params.id);
|
|
17
|
+
if (getResult.isFail()) return Result.fail(getResult.error);
|
|
18
|
+
const redirect = getResult.value;
|
|
19
|
+
const canDelete = await this.permissions.canDelete("redirect", redirect);
|
|
20
|
+
if (!canDelete) return Result.fail(new RedirectNotAuthorizedError());
|
|
21
|
+
const beforeEvent = new RedirectBeforeDeleteEvent({
|
|
22
|
+
redirect
|
|
23
|
+
});
|
|
24
|
+
await this.eventPublisher.publish(beforeEvent);
|
|
25
|
+
const result = await this.repository.execute(params);
|
|
26
|
+
if (result.isFail()) return result;
|
|
27
|
+
const afterEvent = new RedirectAfterDeleteEvent({
|
|
28
|
+
redirect
|
|
29
|
+
});
|
|
30
|
+
await this.eventPublisher.publish(afterEvent);
|
|
31
|
+
return Result.ok();
|
|
25
32
|
}
|
|
26
|
-
|
|
27
|
-
// Publish before delete event
|
|
28
|
-
const beforeEvent = new RedirectBeforeDeleteEvent({
|
|
29
|
-
redirect
|
|
30
|
-
});
|
|
31
|
-
await this.eventPublisher.publish(beforeEvent);
|
|
32
|
-
|
|
33
|
-
// Execute the delete operation
|
|
34
|
-
const result = await this.repository.execute(params);
|
|
35
|
-
if (result.isFail()) {
|
|
36
|
-
return result;
|
|
37
|
-
}
|
|
38
|
-
|
|
39
|
-
// Publish after delete event
|
|
40
|
-
const afterEvent = new RedirectAfterDeleteEvent({
|
|
41
|
-
redirect
|
|
42
|
-
});
|
|
43
|
-
await this.eventPublisher.publish(afterEvent);
|
|
44
|
-
return Result.ok();
|
|
45
|
-
}
|
|
46
33
|
}
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
34
|
+
const DeleteRedirectUseCase_DeleteRedirectUseCase = createImplementation({
|
|
35
|
+
abstraction: DeleteRedirectUseCase,
|
|
36
|
+
implementation: DeleteRedirectUseCaseImpl,
|
|
37
|
+
dependencies: [
|
|
38
|
+
WbPermissions,
|
|
39
|
+
EventPublisher,
|
|
40
|
+
GetRedirectByIdUseCase,
|
|
41
|
+
DeleteRedirectRepository
|
|
42
|
+
]
|
|
51
43
|
});
|
|
44
|
+
export { DeleteRedirectUseCase_DeleteRedirectUseCase as DeleteRedirectUseCase };
|
|
52
45
|
|
|
53
46
|
//# sourceMappingURL=DeleteRedirectUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/DeleteRedirect/DeleteRedirectUseCase.js","sources":["../../../../src/features/redirects/DeleteRedirect/DeleteRedirectUseCase.ts"],"sourcesContent":["import { Result, createImplementation } from \"@webiny/feature/api\";\nimport {\n EventPublisher,\n EventPublisher as EventPublisherAbstraction\n} from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport {\n DeleteRedirectUseCase as UseCaseAbstraction,\n DeleteRedirectRepository\n} from \"./abstractions.js\";\nimport { RedirectBeforeDeleteEvent, RedirectAfterDeleteEvent } from \"./events.js\";\nimport { GetRedirectByIdUseCase } from \"~/features/redirects/GetRedirectById/index.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { RedirectNotAuthorizedError } from \"~/domain/redirect/errors.js\";\n\nclass DeleteRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getRedirectById: GetRedirectByIdUseCase.Interface,\n private repository: DeleteRedirectRepository.Interface\n ) {}\n\n async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return {\n // Get the redirect first to include in events and for item-level permission check\n const getResult = await this.getRedirectById.execute(params.id);\n\n if (getResult.isFail()) {\n return Result.fail(getResult.error);\n }\n\n const redirect = getResult.value;\n\n const canDelete = await this.permissions.canDelete(\"redirect\", redirect);\n if (!canDelete) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n // Publish before delete event\n const beforeEvent = new RedirectBeforeDeleteEvent({\n redirect\n });\n\n await this.eventPublisher.publish(beforeEvent);\n\n // Execute the delete operation\n const result = await this.repository.execute(params);\n\n if (result.isFail()) {\n return result;\n }\n\n // Publish after delete event\n const afterEvent = new RedirectAfterDeleteEvent({\n redirect\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok();\n }\n}\n\nexport const DeleteRedirectUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: DeleteRedirectUseCaseImpl,\n dependencies: [WbPermissions, EventPublisher, GetRedirectByIdUseCase, DeleteRedirectRepository]\n});\n"],"names":["DeleteRedirectUseCaseImpl","permissions","eventPublisher","getRedirectById","repository","params","getResult","Result","redirect","canDelete","RedirectNotAuthorizedError","beforeEvent","RedirectBeforeDeleteEvent","result","afterEvent","RedirectAfterDeleteEvent","DeleteRedirectUseCase","createImplementation","UseCaseAbstraction","WbPermissions","EventPublisher","GetRedirectByIdUseCase","DeleteRedirectRepository"],"mappings":";;;;;;;AAcA,MAAMA;IACF,YACYC,WAAoC,EACpCC,cAAmD,EACnDC,eAAiD,EACjDC,UAA8C,CACxD;aAJUH,WAAW,GAAXA;aACAC,cAAc,GAAdA;aACAC,eAAe,GAAfA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,MAAiC,EAA6B;QAExE,MAAMC,YAAY,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAACD,OAAO,EAAE;QAE9D,IAAIC,UAAU,MAAM,IAChB,OAAOC,OAAO,IAAI,CAACD,UAAU,KAAK;QAGtC,MAAME,WAAWF,UAAU,KAAK;QAEhC,MAAMG,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,YAAYD;QAC/D,IAAI,CAACC,WACD,OAAOF,OAAO,IAAI,CAAC,IAAIG;QAI3B,MAAMC,cAAc,IAAIC,0BAA0B;YAC9CJ;QACJ;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACG;QAGlC,MAAME,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACR;QAE7C,IAAIQ,OAAO,MAAM,IACb,OAAOA;QAIX,MAAMC,aAAa,IAAIC,yBAAyB;YAC5CP;QACJ;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACM;QAElC,OAAOP,OAAO,EAAE;IACpB;AACJ;AAEO,MAAMS,8CAAwBC,qBAAqB;IACtD,aAAaC;IACb,gBAAgBlB;IAChB,cAAc;QAACmB;QAAeC;QAAgBC;QAAwBC;KAAyB;AACnG"}
|
|
@@ -1,33 +1,8 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
// ============================================================================
|
|
8
|
-
// Repository Abstraction
|
|
9
|
-
// ============================================================================
|
|
10
|
-
|
|
11
|
-
export const DeleteRedirectRepository = createAbstraction("Wb/DeleteRedirectRepository");
|
|
12
|
-
|
|
13
|
-
// ============================================================================
|
|
14
|
-
// Use Case Abstraction
|
|
15
|
-
// ============================================================================
|
|
16
|
-
|
|
17
|
-
/** Delete a URL redirect. */
|
|
18
|
-
export const DeleteRedirectUseCase = createAbstraction("Wb/DeleteRedirectUseCase");
|
|
19
|
-
|
|
20
|
-
// ============================================================================
|
|
21
|
-
// Event Payload Types
|
|
22
|
-
// ============================================================================
|
|
23
|
-
|
|
24
|
-
// ============================================================================
|
|
25
|
-
// Event Handler Abstractions
|
|
26
|
-
// ============================================================================
|
|
27
|
-
|
|
28
|
-
/** Hook into redirect lifecycle before a redirect is deleted. */
|
|
29
|
-
export const RedirectBeforeDeleteEventHandler = createAbstraction("Wb/RedirectBeforeDeleteEventHandler");
|
|
30
|
-
/** Hook into redirect lifecycle after a redirect is deleted. */
|
|
31
|
-
export const RedirectAfterDeleteEventHandler = createAbstraction("Wb/RedirectAfterDeleteEventHandler");
|
|
2
|
+
const DeleteRedirectRepository = createAbstraction("Wb/DeleteRedirectRepository");
|
|
3
|
+
const DeleteRedirectUseCase = createAbstraction("Wb/DeleteRedirectUseCase");
|
|
4
|
+
const RedirectBeforeDeleteEventHandler = createAbstraction("Wb/RedirectBeforeDeleteEventHandler");
|
|
5
|
+
const RedirectAfterDeleteEventHandler = createAbstraction("Wb/RedirectAfterDeleteEventHandler");
|
|
6
|
+
export { DeleteRedirectRepository, DeleteRedirectUseCase, RedirectAfterDeleteEventHandler, RedirectBeforeDeleteEventHandler };
|
|
32
7
|
|
|
33
8
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/DeleteRedirect/abstractions.js","sources":["../../../../src/features/redirects/DeleteRedirect/abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport {\n RedirectNotFoundError,\n RedirectPersistenceError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IDeleteWbRedirectParams {\n id: string;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IDeleteRedirectRepository {\n execute(params: IDeleteWbRedirectParams): Promise<Result<void, RepositoryError>>;\n}\n\nexport interface IDeleteRedirectRepositoryErrors {\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = IDeleteRedirectRepositoryErrors[keyof IDeleteRedirectRepositoryErrors];\n\nexport const DeleteRedirectRepository = createAbstraction<IDeleteRedirectRepository>(\n \"Wb/DeleteRedirectRepository\"\n);\n\nexport namespace DeleteRedirectRepository {\n export type Interface = IDeleteRedirectRepository;\n export type Params = IDeleteWbRedirectParams;\n export type Return = Promise<Result<void, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IDeleteRedirectUseCase {\n execute(params: IDeleteWbRedirectParams): Promise<Result<void, UseCaseError>>;\n}\n\nexport interface IDeleteRedirectUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IDeleteRedirectUseCaseErrors[keyof IDeleteRedirectUseCaseErrors];\n\n/** Delete a URL redirect. */\nexport const DeleteRedirectUseCase = createAbstraction<IDeleteRedirectUseCase>(\n \"Wb/DeleteRedirectUseCase\"\n);\n\nexport namespace DeleteRedirectUseCase {\n export type Interface = IDeleteRedirectUseCase;\n export type Params = IDeleteWbRedirectParams;\n export type Return = Promise<Result<void, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface RedirectBeforeDeletePayload {\n redirect: WbRedirect;\n}\n\nexport interface RedirectAfterDeletePayload {\n redirect: WbRedirect;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into redirect lifecycle before a redirect is deleted. */\nexport const RedirectBeforeDeleteEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectBeforeDeletePayload>>\n>(\"Wb/RedirectBeforeDeleteEventHandler\");\n\nexport namespace RedirectBeforeDeleteEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectBeforeDeletePayload>>;\n export type Event = DomainEvent<RedirectBeforeDeletePayload>;\n export type Redirect = WbRedirect;\n}\n\n/** Hook into redirect lifecycle after a redirect is deleted. */\nexport const RedirectAfterDeleteEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectAfterDeletePayload>>\n>(\"Wb/RedirectAfterDeleteEventHandler\");\n\nexport namespace RedirectAfterDeleteEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectAfterDeletePayload>>;\n export type Event = DomainEvent<RedirectAfterDeletePayload>;\n export type Redirect = WbRedirect;\n}\n"],"names":["DeleteRedirectRepository","createAbstraction","DeleteRedirectUseCase","RedirectBeforeDeleteEventHandler","RedirectAfterDeleteEventHandler"],"mappings":";AAiCO,MAAMA,2BAA2BC,kBACpC;AA2BG,MAAMC,wBAAwBD,kBACjC;AA2BG,MAAME,mCAAmCF,kBAE9C;AASK,MAAMG,kCAAkCH,kBAE7C"}
|
|
@@ -1,19 +1,21 @@
|
|
|
1
1
|
import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
|
|
2
|
-
import {
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
2
|
+
import { RedirectAfterDeleteEventHandler, RedirectBeforeDeleteEventHandler } from "./abstractions.js";
|
|
3
|
+
class RedirectBeforeDeleteEvent extends DomainEvent {
|
|
4
|
+
getHandlerAbstraction() {
|
|
5
|
+
return RedirectBeforeDeleteEventHandler;
|
|
6
|
+
}
|
|
7
|
+
constructor(...args){
|
|
8
|
+
super(...args), this.eventType = "redirect.beforeDelete";
|
|
9
|
+
}
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
class RedirectAfterDeleteEvent extends DomainEvent {
|
|
12
|
+
getHandlerAbstraction() {
|
|
13
|
+
return RedirectAfterDeleteEventHandler;
|
|
14
|
+
}
|
|
15
|
+
constructor(...args){
|
|
16
|
+
super(...args), this.eventType = "redirect.afterDelete";
|
|
17
|
+
}
|
|
17
18
|
}
|
|
19
|
+
export { RedirectAfterDeleteEvent, RedirectBeforeDeleteEvent };
|
|
18
20
|
|
|
19
21
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/DeleteRedirect/events.js","sources":["../../../../src/features/redirects/DeleteRedirect/events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport {\n RedirectBeforeDeleteEventHandler,\n RedirectAfterDeleteEventHandler\n} from \"./abstractions.js\";\nimport type { RedirectBeforeDeletePayload, RedirectAfterDeletePayload } from \"./abstractions.js\";\n\n// RedirectBeforeDelete Event\nexport class RedirectBeforeDeleteEvent extends DomainEvent<RedirectBeforeDeletePayload> {\n eventType = \"redirect.beforeDelete\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeDeleteEventHandler;\n }\n}\n\n// RedirectAfterDelete Event\nexport class RedirectAfterDeleteEvent extends DomainEvent<RedirectAfterDeletePayload> {\n eventType = \"redirect.afterDelete\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterDeleteEventHandler;\n }\n}\n"],"names":["RedirectBeforeDeleteEvent","DomainEvent","RedirectBeforeDeleteEventHandler","RedirectAfterDeleteEvent","RedirectAfterDeleteEventHandler"],"mappings":";;AAQO,MAAMA,kCAAkCC;IAG3C,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMC,iCAAiCF;IAG1C,wBAAwB;QACpB,OAAOG;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { DeleteRedirectRepository } from "./DeleteRedirectRepository.js";
|
|
3
3
|
import { DeleteRedirectUseCase } from "./DeleteRedirectUseCase.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const DeleteRedirectFeature = createFeature({
|
|
5
|
+
name: "WebsiteBuilder/DeleteRedirect",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(DeleteRedirectRepository).inSingletonScope();
|
|
8
|
+
container.register(DeleteRedirectUseCase);
|
|
9
|
+
}
|
|
10
10
|
});
|
|
11
|
+
export { DeleteRedirectFeature };
|
|
11
12
|
|
|
12
13
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/DeleteRedirect/feature.js","sources":["../../../../src/features/redirects/DeleteRedirect/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DeleteRedirectRepository } from \"./DeleteRedirectRepository.js\";\nimport { DeleteRedirectUseCase } from \"./DeleteRedirectUseCase.js\";\n\nexport const DeleteRedirectFeature = createFeature({\n name: \"WebsiteBuilder/DeleteRedirect\",\n register(container) {\n container.register(DeleteRedirectRepository).inSingletonScope();\n container.register(DeleteRedirectUseCase);\n }\n});\n"],"names":["DeleteRedirectFeature","createFeature","container","DeleteRedirectRepository","DeleteRedirectUseCase"],"mappings":";;;AAIO,MAAMA,wBAAwBC,cAAc;IAC/C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,0BAA0B,gBAAgB;QAC7DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
export { RedirectAfterDeleteEventHandler, RedirectBeforeDeleteEventHandler
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { DeleteRedirectUseCase, RedirectAfterDeleteEventHandler, RedirectBeforeDeleteEventHandler } from "./abstractions.js";
|
|
@@ -1,30 +1,31 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import { GetActiveRedirectsRepository
|
|
2
|
+
import { GetActiveRedirectsRepository } from "./abstractions.js";
|
|
3
3
|
import { ListRedirectsUseCase } from "../ListRedirects/index.js";
|
|
4
4
|
import { RedirectPersistenceError } from "../../../domain/redirect/errors.js";
|
|
5
5
|
class GetActiveRedirectsRepositoryImpl {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
6
|
+
constructor(listRedirects){
|
|
7
|
+
this.listRedirects = listRedirects;
|
|
8
|
+
}
|
|
9
|
+
async execute() {
|
|
10
|
+
const result = await this.listRedirects.execute({
|
|
11
|
+
where: {
|
|
12
|
+
latest: true,
|
|
13
|
+
isEnabled: true
|
|
14
|
+
},
|
|
15
|
+
limit: 10000,
|
|
16
|
+
sort: [],
|
|
17
|
+
after: null
|
|
18
|
+
});
|
|
19
|
+
if (result.isFail()) return Result.fail(new RedirectPersistenceError(result.error));
|
|
20
|
+
return Result.ok(result.value.redirects);
|
|
21
21
|
}
|
|
22
|
-
return Result.ok(result.value.redirects);
|
|
23
|
-
}
|
|
24
22
|
}
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
23
|
+
const GetActiveRedirectsRepository_GetActiveRedirectsRepository = GetActiveRedirectsRepository.createImplementation({
|
|
24
|
+
implementation: GetActiveRedirectsRepositoryImpl,
|
|
25
|
+
dependencies: [
|
|
26
|
+
ListRedirectsUseCase
|
|
27
|
+
]
|
|
28
28
|
});
|
|
29
|
+
export { GetActiveRedirectsRepository_GetActiveRedirectsRepository as GetActiveRedirectsRepository };
|
|
29
30
|
|
|
30
31
|
//# sourceMappingURL=GetActiveRedirectsRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js","sources":["../../../../src/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetActiveRedirectsRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { ListRedirectsUseCase } from \"~/features/redirects/ListRedirects/index.js\";\nimport { RedirectPersistenceError } from \"~/domain/redirect/errors.js\";\n\nclass GetActiveRedirectsRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(private listRedirects: ListRedirectsUseCase.Interface) {}\n\n async execute(): RepositoryAbstraction.Return {\n const result = await this.listRedirects.execute({\n where: {\n latest: true,\n isEnabled: true\n },\n limit: 10000,\n sort: [],\n after: null\n });\n\n if (result.isFail()) {\n return Result.fail(new RedirectPersistenceError(result.error));\n }\n\n return Result.ok(result.value.redirects);\n }\n}\n\nexport const GetActiveRedirectsRepository = RepositoryAbstraction.createImplementation({\n implementation: GetActiveRedirectsRepositoryImpl,\n dependencies: [ListRedirectsUseCase]\n});\n"],"names":["GetActiveRedirectsRepositoryImpl","listRedirects","result","Result","RedirectPersistenceError","GetActiveRedirectsRepository","RepositoryAbstraction","ListRedirectsUseCase"],"mappings":";;;;AAKA,MAAMA;IACF,YAAoBC,aAA6C,CAAE;aAA/CA,aAAa,GAAbA;IAAgD;IAEpE,MAAM,UAAwC;QAC1C,MAAMC,SAAS,MAAM,IAAI,CAAC,aAAa,CAAC,OAAO,CAAC;YAC5C,OAAO;gBACH,QAAQ;gBACR,WAAW;YACf;YACA,OAAO;YACP,MAAM,EAAE;YACR,OAAO;QACX;QAEA,IAAIA,OAAO,MAAM,IACb,OAAOC,OAAO,IAAI,CAAC,IAAIC,yBAAyBF,OAAO,KAAK;QAGhE,OAAOC,OAAO,EAAE,CAACD,OAAO,KAAK,CAAC,SAAS;IAC3C;AACJ;AAEO,MAAMG,4DAA+BC,6BAAAA,oBAA0C,CAAC;IACnF,gBAAgBN;IAChB,cAAc;QAACO;KAAqB;AACxC"}
|
|
@@ -1,24 +1,26 @@
|
|
|
1
1
|
import { Result, createImplementation } from "@webiny/feature/api";
|
|
2
|
-
import {
|
|
2
|
+
import { GetActiveRedirectsRepository, GetActiveRedirectsUseCase } from "./abstractions.js";
|
|
3
3
|
import { WbPermissions } from "../../permissions/abstractions.js";
|
|
4
4
|
import { RedirectNotAuthorizedError } from "../../../domain/redirect/errors.js";
|
|
5
5
|
class GetActiveRedirectsUseCaseImpl {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
6
|
+
constructor(permissions, repository){
|
|
7
|
+
this.permissions = permissions;
|
|
8
|
+
this.repository = repository;
|
|
9
|
+
}
|
|
10
|
+
async execute() {
|
|
11
|
+
const hasPermission = await this.permissions.canRead("redirect");
|
|
12
|
+
if (!hasPermission) return Result.fail(new RedirectNotAuthorizedError());
|
|
13
|
+
return await this.repository.execute();
|
|
14
14
|
}
|
|
15
|
-
return await this.repository.execute();
|
|
16
|
-
}
|
|
17
15
|
}
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
16
|
+
const GetActiveRedirectsUseCase_GetActiveRedirectsUseCase = createImplementation({
|
|
17
|
+
abstraction: GetActiveRedirectsUseCase,
|
|
18
|
+
implementation: GetActiveRedirectsUseCaseImpl,
|
|
19
|
+
dependencies: [
|
|
20
|
+
WbPermissions,
|
|
21
|
+
GetActiveRedirectsRepository
|
|
22
|
+
]
|
|
22
23
|
});
|
|
24
|
+
export { GetActiveRedirectsUseCase_GetActiveRedirectsUseCase as GetActiveRedirectsUseCase };
|
|
23
25
|
|
|
24
26
|
//# sourceMappingURL=GetActiveRedirectsUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js","sources":["../../../../src/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.ts"],"sourcesContent":["import { Result, createImplementation } from \"@webiny/feature/api\";\nimport {\n GetActiveRedirectsUseCase as UseCaseAbstraction,\n GetActiveRedirectsRepository\n} from \"./abstractions.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { RedirectNotAuthorizedError } from \"~/domain/redirect/errors.js\";\n\nclass GetActiveRedirectsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private repository: GetActiveRedirectsRepository.Interface\n ) {}\n\n async execute(): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canRead(\"redirect\");\n if (!hasPermission) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n return await this.repository.execute();\n }\n}\n\nexport const GetActiveRedirectsUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: GetActiveRedirectsUseCaseImpl,\n dependencies: [WbPermissions, GetActiveRedirectsRepository]\n});\n"],"names":["GetActiveRedirectsUseCaseImpl","permissions","repository","hasPermission","Result","RedirectNotAuthorizedError","GetActiveRedirectsUseCase","createImplementation","UseCaseAbstraction","WbPermissions","GetActiveRedirectsRepository"],"mappings":";;;;AAQA,MAAMA;IACF,YACYC,WAAoC,EACpCC,UAAkD,CAC5D;aAFUD,WAAW,GAAXA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,UAAqC;QACvC,MAAMC,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACrD,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,OAAO,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO;IACxC;AACJ;AAEO,MAAMC,sDAA4BC,qBAAqB;IAC1D,aAAaC;IACb,gBAAgBR;IAChB,cAAc;QAACS;QAAeC;KAA6B;AAC/D"}
|
|
@@ -1,16 +1,6 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export const GetActiveRedirectsRepository = createAbstraction("Wb/GetActiveRedirectsRepository");
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* GetActiveRedirects use case interface
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/** Retrieve all active URL redirects. */
|
|
14
|
-
export const GetActiveRedirectsUseCase = createAbstraction("Wb/GetActiveRedirectsUseCase");
|
|
2
|
+
const GetActiveRedirectsRepository = createAbstraction("Wb/GetActiveRedirectsRepository");
|
|
3
|
+
const GetActiveRedirectsUseCase = createAbstraction("Wb/GetActiveRedirectsUseCase");
|
|
4
|
+
export { GetActiveRedirectsRepository, GetActiveRedirectsUseCase };
|
|
15
5
|
|
|
16
6
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/redirects/GetActiveRedirects/abstractions.js","sources":["../../../../src/features/redirects/GetActiveRedirects/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport type {\n RedirectPersistenceError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n/**\n * GetActiveRedirects repository interface\n */\nexport interface IGetActiveRedirectsRepository {\n execute(): Promise<Result<WbRedirect[], RepositoryError>>;\n}\n\nexport interface IGetActiveRedirectsRepositoryErrors {\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError =\n IGetActiveRedirectsRepositoryErrors[keyof IGetActiveRedirectsRepositoryErrors];\n\nexport const GetActiveRedirectsRepository = createAbstraction<IGetActiveRedirectsRepository>(\n \"Wb/GetActiveRedirectsRepository\"\n);\n\nexport namespace GetActiveRedirectsRepository {\n export type Interface = IGetActiveRedirectsRepository;\n export type Error = RepositoryError;\n export type Return = Promise<Result<WbRedirect[], RepositoryError>>;\n export type Redirect = WbRedirect;\n}\n\n/**\n * GetActiveRedirects use case interface\n */\nexport interface IGetActiveRedirectsUseCase {\n execute(): Promise<Result<WbRedirect[], UseCaseError>>;\n}\n\nexport interface IGetActiveRedirectsUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IGetActiveRedirectsUseCaseErrors[keyof IGetActiveRedirectsUseCaseErrors];\n\n/** Retrieve all active URL redirects. */\nexport const GetActiveRedirectsUseCase = createAbstraction<IGetActiveRedirectsUseCase>(\n \"Wb/GetActiveRedirectsUseCase\"\n);\n\nexport namespace GetActiveRedirectsUseCase {\n export type Interface = IGetActiveRedirectsUseCase;\n export type Return = Promise<Result<WbRedirect[], UseCaseError>>;\n export type Error = UseCaseError;\n export type Redirect = WbRedirect;\n}\n"],"names":["GetActiveRedirectsRepository","createAbstraction","GetActiveRedirectsUseCase"],"mappings":";AAsBO,MAAMA,+BAA+BC,kBACxC;AAyBG,MAAMC,4BAA4BD,kBACrC"}
|