@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 { PageAfterDuplicateEventHandler, PageBeforeDuplicateEventHandler } from "./abstractions.js";
|
|
3
|
+
class PageBeforeDuplicateEvent extends DomainEvent {
|
|
4
|
+
getHandlerAbstraction() {
|
|
5
|
+
return PageBeforeDuplicateEventHandler;
|
|
6
|
+
}
|
|
7
|
+
constructor(...args){
|
|
8
|
+
super(...args), this.eventType = "page.beforeDuplicate";
|
|
9
|
+
}
|
|
9
10
|
}
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
11
|
+
class PageAfterDuplicateEvent extends DomainEvent {
|
|
12
|
+
getHandlerAbstraction() {
|
|
13
|
+
return PageAfterDuplicateEventHandler;
|
|
14
|
+
}
|
|
15
|
+
constructor(...args){
|
|
16
|
+
super(...args), this.eventType = "page.afterDuplicate";
|
|
17
|
+
}
|
|
17
18
|
}
|
|
19
|
+
export { PageAfterDuplicateEvent, PageBeforeDuplicateEvent };
|
|
18
20
|
|
|
19
21
|
//# sourceMappingURL=events.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/DuplicatePage/events.js","sources":["../../../../src/features/pages/DuplicatePage/events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { PageBeforeDuplicateEventHandler, PageAfterDuplicateEventHandler } from \"./abstractions.js\";\nimport type { PageBeforeDuplicatePayload, PageAfterDuplicatePayload } from \"./abstractions.js\";\n\n// PageBeforeDuplicate Event\nexport class PageBeforeDuplicateEvent extends DomainEvent<PageBeforeDuplicatePayload> {\n eventType = \"page.beforeDuplicate\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeDuplicateEventHandler;\n }\n}\n\n// PageAfterDuplicate Event\nexport class PageAfterDuplicateEvent extends DomainEvent<PageAfterDuplicatePayload> {\n eventType = \"page.afterDuplicate\" as const;\n\n getHandlerAbstraction() {\n return PageAfterDuplicateEventHandler;\n }\n}\n"],"names":["PageBeforeDuplicateEvent","DomainEvent","PageBeforeDuplicateEventHandler","PageAfterDuplicateEvent","PageAfterDuplicateEventHandler"],"mappings":";;AAKO,MAAMA,iCAAiCC;IAG1C,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMC,gCAAgCF;IAGzC,wBAAwB;QACpB,OAAOG;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { DuplicatePageRepository } from "./DuplicatePageRepository.js";
|
|
3
3
|
import { DuplicatePageUseCase } from "./DuplicatePageUseCase.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const DuplicatePageFeature = createFeature({
|
|
5
|
+
name: "WebsiteBuilder/DuplicatePage",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(DuplicatePageRepository).inSingletonScope();
|
|
8
|
+
container.register(DuplicatePageUseCase);
|
|
9
|
+
}
|
|
10
10
|
});
|
|
11
|
+
export { DuplicatePageFeature };
|
|
11
12
|
|
|
12
13
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/DuplicatePage/feature.js","sources":["../../../../src/features/pages/DuplicatePage/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DuplicatePageRepository } from \"./DuplicatePageRepository.js\";\nimport { DuplicatePageUseCase } from \"./DuplicatePageUseCase.js\";\n\nexport const DuplicatePageFeature = createFeature({\n name: \"WebsiteBuilder/DuplicatePage\",\n register(container) {\n container.register(DuplicatePageRepository).inSingletonScope();\n container.register(DuplicatePageUseCase);\n }\n});\n"],"names":["DuplicatePageFeature","createFeature","container","DuplicatePageRepository","DuplicatePageUseCase"],"mappings":";;;AAIO,MAAMA,uBAAuBC,cAAc;IAC9C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,yBAAyB,gBAAgB;QAC5DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -1,3 +1 @@
|
|
|
1
|
-
export {
|
|
2
|
-
|
|
3
|
-
//# sourceMappingURL=index.js.map
|
|
1
|
+
export { DuplicatePageRepository, DuplicatePageUseCase, PageAfterDuplicateEventHandler, PageBeforeDuplicateEventHandler } from "./abstractions.js";
|
|
@@ -1,32 +1,32 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import { GetDeletedPageByIdRepository
|
|
2
|
+
import { GetDeletedPageByIdRepository } from "./abstractions.js";
|
|
3
3
|
import { PageModel } from "../../../domain/page/abstractions.js";
|
|
4
4
|
import { PageNotFoundTrashedError, PagePersistenceError } from "../../../domain/page/errors.js";
|
|
5
5
|
import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
|
|
6
6
|
import { GetLatestRevisionByEntryIdIncludingDeletedUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/index.js";
|
|
7
7
|
class GetDeletedPageByIdRepositoryImpl {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
async execute(id) {
|
|
13
|
-
const result = await this.getLatestRevision.execute(this.pageModel, {
|
|
14
|
-
id
|
|
15
|
-
});
|
|
16
|
-
if (result.isFail()) {
|
|
17
|
-
return Result.fail(new PagePersistenceError(result.error));
|
|
8
|
+
constructor(pageModel, getLatestRevision){
|
|
9
|
+
this.pageModel = pageModel;
|
|
10
|
+
this.getLatestRevision = getLatestRevision;
|
|
18
11
|
}
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
12
|
+
async execute(id) {
|
|
13
|
+
const result = await this.getLatestRevision.execute(this.pageModel, {
|
|
14
|
+
id
|
|
15
|
+
});
|
|
16
|
+
if (result.isFail()) return Result.fail(new PagePersistenceError(result.error));
|
|
17
|
+
const entry = result.value;
|
|
18
|
+
if (!entry?.wbyDeleted) return Result.fail(new PageNotFoundTrashedError(id));
|
|
19
|
+
const page = EntryToPageMapper.toPage(entry);
|
|
20
|
+
return Result.ok(page);
|
|
22
21
|
}
|
|
23
|
-
const page = EntryToPageMapper.toPage(entry);
|
|
24
|
-
return Result.ok(page);
|
|
25
|
-
}
|
|
26
22
|
}
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
const GetDeletedPageByIdRepository_GetDeletedPageByIdRepository = GetDeletedPageByIdRepository.createImplementation({
|
|
24
|
+
implementation: GetDeletedPageByIdRepositoryImpl,
|
|
25
|
+
dependencies: [
|
|
26
|
+
PageModel,
|
|
27
|
+
GetLatestRevisionByEntryIdIncludingDeletedUseCase
|
|
28
|
+
]
|
|
30
29
|
});
|
|
30
|
+
export { GetDeletedPageByIdRepository_GetDeletedPageByIdRepository as GetDeletedPageByIdRepository };
|
|
31
31
|
|
|
32
32
|
//# sourceMappingURL=GetDeletedPageByIdRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js","sources":["../../../../src/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetDeletedPageByIdRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { PageNotFoundTrashedError, PagePersistenceError } from \"~/domain/page/errors.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport { GetLatestRevisionByEntryIdIncludingDeletedUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetLatestRevisionByEntryId/index.js\";\n\nclass GetDeletedPageByIdRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private getLatestRevision: GetLatestRevisionByEntryIdIncludingDeletedUseCase.Interface\n ) {}\n\n public async execute(id: string): RepositoryAbstraction.Return {\n const result = await this.getLatestRevision.execute(this.pageModel, {\n id\n });\n\n if (result.isFail()) {\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const entry = result.value;\n if (!entry?.wbyDeleted) {\n return Result.fail(new PageNotFoundTrashedError(id));\n }\n\n const page = EntryToPageMapper.toPage(entry);\n return Result.ok(page);\n }\n}\n\nexport const GetDeletedPageByIdRepository = RepositoryAbstraction.createImplementation({\n implementation: GetDeletedPageByIdRepositoryImpl,\n dependencies: [PageModel, GetLatestRevisionByEntryIdIncludingDeletedUseCase]\n});\n"],"names":["GetDeletedPageByIdRepositoryImpl","pageModel","getLatestRevision","id","result","Result","PagePersistenceError","entry","PageNotFoundTrashedError","page","EntryToPageMapper","GetDeletedPageByIdRepository","RepositoryAbstraction","PageModel","GetLatestRevisionByEntryIdIncludingDeletedUseCase"],"mappings":";;;;;;AAOA,MAAMA;IACF,YACYC,SAA8B,EAC9BC,iBAA8E,CACxF;aAFUD,SAAS,GAATA;aACAC,iBAAiB,GAAjBA;IACT;IAEH,MAAa,QAAQC,EAAU,EAAgC;QAC3D,MAAMC,SAAS,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE;YAChED;QACJ;QAEA,IAAIC,OAAO,MAAM,IACb,OAAOC,OAAO,IAAI,CAAC,IAAIC,qBAAqBF,OAAO,KAAK;QAG5D,MAAMG,QAAQH,OAAO,KAAK;QAC1B,IAAI,CAACG,OAAO,YACR,OAAOF,OAAO,IAAI,CAAC,IAAIG,yBAAyBL;QAGpD,MAAMM,OAAOC,kBAAkB,MAAM,CAACH;QACtC,OAAOF,OAAO,EAAE,CAACI;IACrB;AACJ;AAEO,MAAME,4DAA+BC,6BAAAA,oBAA0C,CAAC;IACnF,gBAAgBZ;IAChB,cAAc;QAACa;QAAWC;KAAkD;AAChF"}
|
|
@@ -1,31 +1,29 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import {
|
|
2
|
+
import { GetDeletedPageByIdRepository, GetDeletedPageByIdUseCase } from "./abstractions.js";
|
|
3
3
|
import { WbPermissions } from "../../permissions/abstractions.js";
|
|
4
4
|
import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
|
|
5
5
|
class GetDeletedPageByIdUseCaseImpl {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
async execute(id) {
|
|
11
|
-
const hasPermission = await this.permissions.canRead("page");
|
|
12
|
-
if (!hasPermission) {
|
|
13
|
-
return Result.fail(new PageNotAuthorizedError());
|
|
6
|
+
constructor(permissions, repository){
|
|
7
|
+
this.permissions = permissions;
|
|
8
|
+
this.repository = repository;
|
|
14
9
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
async execute(id) {
|
|
11
|
+
const hasPermission = await this.permissions.canRead("page");
|
|
12
|
+
if (!hasPermission) return Result.fail(new PageNotAuthorizedError());
|
|
13
|
+
const result = await this.repository.execute(id);
|
|
14
|
+
if (result.isFail()) return result;
|
|
15
|
+
const canAccess = await this.permissions.canAccess("page", result.value);
|
|
16
|
+
if (!canAccess) return Result.fail(new PageNotAuthorizedError());
|
|
17
|
+
return result;
|
|
18
18
|
}
|
|
19
|
-
const canAccess = await this.permissions.canAccess("page", result.value);
|
|
20
|
-
if (!canAccess) {
|
|
21
|
-
return Result.fail(new PageNotAuthorizedError());
|
|
22
|
-
}
|
|
23
|
-
return result;
|
|
24
|
-
}
|
|
25
19
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
const GetDeletedPageByIdUseCase_GetDeletedPageByIdUseCase = GetDeletedPageByIdUseCase.createImplementation({
|
|
21
|
+
implementation: GetDeletedPageByIdUseCaseImpl,
|
|
22
|
+
dependencies: [
|
|
23
|
+
WbPermissions,
|
|
24
|
+
GetDeletedPageByIdRepository
|
|
25
|
+
]
|
|
29
26
|
});
|
|
27
|
+
export { GetDeletedPageByIdUseCase_GetDeletedPageByIdUseCase as GetDeletedPageByIdUseCase };
|
|
30
28
|
|
|
31
29
|
//# sourceMappingURL=GetDeletedPageByIdUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js","sources":["../../../../src/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n GetDeletedPageByIdUseCase as UseCaseAbstraction,\n GetDeletedPageByIdRepository\n} from \"./abstractions.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\nclass GetDeletedPageByIdUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private repository: GetDeletedPageByIdRepository.Interface\n ) {}\n\n async execute(id: string): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canRead(\"page\");\n if (!hasPermission) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n const result = await this.repository.execute(id);\n\n if (result.isFail()) {\n return result;\n }\n\n const canAccess = await this.permissions.canAccess(\"page\", result.value);\n if (!canAccess) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n return result;\n }\n}\n\nexport const GetDeletedPageByIdUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetDeletedPageByIdUseCaseImpl,\n dependencies: [WbPermissions, GetDeletedPageByIdRepository]\n});\n"],"names":["GetDeletedPageByIdUseCaseImpl","permissions","repository","id","hasPermission","Result","PageNotAuthorizedError","result","canAccess","GetDeletedPageByIdUseCase","UseCaseAbstraction","WbPermissions","GetDeletedPageByIdRepository"],"mappings":";;;;AAQA,MAAMA;IACF,YACYC,WAAoC,EACpCC,UAAkD,CAC5D;aAFUD,WAAW,GAAXA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,EAAU,EAA6B;QACjD,MAAMC,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACrD,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,MAAMC,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACJ;QAE7C,IAAII,OAAO,MAAM,IACb,OAAOA;QAGX,MAAMC,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQD,OAAO,KAAK;QACvE,IAAI,CAACC,WACD,OAAOH,OAAO,IAAI,CAAC,IAAIC;QAG3B,OAAOC;IACX;AACJ;AAEO,MAAME,sDAA4BC,0BAAAA,oBAAuC,CAAC;IAC7E,gBAAgBV;IAChB,cAAc;QAACW;QAAeC;KAA6B;AAC/D"}
|
|
@@ -1,15 +1,6 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export const GetDeletedPageByIdRepository = createAbstraction("Wb/GetDeletedPageByIdRepository");
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* GetDeletedPageById use case interface
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
export const GetDeletedPageByIdUseCase = createAbstraction("Wb/GetDeletedPageByIdUseCase");
|
|
2
|
+
const GetDeletedPageByIdRepository = createAbstraction("Wb/GetDeletedPageByIdRepository");
|
|
3
|
+
const GetDeletedPageByIdUseCase = createAbstraction("Wb/GetDeletedPageByIdUseCase");
|
|
4
|
+
export { GetDeletedPageByIdRepository, GetDeletedPageByIdUseCase };
|
|
14
5
|
|
|
15
6
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetDeletedPageById/abstractions.js","sources":["../../../../src/features/pages/GetDeletedPageById/abstractions.ts"],"sourcesContent":["import type { Result } from \"@webiny/feature/api\";\nimport { createAbstraction } from \"@webiny/feature/api\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type {\n PageNotAuthorizedError,\n PageNotFoundError,\n PageNotFoundTrashedError,\n PagePersistenceError\n} from \"~/domain/page/errors.js\";\n\n/**\n * GetDeletedPageById repository interface\n */\nexport interface IGetDeletedPageByIdRepository {\n execute(id: string): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IGetDeletedPageByIdRepositoryErrors {\n notFound: PageNotFoundError;\n trashedNotFound: PageNotFoundTrashedError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError =\n IGetDeletedPageByIdRepositoryErrors[keyof IGetDeletedPageByIdRepositoryErrors];\n\nexport const GetDeletedPageByIdRepository = createAbstraction<IGetDeletedPageByIdRepository>(\n \"Wb/GetDeletedPageByIdRepository\"\n);\n\nexport namespace GetDeletedPageByIdRepository {\n export type Interface = IGetDeletedPageByIdRepository;\n export type Error = RepositoryError;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n}\n\n/**\n * GetDeletedPageById use case interface\n */\nexport interface IGetDeletedPageByIdUseCase {\n execute(id: string): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IGetDeletedPageByIdUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n notFound: PageNotFoundError;\n trashedNotFound: PageNotFoundTrashedError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IGetDeletedPageByIdUseCaseErrors[keyof IGetDeletedPageByIdUseCaseErrors];\n\nexport const GetDeletedPageByIdUseCase = createAbstraction<IGetDeletedPageByIdUseCase>(\n \"Wb/GetDeletedPageByIdUseCase\"\n);\n\nexport namespace GetDeletedPageByIdUseCase {\n export type Interface = IGetDeletedPageByIdUseCase;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n"],"names":["GetDeletedPageByIdRepository","createAbstraction","GetDeletedPageByIdUseCase"],"mappings":";AA0BO,MAAMA,+BAA+BC,kBACxC;AAyBG,MAAMC,4BAA4BD,kBACrC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { GetDeletedPageByIdUseCase } from "./GetDeletedPageByIdUseCase.js";
|
|
3
3
|
import { GetDeletedPageByIdRepository } from "./GetDeletedPageByIdRepository.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const GetDeletedPageByIdFeature = createFeature({
|
|
5
|
+
name: "WebsiteBuilder/GetDeletedPageById",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(GetDeletedPageByIdRepository).inSingletonScope();
|
|
8
|
+
container.register(GetDeletedPageByIdUseCase);
|
|
9
|
+
}
|
|
10
10
|
});
|
|
11
|
+
export { GetDeletedPageByIdFeature };
|
|
11
12
|
|
|
12
13
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetDeletedPageById/feature.js","sources":["../../../../src/features/pages/GetDeletedPageById/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetDeletedPageByIdUseCase } from \"./GetDeletedPageByIdUseCase.js\";\nimport { GetDeletedPageByIdRepository } from \"./GetDeletedPageByIdRepository.js\";\n\nexport const GetDeletedPageByIdFeature = createFeature({\n name: \"WebsiteBuilder/GetDeletedPageById\",\n register(container) {\n container.register(GetDeletedPageByIdRepository).inSingletonScope();\n container.register(GetDeletedPageByIdUseCase);\n }\n});\n"],"names":["GetDeletedPageByIdFeature","createFeature","container","GetDeletedPageByIdRepository","GetDeletedPageByIdUseCase"],"mappings":";;;AAIO,MAAMA,4BAA4BC,cAAc;IACnD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,8BAA8B,gBAAgB;QACjED,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -1,29 +1,31 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import { GetPageByIdRepository
|
|
2
|
+
import { GetPageByIdRepository } from "./abstractions.js";
|
|
3
3
|
import { GetEntryByIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntryById";
|
|
4
4
|
import { PageModel } from "../../../domain/page/abstractions.js";
|
|
5
5
|
import { PageNotFoundError, PagePersistenceError } from "../../../domain/page/errors.js";
|
|
6
6
|
import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
|
|
7
7
|
class GetPageByIdRepositoryImpl {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
8
|
+
constructor(pageModel, getEntryById){
|
|
9
|
+
this.pageModel = pageModel;
|
|
10
|
+
this.getEntryById = getEntryById;
|
|
11
|
+
}
|
|
12
|
+
async execute(id) {
|
|
13
|
+
const result = await this.getEntryById.execute(this.pageModel, id);
|
|
14
|
+
if (result.isFail()) {
|
|
15
|
+
if ("Cms/Entry/NotFound" === result.error.code) return Result.fail(new PageNotFoundError(id));
|
|
16
|
+
return Result.fail(new PagePersistenceError(result.error));
|
|
17
|
+
}
|
|
18
|
+
const page = EntryToPageMapper.toPage(result.value);
|
|
19
|
+
return Result.ok(page);
|
|
19
20
|
}
|
|
20
|
-
const page = EntryToPageMapper.toPage(result.value);
|
|
21
|
-
return Result.ok(page);
|
|
22
|
-
}
|
|
23
21
|
}
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
22
|
+
const GetPageByIdRepository_GetPageByIdRepository = GetPageByIdRepository.createImplementation({
|
|
23
|
+
implementation: GetPageByIdRepositoryImpl,
|
|
24
|
+
dependencies: [
|
|
25
|
+
PageModel,
|
|
26
|
+
GetEntryByIdUseCase
|
|
27
|
+
]
|
|
27
28
|
});
|
|
29
|
+
export { GetPageByIdRepository_GetPageByIdRepository as GetPageByIdRepository };
|
|
28
30
|
|
|
29
31
|
//# sourceMappingURL=GetPageByIdRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetPageById/GetPageByIdRepository.js","sources":["../../../../src/features/pages/GetPageById/GetPageByIdRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetPageByIdRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { PageNotFoundError, PagePersistenceError } from \"~/domain/page/errors.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\n\nclass GetPageByIdRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private getEntryById: GetEntryByIdUseCase.Interface\n ) {}\n\n async execute(id: string): RepositoryAbstraction.Return {\n const result = await this.getEntryById.execute(this.pageModel, id);\n\n if (result.isFail()) {\n if (result.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new PageNotFoundError(id));\n }\n\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const page = EntryToPageMapper.toPage(result.value);\n return Result.ok(page);\n }\n}\n\nexport const GetPageByIdRepository = RepositoryAbstraction.createImplementation({\n implementation: GetPageByIdRepositoryImpl,\n dependencies: [PageModel, GetEntryByIdUseCase]\n});\n"],"names":["GetPageByIdRepositoryImpl","pageModel","getEntryById","id","result","Result","PageNotFoundError","PagePersistenceError","page","EntryToPageMapper","GetPageByIdRepository","RepositoryAbstraction","PageModel","GetEntryByIdUseCase"],"mappings":";;;;;;AAOA,MAAMA;IACF,YACYC,SAA8B,EAC9BC,YAA2C,CACrD;aAFUD,SAAS,GAATA;aACAC,YAAY,GAAZA;IACT;IAEH,MAAM,QAAQC,EAAU,EAAgC;QACpD,MAAMC,SAAS,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAED;QAE/D,IAAIC,OAAO,MAAM,IAAI;YACjB,IAAIA,AAAsB,yBAAtBA,OAAO,KAAK,CAAC,IAAI,EACjB,OAAOC,OAAO,IAAI,CAAC,IAAIC,kBAAkBH;YAG7C,OAAOE,OAAO,IAAI,CAAC,IAAIE,qBAAqBH,OAAO,KAAK;QAC5D;QAEA,MAAMI,OAAOC,kBAAkB,MAAM,CAACL,OAAO,KAAK;QAClD,OAAOC,OAAO,EAAE,CAACG;IACrB;AACJ;AAEO,MAAME,8CAAwBC,sBAAAA,oBAA0C,CAAC;IAC5E,gBAAgBX;IAChB,cAAc;QAACY;QAAWC;KAAoB;AAClD"}
|
|
@@ -1,31 +1,29 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
|
-
import {
|
|
2
|
+
import { GetPageByIdRepository, GetPageByIdUseCase } from "./abstractions.js";
|
|
3
3
|
import { WbPermissions } from "../../permissions/abstractions.js";
|
|
4
4
|
import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
|
|
5
5
|
class GetPageByIdUseCaseImpl {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
}
|
|
10
|
-
async execute(id) {
|
|
11
|
-
const hasPermission = await this.permissions.canRead("page");
|
|
12
|
-
if (!hasPermission) {
|
|
13
|
-
return Result.fail(new PageNotAuthorizedError());
|
|
6
|
+
constructor(permissions, repository){
|
|
7
|
+
this.permissions = permissions;
|
|
8
|
+
this.repository = repository;
|
|
14
9
|
}
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
10
|
+
async execute(id) {
|
|
11
|
+
const hasPermission = await this.permissions.canRead("page");
|
|
12
|
+
if (!hasPermission) return Result.fail(new PageNotAuthorizedError());
|
|
13
|
+
const result = await this.repository.execute(id);
|
|
14
|
+
if (result.isFail()) return result;
|
|
15
|
+
const canAccess = await this.permissions.canAccess("page", result.value);
|
|
16
|
+
if (!canAccess) return Result.fail(new PageNotAuthorizedError());
|
|
17
|
+
return result;
|
|
18
18
|
}
|
|
19
|
-
const canAccess = await this.permissions.canAccess("page", result.value);
|
|
20
|
-
if (!canAccess) {
|
|
21
|
-
return Result.fail(new PageNotAuthorizedError());
|
|
22
|
-
}
|
|
23
|
-
return result;
|
|
24
|
-
}
|
|
25
19
|
}
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
20
|
+
const GetPageByIdUseCase_GetPageByIdUseCase = GetPageByIdUseCase.createImplementation({
|
|
21
|
+
implementation: GetPageByIdUseCaseImpl,
|
|
22
|
+
dependencies: [
|
|
23
|
+
WbPermissions,
|
|
24
|
+
GetPageByIdRepository
|
|
25
|
+
]
|
|
29
26
|
});
|
|
27
|
+
export { GetPageByIdUseCase_GetPageByIdUseCase as GetPageByIdUseCase };
|
|
30
28
|
|
|
31
29
|
//# sourceMappingURL=GetPageByIdUseCase.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetPageById/GetPageByIdUseCase.js","sources":["../../../../src/features/pages/GetPageById/GetPageByIdUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetPageByIdUseCase as UseCaseAbstraction, GetPageByIdRepository } from \"./abstractions.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\nclass GetPageByIdUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private repository: GetPageByIdRepository.Interface\n ) {}\n\n async execute(id: string): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canRead(\"page\");\n if (!hasPermission) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n const result = await this.repository.execute(id);\n\n if (result.isFail()) {\n return result;\n }\n\n const canAccess = await this.permissions.canAccess(\"page\", result.value);\n if (!canAccess) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n return result;\n }\n}\n\nexport const GetPageByIdUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetPageByIdUseCaseImpl,\n dependencies: [WbPermissions, GetPageByIdRepository]\n});\n"],"names":["GetPageByIdUseCaseImpl","permissions","repository","id","hasPermission","Result","PageNotAuthorizedError","result","canAccess","GetPageByIdUseCase","UseCaseAbstraction","WbPermissions","GetPageByIdRepository"],"mappings":";;;;AAKA,MAAMA;IACF,YACYC,WAAoC,EACpCC,UAA2C,CACrD;aAFUD,WAAW,GAAXA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,EAAU,EAA6B;QACjD,MAAMC,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACrD,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,MAAMC,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACJ;QAE7C,IAAII,OAAO,MAAM,IACb,OAAOA;QAGX,MAAMC,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQD,OAAO,KAAK;QACvE,IAAI,CAACC,WACD,OAAOH,OAAO,IAAI,CAAC,IAAIC;QAG3B,OAAOC;IACX;AACJ;AAEO,MAAME,wCAAqBC,mBAAAA,oBAAuC,CAAC;IACtE,gBAAgBV;IAChB,cAAc;QAACW;QAAeC;KAAsB;AACxD"}
|
|
@@ -1,16 +1,6 @@
|
|
|
1
1
|
import { createAbstraction } from "@webiny/feature/api";
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
*/
|
|
6
|
-
|
|
7
|
-
export const GetPageByIdRepository = createAbstraction("Wb/GetPageByIdRepository");
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* GetPageById use case interface
|
|
11
|
-
*/
|
|
12
|
-
|
|
13
|
-
/** Retrieve a page by ID. */
|
|
14
|
-
export const GetPageByIdUseCase = createAbstraction("Wb/GetPageByIdUseCase");
|
|
2
|
+
const GetPageByIdRepository = createAbstraction("Wb/GetPageByIdRepository");
|
|
3
|
+
const GetPageByIdUseCase = createAbstraction("Wb/GetPageByIdUseCase");
|
|
4
|
+
export { GetPageByIdRepository, GetPageByIdUseCase };
|
|
15
5
|
|
|
16
6
|
//# sourceMappingURL=abstractions.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetPageById/abstractions.js","sources":["../../../../src/features/pages/GetPageById/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 {\n PageNotFoundError,\n PagePersistenceError,\n PageNotAuthorizedError\n} from \"~/domain/page/errors.js\";\n\n/**\n * GetPageById repository interface\n */\nexport interface IGetPageByIdRepository {\n execute(id: string): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IGetPageByIdRepositoryErrors {\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IGetPageByIdRepositoryErrors[keyof IGetPageByIdRepositoryErrors];\n\nexport const GetPageByIdRepository = createAbstraction<IGetPageByIdRepository>(\n \"Wb/GetPageByIdRepository\"\n);\n\nexport namespace GetPageByIdRepository {\n export type Interface = IGetPageByIdRepository;\n export type Error = RepositoryError;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n}\n\n/**\n * GetPageById use case interface\n */\nexport interface IGetPageByIdUseCase {\n execute(id: string): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IGetPageByIdUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IGetPageByIdUseCaseErrors[keyof IGetPageByIdUseCaseErrors];\n\n/** Retrieve a page by ID. */\nexport const GetPageByIdUseCase = createAbstraction<IGetPageByIdUseCase>(\"Wb/GetPageByIdUseCase\");\n\nexport namespace GetPageByIdUseCase {\n export type Interface = IGetPageByIdUseCase;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n"],"names":["GetPageByIdRepository","createAbstraction","GetPageByIdUseCase"],"mappings":";AAuBO,MAAMA,wBAAwBC,kBACjC;AAyBG,MAAMC,qBAAqBD,kBAAuC"}
|
|
@@ -1,12 +1,13 @@
|
|
|
1
1
|
import { createFeature } from "@webiny/feature/api";
|
|
2
2
|
import { GetPageByIdUseCase } from "./GetPageByIdUseCase.js";
|
|
3
3
|
import { GetPageByIdRepository } from "./GetPageByIdRepository.js";
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
4
|
+
const GetPageByIdFeature = createFeature({
|
|
5
|
+
name: "WebsiteBuilder/GetPageById",
|
|
6
|
+
register (container) {
|
|
7
|
+
container.register(GetPageByIdRepository).inSingletonScope();
|
|
8
|
+
container.register(GetPageByIdUseCase);
|
|
9
|
+
}
|
|
10
10
|
});
|
|
11
|
+
export { GetPageByIdFeature };
|
|
11
12
|
|
|
12
13
|
//# sourceMappingURL=feature.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetPageById/feature.js","sources":["../../../../src/features/pages/GetPageById/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetPageByIdUseCase } from \"./GetPageByIdUseCase.js\";\nimport { GetPageByIdRepository } from \"./GetPageByIdRepository.js\";\n\nexport const GetPageByIdFeature = createFeature({\n name: \"WebsiteBuilder/GetPageById\",\n register(container) {\n container.register(GetPageByIdRepository).inSingletonScope();\n container.register(GetPageByIdUseCase);\n }\n});\n"],"names":["GetPageByIdFeature","createFeature","container","GetPageByIdRepository","GetPageByIdUseCase"],"mappings":";;;AAIO,MAAMA,qBAAqBC,cAAc;IAC5C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,uBAAuB,gBAAgB;QAC1DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
|
|
@@ -1,38 +1,38 @@
|
|
|
1
1
|
import { Result } from "@webiny/feature/api";
|
|
2
2
|
import { GetEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntry";
|
|
3
|
-
import { GetPageByPathRepository
|
|
3
|
+
import { GetPageByPathRepository } from "./abstractions.js";
|
|
4
4
|
import { PageModel } from "../../../domain/page/abstractions.js";
|
|
5
5
|
import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
|
|
6
6
|
import { PageNotFoundError, PagePersistenceError } from "../../../domain/page/errors.js";
|
|
7
7
|
class GetPageByPathRepositoryImpl {
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
}
|
|
12
|
-
async execute(path) {
|
|
13
|
-
const result = await this.getEntry.execute(this.pageModel, {
|
|
14
|
-
where: {
|
|
15
|
-
values: {
|
|
16
|
-
properties: {
|
|
17
|
-
path
|
|
18
|
-
}
|
|
19
|
-
},
|
|
20
|
-
published: true
|
|
21
|
-
}
|
|
22
|
-
});
|
|
23
|
-
if (result.isFail()) {
|
|
24
|
-
return Result.fail(new PagePersistenceError(result.error));
|
|
8
|
+
constructor(pageModel, getEntry){
|
|
9
|
+
this.pageModel = pageModel;
|
|
10
|
+
this.getEntry = getEntry;
|
|
25
11
|
}
|
|
26
|
-
|
|
27
|
-
|
|
12
|
+
async execute(path) {
|
|
13
|
+
const result = await this.getEntry.execute(this.pageModel, {
|
|
14
|
+
where: {
|
|
15
|
+
values: {
|
|
16
|
+
properties: {
|
|
17
|
+
path
|
|
18
|
+
}
|
|
19
|
+
},
|
|
20
|
+
published: true
|
|
21
|
+
}
|
|
22
|
+
});
|
|
23
|
+
if (result.isFail()) return Result.fail(new PagePersistenceError(result.error));
|
|
24
|
+
if (!result.value) return Result.fail(new PageNotFoundError(path));
|
|
25
|
+
const page = EntryToPageMapper.toPage(result.value);
|
|
26
|
+
return Result.ok(page);
|
|
28
27
|
}
|
|
29
|
-
const page = EntryToPageMapper.toPage(result.value);
|
|
30
|
-
return Result.ok(page);
|
|
31
|
-
}
|
|
32
28
|
}
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
29
|
+
const GetPageByPathRepository_GetPageByPathRepository = GetPageByPathRepository.createImplementation({
|
|
30
|
+
implementation: GetPageByPathRepositoryImpl,
|
|
31
|
+
dependencies: [
|
|
32
|
+
PageModel,
|
|
33
|
+
GetEntryUseCase
|
|
34
|
+
]
|
|
36
35
|
});
|
|
36
|
+
export { GetPageByPathRepository_GetPageByPathRepository as GetPageByPathRepository };
|
|
37
37
|
|
|
38
38
|
//# sourceMappingURL=GetPageByPathRepository.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"
|
|
1
|
+
{"version":3,"file":"features/pages/GetPageByPath/GetPageByPathRepository.js","sources":["../../../../src/features/pages/GetPageByPath/GetPageByPathRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntry\";\nimport { GetPageByPathRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { type CmsEntryWbPage, PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport { PageNotFoundError, PagePersistenceError } from \"~/domain/page/errors.js\";\n\nclass GetPageByPathRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private getEntry: GetEntryUseCase.Interface\n ) {}\n\n async execute(path: string): RepositoryAbstraction.Return {\n const result = await this.getEntry.execute<CmsEntryWbPage>(this.pageModel, {\n where: {\n values: {\n properties: {\n path\n }\n },\n published: true\n }\n });\n\n if (result.isFail()) {\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n if (!result.value) {\n return Result.fail(new PageNotFoundError(path));\n }\n\n const page = EntryToPageMapper.toPage(result.value);\n return Result.ok(page);\n }\n}\n\nexport const GetPageByPathRepository = RepositoryAbstraction.createImplementation({\n implementation: GetPageByPathRepositoryImpl,\n dependencies: [PageModel, GetEntryUseCase]\n});\n"],"names":["GetPageByPathRepositoryImpl","pageModel","getEntry","path","result","Result","PagePersistenceError","PageNotFoundError","page","EntryToPageMapper","GetPageByPathRepository","RepositoryAbstraction","PageModel","GetEntryUseCase"],"mappings":";;;;;;AAOA,MAAMA;IACF,YACYC,SAA8B,EAC9BC,QAAmC,CAC7C;aAFUD,SAAS,GAATA;aACAC,QAAQ,GAARA;IACT;IAEH,MAAM,QAAQC,IAAY,EAAgC;QACtD,MAAMC,SAAS,MAAM,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAiB,IAAI,CAAC,SAAS,EAAE;YACvE,OAAO;gBACH,QAAQ;oBACJ,YAAY;wBACRD;oBACJ;gBACJ;gBACA,WAAW;YACf;QACJ;QAEA,IAAIC,OAAO,MAAM,IACb,OAAOC,OAAO,IAAI,CAAC,IAAIC,qBAAqBF,OAAO,KAAK;QAG5D,IAAI,CAACA,OAAO,KAAK,EACb,OAAOC,OAAO,IAAI,CAAC,IAAIE,kBAAkBJ;QAG7C,MAAMK,OAAOC,kBAAkB,MAAM,CAACL,OAAO,KAAK;QAClD,OAAOC,OAAO,EAAE,CAACG;IACrB;AACJ;AAEO,MAAME,kDAA0BC,wBAAAA,oBAA0C,CAAC;IAC9E,gBAAgBX;IAChB,cAAc;QAACY;QAAWC;KAAgB;AAC9C"}
|