@webiny/api-website-builder 6.0.0 → 6.1.0-beta.1

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.
Files changed (153) hide show
  1. package/domain/page/EntryToPageMapper.js +1 -0
  2. package/domain/page/EntryToPageMapper.js.map +1 -1
  3. package/domain/page/abstractions.d.ts +6 -1
  4. package/domain/page/abstractions.js.map +1 -1
  5. package/domain/page/errors.d.ts +6 -0
  6. package/domain/page/errors.js +11 -0
  7. package/domain/page/errors.js.map +1 -1
  8. package/exports/api/website-builder/page.d.ts +4 -0
  9. package/exports/api/website-builder/page.js +4 -0
  10. package/exports/api/website-builder/page.js.map +1 -1
  11. package/features/nextjs/abstractions.d.ts +1 -0
  12. package/features/nextjs/abstractions.js +1 -0
  13. package/features/nextjs/abstractions.js.map +1 -1
  14. package/features/pages/CreatePage/abstractions.d.ts +3 -0
  15. package/features/pages/CreatePage/abstractions.js +3 -0
  16. package/features/pages/CreatePage/abstractions.js.map +1 -1
  17. package/features/pages/CreatePageRevisionFrom/abstractions.d.ts +3 -0
  18. package/features/pages/CreatePageRevisionFrom/abstractions.js +3 -0
  19. package/features/pages/CreatePageRevisionFrom/abstractions.js.map +1 -1
  20. package/features/pages/DeletePage/DeletePageRepository.d.ts +1 -3
  21. package/features/pages/DeletePage/DeletePageRepository.js +2 -13
  22. package/features/pages/DeletePage/DeletePageRepository.js.map +1 -1
  23. package/features/pages/DeletePage/DeletePageUseCase.d.ts +4 -4
  24. package/features/pages/DeletePage/DeletePageUseCase.js +7 -7
  25. package/features/pages/DeletePage/DeletePageUseCase.js.map +1 -1
  26. package/features/pages/DeletePage/abstractions.d.ts +5 -1
  27. package/features/pages/DeletePage/abstractions.js +3 -0
  28. package/features/pages/DeletePage/abstractions.js.map +1 -1
  29. package/features/pages/DuplicatePage/abstractions.d.ts +3 -0
  30. package/features/pages/DuplicatePage/abstractions.js +3 -0
  31. package/features/pages/DuplicatePage/abstractions.js.map +1 -1
  32. package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.d.ts +13 -0
  33. package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js +32 -0
  34. package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js.map +1 -0
  35. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.d.ts +12 -0
  36. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js +31 -0
  37. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js.map +1 -0
  38. package/features/pages/GetDeletedPageById/abstractions.d.ts +42 -0
  39. package/features/pages/GetDeletedPageById/abstractions.js +15 -0
  40. package/features/pages/GetDeletedPageById/abstractions.js.map +1 -0
  41. package/features/pages/GetDeletedPageById/feature.d.ts +1 -0
  42. package/features/pages/GetDeletedPageById/feature.js +12 -0
  43. package/features/pages/GetDeletedPageById/feature.js.map +1 -0
  44. package/features/pages/GetDeletedPageById/index.d.ts +1 -0
  45. package/features/pages/GetDeletedPageById/index.js +3 -0
  46. package/features/pages/GetDeletedPageById/index.js.map +1 -0
  47. package/features/pages/GetPageById/abstractions.d.ts +1 -0
  48. package/features/pages/GetPageById/abstractions.js +1 -0
  49. package/features/pages/GetPageById/abstractions.js.map +1 -1
  50. package/features/pages/GetPageByPath/abstractions.d.ts +1 -0
  51. package/features/pages/GetPageByPath/abstractions.js +1 -0
  52. package/features/pages/GetPageByPath/abstractions.js.map +1 -1
  53. package/features/pages/GetPageRevisions/abstractions.d.ts +1 -0
  54. package/features/pages/GetPageRevisions/abstractions.js +1 -0
  55. package/features/pages/GetPageRevisions/abstractions.js.map +1 -1
  56. package/features/pages/ListDeletedPages/ListDeletedPagesRepository.d.ts +17 -0
  57. package/features/pages/ListDeletedPages/ListDeletedPagesRepository.js +49 -0
  58. package/features/pages/ListDeletedPages/ListDeletedPagesRepository.js.map +1 -0
  59. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.d.ts +14 -0
  60. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js +35 -0
  61. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js.map +1 -0
  62. package/features/pages/ListDeletedPages/abstractions.d.ts +56 -0
  63. package/features/pages/ListDeletedPages/abstractions.js +15 -0
  64. package/features/pages/ListDeletedPages/abstractions.js.map +1 -0
  65. package/features/pages/ListDeletedPages/feature.d.ts +1 -0
  66. package/features/pages/ListDeletedPages/feature.js +12 -0
  67. package/features/pages/ListDeletedPages/feature.js.map +1 -0
  68. package/features/pages/ListDeletedPages/index.d.ts +1 -0
  69. package/features/pages/ListDeletedPages/index.js +3 -0
  70. package/features/pages/ListDeletedPages/index.js.map +1 -0
  71. package/features/pages/ListPages/abstractions.d.ts +1 -0
  72. package/features/pages/ListPages/abstractions.js +1 -0
  73. package/features/pages/ListPages/abstractions.js.map +1 -1
  74. package/features/pages/MovePage/abstractions.d.ts +3 -0
  75. package/features/pages/MovePage/abstractions.js +3 -0
  76. package/features/pages/MovePage/abstractions.js.map +1 -1
  77. package/features/pages/PublishPage/abstractions.d.ts +3 -0
  78. package/features/pages/PublishPage/abstractions.js +3 -0
  79. package/features/pages/PublishPage/abstractions.js.map +1 -1
  80. package/features/pages/RestorePage/RestorePageRepository.d.ts +13 -0
  81. package/features/pages/RestorePage/RestorePageRepository.js +30 -0
  82. package/features/pages/RestorePage/RestorePageRepository.js.map +1 -0
  83. package/features/pages/RestorePage/RestorePageUseCase.d.ts +16 -0
  84. package/features/pages/RestorePage/RestorePageUseCase.js +52 -0
  85. package/features/pages/RestorePage/RestorePageUseCase.js.map +1 -0
  86. package/features/pages/RestorePage/abstractions.d.ts +59 -0
  87. package/features/pages/RestorePage/abstractions.js +30 -0
  88. package/features/pages/RestorePage/abstractions.js.map +1 -0
  89. package/features/pages/RestorePage/events.d.ts +10 -0
  90. package/features/pages/RestorePage/events.js +19 -0
  91. package/features/pages/RestorePage/events.js.map +1 -0
  92. package/features/pages/RestorePage/feature.d.ts +1 -0
  93. package/features/pages/RestorePage/feature.js +12 -0
  94. package/features/pages/RestorePage/feature.js.map +1 -0
  95. package/features/pages/RestorePage/index.d.ts +1 -0
  96. package/features/pages/RestorePage/index.js +3 -0
  97. package/features/pages/RestorePage/index.js.map +1 -0
  98. package/features/pages/TrashPage/TrashPageRepository.d.ts +13 -0
  99. package/features/pages/TrashPage/TrashPageRepository.js +30 -0
  100. package/features/pages/TrashPage/TrashPageRepository.js.map +1 -0
  101. package/features/pages/TrashPage/TrashPageUseCase.d.ts +16 -0
  102. package/features/pages/TrashPage/TrashPageUseCase.js +52 -0
  103. package/features/pages/TrashPage/TrashPageUseCase.js.map +1 -0
  104. package/features/pages/TrashPage/abstractions.d.ts +58 -0
  105. package/features/pages/TrashPage/abstractions.js +30 -0
  106. package/features/pages/TrashPage/abstractions.js.map +1 -0
  107. package/features/pages/TrashPage/events.d.ts +10 -0
  108. package/features/pages/TrashPage/events.js +19 -0
  109. package/features/pages/TrashPage/events.js.map +1 -0
  110. package/features/pages/TrashPage/feature.d.ts +1 -0
  111. package/features/pages/TrashPage/feature.js +12 -0
  112. package/features/pages/TrashPage/feature.js.map +1 -0
  113. package/features/pages/TrashPage/index.d.ts +1 -0
  114. package/features/pages/TrashPage/index.js +3 -0
  115. package/features/pages/TrashPage/index.js.map +1 -0
  116. package/features/pages/UnpublishPage/abstractions.d.ts +3 -0
  117. package/features/pages/UnpublishPage/abstractions.js +3 -0
  118. package/features/pages/UnpublishPage/abstractions.js.map +1 -1
  119. package/features/pages/UpdatePage/abstractions.d.ts +3 -0
  120. package/features/pages/UpdatePage/abstractions.js +3 -0
  121. package/features/pages/UpdatePage/abstractions.js.map +1 -1
  122. package/features/redirects/CreateRedirect/abstractions.d.ts +3 -0
  123. package/features/redirects/CreateRedirect/abstractions.js +3 -0
  124. package/features/redirects/CreateRedirect/abstractions.js.map +1 -1
  125. package/features/redirects/DeleteRedirect/abstractions.d.ts +3 -0
  126. package/features/redirects/DeleteRedirect/abstractions.js +3 -0
  127. package/features/redirects/DeleteRedirect/abstractions.js.map +1 -1
  128. package/features/redirects/GetActiveRedirects/abstractions.d.ts +1 -0
  129. package/features/redirects/GetActiveRedirects/abstractions.js +1 -0
  130. package/features/redirects/GetActiveRedirects/abstractions.js.map +1 -1
  131. package/features/redirects/GetRedirectById/abstractions.d.ts +1 -0
  132. package/features/redirects/GetRedirectById/abstractions.js +1 -0
  133. package/features/redirects/GetRedirectById/abstractions.js.map +1 -1
  134. package/features/redirects/InvalidateRedirectsCache/abstractions.d.ts +1 -0
  135. package/features/redirects/InvalidateRedirectsCache/abstractions.js +1 -0
  136. package/features/redirects/InvalidateRedirectsCache/abstractions.js.map +1 -1
  137. package/features/redirects/ListRedirects/abstractions.d.ts +1 -0
  138. package/features/redirects/ListRedirects/abstractions.js +1 -0
  139. package/features/redirects/ListRedirects/abstractions.js.map +1 -1
  140. package/features/redirects/MoveRedirect/abstractions.d.ts +3 -0
  141. package/features/redirects/MoveRedirect/abstractions.js +3 -0
  142. package/features/redirects/MoveRedirect/abstractions.js.map +1 -1
  143. package/features/redirects/UpdateRedirect/abstractions.d.ts +3 -0
  144. package/features/redirects/UpdateRedirect/abstractions.js +3 -0
  145. package/features/redirects/UpdateRedirect/abstractions.js.map +1 -1
  146. package/graphql/pages/pages.gql.js +43 -2
  147. package/graphql/pages/pages.gql.js.map +1 -1
  148. package/graphql/pages/pages.typeDefs.d.ts +1 -1
  149. package/graphql/pages/pages.typeDefs.js +9 -1
  150. package/graphql/pages/pages.typeDefs.js.map +1 -1
  151. package/index.js +8 -0
  152. package/index.js.map +1 -1
  153. package/package.json +19 -19
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","EventPublisher","TrashPageUseCase","UseCaseAbstraction","TrashPageRepository","PageBeforeTrashEvent","PageAfterTrashEvent","GetPageByIdUseCase","WbPermissions","PageNotAuthorizedError","TrashPageUseCaseImpl","constructor","permissions","eventPublisher","getPageById","repository","execute","params","getResult","id","isFail","fail","error","page","value","canDelete","beforeEvent","publish","result","afterEvent","ok","createImplementation","implementation","dependencies","Abstraction"],"sources":["TrashPageUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n EventPublisher,\n EventPublisher as EventPublisherAbstraction\n} from \"@webiny/api-core/features/EventPublisher\";\nimport { TrashPageUseCase as UseCaseAbstraction, TrashPageRepository } from \"./abstractions.js\";\nimport { PageBeforeTrashEvent, PageAfterTrashEvent } from \"./events.js\";\nimport { GetPageByIdUseCase } from \"~/features/pages/GetPageById/index.js\";\nimport { WbPermissions } from \"~/domain/permissions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\nclass TrashPageUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getPageById: GetPageByIdUseCase.Interface,\n private repository: TrashPageRepository.Interface\n ) {}\n\n public async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return {\n // Get the page first to include in events and for item-level permission check\n const getResult = await this.getPageById.execute(params.id);\n\n if (getResult.isFail()) {\n return Result.fail(getResult.error);\n }\n\n const page = getResult.value;\n\n const canDelete = await this.permissions.canDelete(\"page\", page);\n if (!canDelete) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n // Publish before delete event\n const beforeEvent = new PageBeforeTrashEvent({\n page\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 PageAfterTrashEvent({\n page\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok();\n }\n}\n\nexport const TrashPageUseCase = UseCaseAbstraction.createImplementation({\n implementation: TrashPageUseCaseImpl,\n dependencies: [\n WbPermissions.Abstraction,\n EventPublisher,\n GetPageByIdUseCase,\n TrashPageRepository\n ]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SACIC,cAAc,QAEX,0CAA0C;AACjD,SAASC,gBAAgB,IAAIC,kBAAkB,EAAEC,mBAAmB;AACpE,SAASC,oBAAoB,EAAEC,mBAAmB;AAClD,SAASC,kBAAkB;AAC3B,SAASC,aAAa;AACtB,SAASC,sBAAsB;AAE/B,MAAMC,oBAAoB,CAAyC;EAC/DC,WAAWA,CACCC,WAAoC,EACpCC,cAAmD,EACnDC,WAAyC,EACzCC,UAAyC,EACnD;IAAA,KAJUH,WAAoC,GAApCA,WAAoC;IAAA,KACpCC,cAAmD,GAAnDA,cAAmD;IAAA,KACnDC,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,UAAyC,GAAzCA,UAAyC;EAClD;EAEH,MAAaC,OAAOA,CAACC,MAAiC,EAA6B;IAC/E;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACJ,WAAW,CAACE,OAAO,CAACC,MAAM,CAACE,EAAE,CAAC;IAE3D,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOpB,MAAM,CAACqB,IAAI,CAACH,SAAS,CAACI,KAAK,CAAC;IACvC;IAEA,MAAMC,IAAI,GAAGL,SAAS,CAACM,KAAK;IAE5B,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACb,WAAW,CAACa,SAAS,CAAC,MAAM,EAAEF,IAAI,CAAC;IAChE,IAAI,CAACE,SAAS,EAAE;MACZ,OAAOzB,MAAM,CAACqB,IAAI,CAAC,IAAIZ,sBAAsB,CAAC,CAAC,CAAC;IACpD;;IAEA;IACA,MAAMiB,WAAW,GAAG,IAAIrB,oBAAoB,CAAC;MACzCkB;IACJ,CAAC,CAAC;IAEF,MAAM,IAAI,CAACV,cAAc,CAACc,OAAO,CAACD,WAAW,CAAC;;IAE9C;IACA,MAAME,MAAM,GAAG,MAAM,IAAI,CAACb,UAAU,CAACC,OAAO,CAACC,MAAM,CAAC;IAEpD,IAAIW,MAAM,CAACR,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOQ,MAAM;IACjB;;IAEA;IACA,MAAMC,UAAU,GAAG,IAAIvB,mBAAmB,CAAC;MACvCiB;IACJ,CAAC,CAAC;IAEF,MAAM,IAAI,CAACV,cAAc,CAACc,OAAO,CAACE,UAAU,CAAC;IAE7C,OAAO7B,MAAM,CAAC8B,EAAE,CAAC,CAAC;EACtB;AACJ;AAEA,OAAO,MAAM5B,gBAAgB,GAAGC,kBAAkB,CAAC4B,oBAAoB,CAAC;EACpEC,cAAc,EAAEtB,oBAAoB;EACpCuB,YAAY,EAAE,CACVzB,aAAa,CAAC0B,WAAW,EACzBjC,cAAc,EACdM,kBAAkB,EAClBH,mBAAmB;AAE3B,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,58 @@
1
+ import { type Result } from "@webiny/feature/api";
2
+ import type { IEventHandler } from "@webiny/api-core/features/EventPublisher";
3
+ import type { DomainEvent } from "@webiny/api-core/features/EventPublisher";
4
+ import type { WbPage } from "../../../domain/page/abstractions.js";
5
+ import { PageNotFoundError, PagePersistenceError, PageNotAuthorizedError } from "../../../domain/page/errors.js";
6
+ export interface ITrashWbPageParams {
7
+ id: string;
8
+ }
9
+ export interface ITrashPageRepository {
10
+ execute(params: ITrashWbPageParams): Promise<Result<void, RepositoryError>>;
11
+ }
12
+ export interface ITrashPageRepositoryErrors {
13
+ notFound: PageNotFoundError;
14
+ persistence: PagePersistenceError;
15
+ }
16
+ type RepositoryError = ITrashPageRepositoryErrors[keyof ITrashPageRepositoryErrors];
17
+ export declare const TrashPageRepository: import("@webiny/di").Abstraction<ITrashPageRepository>;
18
+ export declare namespace TrashPageRepository {
19
+ type Interface = ITrashPageRepository;
20
+ type Params = ITrashWbPageParams;
21
+ type Return = Promise<Result<void, RepositoryError>>;
22
+ type Error = RepositoryError;
23
+ }
24
+ export interface ITrashPageUseCase {
25
+ execute(params: ITrashWbPageParams): Promise<Result<void, UseCaseError>>;
26
+ }
27
+ export interface ITrashPageUseCaseErrors {
28
+ notAuthorized: PageNotAuthorizedError;
29
+ notFound: PageNotFoundError;
30
+ persistence: PagePersistenceError;
31
+ }
32
+ type UseCaseError = ITrashPageUseCaseErrors[keyof ITrashPageUseCaseErrors];
33
+ export declare const TrashPageUseCase: import("@webiny/di").Abstraction<ITrashPageUseCase>;
34
+ export declare namespace TrashPageUseCase {
35
+ type Interface = ITrashPageUseCase;
36
+ type Params = ITrashWbPageParams;
37
+ type Return = Promise<Result<void, UseCaseError>>;
38
+ type Error = UseCaseError;
39
+ }
40
+ export interface PageBeforeTrashPayload {
41
+ page: WbPage;
42
+ }
43
+ export interface PageAfterTrashPayload {
44
+ page: WbPage;
45
+ }
46
+ export declare const PageBeforeTrashEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageBeforeTrashPayload>>>;
47
+ export declare namespace PageBeforeTrashEventHandler {
48
+ type Interface = IEventHandler<DomainEvent<PageBeforeTrashPayload>>;
49
+ type Event = DomainEvent<PageBeforeTrashPayload>;
50
+ type Page = WbPage;
51
+ }
52
+ export declare const PageAfterTrashEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageAfterTrashPayload>>>;
53
+ export declare namespace PageAfterTrashEventHandler {
54
+ type Interface = IEventHandler<DomainEvent<PageAfterTrashPayload>>;
55
+ type Event = DomainEvent<PageAfterTrashPayload>;
56
+ type Page = WbPage;
57
+ }
58
+ export {};
@@ -0,0 +1,30 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+
3
+ // ============================================================================
4
+ // Type Definitions
5
+ // ============================================================================
6
+
7
+ // ============================================================================
8
+ // Repository Abstraction
9
+ // ============================================================================
10
+
11
+ export const TrashPageRepository = createAbstraction("Wb/TrashPageRepository");
12
+
13
+ // ============================================================================
14
+ // Use Case Abstraction
15
+ // ============================================================================
16
+
17
+ export const TrashPageUseCase = createAbstraction("Wb/TrashPageUseCase");
18
+
19
+ // ============================================================================
20
+ // Event Payload Types
21
+ // ============================================================================
22
+
23
+ // ============================================================================
24
+ // Event Handler Abstractions
25
+ // ============================================================================
26
+
27
+ export const PageBeforeTrashEventHandler = createAbstraction("Wb/PageBeforeTrashEventHandler");
28
+ export const PageAfterTrashEventHandler = createAbstraction("Wb/PageAfterTrashEventHandler");
29
+
30
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","TrashPageRepository","TrashPageUseCase","PageBeforeTrashEventHandler","PageAfterTrashEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport {\n PageNotFoundError,\n PagePersistenceError,\n PageNotAuthorizedError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface ITrashWbPageParams {\n id: string;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface ITrashPageRepository {\n execute(params: ITrashWbPageParams): Promise<Result<void, RepositoryError>>;\n}\n\nexport interface ITrashPageRepositoryErrors {\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = ITrashPageRepositoryErrors[keyof ITrashPageRepositoryErrors];\n\nexport const TrashPageRepository =\n createAbstraction<ITrashPageRepository>(\"Wb/TrashPageRepository\");\n\nexport namespace TrashPageRepository {\n export type Interface = ITrashPageRepository;\n export type Params = ITrashWbPageParams;\n export type Return = Promise<Result<void, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface ITrashPageUseCase {\n execute(params: ITrashWbPageParams): Promise<Result<void, UseCaseError>>;\n}\n\nexport interface ITrashPageUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = ITrashPageUseCaseErrors[keyof ITrashPageUseCaseErrors];\n\nexport const TrashPageUseCase = createAbstraction<ITrashPageUseCase>(\"Wb/TrashPageUseCase\");\n\nexport namespace TrashPageUseCase {\n export type Interface = ITrashPageUseCase;\n export type Params = ITrashWbPageParams;\n export type Return = Promise<Result<void, UseCaseError>>;\n export type Error = UseCaseError;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeTrashPayload {\n page: WbPage;\n}\n\nexport interface PageAfterTrashPayload {\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\nexport const PageBeforeTrashEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeTrashPayload>>\n>(\"Wb/PageBeforeTrashEventHandler\");\n\nexport namespace PageBeforeTrashEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeTrashPayload>>;\n export type Event = DomainEvent<PageBeforeTrashPayload>;\n export type Page = WbPage;\n}\n\nexport const PageAfterTrashEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterTrashPayload>>\n>(\"Wb/PageAfterTrashEventHandler\");\n\nexport namespace PageAfterTrashEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterTrashPayload>>;\n export type Event = DomainEvent<PageAfterTrashPayload>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAUpE;AACA;AACA;;AAMA;AACA;AACA;;AAaA,OAAO,MAAMC,mBAAmB,GAC5BD,iBAAiB,CAAuB,wBAAwB,CAAC;;AASrE;AACA;AACA;;AAcA,OAAO,MAAME,gBAAgB,GAAGF,iBAAiB,CAAoB,qBAAqB,CAAC;;AAS3F;AACA;AACA;;AAUA;AACA;AACA;;AAEA,OAAO,MAAMG,2BAA2B,GAAGH,iBAAiB,CAE1D,gCAAgC,CAAC;AAQnC,OAAO,MAAMI,0BAA0B,GAAGJ,iBAAiB,CAEzD,+BAA+B,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import type { PageBeforeTrashPayload, PageAfterTrashPayload } from "./abstractions.js";
3
+ export declare class PageBeforeTrashEvent extends DomainEvent<PageBeforeTrashPayload> {
4
+ eventType: "page.beforeTrash";
5
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageBeforeTrashPayload>>>;
6
+ }
7
+ export declare class PageAfterTrashEvent extends DomainEvent<PageAfterTrashPayload> {
8
+ eventType: "page.afterTrash";
9
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageAfterTrashPayload>>>;
10
+ }
@@ -0,0 +1,19 @@
1
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import { PageBeforeTrashEventHandler, PageAfterTrashEventHandler } from "./abstractions.js";
3
+ // PageBeforeTrash Event
4
+ export class PageBeforeTrashEvent extends DomainEvent {
5
+ eventType = "page.beforeTrash";
6
+ getHandlerAbstraction() {
7
+ return PageBeforeTrashEventHandler;
8
+ }
9
+ }
10
+
11
+ // PageAfterTrash Event
12
+ export class PageAfterTrashEvent extends DomainEvent {
13
+ eventType = "page.afterTrash";
14
+ getHandlerAbstraction() {
15
+ return PageAfterTrashEventHandler;
16
+ }
17
+ }
18
+
19
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DomainEvent","PageBeforeTrashEventHandler","PageAfterTrashEventHandler","PageBeforeTrashEvent","eventType","getHandlerAbstraction","PageAfterTrashEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { PageBeforeTrashEventHandler, PageAfterTrashEventHandler } from \"./abstractions.js\";\nimport type { PageBeforeTrashPayload, PageAfterTrashPayload } from \"./abstractions.js\";\n\n// PageBeforeTrash Event\nexport class PageBeforeTrashEvent extends DomainEvent<PageBeforeTrashPayload> {\n eventType = \"page.beforeTrash\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeTrashEventHandler;\n }\n}\n\n// PageAfterTrash Event\nexport class PageAfterTrashEvent extends DomainEvent<PageAfterTrashPayload> {\n eventType = \"page.afterTrash\" as const;\n\n getHandlerAbstraction() {\n return PageAfterTrashEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,2BAA2B,EAAEC,0BAA0B;AAGhE;AACA,OAAO,MAAMC,oBAAoB,SAASH,WAAW,CAAyB;EAC1EI,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,2BAA2B;EACtC;AACJ;;AAEA;AACA,OAAO,MAAMK,mBAAmB,SAASN,WAAW,CAAwB;EACxEI,SAAS,GAAG,iBAAiB;EAE7BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,0BAA0B;EACrC;AACJ","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const TrashPageFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
@@ -0,0 +1,12 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { TrashPageRepository } from "./TrashPageRepository.js";
3
+ import { TrashPageUseCase } from "./TrashPageUseCase.js";
4
+ export const TrashPageFeature = createFeature({
5
+ name: "WebsiteBuilder/TrashPage",
6
+ register(container) {
7
+ container.register(TrashPageRepository).inSingletonScope();
8
+ container.register(TrashPageUseCase);
9
+ }
10
+ });
11
+
12
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","TrashPageRepository","TrashPageUseCase","TrashPageFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { TrashPageRepository } from \"./TrashPageRepository.js\";\nimport { TrashPageUseCase } from \"./TrashPageUseCase.js\";\n\nexport const TrashPageFeature = createFeature({\n name: \"WebsiteBuilder/TrashPage\",\n register(container) {\n container.register(TrashPageRepository).inSingletonScope();\n container.register(TrashPageUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,mBAAmB;AAC5B,SAASC,gBAAgB;AAEzB,OAAO,MAAMC,gBAAgB,GAAGH,aAAa,CAAC;EAC1CI,IAAI,EAAE,0BAA0B;EAChCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,mBAAmB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC1DD,SAAS,CAACD,QAAQ,CAACH,gBAAgB,CAAC;EACxC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export { PageAfterTrashEventHandler, PageBeforeTrashEventHandler, TrashPageUseCase } from "./abstractions.js";
@@ -0,0 +1,3 @@
1
+ export { PageAfterTrashEventHandler, PageBeforeTrashEventHandler, TrashPageUseCase } from "./abstractions.js";
2
+
3
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["PageAfterTrashEventHandler","PageBeforeTrashEventHandler","TrashPageUseCase"],"sources":["index.ts"],"sourcesContent":["export {\n PageAfterTrashEventHandler,\n PageBeforeTrashEventHandler,\n TrashPageUseCase\n} from \"./abstractions.js\";\n"],"mappings":"AAAA,SACIA,0BAA0B,EAC1BC,2BAA2B,EAC3BC,gBAAgB","ignoreList":[]}
@@ -30,6 +30,7 @@ export interface IUnpublishPageUseCaseErrors {
30
30
  persistence: PagePersistenceError;
31
31
  }
32
32
  type UseCaseError = IUnpublishPageUseCaseErrors[keyof IUnpublishPageUseCaseErrors];
33
+ /** Unpublish a page. */
33
34
  export declare const UnpublishPageUseCase: import("@webiny/di").Abstraction<IUnpublishPageUseCase>;
34
35
  export declare namespace UnpublishPageUseCase {
35
36
  type Interface = IUnpublishPageUseCase;
@@ -44,12 +45,14 @@ export interface PageBeforeUnpublishPayload {
44
45
  export interface PageAfterUnpublishPayload {
45
46
  page: WbPage;
46
47
  }
48
+ /** Hook into page lifecycle before a page is unpublished. */
47
49
  export declare const PageBeforeUnpublishEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>>;
48
50
  export declare namespace PageBeforeUnpublishEventHandler {
49
51
  type Interface = IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>;
50
52
  type Event = DomainEvent<PageBeforeUnpublishPayload>;
51
53
  type Page = WbPage;
52
54
  }
55
+ /** Hook into page lifecycle after a page is unpublished. */
53
56
  export declare const PageAfterUnpublishEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageAfterUnpublishPayload>>>;
54
57
  export declare namespace PageAfterUnpublishEventHandler {
55
58
  type Interface = IEventHandler<DomainEvent<PageAfterUnpublishPayload>>;
@@ -14,6 +14,7 @@ export const UnpublishPageRepository = createAbstraction("Wb/UnpublishPageReposi
14
14
  // Use Case Abstraction
15
15
  // ============================================================================
16
16
 
17
+ /** Unpublish a page. */
17
18
  export const UnpublishPageUseCase = createAbstraction("Wb/UnpublishPageUseCase");
18
19
 
19
20
  // ============================================================================
@@ -24,7 +25,9 @@ export const UnpublishPageUseCase = createAbstraction("Wb/UnpublishPageUseCase")
24
25
  // Event Handler Abstractions
25
26
  // ============================================================================
26
27
 
28
+ /** Hook into page lifecycle before a page is unpublished. */
27
29
  export const PageBeforeUnpublishEventHandler = createAbstraction("Wb/PageBeforeUnpublishEventHandler");
30
+ /** Hook into page lifecycle after a page is unpublished. */
28
31
  export const PageAfterUnpublishEventHandler = createAbstraction("Wb/PageAfterUnpublishEventHandler");
29
32
 
30
33
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","UnpublishPageRepository","UnpublishPageUseCase","PageBeforeUnpublishEventHandler","PageAfterUnpublishEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport {\n PageNotFoundError,\n PagePersistenceError,\n PageNotAuthorizedError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUnpublishWbPageParams {\n id: string;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUnpublishPageRepository {\n execute(params: IUnpublishWbPageParams): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IUnpublishPageRepositoryErrors {\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IUnpublishPageRepositoryErrors[keyof IUnpublishPageRepositoryErrors];\n\nexport const UnpublishPageRepository = createAbstraction<IUnpublishPageRepository>(\n \"Wb/UnpublishPageRepository\"\n);\n\nexport namespace UnpublishPageRepository {\n export type Interface = IUnpublishPageRepository;\n export type Params = IUnpublishWbPageParams;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IUnpublishPageUseCase {\n execute(params: IUnpublishWbPageParams): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IUnpublishPageUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IUnpublishPageUseCaseErrors[keyof IUnpublishPageUseCaseErrors];\n\nexport const UnpublishPageUseCase =\n createAbstraction<IUnpublishPageUseCase>(\"Wb/UnpublishPageUseCase\");\n\nexport namespace UnpublishPageUseCase {\n export type Interface = IUnpublishPageUseCase;\n export type Params = IUnpublishWbPageParams;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeUnpublishPayload {\n page: WbPage;\n}\n\nexport interface PageAfterUnpublishPayload {\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\nexport const PageBeforeUnpublishEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>\n>(\"Wb/PageBeforeUnpublishEventHandler\");\n\nexport namespace PageBeforeUnpublishEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>;\n export type Event = DomainEvent<PageBeforeUnpublishPayload>;\n export type Page = WbPage;\n}\n\nexport const PageAfterUnpublishEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterUnpublishPayload>>\n>(\"Wb/PageAfterUnpublishEventHandler\");\n\nexport namespace PageAfterUnpublishEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterUnpublishPayload>>;\n export type Event = DomainEvent<PageAfterUnpublishPayload>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAUpE;AACA;AACA;;AAMA;AACA;AACA;;AAaA,OAAO,MAAMC,uBAAuB,GAAGD,iBAAiB,CACpD,4BACJ,CAAC;;AASD;AACA;AACA;;AAcA,OAAO,MAAME,oBAAoB,GAC7BF,iBAAiB,CAAwB,yBAAyB,CAAC;;AAUvE;AACA;AACA;;AAUA;AACA;AACA;;AAEA,OAAO,MAAMG,+BAA+B,GAAGH,iBAAiB,CAE9D,oCAAoC,CAAC;AAQvC,OAAO,MAAMI,8BAA8B,GAAGJ,iBAAiB,CAE7D,mCAAmC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","UnpublishPageRepository","UnpublishPageUseCase","PageBeforeUnpublishEventHandler","PageAfterUnpublishEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport {\n PageNotFoundError,\n PagePersistenceError,\n PageNotAuthorizedError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUnpublishWbPageParams {\n id: string;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUnpublishPageRepository {\n execute(params: IUnpublishWbPageParams): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IUnpublishPageRepositoryErrors {\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IUnpublishPageRepositoryErrors[keyof IUnpublishPageRepositoryErrors];\n\nexport const UnpublishPageRepository = createAbstraction<IUnpublishPageRepository>(\n \"Wb/UnpublishPageRepository\"\n);\n\nexport namespace UnpublishPageRepository {\n export type Interface = IUnpublishPageRepository;\n export type Params = IUnpublishWbPageParams;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IUnpublishPageUseCase {\n execute(params: IUnpublishWbPageParams): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IUnpublishPageUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IUnpublishPageUseCaseErrors[keyof IUnpublishPageUseCaseErrors];\n\n/** Unpublish a page. */\nexport const UnpublishPageUseCase =\n createAbstraction<IUnpublishPageUseCase>(\"Wb/UnpublishPageUseCase\");\n\nexport namespace UnpublishPageUseCase {\n export type Interface = IUnpublishPageUseCase;\n export type Params = IUnpublishWbPageParams;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeUnpublishPayload {\n page: WbPage;\n}\n\nexport interface PageAfterUnpublishPayload {\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into page lifecycle before a page is unpublished. */\nexport const PageBeforeUnpublishEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>\n>(\"Wb/PageBeforeUnpublishEventHandler\");\n\nexport namespace PageBeforeUnpublishEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>;\n export type Event = DomainEvent<PageBeforeUnpublishPayload>;\n export type Page = WbPage;\n}\n\n/** Hook into page lifecycle after a page is unpublished. */\nexport const PageAfterUnpublishEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterUnpublishPayload>>\n>(\"Wb/PageAfterUnpublishEventHandler\");\n\nexport namespace PageAfterUnpublishEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterUnpublishPayload>>;\n export type Event = DomainEvent<PageAfterUnpublishPayload>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAUpE;AACA;AACA;;AAMA;AACA;AACA;;AAaA,OAAO,MAAMC,uBAAuB,GAAGD,iBAAiB,CACpD,4BACJ,CAAC;;AASD;AACA;AACA;;AAcA;AACA,OAAO,MAAME,oBAAoB,GAC7BF,iBAAiB,CAAwB,yBAAyB,CAAC;;AAUvE;AACA;AACA;;AAUA;AACA;AACA;;AAEA;AACA,OAAO,MAAMG,+BAA+B,GAAGH,iBAAiB,CAE9D,oCAAoC,CAAC;AAQvC;AACA,OAAO,MAAMI,8BAA8B,GAAGJ,iBAAiB,CAE7D,mCAAmC,CAAC","ignoreList":[]}
@@ -38,6 +38,7 @@ export interface IUpdatePageUseCaseErrors {
38
38
  persistence: PagePersistenceError;
39
39
  }
40
40
  type UseCaseError = IUpdatePageUseCaseErrors[keyof IUpdatePageUseCaseErrors];
41
+ /** Update a page. */
41
42
  export declare const UpdatePageUseCase: import("@webiny/di").Abstraction<IUpdatePageUseCase>;
42
43
  export declare namespace UpdatePageUseCase {
43
44
  type Interface = IUpdatePageUseCase;
@@ -61,12 +62,14 @@ export interface PageAfterUpdatePayload {
61
62
  };
62
63
  page: WbPage;
63
64
  }
65
+ /** Hook into page lifecycle before a page is updated. */
64
66
  export declare const PageBeforeUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageBeforeUpdatePayload>>>;
65
67
  export declare namespace PageBeforeUpdateEventHandler {
66
68
  type Interface = IEventHandler<DomainEvent<PageBeforeUpdatePayload>>;
67
69
  type Event = DomainEvent<PageBeforeUpdatePayload>;
68
70
  type Page = WbPage;
69
71
  }
72
+ /** Hook into page lifecycle after a page is updated. */
70
73
  export declare const PageAfterUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageAfterUpdatePayload>>>;
71
74
  export declare namespace PageAfterUpdateEventHandler {
72
75
  type Interface = IEventHandler<DomainEvent<PageAfterUpdatePayload>>;
@@ -14,6 +14,7 @@ export const UpdatePageRepository = createAbstraction("Wb/UpdatePageRepository")
14
14
  // Use Case Abstraction
15
15
  // ============================================================================
16
16
 
17
+ /** Update a page. */
17
18
  export const UpdatePageUseCase = createAbstraction("Wb/UpdatePageUseCase");
18
19
 
19
20
  // ============================================================================
@@ -24,7 +25,9 @@ export const UpdatePageUseCase = createAbstraction("Wb/UpdatePageUseCase");
24
25
  // Event Handler Abstractions
25
26
  // ============================================================================
26
27
 
28
+ /** Hook into page lifecycle before a page is updated. */
27
29
  export const PageBeforeUpdateEventHandler = createAbstraction("Wb/PageBeforeUpdateEventHandler");
30
+ /** Hook into page lifecycle after a page is updated. */
28
31
  export const PageAfterUpdateEventHandler = createAbstraction("Wb/PageAfterUpdateEventHandler");
29
32
 
30
33
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","UpdatePageRepository","UpdatePageUseCase","PageBeforeUpdateEventHandler","PageAfterUpdateEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { DomainEvent, IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { WbLocation } from \"~/domain/shared/abstractions.js\";\nimport type { ICmsEntrySystem } from \"@webiny/api-headless-cms/types/index.js\";\nimport {\n PageNotAuthorizedError,\n PageNotFoundError,\n PagePersistenceError,\n PageValidationError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUpdateWbPageData {\n location?: WbLocation;\n properties?: Record<string, any>;\n metadata?: Record<string, any>;\n bindings?: Record<string, any>;\n elements?: Record<string, any>;\n system?: ICmsEntrySystem;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUpdatePageRepository {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IUpdatePageRepositoryErrors {\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IUpdatePageRepositoryErrors[keyof IUpdatePageRepositoryErrors];\n\nexport const UpdatePageRepository =\n createAbstraction<IUpdatePageRepository>(\"Wb/UpdatePageRepository\");\n\nexport namespace UpdatePageRepository {\n export type Interface = IUpdatePageRepository;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IUpdatePageUseCase {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IUpdatePageUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IUpdatePageUseCaseErrors[keyof IUpdatePageUseCaseErrors];\n\nexport const UpdatePageUseCase = createAbstraction<IUpdatePageUseCase>(\"Wb/UpdatePageUseCase\");\n\nexport namespace UpdatePageUseCase {\n export type Interface = IUpdatePageUseCase;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n}\n\nexport interface PageAfterUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\nexport const PageBeforeUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeUpdatePayload>>\n>(\"Wb/PageBeforeUpdateEventHandler\");\n\nexport namespace PageBeforeUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeUpdatePayload>>;\n export type Event = DomainEvent<PageBeforeUpdatePayload>;\n export type Page = WbPage;\n}\n\nexport const PageAfterUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterUpdatePayload>>\n>(\"Wb/PageAfterUpdateEventHandler\");\n\nexport namespace PageAfterUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterUpdatePayload>>;\n export type Event = DomainEvent<PageAfterUpdatePayload>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAYpE;AACA;AACA;;AAWA;AACA;AACA;;AAcA,OAAO,MAAMC,oBAAoB,GAC7BD,iBAAiB,CAAwB,yBAAyB,CAAC;;AASvE;AACA;AACA;;AAeA,OAAO,MAAME,iBAAiB,GAAGF,iBAAiB,CAAqB,sBAAsB,CAAC;;AAU9F;AACA;AACA;;AAmBA;AACA;AACA;;AAEA,OAAO,MAAMG,4BAA4B,GAAGH,iBAAiB,CAE3D,iCAAiC,CAAC;AAQpC,OAAO,MAAMI,2BAA2B,GAAGJ,iBAAiB,CAE1D,gCAAgC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","UpdatePageRepository","UpdatePageUseCase","PageBeforeUpdateEventHandler","PageAfterUpdateEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { DomainEvent, IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { WbLocation } from \"~/domain/shared/abstractions.js\";\nimport type { ICmsEntrySystem } from \"@webiny/api-headless-cms/types/index.js\";\nimport {\n PageNotAuthorizedError,\n PageNotFoundError,\n PagePersistenceError,\n PageValidationError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUpdateWbPageData {\n location?: WbLocation;\n properties?: Record<string, any>;\n metadata?: Record<string, any>;\n bindings?: Record<string, any>;\n elements?: Record<string, any>;\n system?: ICmsEntrySystem;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUpdatePageRepository {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IUpdatePageRepositoryErrors {\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IUpdatePageRepositoryErrors[keyof IUpdatePageRepositoryErrors];\n\nexport const UpdatePageRepository =\n createAbstraction<IUpdatePageRepository>(\"Wb/UpdatePageRepository\");\n\nexport namespace UpdatePageRepository {\n export type Interface = IUpdatePageRepository;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IUpdatePageUseCase {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IUpdatePageUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IUpdatePageUseCaseErrors[keyof IUpdatePageUseCaseErrors];\n\n/** Update a page. */\nexport const UpdatePageUseCase = createAbstraction<IUpdatePageUseCase>(\"Wb/UpdatePageUseCase\");\n\nexport namespace UpdatePageUseCase {\n export type Interface = IUpdatePageUseCase;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n}\n\nexport interface PageAfterUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into page lifecycle before a page is updated. */\nexport const PageBeforeUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeUpdatePayload>>\n>(\"Wb/PageBeforeUpdateEventHandler\");\n\nexport namespace PageBeforeUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeUpdatePayload>>;\n export type Event = DomainEvent<PageBeforeUpdatePayload>;\n export type Page = WbPage;\n}\n\n/** Hook into page lifecycle after a page is updated. */\nexport const PageAfterUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterUpdatePayload>>\n>(\"Wb/PageAfterUpdateEventHandler\");\n\nexport namespace PageAfterUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterUpdatePayload>>;\n export type Event = DomainEvent<PageAfterUpdatePayload>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAYpE;AACA;AACA;;AAWA;AACA;AACA;;AAcA,OAAO,MAAMC,oBAAoB,GAC7BD,iBAAiB,CAAwB,yBAAyB,CAAC;;AASvE;AACA;AACA;;AAeA;AACA,OAAO,MAAME,iBAAiB,GAAGF,iBAAiB,CAAqB,sBAAsB,CAAC;;AAU9F;AACA;AACA;;AAmBA;AACA;AACA;;AAEA;AACA,OAAO,MAAMG,4BAA4B,GAAGH,iBAAiB,CAE3D,iCAAiC,CAAC;AAQpC;AACA,OAAO,MAAMI,2BAA2B,GAAGJ,iBAAiB,CAE1D,gCAAgC,CAAC","ignoreList":[]}
@@ -29,6 +29,7 @@ export interface ICreateRedirectUseCaseErrors {
29
29
  persistence: RedirectPersistenceError;
30
30
  }
31
31
  type UseCaseError = ICreateRedirectUseCaseErrors[keyof ICreateRedirectUseCaseErrors];
32
+ /** Create a URL redirect. */
32
33
  export declare const CreateRedirectUseCase: import("@webiny/di").Abstraction<ICreateRedirectUseCase>;
33
34
  export declare namespace CreateRedirectUseCase {
34
35
  type Interface = ICreateRedirectUseCase;
@@ -43,12 +44,14 @@ export interface RedirectBeforeCreatePayload {
43
44
  export interface RedirectAfterCreatePayload {
44
45
  redirect: WbRedirect;
45
46
  }
47
+ /** Hook into redirect lifecycle before a redirect is created. */
46
48
  export declare const RedirectBeforeCreateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectBeforeCreatePayload>>>;
47
49
  export declare namespace RedirectBeforeCreateEventHandler {
48
50
  type Interface = IEventHandler<DomainEvent<RedirectBeforeCreatePayload>>;
49
51
  type Event = DomainEvent<RedirectBeforeCreatePayload>;
50
52
  type Redirect = WbRedirect;
51
53
  }
54
+ /** Hook into redirect lifecycle after a redirect is created. */
52
55
  export declare const RedirectAfterCreateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectAfterCreatePayload>>>;
53
56
  export declare namespace RedirectAfterCreateEventHandler {
54
57
  type Interface = IEventHandler<DomainEvent<RedirectAfterCreatePayload>>;
@@ -14,6 +14,7 @@ export const CreateRedirectRepository = createAbstraction("Wb/CreateRedirectRepo
14
14
  // Use Case Abstraction
15
15
  // ============================================================================
16
16
 
17
+ /** Create a URL redirect. */
17
18
  export const CreateRedirectUseCase = createAbstraction("Wb/CreateRedirectUseCase");
18
19
 
19
20
  // ============================================================================
@@ -24,7 +25,9 @@ export const CreateRedirectUseCase = createAbstraction("Wb/CreateRedirectUseCase
24
25
  // Event Handler Abstractions
25
26
  // ============================================================================
26
27
 
28
+ /** Hook into redirect lifecycle before a redirect is created. */
27
29
  export const RedirectBeforeCreateEventHandler = createAbstraction("Wb/RedirectBeforeCreateEventHandler");
30
+ /** Hook into redirect lifecycle after a redirect is created. */
28
31
  export const RedirectAfterCreateEventHandler = createAbstraction("Wb/RedirectAfterCreateEventHandler");
29
32
 
30
33
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","CreateRedirectRepository","CreateRedirectUseCase","RedirectBeforeCreateEventHandler","RedirectAfterCreateEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport {\n RedirectPersistenceError,\n RedirectValidationError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport type ICreateWbRedirectData = Pick<\n WbRedirect,\n \"redirectFrom\" | \"redirectTo\" | \"redirectType\" | \"isEnabled\" | \"location\"\n>;\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface ICreateRedirectRepository {\n execute(data: ICreateWbRedirectData): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface ICreateRedirectRepositoryErrors {\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = ICreateRedirectRepositoryErrors[keyof ICreateRedirectRepositoryErrors];\n\nexport const CreateRedirectRepository = createAbstraction<ICreateRedirectRepository>(\n \"Wb/CreateRedirectRepository\"\n);\n\nexport namespace CreateRedirectRepository {\n export type Interface = ICreateRedirectRepository;\n export type Params = ICreateWbRedirectData;\n export type Return = Promise<Result<WbRedirect, RepositoryError>>;\n export type Error = RepositoryError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface ICreateRedirectUseCase {\n execute(data: ICreateWbRedirectData): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface ICreateRedirectUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = ICreateRedirectUseCaseErrors[keyof ICreateRedirectUseCaseErrors];\n\nexport const CreateRedirectUseCase = createAbstraction<ICreateRedirectUseCase>(\n \"Wb/CreateRedirectUseCase\"\n);\n\nexport namespace CreateRedirectUseCase {\n export type Interface = ICreateRedirectUseCase;\n export type Params = ICreateWbRedirectData;\n export type Return = Promise<Result<WbRedirect, UseCaseError>>;\n export type Error = UseCaseError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface RedirectBeforeCreatePayload {\n input: ICreateWbRedirectData;\n}\n\nexport interface RedirectAfterCreatePayload {\n redirect: WbRedirect;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\nexport const RedirectBeforeCreateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectBeforeCreatePayload>>\n>(\"Wb/RedirectBeforeCreateEventHandler\");\n\nexport namespace RedirectBeforeCreateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectBeforeCreatePayload>>;\n export type Event = DomainEvent<RedirectBeforeCreatePayload>;\n export type Redirect = WbRedirect;\n}\n\nexport const RedirectAfterCreateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectAfterCreatePayload>>\n>(\"Wb/RedirectAfterCreateEventHandler\");\n\nexport namespace RedirectAfterCreateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectAfterCreatePayload>>;\n export type Event = DomainEvent<RedirectAfterCreatePayload>;\n export type Redirect = WbRedirect;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAUpE;AACA;AACA;;AAOA;AACA;AACA;;AAaA,OAAO,MAAMC,wBAAwB,GAAGD,iBAAiB,CACrD,6BACJ,CAAC;;AAUD;AACA;AACA;;AAcA,OAAO,MAAME,qBAAqB,GAAGF,iBAAiB,CAClD,0BACJ,CAAC;;AAUD;AACA;AACA;;AAUA;AACA;AACA;;AAEA,OAAO,MAAMG,gCAAgC,GAAGH,iBAAiB,CAE/D,qCAAqC,CAAC;AAQxC,OAAO,MAAMI,+BAA+B,GAAGJ,iBAAiB,CAE9D,oCAAoC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","CreateRedirectRepository","CreateRedirectUseCase","RedirectBeforeCreateEventHandler","RedirectAfterCreateEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport {\n RedirectPersistenceError,\n RedirectValidationError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport type ICreateWbRedirectData = Pick<\n WbRedirect,\n \"redirectFrom\" | \"redirectTo\" | \"redirectType\" | \"isEnabled\" | \"location\"\n>;\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface ICreateRedirectRepository {\n execute(data: ICreateWbRedirectData): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface ICreateRedirectRepositoryErrors {\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = ICreateRedirectRepositoryErrors[keyof ICreateRedirectRepositoryErrors];\n\nexport const CreateRedirectRepository = createAbstraction<ICreateRedirectRepository>(\n \"Wb/CreateRedirectRepository\"\n);\n\nexport namespace CreateRedirectRepository {\n export type Interface = ICreateRedirectRepository;\n export type Params = ICreateWbRedirectData;\n export type Return = Promise<Result<WbRedirect, RepositoryError>>;\n export type Error = RepositoryError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface ICreateRedirectUseCase {\n execute(data: ICreateWbRedirectData): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface ICreateRedirectUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = ICreateRedirectUseCaseErrors[keyof ICreateRedirectUseCaseErrors];\n\n/** Create a URL redirect. */\nexport const CreateRedirectUseCase = createAbstraction<ICreateRedirectUseCase>(\n \"Wb/CreateRedirectUseCase\"\n);\n\nexport namespace CreateRedirectUseCase {\n export type Interface = ICreateRedirectUseCase;\n export type Params = ICreateWbRedirectData;\n export type Return = Promise<Result<WbRedirect, UseCaseError>>;\n export type Error = UseCaseError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface RedirectBeforeCreatePayload {\n input: ICreateWbRedirectData;\n}\n\nexport interface RedirectAfterCreatePayload {\n redirect: WbRedirect;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into redirect lifecycle before a redirect is created. */\nexport const RedirectBeforeCreateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectBeforeCreatePayload>>\n>(\"Wb/RedirectBeforeCreateEventHandler\");\n\nexport namespace RedirectBeforeCreateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectBeforeCreatePayload>>;\n export type Event = DomainEvent<RedirectBeforeCreatePayload>;\n export type Redirect = WbRedirect;\n}\n\n/** Hook into redirect lifecycle after a redirect is created. */\nexport const RedirectAfterCreateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectAfterCreatePayload>>\n>(\"Wb/RedirectAfterCreateEventHandler\");\n\nexport namespace RedirectAfterCreateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectAfterCreatePayload>>;\n export type Event = DomainEvent<RedirectAfterCreatePayload>;\n export type Redirect = WbRedirect;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAUpE;AACA;AACA;;AAOA;AACA;AACA;;AAaA,OAAO,MAAMC,wBAAwB,GAAGD,iBAAiB,CACrD,6BACJ,CAAC;;AAUD;AACA;AACA;;AAcA;AACA,OAAO,MAAME,qBAAqB,GAAGF,iBAAiB,CAClD,0BACJ,CAAC;;AAUD;AACA;AACA;;AAUA;AACA;AACA;;AAEA;AACA,OAAO,MAAMG,gCAAgC,GAAGH,iBAAiB,CAE/D,qCAAqC,CAAC;AAQxC;AACA,OAAO,MAAMI,+BAA+B,GAAGJ,iBAAiB,CAE9D,oCAAoC,CAAC","ignoreList":[]}
@@ -30,6 +30,7 @@ export interface IDeleteRedirectUseCaseErrors {
30
30
  persistence: RedirectPersistenceError;
31
31
  }
32
32
  type UseCaseError = IDeleteRedirectUseCaseErrors[keyof IDeleteRedirectUseCaseErrors];
33
+ /** Delete a URL redirect. */
33
34
  export declare const DeleteRedirectUseCase: import("@webiny/di").Abstraction<IDeleteRedirectUseCase>;
34
35
  export declare namespace DeleteRedirectUseCase {
35
36
  type Interface = IDeleteRedirectUseCase;
@@ -43,12 +44,14 @@ export interface RedirectBeforeDeletePayload {
43
44
  export interface RedirectAfterDeletePayload {
44
45
  redirect: WbRedirect;
45
46
  }
47
+ /** Hook into redirect lifecycle before a redirect is deleted. */
46
48
  export declare const RedirectBeforeDeleteEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectBeforeDeletePayload>>>;
47
49
  export declare namespace RedirectBeforeDeleteEventHandler {
48
50
  type Interface = IEventHandler<DomainEvent<RedirectBeforeDeletePayload>>;
49
51
  type Event = DomainEvent<RedirectBeforeDeletePayload>;
50
52
  type Redirect = WbRedirect;
51
53
  }
54
+ /** Hook into redirect lifecycle after a redirect is deleted. */
52
55
  export declare const RedirectAfterDeleteEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectAfterDeletePayload>>>;
53
56
  export declare namespace RedirectAfterDeleteEventHandler {
54
57
  type Interface = IEventHandler<DomainEvent<RedirectAfterDeletePayload>>;
@@ -14,6 +14,7 @@ export const DeleteRedirectRepository = createAbstraction("Wb/DeleteRedirectRepo
14
14
  // Use Case Abstraction
15
15
  // ============================================================================
16
16
 
17
+ /** Delete a URL redirect. */
17
18
  export const DeleteRedirectUseCase = createAbstraction("Wb/DeleteRedirectUseCase");
18
19
 
19
20
  // ============================================================================
@@ -24,7 +25,9 @@ export const DeleteRedirectUseCase = createAbstraction("Wb/DeleteRedirectUseCase
24
25
  // Event Handler Abstractions
25
26
  // ============================================================================
26
27
 
28
+ /** Hook into redirect lifecycle before a redirect is deleted. */
27
29
  export const RedirectBeforeDeleteEventHandler = createAbstraction("Wb/RedirectBeforeDeleteEventHandler");
30
+ /** Hook into redirect lifecycle after a redirect is deleted. */
28
31
  export const RedirectAfterDeleteEventHandler = createAbstraction("Wb/RedirectAfterDeleteEventHandler");
29
32
 
30
33
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","DeleteRedirectRepository","DeleteRedirectUseCase","RedirectBeforeDeleteEventHandler","RedirectAfterDeleteEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\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\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\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\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"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAUpE;AACA;AACA;;AAMA;AACA;AACA;;AAaA,OAAO,MAAMC,wBAAwB,GAAGD,iBAAiB,CACrD,6BACJ,CAAC;;AASD;AACA;AACA;;AAcA,OAAO,MAAME,qBAAqB,GAAGF,iBAAiB,CAClD,0BACJ,CAAC;;AASD;AACA;AACA;;AAUA;AACA;AACA;;AAEA,OAAO,MAAMG,gCAAgC,GAAGH,iBAAiB,CAE/D,qCAAqC,CAAC;AAQxC,OAAO,MAAMI,+BAA+B,GAAGJ,iBAAiB,CAE9D,oCAAoC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","DeleteRedirectRepository","DeleteRedirectUseCase","RedirectBeforeDeleteEventHandler","RedirectAfterDeleteEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\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"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAUpE;AACA;AACA;;AAMA;AACA;AACA;;AAaA,OAAO,MAAMC,wBAAwB,GAAGD,iBAAiB,CACrD,6BACJ,CAAC;;AASD;AACA;AACA;;AAcA;AACA,OAAO,MAAME,qBAAqB,GAAGF,iBAAiB,CAClD,0BACJ,CAAC;;AASD;AACA;AACA;;AAUA;AACA;AACA;;AAEA;AACA,OAAO,MAAMG,gCAAgC,GAAGH,iBAAiB,CAE/D,qCAAqC,CAAC;AAQxC;AACA,OAAO,MAAMI,+BAA+B,GAAGJ,iBAAiB,CAE9D,oCAAoC,CAAC","ignoreList":[]}
@@ -29,6 +29,7 @@ export interface IGetActiveRedirectsUseCaseErrors {
29
29
  persistence: RedirectPersistenceError;
30
30
  }
31
31
  type UseCaseError = IGetActiveRedirectsUseCaseErrors[keyof IGetActiveRedirectsUseCaseErrors];
32
+ /** Retrieve all active URL redirects. */
32
33
  export declare const GetActiveRedirectsUseCase: import("@webiny/di").Abstraction<IGetActiveRedirectsUseCase>;
33
34
  export declare namespace GetActiveRedirectsUseCase {
34
35
  type Interface = IGetActiveRedirectsUseCase;
@@ -10,6 +10,7 @@ export const GetActiveRedirectsRepository = createAbstraction("Wb/GetActiveRedir
10
10
  * GetActiveRedirects use case interface
11
11
  */
12
12
 
13
+ /** Retrieve all active URL redirects. */
13
14
  export const GetActiveRedirectsUseCase = createAbstraction("Wb/GetActiveRedirectsUseCase");
14
15
 
15
16
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","GetActiveRedirectsRepository","GetActiveRedirectsUseCase"],"sources":["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\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"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAQvD;AACA;AACA;;AAYA,OAAO,MAAMC,4BAA4B,GAAGD,iBAAiB,CACzD,iCACJ,CAAC;;AASD;AACA;AACA;;AAYA,OAAO,MAAME,yBAAyB,GAAGF,iBAAiB,CACtD,8BACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","GetActiveRedirectsRepository","GetActiveRedirectsUseCase"],"sources":["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"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAQvD;AACA;AACA;;AAYA,OAAO,MAAMC,4BAA4B,GAAGD,iBAAiB,CACzD,iCACJ,CAAC;;AASD;AACA;AACA;;AAYA;AACA,OAAO,MAAME,yBAAyB,GAAGF,iBAAiB,CACtD,8BACJ,CAAC","ignoreList":[]}
@@ -31,6 +31,7 @@ export interface IGetRedirectByIdUseCaseErrors {
31
31
  persistence: RedirectPersistenceError;
32
32
  }
33
33
  type UseCaseError = IGetRedirectByIdUseCaseErrors[keyof IGetRedirectByIdUseCaseErrors];
34
+ /** Retrieve a URL redirect by ID. */
34
35
  export declare const GetRedirectByIdUseCase: import("@webiny/di").Abstraction<IGetRedirectByIdUseCase>;
35
36
  export declare namespace GetRedirectByIdUseCase {
36
37
  type Interface = IGetRedirectByIdUseCase;
@@ -10,6 +10,7 @@ export const GetRedirectByIdRepository = createAbstraction("Wb/GetRedirectByIdRe
10
10
  * GetRedirectById use case interface
11
11
  */
12
12
 
13
+ /** Retrieve a URL redirect by ID. */
13
14
  export const GetRedirectByIdUseCase = createAbstraction("Wb/GetRedirectByIdUseCase");
14
15
 
15
16
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","GetRedirectByIdRepository","GetRedirectByIdUseCase"],"sources":["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 RedirectNotFoundError,\n RedirectPersistenceError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n/**\n * GetRedirectById repository interface\n */\nexport interface IGetRedirectByIdRepository {\n execute(id: string): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface IGetRedirectByIdRepositoryErrors {\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = IGetRedirectByIdRepositoryErrors[keyof IGetRedirectByIdRepositoryErrors];\n\nexport const GetRedirectByIdRepository = createAbstraction<IGetRedirectByIdRepository>(\n \"Wb/GetRedirectByIdRepository\"\n);\n\nexport namespace GetRedirectByIdRepository {\n export type Interface = IGetRedirectByIdRepository;\n export type Error = RepositoryError;\n export type Return = Promise<Result<WbRedirect, RepositoryError>>;\n export type Redirect = WbRedirect;\n}\n\n/**\n * GetRedirectById use case interface\n */\nexport interface IGetRedirectByIdUseCase {\n execute(id: string): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface IGetRedirectByIdUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IGetRedirectByIdUseCaseErrors[keyof IGetRedirectByIdUseCaseErrors];\n\nexport const GetRedirectByIdUseCase = createAbstraction<IGetRedirectByIdUseCase>(\n \"Wb/GetRedirectByIdUseCase\"\n);\n\nexport namespace GetRedirectByIdUseCase {\n export type Interface = IGetRedirectByIdUseCase;\n export type Return = Promise<Result<WbRedirect, UseCaseError>>;\n export type Error = UseCaseError;\n export type Redirect = WbRedirect;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AASvD;AACA;AACA;;AAYA,OAAO,MAAMC,yBAAyB,GAAGD,iBAAiB,CACtD,8BACJ,CAAC;;AASD;AACA;AACA;;AAaA,OAAO,MAAME,sBAAsB,GAAGF,iBAAiB,CACnD,2BACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","GetRedirectByIdRepository","GetRedirectByIdUseCase"],"sources":["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 RedirectNotFoundError,\n RedirectPersistenceError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n/**\n * GetRedirectById repository interface\n */\nexport interface IGetRedirectByIdRepository {\n execute(id: string): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface IGetRedirectByIdRepositoryErrors {\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = IGetRedirectByIdRepositoryErrors[keyof IGetRedirectByIdRepositoryErrors];\n\nexport const GetRedirectByIdRepository = createAbstraction<IGetRedirectByIdRepository>(\n \"Wb/GetRedirectByIdRepository\"\n);\n\nexport namespace GetRedirectByIdRepository {\n export type Interface = IGetRedirectByIdRepository;\n export type Error = RepositoryError;\n export type Return = Promise<Result<WbRedirect, RepositoryError>>;\n export type Redirect = WbRedirect;\n}\n\n/**\n * GetRedirectById use case interface\n */\nexport interface IGetRedirectByIdUseCase {\n execute(id: string): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface IGetRedirectByIdUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IGetRedirectByIdUseCaseErrors[keyof IGetRedirectByIdUseCaseErrors];\n\n/** Retrieve a URL redirect by ID. */\nexport const GetRedirectByIdUseCase = createAbstraction<IGetRedirectByIdUseCase>(\n \"Wb/GetRedirectByIdUseCase\"\n);\n\nexport namespace GetRedirectByIdUseCase {\n export type Interface = IGetRedirectByIdUseCase;\n export type Return = Promise<Result<WbRedirect, UseCaseError>>;\n export type Error = UseCaseError;\n export type Redirect = WbRedirect;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AASvD;AACA;AACA;;AAYA,OAAO,MAAMC,yBAAyB,GAAGD,iBAAiB,CACtD,8BACJ,CAAC;;AASD;AACA;AACA;;AAaA;AACA,OAAO,MAAME,sBAAsB,GAAGF,iBAAiB,CACnD,2BACJ,CAAC","ignoreList":[]}
@@ -6,6 +6,7 @@ export interface IInvalidateRedirectsCacheUseCaseErrors {
6
6
  taskError: BaseError;
7
7
  }
8
8
  type UseCaseError = IInvalidateRedirectsCacheUseCaseErrors[keyof IInvalidateRedirectsCacheUseCaseErrors];
9
+ /** Invalidate the redirects cache. */
9
10
  export declare const InvalidateRedirectsCacheUseCase: import("@webiny/di").Abstraction<IInvalidateRedirectsCacheUseCase>;
10
11
  export declare namespace InvalidateRedirectsCacheUseCase {
11
12
  type Interface = IInvalidateRedirectsCacheUseCase;
@@ -4,6 +4,7 @@ import { createAbstraction } from "@webiny/feature/api";
4
4
  // Use Case Abstraction
5
5
  // ============================================================================
6
6
 
7
+ /** Invalidate the redirects cache. */
7
8
  export const InvalidateRedirectsCacheUseCase = createAbstraction("Wb/InvalidateRedirectsCacheUseCase");
8
9
 
9
10
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","InvalidateRedirectsCacheUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { BaseError, Result } from \"@webiny/feature/api\";\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IInvalidateRedirectsCacheUseCase {\n execute(): Promise<Result<void, UseCaseError>>;\n}\n\nexport interface IInvalidateRedirectsCacheUseCaseErrors {\n // Task service errors will be captured as generic errors\n taskError: BaseError;\n}\n\ntype UseCaseError =\n IInvalidateRedirectsCacheUseCaseErrors[keyof IInvalidateRedirectsCacheUseCaseErrors];\n\nexport const InvalidateRedirectsCacheUseCase = createAbstraction<IInvalidateRedirectsCacheUseCase>(\n \"Wb/InvalidateRedirectsCacheUseCase\"\n);\n\nexport namespace InvalidateRedirectsCacheUseCase {\n export type Interface = IInvalidateRedirectsCacheUseCase;\n export type Return = Promise<Result<void, UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAGvD;AACA;AACA;;AAcA,OAAO,MAAMC,+BAA+B,GAAGD,iBAAiB,CAC5D,oCACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","InvalidateRedirectsCacheUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { BaseError, Result } from \"@webiny/feature/api\";\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IInvalidateRedirectsCacheUseCase {\n execute(): Promise<Result<void, UseCaseError>>;\n}\n\nexport interface IInvalidateRedirectsCacheUseCaseErrors {\n // Task service errors will be captured as generic errors\n taskError: BaseError;\n}\n\ntype UseCaseError =\n IInvalidateRedirectsCacheUseCaseErrors[keyof IInvalidateRedirectsCacheUseCaseErrors];\n\n/** Invalidate the redirects cache. */\nexport const InvalidateRedirectsCacheUseCase = createAbstraction<IInvalidateRedirectsCacheUseCase>(\n \"Wb/InvalidateRedirectsCacheUseCase\"\n);\n\nexport namespace InvalidateRedirectsCacheUseCase {\n export type Interface = IInvalidateRedirectsCacheUseCase;\n export type Return = Promise<Result<void, UseCaseError>>;\n export type Error = UseCaseError;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAGvD;AACA;AACA;;AAcA;AACA,OAAO,MAAMC,+BAA+B,GAAGD,iBAAiB,CAC5D,oCACJ,CAAC","ignoreList":[]}
@@ -58,6 +58,7 @@ export interface IListRedirectsUseCaseErrors {
58
58
  persistence: RedirectPersistenceError;
59
59
  }
60
60
  type UseCaseError = IListRedirectsUseCaseErrors[keyof IListRedirectsUseCaseErrors];
61
+ /** List URL redirects with filtering. */
61
62
  export declare const ListRedirectsUseCase: import("@webiny/di").Abstraction<IListRedirectsUseCase>;
62
63
  export declare namespace ListRedirectsUseCase {
63
64
  type Interface = IListRedirectsUseCase;
@@ -14,6 +14,7 @@ export const ListRedirectsRepository = createAbstraction("Wb/ListRedirectsReposi
14
14
  // Use Case Abstraction
15
15
  // ============================================================================
16
16
 
17
+ /** List URL redirects with filtering. */
17
18
  export const ListRedirectsUseCase = createAbstraction("Wb/ListRedirectsUseCase");
18
19
 
19
20
  //# sourceMappingURL=abstractions.js.map