@webiny/api-website-builder 6.1.0-beta.3 → 6.2.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.
Files changed (200) hide show
  1. package/domain/page/PagePath.d.ts +7 -0
  2. package/domain/page/PagePath.js +36 -0
  3. package/domain/page/PagePath.js.map +1 -0
  4. package/domain/page/errors.d.ts +6 -0
  5. package/domain/page/errors.js +11 -0
  6. package/domain/page/errors.js.map +1 -1
  7. package/domain/permissionsSchema.d.ts +29 -0
  8. package/domain/{permissions.js → permissionsSchema.js} +4 -5
  9. package/domain/permissionsSchema.js.map +1 -0
  10. package/features/installer/ApiKeyInstaller.d.ts +1 -1
  11. package/features/installer/ApiKeyInstaller.js +1 -1
  12. package/features/installer/ApiKeyInstaller.js.map +1 -1
  13. package/features/pages/CreatePage/CreatePageUseCase.d.ts +2 -2
  14. package/features/pages/CreatePage/CreatePageUseCase.js +3 -3
  15. package/features/pages/CreatePage/CreatePageUseCase.js.map +1 -1
  16. package/features/pages/CreatePage/abstractions.d.ts +1 -1
  17. package/features/pages/CreatePage/abstractions.js.map +1 -1
  18. package/features/pages/CreatePage/events.d.ts +3 -3
  19. package/features/pages/CreatePage/events.js +1 -1
  20. package/features/pages/CreatePage/events.js.map +1 -1
  21. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.d.ts +2 -2
  22. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js +3 -3
  23. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js.map +1 -1
  24. package/features/pages/CreatePageRevisionFrom/abstractions.d.ts +2 -2
  25. package/features/pages/CreatePageRevisionFrom/abstractions.js.map +1 -1
  26. package/features/pages/CreatePageRevisionFrom/events.d.ts +3 -3
  27. package/features/pages/CreatePageRevisionFrom/events.js +1 -1
  28. package/features/pages/CreatePageRevisionFrom/events.js.map +1 -1
  29. package/features/pages/DeletePage/DeletePageUseCase.d.ts +2 -2
  30. package/features/pages/DeletePage/DeletePageUseCase.js +3 -3
  31. package/features/pages/DeletePage/DeletePageUseCase.js.map +1 -1
  32. package/features/pages/DeletePage/abstractions.d.ts +2 -2
  33. package/features/pages/DeletePage/abstractions.js.map +1 -1
  34. package/features/pages/DeletePage/events.d.ts +3 -3
  35. package/features/pages/DeletePage/events.js +1 -1
  36. package/features/pages/DeletePage/events.js.map +1 -1
  37. package/features/pages/DuplicatePage/DuplicatePageRepository.d.ts +2 -2
  38. package/features/pages/DuplicatePage/DuplicatePageRepository.js +9 -1
  39. package/features/pages/DuplicatePage/DuplicatePageRepository.js.map +1 -1
  40. package/features/pages/DuplicatePage/DuplicatePageUseCase.d.ts +2 -2
  41. package/features/pages/DuplicatePage/DuplicatePageUseCase.js +3 -3
  42. package/features/pages/DuplicatePage/DuplicatePageUseCase.js.map +1 -1
  43. package/features/pages/DuplicatePage/abstractions.d.ts +9 -3
  44. package/features/pages/DuplicatePage/abstractions.js.map +1 -1
  45. package/features/pages/DuplicatePage/events.d.ts +3 -3
  46. package/features/pages/DuplicatePage/events.js +1 -1
  47. package/features/pages/DuplicatePage/events.js.map +1 -1
  48. package/features/pages/DuplicatePage/index.d.ts +2 -1
  49. package/features/pages/DuplicatePage/index.js +1 -1
  50. package/features/pages/DuplicatePage/index.js.map +1 -1
  51. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.d.ts +1 -1
  52. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js +2 -2
  53. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js.map +1 -1
  54. package/features/pages/GetPageById/GetPageByIdUseCase.d.ts +1 -1
  55. package/features/pages/GetPageById/GetPageByIdUseCase.js +2 -2
  56. package/features/pages/GetPageById/GetPageByIdUseCase.js.map +1 -1
  57. package/features/pages/GetPageByPath/GetPageByPathUseCase.d.ts +1 -1
  58. package/features/pages/GetPageByPath/GetPageByPathUseCase.js +2 -2
  59. package/features/pages/GetPageByPath/GetPageByPathUseCase.js.map +1 -1
  60. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.d.ts +15 -0
  61. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js +61 -0
  62. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js.map +1 -0
  63. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.d.ts +10 -0
  64. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js +20 -0
  65. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js.map +1 -0
  66. package/features/pages/GetPageLanguagePaths/abstractions.d.ts +20 -0
  67. package/features/pages/GetPageLanguagePaths/abstractions.js +6 -0
  68. package/features/pages/GetPageLanguagePaths/abstractions.js.map +1 -0
  69. package/features/pages/GetPageLanguagePaths/feature.d.ts +1 -0
  70. package/features/pages/GetPageLanguagePaths/feature.js +12 -0
  71. package/features/pages/GetPageLanguagePaths/feature.js.map +1 -0
  72. package/features/pages/GetPageLanguagePaths/index.d.ts +1 -0
  73. package/features/pages/GetPageLanguagePaths/index.js +3 -0
  74. package/features/pages/GetPageLanguagePaths/index.js.map +1 -0
  75. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.d.ts +1 -1
  76. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js +2 -2
  77. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js.map +1 -1
  78. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.d.ts +1 -1
  79. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js +2 -2
  80. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js.map +1 -1
  81. package/features/pages/ListPages/ListPagesUseCase.d.ts +1 -1
  82. package/features/pages/ListPages/ListPagesUseCase.js +2 -2
  83. package/features/pages/ListPages/ListPagesUseCase.js.map +1 -1
  84. package/features/pages/MovePage/MovePageUseCase.d.ts +2 -2
  85. package/features/pages/MovePage/MovePageUseCase.js +3 -3
  86. package/features/pages/MovePage/MovePageUseCase.js.map +1 -1
  87. package/features/pages/MovePage/abstractions.d.ts +2 -2
  88. package/features/pages/MovePage/abstractions.js.map +1 -1
  89. package/features/pages/MovePage/events.d.ts +3 -3
  90. package/features/pages/MovePage/events.js +1 -1
  91. package/features/pages/MovePage/events.js.map +1 -1
  92. package/features/pages/PublishPage/PublishPageUseCase.d.ts +2 -2
  93. package/features/pages/PublishPage/PublishPageUseCase.js +3 -3
  94. package/features/pages/PublishPage/PublishPageUseCase.js.map +1 -1
  95. package/features/pages/PublishPage/abstractions.d.ts +2 -2
  96. package/features/pages/PublishPage/abstractions.js.map +1 -1
  97. package/features/pages/PublishPage/events.d.ts +3 -3
  98. package/features/pages/PublishPage/events.js +1 -1
  99. package/features/pages/PublishPage/events.js.map +1 -1
  100. package/features/pages/RestorePage/RestorePageUseCase.d.ts +2 -2
  101. package/features/pages/RestorePage/RestorePageUseCase.js +3 -3
  102. package/features/pages/RestorePage/RestorePageUseCase.js.map +1 -1
  103. package/features/pages/RestorePage/abstractions.d.ts +2 -2
  104. package/features/pages/RestorePage/abstractions.js.map +1 -1
  105. package/features/pages/RestorePage/events.d.ts +3 -3
  106. package/features/pages/RestorePage/events.js +1 -1
  107. package/features/pages/RestorePage/events.js.map +1 -1
  108. package/features/pages/TranslatePage/TranslatePageUseCase.d.ts +17 -0
  109. package/features/pages/TranslatePage/TranslatePageUseCase.js +74 -0
  110. package/features/pages/TranslatePage/TranslatePageUseCase.js.map +1 -0
  111. package/features/pages/TranslatePage/abstractions.d.ts +29 -0
  112. package/features/pages/TranslatePage/abstractions.js +14 -0
  113. package/features/pages/TranslatePage/abstractions.js.map +1 -0
  114. package/features/pages/TranslatePage/feature.d.ts +1 -0
  115. package/features/pages/TranslatePage/feature.js +10 -0
  116. package/features/pages/TranslatePage/feature.js.map +1 -0
  117. package/features/pages/TranslatePage/index.d.ts +1 -0
  118. package/features/pages/TranslatePage/index.js +3 -0
  119. package/features/pages/TranslatePage/index.js.map +1 -0
  120. package/features/pages/TrashPage/TrashPageUseCase.d.ts +2 -2
  121. package/features/pages/TrashPage/TrashPageUseCase.js +3 -3
  122. package/features/pages/TrashPage/TrashPageUseCase.js.map +1 -1
  123. package/features/pages/TrashPage/abstractions.d.ts +2 -2
  124. package/features/pages/TrashPage/abstractions.js.map +1 -1
  125. package/features/pages/TrashPage/events.d.ts +3 -3
  126. package/features/pages/TrashPage/events.js +1 -1
  127. package/features/pages/TrashPage/events.js.map +1 -1
  128. package/features/pages/UnpublishPage/UnpublishPageUseCase.d.ts +2 -2
  129. package/features/pages/UnpublishPage/UnpublishPageUseCase.js +3 -3
  130. package/features/pages/UnpublishPage/UnpublishPageUseCase.js.map +1 -1
  131. package/features/pages/UnpublishPage/abstractions.d.ts +2 -2
  132. package/features/pages/UnpublishPage/abstractions.js.map +1 -1
  133. package/features/pages/UnpublishPage/events.d.ts +3 -3
  134. package/features/pages/UnpublishPage/events.js +1 -1
  135. package/features/pages/UnpublishPage/events.js.map +1 -1
  136. package/features/pages/UpdatePage/UpdatePageUseCase.d.ts +2 -2
  137. package/features/pages/UpdatePage/UpdatePageUseCase.js +3 -3
  138. package/features/pages/UpdatePage/UpdatePageUseCase.js.map +1 -1
  139. package/features/pages/UpdatePage/abstractions.d.ts +1 -1
  140. package/features/pages/UpdatePage/abstractions.js.map +1 -1
  141. package/features/pages/UpdatePage/events.d.ts +3 -3
  142. package/features/pages/UpdatePage/events.js +1 -1
  143. package/features/pages/UpdatePage/events.js.map +1 -1
  144. package/features/permissions/abstractions.d.ts +34 -0
  145. package/features/permissions/abstractions.js +5 -0
  146. package/features/permissions/abstractions.js.map +1 -0
  147. package/features/permissions/feature.d.ts +1 -0
  148. package/features/permissions/feature.js +6 -0
  149. package/features/permissions/feature.js.map +1 -0
  150. package/features/redirects/CreateRedirect/CreateRedirectUseCase.d.ts +2 -2
  151. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js +3 -3
  152. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js.map +1 -1
  153. package/features/redirects/CreateRedirect/abstractions.d.ts +2 -2
  154. package/features/redirects/CreateRedirect/abstractions.js.map +1 -1
  155. package/features/redirects/CreateRedirect/events.d.ts +3 -3
  156. package/features/redirects/CreateRedirect/events.js +1 -1
  157. package/features/redirects/CreateRedirect/events.js.map +1 -1
  158. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.d.ts +2 -2
  159. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js +3 -3
  160. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js.map +1 -1
  161. package/features/redirects/DeleteRedirect/abstractions.d.ts +2 -2
  162. package/features/redirects/DeleteRedirect/abstractions.js.map +1 -1
  163. package/features/redirects/DeleteRedirect/events.d.ts +3 -3
  164. package/features/redirects/DeleteRedirect/events.js +1 -1
  165. package/features/redirects/DeleteRedirect/events.js.map +1 -1
  166. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.d.ts +1 -1
  167. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js +2 -2
  168. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js.map +1 -1
  169. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.d.ts +1 -1
  170. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js +2 -2
  171. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js.map +1 -1
  172. package/features/redirects/ListRedirects/ListRedirectsUseCase.d.ts +1 -1
  173. package/features/redirects/ListRedirects/ListRedirectsUseCase.js +2 -2
  174. package/features/redirects/ListRedirects/ListRedirectsUseCase.js.map +1 -1
  175. package/features/redirects/MoveRedirect/MoveRedirectUseCase.d.ts +2 -2
  176. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js +3 -3
  177. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js.map +1 -1
  178. package/features/redirects/MoveRedirect/abstractions.d.ts +2 -2
  179. package/features/redirects/MoveRedirect/abstractions.js.map +1 -1
  180. package/features/redirects/MoveRedirect/events.d.ts +3 -3
  181. package/features/redirects/MoveRedirect/events.js +1 -1
  182. package/features/redirects/MoveRedirect/events.js.map +1 -1
  183. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.d.ts +2 -2
  184. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js +3 -3
  185. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js.map +1 -1
  186. package/features/redirects/UpdateRedirect/abstractions.d.ts +2 -2
  187. package/features/redirects/UpdateRedirect/abstractions.js.map +1 -1
  188. package/features/redirects/UpdateRedirect/events.d.ts +3 -3
  189. package/features/redirects/UpdateRedirect/events.js +1 -1
  190. package/features/redirects/UpdateRedirect/events.js.map +1 -1
  191. package/graphql/pages/pages.gql.js +34 -0
  192. package/graphql/pages/pages.gql.js.map +1 -1
  193. package/graphql/pages/pages.typeDefs.d.ts +1 -1
  194. package/graphql/pages/pages.typeDefs.js +2 -0
  195. package/graphql/pages/pages.typeDefs.js.map +1 -1
  196. package/index.js +6 -2
  197. package/index.js.map +1 -1
  198. package/package.json +20 -19
  199. package/domain/permissions.d.ts +0 -125
  200. package/domain/permissions.js.map +0 -1
@@ -1 +1 @@
1
- {"version":3,"names":["DomainEvent","RedirectBeforeMoveEventHandler","RedirectAfterMoveEventHandler","RedirectBeforeMoveEvent","eventType","getHandlerAbstraction","RedirectAfterMoveEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { RedirectBeforeMoveEventHandler, RedirectAfterMoveEventHandler } from \"./abstractions.js\";\nimport type { RedirectBeforeMovePayload, RedirectAfterMovePayload } from \"./abstractions.js\";\n\n// RedirectBeforeMove Event\nexport class RedirectBeforeMoveEvent extends DomainEvent<RedirectBeforeMovePayload> {\n eventType = \"redirect.beforeMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeMoveEventHandler;\n }\n}\n\n// RedirectAfterMove Event\nexport class RedirectAfterMoveEvent extends DomainEvent<RedirectAfterMovePayload> {\n eventType = \"redirect.afterMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterMoveEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,8BAA8B,EAAEC,6BAA6B;AAGtE;AACA,OAAO,MAAMC,uBAAuB,SAASH,WAAW,CAA4B;EAChFI,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,8BAA8B;EACzC;AACJ;;AAEA;AACA,OAAO,MAAMK,sBAAsB,SAASN,WAAW,CAA2B;EAC9EI,SAAS,GAAG,oBAAoB;EAEhCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,6BAA6B;EACxC;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["DomainEvent","RedirectBeforeMoveEventHandler","RedirectAfterMoveEventHandler","RedirectBeforeMoveEvent","eventType","getHandlerAbstraction","RedirectAfterMoveEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { RedirectBeforeMoveEventHandler, RedirectAfterMoveEventHandler } from \"./abstractions.js\";\nimport type { RedirectBeforeMovePayload, RedirectAfterMovePayload } from \"./abstractions.js\";\n\n// RedirectBeforeMove Event\nexport class RedirectBeforeMoveEvent extends DomainEvent<RedirectBeforeMovePayload> {\n eventType = \"redirect.beforeMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeMoveEventHandler;\n }\n}\n\n// RedirectAfterMove Event\nexport class RedirectAfterMoveEvent extends DomainEvent<RedirectAfterMovePayload> {\n eventType = \"redirect.afterMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterMoveEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,mDAAmD;AAC/E,SAASC,8BAA8B,EAAEC,6BAA6B;AAGtE;AACA,OAAO,MAAMC,uBAAuB,SAASH,WAAW,CAA4B;EAChFI,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,8BAA8B;EACzC;AACJ;;AAEA;AACA,OAAO,MAAMK,sBAAsB,SAASN,WAAW,CAA2B;EAC9EI,SAAS,GAAG,oBAAoB;EAEhCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,6BAA6B;EACxC;AACJ","ignoreList":[]}
@@ -1,7 +1,7 @@
1
- import { EventPublisher as EventPublisherAbstraction } from "@webiny/api-core/features/EventPublisher";
1
+ import { EventPublisher as EventPublisherAbstraction } from "@webiny/api-core/features/eventPublisher/index.js";
2
2
  import { UpdateRedirectUseCase as UseCaseAbstraction, UpdateRedirectRepository } from "./abstractions.js";
3
3
  import { GetRedirectByIdUseCase } from "../../../features/redirects/GetRedirectById/index.js";
4
- import { WbPermissions } from "../../../domain/permissions.js";
4
+ import { WbPermissions } from "../../../features/permissions/abstractions.js";
5
5
  declare class UpdateRedirectUseCaseImpl implements UseCaseAbstraction.Interface {
6
6
  private permissions;
7
7
  private eventPublisher;
@@ -1,9 +1,9 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
2
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
3
3
  import { UpdateRedirectUseCase as UseCaseAbstraction, UpdateRedirectRepository } from "./abstractions.js";
4
4
  import { RedirectBeforeUpdateEvent, RedirectAfterUpdateEvent } from "./events.js";
5
5
  import { GetRedirectByIdUseCase } from "../GetRedirectById/index.js";
6
- import { WbPermissions } from "../../../domain/permissions.js";
6
+ import { WbPermissions } from "../../permissions/abstractions.js";
7
7
  import { RedirectNotAuthorizedError } from "../../../domain/redirect/errors.js";
8
8
  class UpdateRedirectUseCaseImpl {
9
9
  constructor(permissions, eventPublisher, getRedirectById, repository) {
@@ -60,7 +60,7 @@ class UpdateRedirectUseCaseImpl {
60
60
  }
61
61
  export const UpdateRedirectUseCase = UseCaseAbstraction.createImplementation({
62
62
  implementation: UpdateRedirectUseCaseImpl,
63
- dependencies: [WbPermissions.Abstraction, EventPublisher, GetRedirectByIdUseCase, UpdateRedirectRepository]
63
+ dependencies: [WbPermissions, EventPublisher, GetRedirectByIdUseCase, UpdateRedirectRepository]
64
64
  });
65
65
 
66
66
  //# sourceMappingURL=UpdateRedirectUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","EventPublisher","UpdateRedirectUseCase","UseCaseAbstraction","UpdateRedirectRepository","RedirectBeforeUpdateEvent","RedirectAfterUpdateEvent","GetRedirectByIdUseCase","WbPermissions","RedirectNotAuthorizedError","UpdateRedirectUseCaseImpl","constructor","permissions","eventPublisher","getRedirectById","repository","execute","id","data","hasPermission","canEdit","fail","getResult","isFail","original","value","beforeEvent","input","publish","result","afterEvent","redirect","ok","createImplementation","implementation","dependencies","Abstraction"],"sources":["UpdateRedirectUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n EventPublisher,\n EventPublisher as EventPublisherAbstraction\n} from \"@webiny/api-core/features/EventPublisher\";\nimport {\n UpdateRedirectUseCase as UseCaseAbstraction,\n UpdateRedirectRepository\n} from \"./abstractions.js\";\nimport { RedirectBeforeUpdateEvent, RedirectAfterUpdateEvent } from \"./events.js\";\nimport { GetRedirectByIdUseCase } from \"~/features/redirects/GetRedirectById/index.js\";\nimport { WbPermissions } from \"~/domain/permissions.js\";\nimport { RedirectNotAuthorizedError } from \"~/domain/redirect/errors.js\";\n\nclass UpdateRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getRedirectById: GetRedirectByIdUseCase.Interface,\n private repository: UpdateRedirectRepository.Interface\n ) {}\n\n async execute(id: string, data: UseCaseAbstraction.UpdateData): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canEdit(\"redirect\");\n if (!hasPermission) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n // Get the original redirect for events\n const getResult = await this.getRedirectById.execute(id);\n\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n const canEdit = await this.permissions.canEdit(\"redirect\", original);\n if (!canEdit) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n // Publish before update event\n const beforeEvent = new RedirectBeforeUpdateEvent({\n original,\n input: { id, data }\n });\n\n await this.eventPublisher.publish(beforeEvent);\n\n // Execute the update operation\n const result = await this.repository.execute(id, data);\n\n if (result.isFail()) {\n return result;\n }\n\n // Publish after update event\n const afterEvent = new RedirectAfterUpdateEvent({\n original,\n input: { id, data },\n redirect: result.value\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const UpdateRedirectUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateRedirectUseCaseImpl,\n dependencies: [\n WbPermissions.Abstraction,\n EventPublisher,\n GetRedirectByIdUseCase,\n UpdateRedirectRepository\n ]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SACIC,cAAc,QAEX,0CAA0C;AACjD,SACIC,qBAAqB,IAAIC,kBAAkB,EAC3CC,wBAAwB;AAE5B,SAASC,yBAAyB,EAAEC,wBAAwB;AAC5D,SAASC,sBAAsB;AAC/B,SAASC,aAAa;AACtB,SAASC,0BAA0B;AAEnC,MAAMC,yBAAyB,CAAyC;EACpEC,WAAWA,CACCC,WAAoC,EACpCC,cAAmD,EACnDC,eAAiD,EACjDC,UAA8C,EACxD;IAAA,KAJUH,WAAoC,GAApCA,WAAoC;IAAA,KACpCC,cAAmD,GAAnDA,cAAmD;IAAA,KACnDC,eAAiD,GAAjDA,eAAiD;IAAA,KACjDC,UAA8C,GAA9CA,UAA8C;EACvD;EAEH,MAAMC,OAAOA,CAACC,EAAU,EAAEC,IAAmC,EAA6B;IACtF,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACP,WAAW,CAACQ,OAAO,CAAC,UAAU,CAAC;IAChE,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOnB,MAAM,CAACqB,IAAI,CAAC,IAAIZ,0BAA0B,CAAC,CAAC,CAAC;IACxD;;IAEA;IACA,MAAMa,SAAS,GAAG,MAAM,IAAI,CAACR,eAAe,CAACE,OAAO,CAACC,EAAE,CAAC;IAExD,IAAIK,SAAS,CAACC,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOD,SAAS;IACpB;IAEA,MAAME,QAAQ,GAAGF,SAAS,CAACG,KAAK;IAEhC,MAAML,OAAO,GAAG,MAAM,IAAI,CAACR,WAAW,CAACQ,OAAO,CAAC,UAAU,EAAEI,QAAQ,CAAC;IACpE,IAAI,CAACJ,OAAO,EAAE;MACV,OAAOpB,MAAM,CAACqB,IAAI,CAAC,IAAIZ,0BAA0B,CAAC,CAAC,CAAC;IACxD;;IAEA;IACA,MAAMiB,WAAW,GAAG,IAAIrB,yBAAyB,CAAC;MAC9CmB,QAAQ;MACRG,KAAK,EAAE;QAAEV,EAAE;QAAEC;MAAK;IACtB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACL,cAAc,CAACe,OAAO,CAACF,WAAW,CAAC;;IAE9C;IACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACd,UAAU,CAACC,OAAO,CAACC,EAAE,EAAEC,IAAI,CAAC;IAEtD,IAAIW,MAAM,CAACN,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOM,MAAM;IACjB;;IAEA;IACA,MAAMC,UAAU,GAAG,IAAIxB,wBAAwB,CAAC;MAC5CkB,QAAQ;MACRG,KAAK,EAAE;QAAEV,EAAE;QAAEC;MAAK,CAAC;MACnBa,QAAQ,EAAEF,MAAM,CAACJ;IACrB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACZ,cAAc,CAACe,OAAO,CAACE,UAAU,CAAC;IAE7C,OAAO9B,MAAM,CAACgC,EAAE,CAACH,MAAM,CAACJ,KAAK,CAAC;EAClC;AACJ;AAEA,OAAO,MAAMvB,qBAAqB,GAAGC,kBAAkB,CAAC8B,oBAAoB,CAAC;EACzEC,cAAc,EAAExB,yBAAyB;EACzCyB,YAAY,EAAE,CACV3B,aAAa,CAAC4B,WAAW,EACzBnC,cAAc,EACdM,sBAAsB,EACtBH,wBAAwB;AAEhC,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["Result","EventPublisher","UpdateRedirectUseCase","UseCaseAbstraction","UpdateRedirectRepository","RedirectBeforeUpdateEvent","RedirectAfterUpdateEvent","GetRedirectByIdUseCase","WbPermissions","RedirectNotAuthorizedError","UpdateRedirectUseCaseImpl","constructor","permissions","eventPublisher","getRedirectById","repository","execute","id","data","hasPermission","canEdit","fail","getResult","isFail","original","value","beforeEvent","input","publish","result","afterEvent","redirect","ok","createImplementation","implementation","dependencies"],"sources":["UpdateRedirectUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n EventPublisher,\n EventPublisher as EventPublisherAbstraction\n} from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport {\n UpdateRedirectUseCase as UseCaseAbstraction,\n UpdateRedirectRepository\n} from \"./abstractions.js\";\nimport { RedirectBeforeUpdateEvent, RedirectAfterUpdateEvent } from \"./events.js\";\nimport { GetRedirectByIdUseCase } from \"~/features/redirects/GetRedirectById/index.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { RedirectNotAuthorizedError } from \"~/domain/redirect/errors.js\";\n\nclass UpdateRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getRedirectById: GetRedirectByIdUseCase.Interface,\n private repository: UpdateRedirectRepository.Interface\n ) {}\n\n async execute(id: string, data: UseCaseAbstraction.UpdateData): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canEdit(\"redirect\");\n if (!hasPermission) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n // Get the original redirect for events\n const getResult = await this.getRedirectById.execute(id);\n\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n const canEdit = await this.permissions.canEdit(\"redirect\", original);\n if (!canEdit) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n // Publish before update event\n const beforeEvent = new RedirectBeforeUpdateEvent({\n original,\n input: { id, data }\n });\n\n await this.eventPublisher.publish(beforeEvent);\n\n // Execute the update operation\n const result = await this.repository.execute(id, data);\n\n if (result.isFail()) {\n return result;\n }\n\n // Publish after update event\n const afterEvent = new RedirectAfterUpdateEvent({\n original,\n input: { id, data },\n redirect: result.value\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const UpdateRedirectUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdateRedirectUseCaseImpl,\n dependencies: [WbPermissions, EventPublisher, GetRedirectByIdUseCase, UpdateRedirectRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SACIC,cAAc,QAEX,mDAAmD;AAC1D,SACIC,qBAAqB,IAAIC,kBAAkB,EAC3CC,wBAAwB;AAE5B,SAASC,yBAAyB,EAAEC,wBAAwB;AAC5D,SAASC,sBAAsB;AAC/B,SAASC,aAAa;AACtB,SAASC,0BAA0B;AAEnC,MAAMC,yBAAyB,CAAyC;EACpEC,WAAWA,CACCC,WAAoC,EACpCC,cAAmD,EACnDC,eAAiD,EACjDC,UAA8C,EACxD;IAAA,KAJUH,WAAoC,GAApCA,WAAoC;IAAA,KACpCC,cAAmD,GAAnDA,cAAmD;IAAA,KACnDC,eAAiD,GAAjDA,eAAiD;IAAA,KACjDC,UAA8C,GAA9CA,UAA8C;EACvD;EAEH,MAAMC,OAAOA,CAACC,EAAU,EAAEC,IAAmC,EAA6B;IACtF,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACP,WAAW,CAACQ,OAAO,CAAC,UAAU,CAAC;IAChE,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOnB,MAAM,CAACqB,IAAI,CAAC,IAAIZ,0BAA0B,CAAC,CAAC,CAAC;IACxD;;IAEA;IACA,MAAMa,SAAS,GAAG,MAAM,IAAI,CAACR,eAAe,CAACE,OAAO,CAACC,EAAE,CAAC;IAExD,IAAIK,SAAS,CAACC,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOD,SAAS;IACpB;IAEA,MAAME,QAAQ,GAAGF,SAAS,CAACG,KAAK;IAEhC,MAAML,OAAO,GAAG,MAAM,IAAI,CAACR,WAAW,CAACQ,OAAO,CAAC,UAAU,EAAEI,QAAQ,CAAC;IACpE,IAAI,CAACJ,OAAO,EAAE;MACV,OAAOpB,MAAM,CAACqB,IAAI,CAAC,IAAIZ,0BAA0B,CAAC,CAAC,CAAC;IACxD;;IAEA;IACA,MAAMiB,WAAW,GAAG,IAAIrB,yBAAyB,CAAC;MAC9CmB,QAAQ;MACRG,KAAK,EAAE;QAAEV,EAAE;QAAEC;MAAK;IACtB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACL,cAAc,CAACe,OAAO,CAACF,WAAW,CAAC;;IAE9C;IACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACd,UAAU,CAACC,OAAO,CAACC,EAAE,EAAEC,IAAI,CAAC;IAEtD,IAAIW,MAAM,CAACN,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOM,MAAM;IACjB;;IAEA;IACA,MAAMC,UAAU,GAAG,IAAIxB,wBAAwB,CAAC;MAC5CkB,QAAQ;MACRG,KAAK,EAAE;QAAEV,EAAE;QAAEC;MAAK,CAAC;MACnBa,QAAQ,EAAEF,MAAM,CAACJ;IACrB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACZ,cAAc,CAACe,OAAO,CAACE,UAAU,CAAC;IAE7C,OAAO9B,MAAM,CAACgC,EAAE,CAACH,MAAM,CAACJ,KAAK,CAAC;EAClC;AACJ;AAEA,OAAO,MAAMvB,qBAAqB,GAAGC,kBAAkB,CAAC8B,oBAAoB,CAAC;EACzEC,cAAc,EAAExB,yBAAyB;EACzCyB,YAAY,EAAE,CAAC3B,aAAa,EAAEP,cAAc,EAAEM,sBAAsB,EAAEH,wBAAwB;AAClG,CAAC,CAAC","ignoreList":[]}
@@ -1,6 +1,6 @@
1
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";
2
+ import type { IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js";
3
+ import type { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
4
4
  import type { WbRedirect } from "../../../domain/redirect/abstractions.js";
5
5
  import type { WbLocation } from "../../../domain/shared/abstractions.js";
6
6
  import { RedirectNotFoundError, RedirectPersistenceError, RedirectValidationError, RedirectNotAuthorizedError } from "../../../domain/redirect/errors.js";
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","UpdateRedirectRepository","UpdateRedirectUseCase","RedirectBeforeUpdateEventHandler","RedirectAfterUpdateEventHandler"],"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 type { WbLocation } from \"~/domain/shared/abstractions.js\";\nimport {\n RedirectNotFoundError,\n RedirectPersistenceError,\n RedirectValidationError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUpdateWbRedirectData {\n location?: WbLocation;\n redirectFrom?: string;\n redirectTo?: string;\n redirectType?: string;\n isEnabled?: boolean;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUpdateRedirectRepository {\n execute(id: string, data: IUpdateWbRedirectData): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface IUpdateRedirectRepositoryErrors {\n notFound: RedirectNotFoundError;\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = IUpdateRedirectRepositoryErrors[keyof IUpdateRedirectRepositoryErrors];\n\nexport const UpdateRedirectRepository = createAbstraction<IUpdateRedirectRepository>(\n \"Wb/UpdateRedirectRepository\"\n);\n\nexport namespace UpdateRedirectRepository {\n export type Interface = IUpdateRedirectRepository;\n export type UpdateData = IUpdateWbRedirectData;\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 IUpdateRedirectUseCase {\n execute(id: string, data: IUpdateWbRedirectData): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface IUpdateRedirectUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n notFound: RedirectNotFoundError;\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IUpdateRedirectUseCaseErrors[keyof IUpdateRedirectUseCaseErrors];\n\n/** Update a URL redirect. */\nexport const UpdateRedirectUseCase = createAbstraction<IUpdateRedirectUseCase>(\n \"Wb/UpdateRedirectUseCase\"\n);\n\nexport namespace UpdateRedirectUseCase {\n export type Interface = IUpdateRedirectUseCase;\n export type UpdateData = IUpdateWbRedirectData;\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 RedirectBeforeUpdatePayload {\n original: WbRedirect;\n input: {\n id: string;\n data: IUpdateWbRedirectData;\n };\n}\n\nexport interface RedirectAfterUpdatePayload {\n original: WbRedirect;\n input: {\n id: string;\n data: IUpdateWbRedirectData;\n };\n redirect: WbRedirect;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into redirect lifecycle before a redirect is updated. */\nexport const RedirectBeforeUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectBeforeUpdatePayload>>\n>(\"Wb/RedirectBeforeUpdateEventHandler\");\n\nexport namespace RedirectBeforeUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectBeforeUpdatePayload>>;\n export type Event = DomainEvent<RedirectBeforeUpdatePayload>;\n export type Redirect = WbRedirect;\n}\n\n/** Hook into redirect lifecycle after a redirect is updated. */\nexport const RedirectAfterUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectAfterUpdatePayload>>\n>(\"Wb/RedirectAfterUpdateEventHandler\");\n\nexport namespace RedirectAfterUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectAfterUpdatePayload>>;\n export type Event = DomainEvent<RedirectAfterUpdatePayload>;\n export type Redirect = WbRedirect;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAYpE;AACA;AACA;;AAUA;AACA;AACA;;AAcA,OAAO,MAAMC,wBAAwB,GAAGD,iBAAiB,CACrD,6BACJ,CAAC;;AAUD;AACA;AACA;;AAeA;AACA,OAAO,MAAME,qBAAqB,GAAGF,iBAAiB,CAClD,0BACJ,CAAC;;AAUD;AACA;AACA;;AAmBA;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":[]}
1
+ {"version":3,"names":["createAbstraction","UpdateRedirectRepository","UpdateRedirectUseCase","RedirectBeforeUpdateEventHandler","RedirectAfterUpdateEventHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport type { WbLocation } from \"~/domain/shared/abstractions.js\";\nimport {\n RedirectNotFoundError,\n RedirectPersistenceError,\n RedirectValidationError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUpdateWbRedirectData {\n location?: WbLocation;\n redirectFrom?: string;\n redirectTo?: string;\n redirectType?: string;\n isEnabled?: boolean;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUpdateRedirectRepository {\n execute(id: string, data: IUpdateWbRedirectData): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface IUpdateRedirectRepositoryErrors {\n notFound: RedirectNotFoundError;\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = IUpdateRedirectRepositoryErrors[keyof IUpdateRedirectRepositoryErrors];\n\nexport const UpdateRedirectRepository = createAbstraction<IUpdateRedirectRepository>(\n \"Wb/UpdateRedirectRepository\"\n);\n\nexport namespace UpdateRedirectRepository {\n export type Interface = IUpdateRedirectRepository;\n export type UpdateData = IUpdateWbRedirectData;\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 IUpdateRedirectUseCase {\n execute(id: string, data: IUpdateWbRedirectData): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface IUpdateRedirectUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n notFound: RedirectNotFoundError;\n validation: RedirectValidationError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IUpdateRedirectUseCaseErrors[keyof IUpdateRedirectUseCaseErrors];\n\n/** Update a URL redirect. */\nexport const UpdateRedirectUseCase = createAbstraction<IUpdateRedirectUseCase>(\n \"Wb/UpdateRedirectUseCase\"\n);\n\nexport namespace UpdateRedirectUseCase {\n export type Interface = IUpdateRedirectUseCase;\n export type UpdateData = IUpdateWbRedirectData;\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 RedirectBeforeUpdatePayload {\n original: WbRedirect;\n input: {\n id: string;\n data: IUpdateWbRedirectData;\n };\n}\n\nexport interface RedirectAfterUpdatePayload {\n original: WbRedirect;\n input: {\n id: string;\n data: IUpdateWbRedirectData;\n };\n redirect: WbRedirect;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into redirect lifecycle before a redirect is updated. */\nexport const RedirectBeforeUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectBeforeUpdatePayload>>\n>(\"Wb/RedirectBeforeUpdateEventHandler\");\n\nexport namespace RedirectBeforeUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectBeforeUpdatePayload>>;\n export type Event = DomainEvent<RedirectBeforeUpdatePayload>;\n export type Redirect = WbRedirect;\n}\n\n/** Hook into redirect lifecycle after a redirect is updated. */\nexport const RedirectAfterUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectAfterUpdatePayload>>\n>(\"Wb/RedirectAfterUpdateEventHandler\");\n\nexport namespace RedirectAfterUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectAfterUpdatePayload>>;\n export type Event = DomainEvent<RedirectAfterUpdatePayload>;\n export type Redirect = WbRedirect;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAYpE;AACA;AACA;;AAUA;AACA;AACA;;AAcA,OAAO,MAAMC,wBAAwB,GAAGD,iBAAiB,CACrD,6BACJ,CAAC;;AAUD;AACA;AACA;;AAeA;AACA,OAAO,MAAME,qBAAqB,GAAGF,iBAAiB,CAClD,0BACJ,CAAC;;AAUD;AACA;AACA;;AAmBA;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":[]}
@@ -1,10 +1,10 @@
1
- import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
1
+ import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
2
2
  import type { RedirectBeforeUpdatePayload, RedirectAfterUpdatePayload } from "./abstractions.js";
3
3
  export declare class RedirectBeforeUpdateEvent extends DomainEvent<RedirectBeforeUpdatePayload> {
4
4
  eventType: "redirect.beforeUpdate";
5
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<RedirectBeforeUpdatePayload>>>;
5
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<RedirectBeforeUpdatePayload>>>;
6
6
  }
7
7
  export declare class RedirectAfterUpdateEvent extends DomainEvent<RedirectAfterUpdatePayload> {
8
8
  eventType: "redirect.afterUpdate";
9
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<RedirectAfterUpdatePayload>>>;
9
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<RedirectAfterUpdatePayload>>>;
10
10
  }
@@ -1,4 +1,4 @@
1
- import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
1
+ import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
2
2
  import { RedirectBeforeUpdateEventHandler, RedirectAfterUpdateEventHandler } from "./abstractions.js";
3
3
  // RedirectBeforeUpdate Event
4
4
  export class RedirectBeforeUpdateEvent extends DomainEvent {
@@ -1 +1 @@
1
- {"version":3,"names":["DomainEvent","RedirectBeforeUpdateEventHandler","RedirectAfterUpdateEventHandler","RedirectBeforeUpdateEvent","eventType","getHandlerAbstraction","RedirectAfterUpdateEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport {\n RedirectBeforeUpdateEventHandler,\n RedirectAfterUpdateEventHandler\n} from \"./abstractions.js\";\nimport type { RedirectBeforeUpdatePayload, RedirectAfterUpdatePayload } from \"./abstractions.js\";\n\n// RedirectBeforeUpdate Event\nexport class RedirectBeforeUpdateEvent extends DomainEvent<RedirectBeforeUpdatePayload> {\n eventType = \"redirect.beforeUpdate\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeUpdateEventHandler;\n }\n}\n\n// RedirectAfterUpdate Event\nexport class RedirectAfterUpdateEvent extends DomainEvent<RedirectAfterUpdatePayload> {\n eventType = \"redirect.afterUpdate\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterUpdateEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SACIC,gCAAgC,EAChCC,+BAA+B;AAInC;AACA,OAAO,MAAMC,yBAAyB,SAASH,WAAW,CAA8B;EACpFI,SAAS,GAAG,uBAAuB;EAEnCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,gCAAgC;EAC3C;AACJ;;AAEA;AACA,OAAO,MAAMK,wBAAwB,SAASN,WAAW,CAA6B;EAClFI,SAAS,GAAG,sBAAsB;EAElCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,+BAA+B;EAC1C;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["DomainEvent","RedirectBeforeUpdateEventHandler","RedirectAfterUpdateEventHandler","RedirectBeforeUpdateEvent","eventType","getHandlerAbstraction","RedirectAfterUpdateEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport {\n RedirectBeforeUpdateEventHandler,\n RedirectAfterUpdateEventHandler\n} from \"./abstractions.js\";\nimport type { RedirectBeforeUpdatePayload, RedirectAfterUpdatePayload } from \"./abstractions.js\";\n\n// RedirectBeforeUpdate Event\nexport class RedirectBeforeUpdateEvent extends DomainEvent<RedirectBeforeUpdatePayload> {\n eventType = \"redirect.beforeUpdate\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeUpdateEventHandler;\n }\n}\n\n// RedirectAfterUpdate Event\nexport class RedirectAfterUpdateEvent extends DomainEvent<RedirectAfterUpdatePayload> {\n eventType = \"redirect.afterUpdate\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterUpdateEventHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,mDAAmD;AAC/E,SACIC,gCAAgC,EAChCC,+BAA+B;AAInC;AACA,OAAO,MAAMC,yBAAyB,SAASH,WAAW,CAA8B;EACpFI,SAAS,GAAG,uBAAuB;EAEnCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,gCAAgC;EAC3C;AACJ;;AAEA;AACA,OAAO,MAAMK,wBAAwB,SAASN,WAAW,CAA6B;EAClFI,SAAS,GAAG,sBAAsB;EAElCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,+BAA+B;EAC1C;AACJ","ignoreList":[]}
@@ -15,11 +15,13 @@ import { PublishPageUseCase } from "../../features/pages/PublishPage/index.js";
15
15
  import { UnpublishPageUseCase } from "../../features/pages/UnpublishPage/index.js";
16
16
  import { MovePageUseCase } from "../../features/pages/MovePage/index.js";
17
17
  import { DuplicatePageUseCase } from "../../features/pages/DuplicatePage/index.js";
18
+ import { TranslatePageUseCase } from "../../features/pages/TranslatePage/index.js";
18
19
  import { CreatePageRevisionFromUseCase } from "../../features/pages/CreatePageRevisionFrom/index.js";
19
20
  import { KeyValueStore } from "@webiny/api-core/features/keyValueStore/index.js";
20
21
  import { ListDeletedPagesUseCase } from "../../features/pages/ListDeletedPages/index.js";
21
22
  import { TrashPageUseCase } from "../../features/pages/TrashPage/index.js";
22
23
  import { RestorePageUseCase } from "../../features/pages/RestorePage/index.js";
24
+ import { GetPageLanguagePathsUseCase } from "../../features/pages/GetPageLanguagePaths/index.js";
23
25
  export const createPagesSchema = () => {
24
26
  const pageGraphQL = new GraphQLSchemaPlugin({
25
27
  typeDefs: pagesTypeDefs,
@@ -44,6 +46,7 @@ export const createPagesSchema = () => {
44
46
  const page = result.value;
45
47
  return {
46
48
  id: page.id,
49
+ entryId: page.entryId,
47
50
  properties: page.properties,
48
51
  bindings: page.bindings,
49
52
  elements: page.elements
@@ -190,6 +193,25 @@ export const createPagesSchema = () => {
190
193
  return result.value;
191
194
  });
192
195
  },
196
+ translatePage: async (_, {
197
+ pageId,
198
+ languageCode,
199
+ folderId
200
+ }, context) => {
201
+ return resolve(async () => {
202
+ ensureAuthentication(context);
203
+ const translatePage = context.container.resolve(TranslatePageUseCase);
204
+ const result = await translatePage.execute({
205
+ pageId,
206
+ languageCode,
207
+ folderId
208
+ });
209
+ if (result.isFail()) {
210
+ throw new Error(result.error.message);
211
+ }
212
+ return result.value;
213
+ });
214
+ },
193
215
  publishPage: async (_, {
194
216
  id
195
217
  }, context) => {
@@ -309,6 +331,18 @@ export const createPagesSchema = () => {
309
331
  return true;
310
332
  });
311
333
  }
334
+ },
335
+ WbPage: {
336
+ languagePaths: async (page, _, context) => {
337
+ const properties = page.properties ?? {};
338
+ const rootEntryId = properties.sourcePage ?? page.entryId;
339
+ if (!rootEntryId) {
340
+ return {};
341
+ }
342
+ const getLanguagePaths = context.container.resolve(GetPageLanguagePathsUseCase);
343
+ const result = await getLanguagePaths.execute(rootEntryId);
344
+ return result.isFail() ? {} : result.value;
345
+ }
312
346
  }
313
347
  }
314
348
  });
@@ -1 +1 @@
1
- {"version":3,"names":["ErrorResponse","GraphQLSchemaPlugin","ListResponse","NotFoundError","Response","ensureAuthentication","resolve","WEBSITE_BUILDER_INTEGRATIONS","WEBSITE_BUILDER_SETTINGS","pagesTypeDefs","PageModel","GetPageByIdUseCase","GetPageByPathUseCase","GetPageRevisionsUseCase","ListPagesUseCase","CreatePageUseCase","UpdatePageUseCase","DeletePageUseCase","PublishPageUseCase","UnpublishPageUseCase","MovePageUseCase","DuplicatePageUseCase","CreatePageRevisionFromUseCase","KeyValueStore","ListDeletedPagesUseCase","TrashPageUseCase","RestorePageUseCase","createPagesSchema","pageGraphQL","typeDefs","resolvers","WbQuery","getPageModel","_","__","context","container","getPageByPath","path","result","execute","isFail","page","value","id","properties","bindings","elements","getPageById","getPageRevisions","entryId","Error","error","message","revisions","map","version","title","status","locked","savedOn","listPages","args","pages","meta","e","listDeletedPages","getSettings","keyValueStore","get","previewDomain","settings","getIntegrations","WbMutation","createPage","data","updatePage","duplicatePage","publishPage","unpublishPage","movePage","folderId","createPageRevisionFrom","createRevision","deletePage","permanently","restorePage","updateSettings","permission","set","updateIntegrations","name"],"sources":["pages.gql.ts"],"sourcesContent":["import {\n ErrorResponse,\n GraphQLSchemaPlugin,\n ListResponse,\n NotFoundError,\n Response\n} from \"@webiny/handler-graphql\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication.js\";\nimport { resolve } from \"~/utils/resolve.js\";\nimport { WEBSITE_BUILDER_INTEGRATIONS, WEBSITE_BUILDER_SETTINGS } from \"~/constants.js\";\nimport { pagesTypeDefs } from \"~/graphql/pages/pages.typeDefs.js\";\nimport type { ApiCoreContext } from \"@webiny/api-core/types/core.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { GetPageByIdUseCase } from \"~/features/pages/GetPageById/index.js\";\nimport { GetPageByPathUseCase } from \"~/features/pages/GetPageByPath/index.js\";\nimport { GetPageRevisionsUseCase } from \"~/features/pages/GetPageRevisions/index.js\";\nimport { ListPagesUseCase } from \"~/features/pages/ListPages/index.js\";\nimport { CreatePageUseCase } from \"~/features/pages/CreatePage/index.js\";\nimport { UpdatePageUseCase } from \"~/features/pages/UpdatePage/index.js\";\nimport { DeletePageUseCase } from \"~/features/pages/DeletePage/index.js\";\nimport { PublishPageUseCase } from \"~/features/pages/PublishPage/index.js\";\nimport { UnpublishPageUseCase } from \"~/features/pages/UnpublishPage/index.js\";\nimport { MovePageUseCase } from \"~/features/pages/MovePage/index.js\";\nimport { DuplicatePageUseCase } from \"~/features/pages/DuplicatePage/index.js\";\nimport { CreatePageRevisionFromUseCase } from \"~/features/pages/CreatePageRevisionFrom/index.js\";\nimport { KeyValueStore } from \"@webiny/api-core/features/keyValueStore/index.js\";\nimport { ListDeletedPagesUseCase } from \"~/features/pages/ListDeletedPages/index.js\";\nimport { TrashPageUseCase } from \"~/features/pages/TrashPage/index.js\";\nimport { RestorePageUseCase } from \"~/features/pages/RestorePage/index.js\";\n\nexport const createPagesSchema = () => {\n const pageGraphQL = new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: pagesTypeDefs,\n resolvers: {\n WbQuery: {\n getPageModel: async (_, __, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n return context.container.resolve(PageModel);\n });\n },\n getPageByPath: async (_, { path }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n\n const getPageByPath = context.container.resolve(GetPageByPathUseCase);\n const result = await getPageByPath.execute(path);\n\n if (result.isFail()) {\n throw new NotFoundError(`Page ${path} was not found!`);\n }\n\n const page = result.value;\n return {\n id: page.id,\n properties: page.properties,\n bindings: page.bindings,\n elements: page.elements\n };\n });\n },\n getPageById: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const getPageById = context.container.resolve(GetPageByIdUseCase);\n const result = await getPageById.execute(id);\n\n if (result.isFail()) {\n throw new NotFoundError(`Page with id \"${id}\" was not found!`);\n }\n\n return result.value;\n });\n },\n getPageRevisions: async (_, { entryId }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const getPageRevisions = context.container.resolve(GetPageRevisionsUseCase);\n const result = await getPageRevisions.execute(entryId);\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n const revisions = result.value;\n return revisions.map(page => {\n return {\n id: page.id,\n entryId: page.entryId,\n version: page.version,\n title: page.properties.title,\n status: page.status,\n locked: page.locked,\n savedOn: page.savedOn\n };\n });\n });\n },\n listPages: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listPages = context.container.resolve(ListPagesUseCase);\n const result = await listPages.execute(args);\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const { pages, meta } = result.value;\n return new ListResponse(pages, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listDeletedPages: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listPages = context.container.resolve(ListDeletedPagesUseCase);\n const result = await listPages.execute(args);\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const { pages, meta } = result.value;\n return new ListResponse(pages, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n getSettings: async (_, __, context) => {\n ensureAuthentication(context);\n\n const keyValueStore = context.container.resolve(KeyValueStore);\n const result = await keyValueStore.get<{ previewDomain: string | undefined }>(\n WEBSITE_BUILDER_SETTINGS\n );\n\n if (result.isFail()) {\n return new Response({\n // TODO: add a WB GetSettings use case and a Settings domain model with defaults.\n previewDomain: \"http://localhost:3000\"\n });\n }\n\n const settings = result.value;\n\n return new Response({\n // TODO: add a WB GetSettings use case and a Settings domain model with defaults.\n previewDomain: settings.previewDomain ?? \"http://localhost:3000\"\n });\n },\n getIntegrations: async (_, __, context) => {\n ensureAuthentication(context);\n const keyValueStore = context.container.resolve(KeyValueStore);\n const settings = await keyValueStore.get(WEBSITE_BUILDER_INTEGRATIONS);\n if (settings.isFail()) {\n return new Response({});\n }\n\n return new Response(settings.value);\n }\n },\n WbMutation: {\n createPage: async (_, { data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const createPage = context.container.resolve(CreatePageUseCase);\n const result = await createPage.execute(data);\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n updatePage: async (_, { id, data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const updatePage = context.container.resolve(UpdatePageUseCase);\n const result = await updatePage.execute(id, data);\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n duplicatePage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const duplicatePage = context.container.resolve(DuplicatePageUseCase);\n const result = await duplicatePage.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n publishPage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const publishPage = context.container.resolve(PublishPageUseCase);\n const result = await publishPage.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n unpublishPage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const unpublishPage = context.container.resolve(UnpublishPageUseCase);\n const result = await unpublishPage.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n movePage: async (_, { id, folderId }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const movePage = context.container.resolve(MovePageUseCase);\n const result = await movePage.execute({ id, folderId });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return true;\n });\n },\n createPageRevisionFrom: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const createRevision = context.container.resolve(\n CreatePageRevisionFromUseCase\n );\n const result = await createRevision.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n deletePage: async (_, { id, permanently }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const deletePage = context.container.resolve(\n /**\n * If \"permanent\" flag is set, we want to permanently delete the page. Otherwise, we just want to trash it.\n * This allows us to have a two-step deletion process, where pages are first moved to trash and can be restored from there, before being permanently deleted.\n */\n permanently ? DeletePageUseCase : TrashPageUseCase\n );\n const result = await deletePage.execute({\n id\n });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return true;\n });\n },\n restorePage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const restorePage = context.container.resolve(RestorePageUseCase);\n const result = await restorePage.execute({\n id\n });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n // TODO: move these settings updates into dedicated use cases\n updateSettings: async (_, args, context) => {\n return resolve(async () => {\n ensureAuthentication(context, { permission: \"wb.settings\" });\n const keyValueStore = context.container.resolve(KeyValueStore);\n await keyValueStore.set(WEBSITE_BUILDER_SETTINGS, args.data);\n\n return true;\n });\n },\n updateIntegrations: async (_, args, context) => {\n return resolve(async () => {\n ensureAuthentication(context, { permission: \"wb.settings\" });\n const keyValueStore = context.container.resolve(KeyValueStore);\n await keyValueStore.set(WEBSITE_BUILDER_INTEGRATIONS, args.data);\n\n return true;\n });\n }\n }\n }\n });\n\n pageGraphQL.name = \"wb.graphql.pages\";\n\n return pageGraphQL;\n};\n"],"mappings":"AAAA,SACIA,aAAa,EACbC,mBAAmB,EACnBC,YAAY,EACZC,aAAa,EACbC,QAAQ,QACL,yBAAyB;AAChC,SAASC,oBAAoB;AAC7B,SAASC,OAAO;AAChB,SAASC,4BAA4B,EAAEC,wBAAwB;AAC/D,SAASC,aAAa;AAEtB,SAASC,SAAS;AAClB,SAASC,kBAAkB;AAC3B,SAASC,oBAAoB;AAC7B,SAASC,uBAAuB;AAChC,SAASC,gBAAgB;AACzB,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,iBAAiB;AAC1B,SAASC,kBAAkB;AAC3B,SAASC,oBAAoB;AAC7B,SAASC,eAAe;AACxB,SAASC,oBAAoB;AAC7B,SAASC,6BAA6B;AACtC,SAASC,aAAa,QAAQ,kDAAkD;AAChF,SAASC,uBAAuB;AAChC,SAASC,gBAAgB;AACzB,SAASC,kBAAkB;AAE3B,OAAO,MAAMC,iBAAiB,GAAGA,CAAA,KAAM;EACnC,MAAMC,WAAW,GAAG,IAAI3B,mBAAmB,CAAiB;IACxD4B,QAAQ,EAAEpB,aAAa;IACvBqB,SAAS,EAAE;MACPC,OAAO,EAAE;QACLC,YAAY,EAAE,MAAAA,CAAOC,CAAC,EAAEC,EAAE,EAAEC,OAAO,KAAK;UACpC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,OAAOA,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACI,SAAS,CAAC;UAC/C,CAAC,CAAC;QACN,CAAC;QACD2B,aAAa,EAAE,MAAAA,CAAOJ,CAAC,EAAE;UAAEK;QAAK,CAAC,EAAEH,OAAO,KAAK;UAC3C,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAE7B,MAAME,aAAa,GAAGF,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACM,oBAAoB,CAAC;YACrE,MAAM2B,MAAM,GAAG,MAAMF,aAAa,CAACG,OAAO,CAACF,IAAI,CAAC;YAEhD,IAAIC,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAItC,aAAa,CAAC,QAAQmC,IAAI,iBAAiB,CAAC;YAC1D;YAEA,MAAMI,IAAI,GAAGH,MAAM,CAACI,KAAK;YACzB,OAAO;cACHC,EAAE,EAAEF,IAAI,CAACE,EAAE;cACXC,UAAU,EAAEH,IAAI,CAACG,UAAU;cAC3BC,QAAQ,EAAEJ,IAAI,CAACI,QAAQ;cACvBC,QAAQ,EAAEL,IAAI,CAACK;YACnB,CAAC;UACL,CAAC,CAAC;QACN,CAAC;QACDC,WAAW,EAAE,MAAAA,CAAOf,CAAC,EAAE;UAAEW;QAAG,CAAC,EAAET,OAAO,KAAK;UACvC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAMa,WAAW,GAAGb,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACK,kBAAkB,CAAC;YACjE,MAAM4B,MAAM,GAAG,MAAMS,WAAW,CAACR,OAAO,CAACI,EAAE,CAAC;YAE5C,IAAIL,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAItC,aAAa,CAAC,iBAAiByC,EAAE,kBAAkB,CAAC;YAClE;YAEA,OAAOL,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACDM,gBAAgB,EAAE,MAAAA,CAAOhB,CAAC,EAAE;UAAEiB;QAAQ,CAAC,EAAEf,OAAO,KAAK;UACjD,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAMc,gBAAgB,GAAGd,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACO,uBAAuB,CAAC;YAC3E,MAAM0B,MAAM,GAAG,MAAMU,gBAAgB,CAACT,OAAO,CAACU,OAAO,CAAC;YAEtD,IAAIX,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,MAAMC,SAAS,GAAGf,MAAM,CAACI,KAAK;YAC9B,OAAOW,SAAS,CAACC,GAAG,CAACb,IAAI,IAAI;cACzB,OAAO;gBACHE,EAAE,EAAEF,IAAI,CAACE,EAAE;gBACXM,OAAO,EAAER,IAAI,CAACQ,OAAO;gBACrBM,OAAO,EAAEd,IAAI,CAACc,OAAO;gBACrBC,KAAK,EAAEf,IAAI,CAACG,UAAU,CAACY,KAAK;gBAC5BC,MAAM,EAAEhB,IAAI,CAACgB,MAAM;gBACnBC,MAAM,EAAEjB,IAAI,CAACiB,MAAM;gBACnBC,OAAO,EAAElB,IAAI,CAACkB;cAClB,CAAC;YACL,CAAC,CAAC;UACN,CAAC,CAAC;QACN,CAAC;QACDC,SAAS,EAAE,MAAAA,CAAO5B,CAAC,EAAE6B,IAAS,EAAE3B,OAAO,KAAK;UACxC,IAAI;YACA9B,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAM0B,SAAS,GAAG1B,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACQ,gBAAgB,CAAC;YAC7D,MAAMyB,MAAM,GAAG,MAAMsB,SAAS,CAACrB,OAAO,CAACsB,IAAI,CAAC;YAE5C,IAAIvB,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAMF,MAAM,CAACa,KAAK;YACtB;YAEA,MAAM;cAAEW,KAAK;cAAEC;YAAK,CAAC,GAAGzB,MAAM,CAACI,KAAK;YACpC,OAAO,IAAIzC,YAAY,CAAC6D,KAAK,EAAEC,IAAI,CAAC;UACxC,CAAC,CAAC,OAAOC,CAAC,EAAE;YACR,OAAO,IAAIjE,aAAa,CAACiE,CAAC,CAAC;UAC/B;QACJ,CAAC;QACDC,gBAAgB,EAAE,MAAAA,CAAOjC,CAAC,EAAE6B,IAAS,EAAE3B,OAAO,KAAK;UAC/C,IAAI;YACA9B,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAM0B,SAAS,GAAG1B,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACkB,uBAAuB,CAAC;YACpE,MAAMe,MAAM,GAAG,MAAMsB,SAAS,CAACrB,OAAO,CAACsB,IAAI,CAAC;YAE5C,IAAIvB,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAMF,MAAM,CAACa,KAAK;YACtB;YAEA,MAAM;cAAEW,KAAK;cAAEC;YAAK,CAAC,GAAGzB,MAAM,CAACI,KAAK;YACpC,OAAO,IAAIzC,YAAY,CAAC6D,KAAK,EAAEC,IAAI,CAAC;UACxC,CAAC,CAAC,OAAOC,CAAC,EAAE;YACR,OAAO,IAAIjE,aAAa,CAACiE,CAAC,CAAC;UAC/B;QACJ,CAAC;QACDE,WAAW,EAAE,MAAAA,CAAOlC,CAAC,EAAEC,EAAE,EAAEC,OAAO,KAAK;UACnC9B,oBAAoB,CAAC8B,OAAO,CAAC;UAE7B,MAAMiC,aAAa,GAAGjC,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACiB,aAAa,CAAC;UAC9D,MAAMgB,MAAM,GAAG,MAAM6B,aAAa,CAACC,GAAG,CAClC7D,wBACJ,CAAC;UAED,IAAI+B,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;YACjB,OAAO,IAAIrC,QAAQ,CAAC;cAChB;cACAkE,aAAa,EAAE;YACnB,CAAC,CAAC;UACN;UAEA,MAAMC,QAAQ,GAAGhC,MAAM,CAACI,KAAK;UAE7B,OAAO,IAAIvC,QAAQ,CAAC;YAChB;YACAkE,aAAa,EAAEC,QAAQ,CAACD,aAAa,IAAI;UAC7C,CAAC,CAAC;QACN,CAAC;QACDE,eAAe,EAAE,MAAAA,CAAOvC,CAAC,EAAEC,EAAE,EAAEC,OAAO,KAAK;UACvC9B,oBAAoB,CAAC8B,OAAO,CAAC;UAC7B,MAAMiC,aAAa,GAAGjC,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACiB,aAAa,CAAC;UAC9D,MAAMgD,QAAQ,GAAG,MAAMH,aAAa,CAACC,GAAG,CAAC9D,4BAA4B,CAAC;UACtE,IAAIgE,QAAQ,CAAC9B,MAAM,CAAC,CAAC,EAAE;YACnB,OAAO,IAAIrC,QAAQ,CAAC,CAAC,CAAC,CAAC;UAC3B;UAEA,OAAO,IAAIA,QAAQ,CAACmE,QAAQ,CAAC5B,KAAK,CAAC;QACvC;MACJ,CAAC;MACD8B,UAAU,EAAE;QACRC,UAAU,EAAE,MAAAA,CAAOzC,CAAC,EAAE;UAAE0C;QAAK,CAAC,EAAExC,OAAO,KAAK;UACxC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAMuC,UAAU,GAAGvC,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACS,iBAAiB,CAAC;YAC/D,MAAMwB,MAAM,GAAG,MAAMmC,UAAU,CAAClC,OAAO,CAACmC,IAAI,CAAC;YAE7C,IAAIpC,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAOd,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACDiC,UAAU,EAAE,MAAAA,CAAO3C,CAAC,EAAE;UAAEW,EAAE;UAAE+B;QAAK,CAAC,EAAExC,OAAO,KAAK;UAC5C,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAMyC,UAAU,GAAGzC,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACU,iBAAiB,CAAC;YAC/D,MAAMuB,MAAM,GAAG,MAAMqC,UAAU,CAACpC,OAAO,CAACI,EAAE,EAAE+B,IAAI,CAAC;YAEjD,IAAIpC,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAOd,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACDkC,aAAa,EAAE,MAAAA,CAAO5C,CAAC,EAAE;UAAEW;QAAG,CAAC,EAAET,OAAO,KAAK;UACzC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAM0C,aAAa,GAAG1C,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACe,oBAAoB,CAAC;YACrE,MAAMkB,MAAM,GAAG,MAAMsC,aAAa,CAACrC,OAAO,CAAC;cAAEI;YAAG,CAAC,CAAC;YAElD,IAAIL,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAOd,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACDmC,WAAW,EAAE,MAAAA,CAAO7C,CAAC,EAAE;UAAEW;QAAG,CAAC,EAAET,OAAO,KAAK;UACvC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAM2C,WAAW,GAAG3C,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACY,kBAAkB,CAAC;YACjE,MAAMqB,MAAM,GAAG,MAAMuC,WAAW,CAACtC,OAAO,CAAC;cAAEI;YAAG,CAAC,CAAC;YAEhD,IAAIL,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAOd,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACDoC,aAAa,EAAE,MAAAA,CAAO9C,CAAC,EAAE;UAAEW;QAAG,CAAC,EAAET,OAAO,KAAK;UACzC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAM4C,aAAa,GAAG5C,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACa,oBAAoB,CAAC;YACrE,MAAMoB,MAAM,GAAG,MAAMwC,aAAa,CAACvC,OAAO,CAAC;cAAEI;YAAG,CAAC,CAAC;YAElD,IAAIL,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAOd,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACDqC,QAAQ,EAAE,MAAAA,CAAO/C,CAAC,EAAE;UAAEW,EAAE;UAAEqC;QAAS,CAAC,EAAE9C,OAAO,KAAK;UAC9C,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAM6C,QAAQ,GAAG7C,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACc,eAAe,CAAC;YAC3D,MAAMmB,MAAM,GAAG,MAAMyC,QAAQ,CAACxC,OAAO,CAAC;cAAEI,EAAE;cAAEqC;YAAS,CAAC,CAAC;YAEvD,IAAI1C,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAO,IAAI;UACf,CAAC,CAAC;QACN,CAAC;QACD6B,sBAAsB,EAAE,MAAAA,CAAOjD,CAAC,EAAE;UAAEW;QAAG,CAAC,EAAET,OAAO,KAAK;UAClD,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAMgD,cAAc,GAAGhD,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAC5CgB,6BACJ,CAAC;YACD,MAAMiB,MAAM,GAAG,MAAM4C,cAAc,CAAC3C,OAAO,CAAC;cAAEI;YAAG,CAAC,CAAC;YAEnD,IAAIL,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAOd,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACDyC,UAAU,EAAE,MAAAA,CAAOnD,CAAC,EAAE;UAAEW,EAAE;UAAEyC;QAAY,CAAC,EAAElD,OAAO,KAAK;UACnD,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAMiD,UAAU,GAAGjD,OAAO,CAACC,SAAS,CAAC9B,OAAO;YACxC;AAC5B;AACA;AACA;YAC4B+E,WAAW,GAAGpE,iBAAiB,GAAGQ,gBACtC,CAAC;YACD,MAAMc,MAAM,GAAG,MAAM6C,UAAU,CAAC5C,OAAO,CAAC;cACpCI;YACJ,CAAC,CAAC;YAEF,IAAIL,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAO,IAAI;UACf,CAAC,CAAC;QACN,CAAC;QACDiC,WAAW,EAAE,MAAAA,CAAOrD,CAAC,EAAE;UAAEW;QAAG,CAAC,EAAET,OAAO,KAAK;UACvC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,CAAC;YAC7B,MAAMmD,WAAW,GAAGnD,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACoB,kBAAkB,CAAC;YACjE,MAAMa,MAAM,GAAG,MAAM+C,WAAW,CAAC9C,OAAO,CAAC;cACrCI;YACJ,CAAC,CAAC;YAEF,IAAIL,MAAM,CAACE,MAAM,CAAC,CAAC,EAAE;cACjB,MAAM,IAAIU,KAAK,CAACZ,MAAM,CAACa,KAAK,CAACC,OAAO,CAAC;YACzC;YAEA,OAAOd,MAAM,CAACI,KAAK;UACvB,CAAC,CAAC;QACN,CAAC;QACD;QACA4C,cAAc,EAAE,MAAAA,CAAOtD,CAAC,EAAE6B,IAAI,EAAE3B,OAAO,KAAK;UACxC,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,EAAE;cAAEqD,UAAU,EAAE;YAAc,CAAC,CAAC;YAC5D,MAAMpB,aAAa,GAAGjC,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACiB,aAAa,CAAC;YAC9D,MAAM6C,aAAa,CAACqB,GAAG,CAACjF,wBAAwB,EAAEsD,IAAI,CAACa,IAAI,CAAC;YAE5D,OAAO,IAAI;UACf,CAAC,CAAC;QACN,CAAC;QACDe,kBAAkB,EAAE,MAAAA,CAAOzD,CAAC,EAAE6B,IAAI,EAAE3B,OAAO,KAAK;UAC5C,OAAO7B,OAAO,CAAC,YAAY;YACvBD,oBAAoB,CAAC8B,OAAO,EAAE;cAAEqD,UAAU,EAAE;YAAc,CAAC,CAAC;YAC5D,MAAMpB,aAAa,GAAGjC,OAAO,CAACC,SAAS,CAAC9B,OAAO,CAACiB,aAAa,CAAC;YAC9D,MAAM6C,aAAa,CAACqB,GAAG,CAAClF,4BAA4B,EAAEuD,IAAI,CAACa,IAAI,CAAC;YAEhE,OAAO,IAAI;UACf,CAAC,CAAC;QACN;MACJ;IACJ;EACJ,CAAC,CAAC;EAEF/C,WAAW,CAAC+D,IAAI,GAAG,kBAAkB;EAErC,OAAO/D,WAAW;AACtB,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["ErrorResponse","GraphQLSchemaPlugin","ListResponse","NotFoundError","Response","ensureAuthentication","resolve","WEBSITE_BUILDER_INTEGRATIONS","WEBSITE_BUILDER_SETTINGS","pagesTypeDefs","PageModel","GetPageByIdUseCase","GetPageByPathUseCase","GetPageRevisionsUseCase","ListPagesUseCase","CreatePageUseCase","UpdatePageUseCase","DeletePageUseCase","PublishPageUseCase","UnpublishPageUseCase","MovePageUseCase","DuplicatePageUseCase","TranslatePageUseCase","CreatePageRevisionFromUseCase","KeyValueStore","ListDeletedPagesUseCase","TrashPageUseCase","RestorePageUseCase","GetPageLanguagePathsUseCase","createPagesSchema","pageGraphQL","typeDefs","resolvers","WbQuery","getPageModel","_","__","context","container","getPageByPath","path","result","execute","isFail","page","value","id","entryId","properties","bindings","elements","getPageById","getPageRevisions","Error","error","message","revisions","map","version","title","status","locked","savedOn","listPages","args","pages","meta","e","listDeletedPages","getSettings","keyValueStore","get","previewDomain","settings","getIntegrations","WbMutation","createPage","data","updatePage","duplicatePage","translatePage","pageId","languageCode","folderId","publishPage","unpublishPage","movePage","createPageRevisionFrom","createRevision","deletePage","permanently","restorePage","updateSettings","permission","set","updateIntegrations","WbPage","languagePaths","rootEntryId","sourcePage","getLanguagePaths","name"],"sources":["pages.gql.ts"],"sourcesContent":["import {\n ErrorResponse,\n GraphQLSchemaPlugin,\n ListResponse,\n NotFoundError,\n Response\n} from \"@webiny/handler-graphql\";\nimport { ensureAuthentication } from \"~/utils/ensureAuthentication.js\";\nimport { resolve } from \"~/utils/resolve.js\";\nimport { WEBSITE_BUILDER_INTEGRATIONS, WEBSITE_BUILDER_SETTINGS } from \"~/constants.js\";\nimport { pagesTypeDefs } from \"~/graphql/pages/pages.typeDefs.js\";\nimport type { ApiCoreContext } from \"@webiny/api-core/types/core.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { GetPageByIdUseCase } from \"~/features/pages/GetPageById/index.js\";\nimport { GetPageByPathUseCase } from \"~/features/pages/GetPageByPath/index.js\";\nimport { GetPageRevisionsUseCase } from \"~/features/pages/GetPageRevisions/index.js\";\nimport { ListPagesUseCase } from \"~/features/pages/ListPages/index.js\";\nimport { CreatePageUseCase } from \"~/features/pages/CreatePage/index.js\";\nimport { UpdatePageUseCase } from \"~/features/pages/UpdatePage/index.js\";\nimport { DeletePageUseCase } from \"~/features/pages/DeletePage/index.js\";\nimport { PublishPageUseCase } from \"~/features/pages/PublishPage/index.js\";\nimport { UnpublishPageUseCase } from \"~/features/pages/UnpublishPage/index.js\";\nimport { MovePageUseCase } from \"~/features/pages/MovePage/index.js\";\nimport { DuplicatePageUseCase } from \"~/features/pages/DuplicatePage/index.js\";\nimport { TranslatePageUseCase } from \"~/features/pages/TranslatePage/index.js\";\nimport { CreatePageRevisionFromUseCase } from \"~/features/pages/CreatePageRevisionFrom/index.js\";\nimport { KeyValueStore } from \"@webiny/api-core/features/keyValueStore/index.js\";\nimport { ListDeletedPagesUseCase } from \"~/features/pages/ListDeletedPages/index.js\";\nimport { TrashPageUseCase } from \"~/features/pages/TrashPage/index.js\";\nimport { RestorePageUseCase } from \"~/features/pages/RestorePage/index.js\";\nimport { GetPageLanguagePathsUseCase } from \"~/features/pages/GetPageLanguagePaths/index.js\";\n\nexport const createPagesSchema = () => {\n const pageGraphQL = new GraphQLSchemaPlugin<ApiCoreContext>({\n typeDefs: pagesTypeDefs,\n resolvers: {\n WbQuery: {\n getPageModel: async (_, __, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n return context.container.resolve(PageModel);\n });\n },\n getPageByPath: async (_, { path }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n\n const getPageByPath = context.container.resolve(GetPageByPathUseCase);\n const result = await getPageByPath.execute(path);\n\n if (result.isFail()) {\n throw new NotFoundError(`Page ${path} was not found!`);\n }\n\n const page = result.value;\n return {\n id: page.id,\n entryId: page.entryId,\n properties: page.properties,\n bindings: page.bindings,\n elements: page.elements\n };\n });\n },\n getPageById: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const getPageById = context.container.resolve(GetPageByIdUseCase);\n const result = await getPageById.execute(id);\n\n if (result.isFail()) {\n throw new NotFoundError(`Page with id \"${id}\" was not found!`);\n }\n\n return result.value;\n });\n },\n getPageRevisions: async (_, { entryId }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const getPageRevisions = context.container.resolve(GetPageRevisionsUseCase);\n const result = await getPageRevisions.execute(entryId);\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n const revisions = result.value;\n return revisions.map(page => {\n return {\n id: page.id,\n entryId: page.entryId,\n version: page.version,\n title: page.properties.title,\n status: page.status,\n locked: page.locked,\n savedOn: page.savedOn\n };\n });\n });\n },\n listPages: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listPages = context.container.resolve(ListPagesUseCase);\n const result = await listPages.execute(args);\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const { pages, meta } = result.value;\n return new ListResponse(pages, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n listDeletedPages: async (_, args: any, context) => {\n try {\n ensureAuthentication(context);\n const listPages = context.container.resolve(ListDeletedPagesUseCase);\n const result = await listPages.execute(args);\n\n if (result.isFail()) {\n throw result.error;\n }\n\n const { pages, meta } = result.value;\n return new ListResponse(pages, meta);\n } catch (e) {\n return new ErrorResponse(e);\n }\n },\n getSettings: async (_, __, context) => {\n ensureAuthentication(context);\n\n const keyValueStore = context.container.resolve(KeyValueStore);\n const result = await keyValueStore.get<{ previewDomain: string | undefined }>(\n WEBSITE_BUILDER_SETTINGS\n );\n\n if (result.isFail()) {\n return new Response({\n // TODO: add a WB GetSettings use case and a Settings domain model with defaults.\n previewDomain: \"http://localhost:3000\"\n });\n }\n\n const settings = result.value;\n\n return new Response({\n // TODO: add a WB GetSettings use case and a Settings domain model with defaults.\n previewDomain: settings.previewDomain ?? \"http://localhost:3000\"\n });\n },\n getIntegrations: async (_, __, context) => {\n ensureAuthentication(context);\n const keyValueStore = context.container.resolve(KeyValueStore);\n const settings = await keyValueStore.get(WEBSITE_BUILDER_INTEGRATIONS);\n if (settings.isFail()) {\n return new Response({});\n }\n\n return new Response(settings.value);\n }\n },\n WbMutation: {\n createPage: async (_, { data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const createPage = context.container.resolve(CreatePageUseCase);\n const result = await createPage.execute(data);\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n updatePage: async (_, { id, data }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const updatePage = context.container.resolve(UpdatePageUseCase);\n const result = await updatePage.execute(id, data);\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n duplicatePage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const duplicatePage = context.container.resolve(DuplicatePageUseCase);\n const result = await duplicatePage.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n translatePage: async (_, { pageId, languageCode, folderId }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const translatePage = context.container.resolve(TranslatePageUseCase);\n const result = await translatePage.execute({\n pageId,\n languageCode,\n folderId\n });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n publishPage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const publishPage = context.container.resolve(PublishPageUseCase);\n const result = await publishPage.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n unpublishPage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const unpublishPage = context.container.resolve(UnpublishPageUseCase);\n const result = await unpublishPage.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n movePage: async (_, { id, folderId }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const movePage = context.container.resolve(MovePageUseCase);\n const result = await movePage.execute({ id, folderId });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return true;\n });\n },\n createPageRevisionFrom: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const createRevision = context.container.resolve(\n CreatePageRevisionFromUseCase\n );\n const result = await createRevision.execute({ id });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n deletePage: async (_, { id, permanently }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const deletePage = context.container.resolve(\n /**\n * If \"permanent\" flag is set, we want to permanently delete the page. Otherwise, we just want to trash it.\n * This allows us to have a two-step deletion process, where pages are first moved to trash and can be restored from there, before being permanently deleted.\n */\n permanently ? DeletePageUseCase : TrashPageUseCase\n );\n const result = await deletePage.execute({\n id\n });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return true;\n });\n },\n restorePage: async (_, { id }, context) => {\n return resolve(async () => {\n ensureAuthentication(context);\n const restorePage = context.container.resolve(RestorePageUseCase);\n const result = await restorePage.execute({\n id\n });\n\n if (result.isFail()) {\n throw new Error(result.error.message);\n }\n\n return result.value;\n });\n },\n // TODO: move these settings updates into dedicated use cases\n updateSettings: async (_, args, context) => {\n return resolve(async () => {\n ensureAuthentication(context, { permission: \"wb.settings\" });\n const keyValueStore = context.container.resolve(KeyValueStore);\n await keyValueStore.set(WEBSITE_BUILDER_SETTINGS, args.data);\n\n return true;\n });\n },\n updateIntegrations: async (_, args, context) => {\n return resolve(async () => {\n ensureAuthentication(context, { permission: \"wb.settings\" });\n const keyValueStore = context.container.resolve(KeyValueStore);\n await keyValueStore.set(WEBSITE_BUILDER_INTEGRATIONS, args.data);\n\n return true;\n });\n }\n },\n WbPage: {\n languagePaths: async (page: any, _: any, context: ApiCoreContext) => {\n const properties = page.properties ?? {};\n const rootEntryId: string | undefined = properties.sourcePage ?? page.entryId;\n\n if (!rootEntryId) {\n return {};\n }\n\n const getLanguagePaths = context.container.resolve(GetPageLanguagePathsUseCase);\n const result = await getLanguagePaths.execute(rootEntryId);\n\n return result.isFail() ? {} : result.value;\n }\n }\n }\n });\n\n pageGraphQL.name = \"wb.graphql.pages\";\n\n return pageGraphQL;\n};\n"],"mappings":"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","ignoreList":[]}
@@ -1 +1 @@
1
- export declare const pagesTypeDefs = "\n type WbPage {\n id: ID!\n entryId: String!\n location: WbLocation\n status: String!\n version: Number!\n locked: Boolean!\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n deletedOn: DateTime\n restoredOn: DateTime\n firstPublishedOn: DateTime\n lastPublishedOn: DateTime\n createdBy: WbIdentity\n modifiedBy: WbIdentity\n savedBy: WbIdentity\n deletedBy: WbIdentity\n restoredBy: WbIdentity\n firstPublishedBy: WbIdentity\n lastPublishedBy: WbIdentity\n system: CmsEntrySystem\n live: CmsEntryLive\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPageCreateInput {\n location: WbLocationInput\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPageUpdateInput {\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPagesListWhereInput {\n location: WbLocationWhereInput\n latest: Boolean\n published: Boolean\n id: ID\n id_not: ID\n id_in: [ID!]\n id_not_in: [ID!]\n entryId: String\n entryId_not: String\n entryId_in: [String!]\n entryId_not_in: [String!]\n createdOn: DateTime\n createdOn_gt: DateTime\n createdOn_gte: DateTime\n createdOn_lt: DateTime\n createdOn_lte: DateTime\n createdOn_between: [DateTime!]\n createdOn_not_between: [DateTime!]\n modifiedOn: DateTime\n modifiedOn_gt: DateTime\n modifiedOn_gte: DateTime\n modifiedOn_lt: DateTime\n modifiedOn_lte: DateTime\n modifiedOn_between: [DateTime!]\n modifiedOn_not_between: [DateTime!]\n savedOn: DateTime\n savedOn_gt: DateTime\n savedOn_gte: DateTime\n savedOn_lt: DateTime\n savedOn_lte: DateTime\n savedOn_between: [DateTime!]\n savedOn_not_between: [DateTime!]\n deletedOn: DateTime\n deletedOn_gt: DateTime\n deletedOn_gte: DateTime\n deletedOn_lt: DateTime\n deletedOn_lte: DateTime\n deletedOn_between: [DateTime!]\n deletedOn_not_between: [DateTime!]\n restoredOn: DateTime\n restoredOn_gt: DateTime\n restoredOn_gte: DateTime\n restoredOn_lt: DateTime\n restoredOn_lte: DateTime\n restoredOn_between: [DateTime!]\n restoredOn_not_between: [DateTime!]\n firstPublishedOn: DateTime\n firstPublishedOn_gt: DateTime\n firstPublishedOn_gte: DateTime\n firstPublishedOn_lt: DateTime\n firstPublishedOn_lte: DateTime\n firstPublishedOn_between: [DateTime!]\n firstPublishedOn_not_between: [DateTime!]\n lastPublishedOn: DateTime\n lastPublishedOn_gt: DateTime\n lastPublishedOn_gte: DateTime\n lastPublishedOn_lt: DateTime\n lastPublishedOn_lte: DateTime\n lastPublishedOn_between: [DateTime!]\n lastPublishedOn_not_between: [DateTime!]\n createdBy: ID\n createdBy_not: ID\n createdBy_in: [ID!]\n createdBy_not_in: [ID!]\n modifiedBy: ID\n modifiedBy_not: ID\n modifiedBy_in: [ID!]\n modifiedBy_not_in: [ID!]\n savedBy: ID\n savedBy_not: ID\n savedBy_in: [ID!]\n savedBy_not_in: [ID!]\n deletedBy: ID\n deletedBy_not: ID\n deletedBy_in: [ID!]\n deletedBy_not_in: [ID!]\n restoredBy: ID\n restoredBy_not: ID\n restoredBy_in: [ID!]\n restoredBy_not_in: [ID!]\n firstPublishedBy: ID\n firstPublishedBy_not: ID\n firstPublishedBy_in: [ID!]\n firstPublishedBy_not_in: [ID!]\n lastPublishedBy: ID\n lastPublishedBy_not: ID\n lastPublishedBy_in: [ID!]\n lastPublishedBy_not_in: [ID!]\n status: String\n status_not: String\n status_in: [String!]\n status_not_in: [String!]\n\n live: CmsEntryLiveWhereInput\n system: ListWhereInputCmsEntrySystem\n\n AND: [WbPagesListWhereInput!]\n OR: [WbPagesListWhereInput!]\n }\n\n type WbSettings {\n previewDomain: String!\n }\n\n type WbPageResponse {\n data: WbPage\n error: WbError\n }\n\n type WbSettingsResponse {\n data: WbSettings\n error: WbError\n }\n\n type WbIntegrationsResponse {\n data: JSON!\n error: WbError\n }\n\n input WbSettingsInput {\n previewDomain: String!\n }\n\n type WbPagesListResponse {\n data: [WbPage]\n error: WbError\n meta: WbMeta\n }\n\n type WbPageModelResponse {\n data: JSON\n error: WbError\n }\n\n enum WbPageListSorter {\n id_ASC\n id_DESC\n createdOn_ASC\n createdOn_DESC\n modifiedOn_ASC\n modifiedOn_DESC\n savedOn_ASC\n savedOn_DESC\n deletedOn_ASC\n deletedOn_DESC\n restoredOn_ASC\n restoredOn_DESC\n firstPublishedOn_ASC\n firstPublishedOn_DESC\n lastPublishedOn_ASC\n lastPublishedOn_DESC\n }\n\n type WbPageRevision {\n id: ID!\n entryId: ID!\n version: Int!\n title: String!\n status: String!\n locked: Boolean!\n savedOn: DateTime!\n }\n\n type WbPageRevisionsResponse {\n data: [WbPageRevision!]\n error: WbError\n }\n\n extend type WbQuery {\n getPageModel: WbPageModelResponse\n getPageByPath(path: String!): WbPageResponse\n getPageById(id: ID!): WbPageResponse\n getPageRevisions(entryId: ID!): WbPageRevisionsResponse\n listPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n listDeletedPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n getSettings: WbSettingsResponse\n getIntegrations: WbIntegrationsResponse\n }\n\n extend type WbMutation {\n createPage(data: WbPageCreateInput!): WbPageResponse\n updatePage(id: ID!, data: WbPageUpdateInput!): WbPageResponse\n publishPage(id: ID!): WbPageResponse\n unpublishPage(id: ID!): WbPageResponse\n duplicatePage(id: ID!): WbPageResponse\n movePage(id: ID!, folderId: ID!): WbBooleanResponse\n createPageRevisionFrom(id: ID!): WbPageResponse\n deletePage(id: ID!, permanently: Boolean): WbBooleanResponse\n restorePage(id: ID!): WbPageResponse\n updateSettings(data: WbSettingsInput!): BooleanResponse\n updateIntegrations(data: JSON!): BooleanResponse\n }\n";
1
+ export declare const pagesTypeDefs = "\n type WbPage {\n id: ID!\n entryId: String!\n location: WbLocation\n status: String!\n version: Number!\n locked: Boolean!\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n deletedOn: DateTime\n restoredOn: DateTime\n firstPublishedOn: DateTime\n lastPublishedOn: DateTime\n createdBy: WbIdentity\n modifiedBy: WbIdentity\n savedBy: WbIdentity\n deletedBy: WbIdentity\n restoredBy: WbIdentity\n firstPublishedBy: WbIdentity\n lastPublishedBy: WbIdentity\n system: CmsEntrySystem\n live: CmsEntryLive\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n languagePaths: JSON\n }\n\n input WbPageCreateInput {\n location: WbLocationInput\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPageUpdateInput {\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPagesListWhereInput {\n location: WbLocationWhereInput\n latest: Boolean\n published: Boolean\n id: ID\n id_not: ID\n id_in: [ID!]\n id_not_in: [ID!]\n entryId: String\n entryId_not: String\n entryId_in: [String!]\n entryId_not_in: [String!]\n createdOn: DateTime\n createdOn_gt: DateTime\n createdOn_gte: DateTime\n createdOn_lt: DateTime\n createdOn_lte: DateTime\n createdOn_between: [DateTime!]\n createdOn_not_between: [DateTime!]\n modifiedOn: DateTime\n modifiedOn_gt: DateTime\n modifiedOn_gte: DateTime\n modifiedOn_lt: DateTime\n modifiedOn_lte: DateTime\n modifiedOn_between: [DateTime!]\n modifiedOn_not_between: [DateTime!]\n savedOn: DateTime\n savedOn_gt: DateTime\n savedOn_gte: DateTime\n savedOn_lt: DateTime\n savedOn_lte: DateTime\n savedOn_between: [DateTime!]\n savedOn_not_between: [DateTime!]\n deletedOn: DateTime\n deletedOn_gt: DateTime\n deletedOn_gte: DateTime\n deletedOn_lt: DateTime\n deletedOn_lte: DateTime\n deletedOn_between: [DateTime!]\n deletedOn_not_between: [DateTime!]\n restoredOn: DateTime\n restoredOn_gt: DateTime\n restoredOn_gte: DateTime\n restoredOn_lt: DateTime\n restoredOn_lte: DateTime\n restoredOn_between: [DateTime!]\n restoredOn_not_between: [DateTime!]\n firstPublishedOn: DateTime\n firstPublishedOn_gt: DateTime\n firstPublishedOn_gte: DateTime\n firstPublishedOn_lt: DateTime\n firstPublishedOn_lte: DateTime\n firstPublishedOn_between: [DateTime!]\n firstPublishedOn_not_between: [DateTime!]\n lastPublishedOn: DateTime\n lastPublishedOn_gt: DateTime\n lastPublishedOn_gte: DateTime\n lastPublishedOn_lt: DateTime\n lastPublishedOn_lte: DateTime\n lastPublishedOn_between: [DateTime!]\n lastPublishedOn_not_between: [DateTime!]\n createdBy: ID\n createdBy_not: ID\n createdBy_in: [ID!]\n createdBy_not_in: [ID!]\n modifiedBy: ID\n modifiedBy_not: ID\n modifiedBy_in: [ID!]\n modifiedBy_not_in: [ID!]\n savedBy: ID\n savedBy_not: ID\n savedBy_in: [ID!]\n savedBy_not_in: [ID!]\n deletedBy: ID\n deletedBy_not: ID\n deletedBy_in: [ID!]\n deletedBy_not_in: [ID!]\n restoredBy: ID\n restoredBy_not: ID\n restoredBy_in: [ID!]\n restoredBy_not_in: [ID!]\n firstPublishedBy: ID\n firstPublishedBy_not: ID\n firstPublishedBy_in: [ID!]\n firstPublishedBy_not_in: [ID!]\n lastPublishedBy: ID\n lastPublishedBy_not: ID\n lastPublishedBy_in: [ID!]\n lastPublishedBy_not_in: [ID!]\n status: String\n status_not: String\n status_in: [String!]\n status_not_in: [String!]\n\n live: CmsEntryLiveWhereInput\n system: ListWhereInputCmsEntrySystem\n\n AND: [WbPagesListWhereInput!]\n OR: [WbPagesListWhereInput!]\n }\n\n type WbSettings {\n previewDomain: String!\n }\n\n type WbPageResponse {\n data: WbPage\n error: WbError\n }\n\n type WbSettingsResponse {\n data: WbSettings\n error: WbError\n }\n\n type WbIntegrationsResponse {\n data: JSON!\n error: WbError\n }\n\n input WbSettingsInput {\n previewDomain: String!\n }\n\n type WbPagesListResponse {\n data: [WbPage]\n error: WbError\n meta: WbMeta\n }\n\n type WbPageModelResponse {\n data: JSON\n error: WbError\n }\n\n enum WbPageListSorter {\n id_ASC\n id_DESC\n createdOn_ASC\n createdOn_DESC\n modifiedOn_ASC\n modifiedOn_DESC\n savedOn_ASC\n savedOn_DESC\n deletedOn_ASC\n deletedOn_DESC\n restoredOn_ASC\n restoredOn_DESC\n firstPublishedOn_ASC\n firstPublishedOn_DESC\n lastPublishedOn_ASC\n lastPublishedOn_DESC\n }\n\n type WbPageRevision {\n id: ID!\n entryId: ID!\n version: Int!\n title: String!\n status: String!\n locked: Boolean!\n savedOn: DateTime!\n }\n\n type WbPageRevisionsResponse {\n data: [WbPageRevision!]\n error: WbError\n }\n\n extend type WbQuery {\n getPageModel: WbPageModelResponse\n getPageByPath(path: String!): WbPageResponse\n getPageById(id: ID!): WbPageResponse\n getPageRevisions(entryId: ID!): WbPageRevisionsResponse\n listPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n listDeletedPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n getSettings: WbSettingsResponse\n getIntegrations: WbIntegrationsResponse\n }\n\n extend type WbMutation {\n createPage(data: WbPageCreateInput!): WbPageResponse\n updatePage(id: ID!, data: WbPageUpdateInput!): WbPageResponse\n publishPage(id: ID!): WbPageResponse\n unpublishPage(id: ID!): WbPageResponse\n duplicatePage(id: ID!): WbPageResponse\n translatePage(pageId: ID!, languageCode: String!, folderId: ID!): WbPageResponse\n movePage(id: ID!, folderId: ID!): WbBooleanResponse\n createPageRevisionFrom(id: ID!): WbPageResponse\n deletePage(id: ID!, permanently: Boolean): WbBooleanResponse\n restorePage(id: ID!): WbPageResponse\n updateSettings(data: WbSettingsInput!): BooleanResponse\n updateIntegrations(data: JSON!): BooleanResponse\n }\n";
@@ -27,6 +27,7 @@ export const pagesTypeDefs = /* GraphQL */`
27
27
  bindings: JSON
28
28
  elements: JSON
29
29
  extensions: JSON
30
+ languagePaths: JSON
30
31
  }
31
32
 
32
33
  input WbPageCreateInput {
@@ -244,6 +245,7 @@ export const pagesTypeDefs = /* GraphQL */`
244
245
  publishPage(id: ID!): WbPageResponse
245
246
  unpublishPage(id: ID!): WbPageResponse
246
247
  duplicatePage(id: ID!): WbPageResponse
248
+ translatePage(pageId: ID!, languageCode: String!, folderId: ID!): WbPageResponse
247
249
  movePage(id: ID!, folderId: ID!): WbBooleanResponse
248
250
  createPageRevisionFrom(id: ID!): WbPageResponse
249
251
  deletePage(id: ID!, permanently: Boolean): WbBooleanResponse
@@ -1 +1 @@
1
- {"version":3,"names":["pagesTypeDefs"],"sources":["pages.typeDefs.ts"],"sourcesContent":["export const pagesTypeDefs = /* GraphQL */ `\n type WbPage {\n id: ID!\n entryId: String!\n location: WbLocation\n status: String!\n version: Number!\n locked: Boolean!\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n deletedOn: DateTime\n restoredOn: DateTime\n firstPublishedOn: DateTime\n lastPublishedOn: DateTime\n createdBy: WbIdentity\n modifiedBy: WbIdentity\n savedBy: WbIdentity\n deletedBy: WbIdentity\n restoredBy: WbIdentity\n firstPublishedBy: WbIdentity\n lastPublishedBy: WbIdentity\n system: CmsEntrySystem\n live: CmsEntryLive\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPageCreateInput {\n location: WbLocationInput\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPageUpdateInput {\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPagesListWhereInput {\n location: WbLocationWhereInput\n latest: Boolean\n published: Boolean\n id: ID\n id_not: ID\n id_in: [ID!]\n id_not_in: [ID!]\n entryId: String\n entryId_not: String\n entryId_in: [String!]\n entryId_not_in: [String!]\n createdOn: DateTime\n createdOn_gt: DateTime\n createdOn_gte: DateTime\n createdOn_lt: DateTime\n createdOn_lte: DateTime\n createdOn_between: [DateTime!]\n createdOn_not_between: [DateTime!]\n modifiedOn: DateTime\n modifiedOn_gt: DateTime\n modifiedOn_gte: DateTime\n modifiedOn_lt: DateTime\n modifiedOn_lte: DateTime\n modifiedOn_between: [DateTime!]\n modifiedOn_not_between: [DateTime!]\n savedOn: DateTime\n savedOn_gt: DateTime\n savedOn_gte: DateTime\n savedOn_lt: DateTime\n savedOn_lte: DateTime\n savedOn_between: [DateTime!]\n savedOn_not_between: [DateTime!]\n deletedOn: DateTime\n deletedOn_gt: DateTime\n deletedOn_gte: DateTime\n deletedOn_lt: DateTime\n deletedOn_lte: DateTime\n deletedOn_between: [DateTime!]\n deletedOn_not_between: [DateTime!]\n restoredOn: DateTime\n restoredOn_gt: DateTime\n restoredOn_gte: DateTime\n restoredOn_lt: DateTime\n restoredOn_lte: DateTime\n restoredOn_between: [DateTime!]\n restoredOn_not_between: [DateTime!]\n firstPublishedOn: DateTime\n firstPublishedOn_gt: DateTime\n firstPublishedOn_gte: DateTime\n firstPublishedOn_lt: DateTime\n firstPublishedOn_lte: DateTime\n firstPublishedOn_between: [DateTime!]\n firstPublishedOn_not_between: [DateTime!]\n lastPublishedOn: DateTime\n lastPublishedOn_gt: DateTime\n lastPublishedOn_gte: DateTime\n lastPublishedOn_lt: DateTime\n lastPublishedOn_lte: DateTime\n lastPublishedOn_between: [DateTime!]\n lastPublishedOn_not_between: [DateTime!]\n createdBy: ID\n createdBy_not: ID\n createdBy_in: [ID!]\n createdBy_not_in: [ID!]\n modifiedBy: ID\n modifiedBy_not: ID\n modifiedBy_in: [ID!]\n modifiedBy_not_in: [ID!]\n savedBy: ID\n savedBy_not: ID\n savedBy_in: [ID!]\n savedBy_not_in: [ID!]\n deletedBy: ID\n deletedBy_not: ID\n deletedBy_in: [ID!]\n deletedBy_not_in: [ID!]\n restoredBy: ID\n restoredBy_not: ID\n restoredBy_in: [ID!]\n restoredBy_not_in: [ID!]\n firstPublishedBy: ID\n firstPublishedBy_not: ID\n firstPublishedBy_in: [ID!]\n firstPublishedBy_not_in: [ID!]\n lastPublishedBy: ID\n lastPublishedBy_not: ID\n lastPublishedBy_in: [ID!]\n lastPublishedBy_not_in: [ID!]\n status: String\n status_not: String\n status_in: [String!]\n status_not_in: [String!]\n\n live: CmsEntryLiveWhereInput\n system: ListWhereInputCmsEntrySystem\n\n AND: [WbPagesListWhereInput!]\n OR: [WbPagesListWhereInput!]\n }\n\n type WbSettings {\n previewDomain: String!\n }\n\n type WbPageResponse {\n data: WbPage\n error: WbError\n }\n\n type WbSettingsResponse {\n data: WbSettings\n error: WbError\n }\n\n type WbIntegrationsResponse {\n data: JSON!\n error: WbError\n }\n\n input WbSettingsInput {\n previewDomain: String!\n }\n\n type WbPagesListResponse {\n data: [WbPage]\n error: WbError\n meta: WbMeta\n }\n\n type WbPageModelResponse {\n data: JSON\n error: WbError\n }\n\n enum WbPageListSorter {\n id_ASC\n id_DESC\n createdOn_ASC\n createdOn_DESC\n modifiedOn_ASC\n modifiedOn_DESC\n savedOn_ASC\n savedOn_DESC\n deletedOn_ASC\n deletedOn_DESC\n restoredOn_ASC\n restoredOn_DESC\n firstPublishedOn_ASC\n firstPublishedOn_DESC\n lastPublishedOn_ASC\n lastPublishedOn_DESC\n }\n\n type WbPageRevision {\n id: ID!\n entryId: ID!\n version: Int!\n title: String!\n status: String!\n locked: Boolean!\n savedOn: DateTime!\n }\n\n type WbPageRevisionsResponse {\n data: [WbPageRevision!]\n error: WbError\n }\n\n extend type WbQuery {\n getPageModel: WbPageModelResponse\n getPageByPath(path: String!): WbPageResponse\n getPageById(id: ID!): WbPageResponse\n getPageRevisions(entryId: ID!): WbPageRevisionsResponse\n listPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n listDeletedPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n getSettings: WbSettingsResponse\n getIntegrations: WbIntegrationsResponse\n }\n\n extend type WbMutation {\n createPage(data: WbPageCreateInput!): WbPageResponse\n updatePage(id: ID!, data: WbPageUpdateInput!): WbPageResponse\n publishPage(id: ID!): WbPageResponse\n unpublishPage(id: ID!): WbPageResponse\n duplicatePage(id: ID!): WbPageResponse\n movePage(id: ID!, folderId: ID!): WbBooleanResponse\n createPageRevisionFrom(id: ID!): WbPageResponse\n deletePage(id: ID!, permanently: Boolean): WbBooleanResponse\n restorePage(id: ID!): WbPageResponse\n updateSettings(data: WbSettingsInput!): BooleanResponse\n updateIntegrations(data: JSON!): BooleanResponse\n }\n`;\n"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAG,aAAc;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["pagesTypeDefs"],"sources":["pages.typeDefs.ts"],"sourcesContent":["export const pagesTypeDefs = /* GraphQL */ `\n type WbPage {\n id: ID!\n entryId: String!\n location: WbLocation\n status: String!\n version: Number!\n locked: Boolean!\n createdOn: DateTime\n modifiedOn: DateTime\n savedOn: DateTime\n deletedOn: DateTime\n restoredOn: DateTime\n firstPublishedOn: DateTime\n lastPublishedOn: DateTime\n createdBy: WbIdentity\n modifiedBy: WbIdentity\n savedBy: WbIdentity\n deletedBy: WbIdentity\n restoredBy: WbIdentity\n firstPublishedBy: WbIdentity\n lastPublishedBy: WbIdentity\n system: CmsEntrySystem\n live: CmsEntryLive\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n languagePaths: JSON\n }\n\n input WbPageCreateInput {\n location: WbLocationInput\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPageUpdateInput {\n properties: JSON\n metadata: JSON\n bindings: JSON\n elements: JSON\n extensions: JSON\n }\n\n input WbPagesListWhereInput {\n location: WbLocationWhereInput\n latest: Boolean\n published: Boolean\n id: ID\n id_not: ID\n id_in: [ID!]\n id_not_in: [ID!]\n entryId: String\n entryId_not: String\n entryId_in: [String!]\n entryId_not_in: [String!]\n createdOn: DateTime\n createdOn_gt: DateTime\n createdOn_gte: DateTime\n createdOn_lt: DateTime\n createdOn_lte: DateTime\n createdOn_between: [DateTime!]\n createdOn_not_between: [DateTime!]\n modifiedOn: DateTime\n modifiedOn_gt: DateTime\n modifiedOn_gte: DateTime\n modifiedOn_lt: DateTime\n modifiedOn_lte: DateTime\n modifiedOn_between: [DateTime!]\n modifiedOn_not_between: [DateTime!]\n savedOn: DateTime\n savedOn_gt: DateTime\n savedOn_gte: DateTime\n savedOn_lt: DateTime\n savedOn_lte: DateTime\n savedOn_between: [DateTime!]\n savedOn_not_between: [DateTime!]\n deletedOn: DateTime\n deletedOn_gt: DateTime\n deletedOn_gte: DateTime\n deletedOn_lt: DateTime\n deletedOn_lte: DateTime\n deletedOn_between: [DateTime!]\n deletedOn_not_between: [DateTime!]\n restoredOn: DateTime\n restoredOn_gt: DateTime\n restoredOn_gte: DateTime\n restoredOn_lt: DateTime\n restoredOn_lte: DateTime\n restoredOn_between: [DateTime!]\n restoredOn_not_between: [DateTime!]\n firstPublishedOn: DateTime\n firstPublishedOn_gt: DateTime\n firstPublishedOn_gte: DateTime\n firstPublishedOn_lt: DateTime\n firstPublishedOn_lte: DateTime\n firstPublishedOn_between: [DateTime!]\n firstPublishedOn_not_between: [DateTime!]\n lastPublishedOn: DateTime\n lastPublishedOn_gt: DateTime\n lastPublishedOn_gte: DateTime\n lastPublishedOn_lt: DateTime\n lastPublishedOn_lte: DateTime\n lastPublishedOn_between: [DateTime!]\n lastPublishedOn_not_between: [DateTime!]\n createdBy: ID\n createdBy_not: ID\n createdBy_in: [ID!]\n createdBy_not_in: [ID!]\n modifiedBy: ID\n modifiedBy_not: ID\n modifiedBy_in: [ID!]\n modifiedBy_not_in: [ID!]\n savedBy: ID\n savedBy_not: ID\n savedBy_in: [ID!]\n savedBy_not_in: [ID!]\n deletedBy: ID\n deletedBy_not: ID\n deletedBy_in: [ID!]\n deletedBy_not_in: [ID!]\n restoredBy: ID\n restoredBy_not: ID\n restoredBy_in: [ID!]\n restoredBy_not_in: [ID!]\n firstPublishedBy: ID\n firstPublishedBy_not: ID\n firstPublishedBy_in: [ID!]\n firstPublishedBy_not_in: [ID!]\n lastPublishedBy: ID\n lastPublishedBy_not: ID\n lastPublishedBy_in: [ID!]\n lastPublishedBy_not_in: [ID!]\n status: String\n status_not: String\n status_in: [String!]\n status_not_in: [String!]\n\n live: CmsEntryLiveWhereInput\n system: ListWhereInputCmsEntrySystem\n\n AND: [WbPagesListWhereInput!]\n OR: [WbPagesListWhereInput!]\n }\n\n type WbSettings {\n previewDomain: String!\n }\n\n type WbPageResponse {\n data: WbPage\n error: WbError\n }\n\n type WbSettingsResponse {\n data: WbSettings\n error: WbError\n }\n\n type WbIntegrationsResponse {\n data: JSON!\n error: WbError\n }\n\n input WbSettingsInput {\n previewDomain: String!\n }\n\n type WbPagesListResponse {\n data: [WbPage]\n error: WbError\n meta: WbMeta\n }\n\n type WbPageModelResponse {\n data: JSON\n error: WbError\n }\n\n enum WbPageListSorter {\n id_ASC\n id_DESC\n createdOn_ASC\n createdOn_DESC\n modifiedOn_ASC\n modifiedOn_DESC\n savedOn_ASC\n savedOn_DESC\n deletedOn_ASC\n deletedOn_DESC\n restoredOn_ASC\n restoredOn_DESC\n firstPublishedOn_ASC\n firstPublishedOn_DESC\n lastPublishedOn_ASC\n lastPublishedOn_DESC\n }\n\n type WbPageRevision {\n id: ID!\n entryId: ID!\n version: Int!\n title: String!\n status: String!\n locked: Boolean!\n savedOn: DateTime!\n }\n\n type WbPageRevisionsResponse {\n data: [WbPageRevision!]\n error: WbError\n }\n\n extend type WbQuery {\n getPageModel: WbPageModelResponse\n getPageByPath(path: String!): WbPageResponse\n getPageById(id: ID!): WbPageResponse\n getPageRevisions(entryId: ID!): WbPageRevisionsResponse\n listPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n listDeletedPages(\n where: WbPagesListWhereInput\n limit: Int\n after: String\n sort: [WbPageListSorter]\n search: String\n ): WbPagesListResponse\n getSettings: WbSettingsResponse\n getIntegrations: WbIntegrationsResponse\n }\n\n extend type WbMutation {\n createPage(data: WbPageCreateInput!): WbPageResponse\n updatePage(id: ID!, data: WbPageUpdateInput!): WbPageResponse\n publishPage(id: ID!): WbPageResponse\n unpublishPage(id: ID!): WbPageResponse\n duplicatePage(id: ID!): WbPageResponse\n translatePage(pageId: ID!, languageCode: String!, folderId: ID!): WbPageResponse\n movePage(id: ID!, folderId: ID!): WbBooleanResponse\n createPageRevisionFrom(id: ID!): WbPageResponse\n deletePage(id: ID!, permanently: Boolean): WbBooleanResponse\n restorePage(id: ID!): WbPageResponse\n updateSettings(data: WbSettingsInput!): BooleanResponse\n updateIntegrations(data: JSON!): BooleanResponse\n }\n`;\n"],"mappings":"AAAA,OAAO,MAAMA,aAAa,GAAG,aAAc;AAC3C;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC","ignoreList":[]}
package/index.js CHANGED
@@ -21,13 +21,14 @@ import { UpdatePageFeature } from "./features/pages/UpdatePage/feature.js";
21
21
  import { PublishPageFeature } from "./features/pages/PublishPage/feature.js";
22
22
  import { UnpublishPageFeature } from "./features/pages/UnpublishPage/feature.js";
23
23
  import { DuplicatePageFeature } from "./features/pages/DuplicatePage/feature.js";
24
+ import { TranslatePageFeature } from "./features/pages/TranslatePage/feature.js";
24
25
  import { MovePageFeature } from "./features/pages/MovePage/feature.js";
25
26
  import { createPageModel, PAGE_MODEL_ID } from "./domain/page/page.model.js";
26
27
  import { createRedirectModel, REDIRECT_MODEL_ID } from "./domain/redirect/redirect.model.js";
27
28
  import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
28
29
  import { PageModel } from "./domain/page/abstractions.js";
29
30
  import { RedirectModel } from "./domain/redirect/abstractions.js";
30
- import { WbPermissions } from "./domain/permissions.js";
31
+ import { WbPermissionsFeature } from "./features/permissions/feature.js";
31
32
  import { ApiKeyInstallerFeature } from "./features/installer/feature.js";
32
33
  import { NextjsGraphQLSchema } from "./graphql/nextjs/NextjsGraphQLSchema.js";
33
34
  import { NextjsFeature } from "./features/nextjs/feature.js";
@@ -35,6 +36,7 @@ import { ListDeletedPagesFeature } from "./features/pages/ListDeletedPages/featu
35
36
  import { TrashPageFeature } from "./features/pages/TrashPage/feature.js";
36
37
  import { RestorePageFeature } from "./features/pages/RestorePage/feature.js";
37
38
  import { GetDeletedPageByIdFeature } from "./features/pages/GetDeletedPageById/feature.js";
39
+ import { GetPageLanguagePathsFeature } from "./features/pages/GetPageLanguagePaths/feature.js";
38
40
  // import { TenantModelExtensionFeature } from "~/features/tenantManager/feature.js";
39
41
 
40
42
  const createContext = () => {
@@ -54,7 +56,7 @@ const createContext = () => {
54
56
  });
55
57
 
56
58
  // Register permissions
57
- container.register(WbPermissions.Implementation);
59
+ WbPermissionsFeature.register(container);
58
60
 
59
61
  // Register features
60
62
  GetRedirectByIdFeature.register(container);
@@ -69,6 +71,7 @@ const createContext = () => {
69
71
  GetPageByPathFeature.register(container);
70
72
  GetPageRevisionsFeature.register(container);
71
73
  GetDeletedPageByIdFeature.register(container);
74
+ GetPageLanguagePathsFeature.register(container);
72
75
  ListPagesFeature.register(container);
73
76
  ListDeletedPagesFeature.register(container);
74
77
  CreatePageFeature.register(container);
@@ -80,6 +83,7 @@ const createContext = () => {
80
83
  PublishPageFeature.register(container);
81
84
  UnpublishPageFeature.register(container);
82
85
  DuplicatePageFeature.register(container);
86
+ TranslatePageFeature.register(container);
83
87
  MovePageFeature.register(container);
84
88
  ApiKeyInstallerFeature.register(container);
85
89
  NextjsFeature.register(container);
package/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"names":["createContextPlugin","GetModelUseCase","createGraphQL","createRedirectsRoute","GetRedirectByIdFeature","ListRedirectsFeature","GetActiveRedirectsFeature","CreateRedirectFeature","UpdateRedirectFeature","DeleteRedirectFeature","MoveRedirectFeature","InvalidateRedirectsCacheFeature","GetPageByIdFeature","GetPageByPathFeature","GetPageRevisionsFeature","ListPagesFeature","CreatePageFeature","CreatePageRevisionFromFeature","DeletePageFeature","UpdatePageFeature","PublishPageFeature","UnpublishPageFeature","DuplicatePageFeature","MovePageFeature","createPageModel","PAGE_MODEL_ID","createRedirectModel","REDIRECT_MODEL_ID","IdentityContext","PageModel","RedirectModel","WbPermissions","ApiKeyInstallerFeature","NextjsGraphQLSchema","NextjsFeature","ListDeletedPagesFeature","TrashPageFeature","RestorePageFeature","GetDeletedPageByIdFeature","createContext","context","container","pageModel","redirectModel","plugins","register","identityContext","resolve","getModel","withoutAuthorization","Promise","all","execute","registerInstance","value","Implementation","name","createWebsiteBuilder"],"sources":["index.ts"],"sourcesContent":["import { createContextPlugin } from \"@webiny/api\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { createGraphQL } from \"./graphql/createGraphQL.js\";\nimport { createRedirectsRoute } from \"./rest/getRedirects.js\";\nimport { GetRedirectByIdFeature } from \"./features/redirects/GetRedirectById/feature.js\";\nimport { ListRedirectsFeature } from \"./features/redirects/ListRedirects/feature.js\";\nimport { GetActiveRedirectsFeature } from \"./features/redirects/GetActiveRedirects/feature.js\";\nimport { CreateRedirectFeature } from \"./features/redirects/CreateRedirect/feature.js\";\nimport { UpdateRedirectFeature } from \"./features/redirects/UpdateRedirect/feature.js\";\nimport { DeleteRedirectFeature } from \"./features/redirects/DeleteRedirect/feature.js\";\nimport { MoveRedirectFeature } from \"./features/redirects/MoveRedirect/feature.js\";\nimport { InvalidateRedirectsCacheFeature } from \"./features/redirects/InvalidateRedirectsCache/feature.js\";\nimport { GetPageByIdFeature } from \"./features/pages/GetPageById/feature.js\";\nimport { GetPageByPathFeature } from \"./features/pages/GetPageByPath/feature.js\";\nimport { GetPageRevisionsFeature } from \"./features/pages/GetPageRevisions/feature.js\";\nimport { ListPagesFeature } from \"./features/pages/ListPages/feature.js\";\nimport { CreatePageFeature } from \"./features/pages/CreatePage/feature.js\";\nimport { CreatePageRevisionFromFeature } from \"./features/pages/CreatePageRevisionFrom/feature.js\";\nimport { DeletePageFeature } from \"./features/pages/DeletePage/feature.js\";\nimport { UpdatePageFeature } from \"./features/pages/UpdatePage/feature.js\";\nimport { PublishPageFeature } from \"./features/pages/PublishPage/feature.js\";\nimport { UnpublishPageFeature } from \"./features/pages/UnpublishPage/feature.js\";\nimport { DuplicatePageFeature } from \"./features/pages/DuplicatePage/feature.js\";\nimport { MovePageFeature } from \"./features/pages/MovePage/feature.js\";\nimport { createPageModel, PAGE_MODEL_ID } from \"~/domain/page/page.model.js\";\nimport { createRedirectModel, REDIRECT_MODEL_ID } from \"~/domain/redirect/redirect.model.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { RedirectModel } from \"~/domain/redirect/abstractions.js\";\nimport { WbPermissions } from \"~/domain/permissions.js\";\nimport { ApiKeyInstallerFeature } from \"~/features/installer/feature.js\";\nimport { NextjsGraphQLSchema } from \"~/graphql/nextjs/NextjsGraphQLSchema.js\";\nimport { NextjsFeature } from \"~/features/nextjs/feature.js\";\nimport { ListDeletedPagesFeature } from \"~/features/pages/ListDeletedPages/feature.js\";\nimport { TrashPageFeature } from \"~/features/pages/TrashPage/feature.js\";\nimport { RestorePageFeature } from \"~/features/pages/RestorePage/feature.js\";\nimport { GetDeletedPageByIdFeature } from \"~/features/pages/GetDeletedPageById/feature.js\";\n// import { TenantModelExtensionFeature } from \"~/features/tenantManager/feature.js\";\n\nconst createContext = () => {\n return createContextPlugin(\n async context => {\n const container = context.container;\n\n // Register models\n const pageModel = createPageModel();\n const redirectModel = createRedirectModel();\n\n context.plugins.register(pageModel, redirectModel);\n\n const identityContext = container.resolve(IdentityContext);\n const getModel = container.resolve(GetModelUseCase);\n\n await identityContext.withoutAuthorization(async () => {\n const [pageModel, redirectModel] = await Promise.all([\n getModel.execute(PAGE_MODEL_ID),\n getModel.execute(REDIRECT_MODEL_ID)\n ]);\n\n container.registerInstance(PageModel, pageModel.value);\n container.registerInstance(RedirectModel, redirectModel.value);\n });\n\n // Register permissions\n container.register(WbPermissions.Implementation);\n\n // Register features\n GetRedirectByIdFeature.register(container);\n ListRedirectsFeature.register(container);\n GetActiveRedirectsFeature.register(container);\n CreateRedirectFeature.register(container);\n UpdateRedirectFeature.register(container);\n DeleteRedirectFeature.register(container);\n MoveRedirectFeature.register(container);\n InvalidateRedirectsCacheFeature.register(container);\n GetPageByIdFeature.register(container);\n GetPageByPathFeature.register(container);\n GetPageRevisionsFeature.register(container);\n GetDeletedPageByIdFeature.register(container);\n ListPagesFeature.register(container);\n ListDeletedPagesFeature.register(container);\n CreatePageFeature.register(container);\n CreatePageRevisionFromFeature.register(container);\n DeletePageFeature.register(container);\n TrashPageFeature.register(container);\n RestorePageFeature.register(container);\n UpdatePageFeature.register(container);\n PublishPageFeature.register(container);\n UnpublishPageFeature.register(container);\n DuplicatePageFeature.register(container);\n MovePageFeature.register(container);\n ApiKeyInstallerFeature.register(container);\n NextjsFeature.register(container);\n // TenantModelExtensionFeature.register(container);\n\n // Register GraphQL\n container.register(NextjsGraphQLSchema);\n },\n { name: \"wb.createContext\" }\n );\n};\n\nexport const createWebsiteBuilder = () => {\n return [createContext(), createGraphQL(), createRedirectsRoute()];\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["createContextPlugin","GetModelUseCase","createGraphQL","createRedirectsRoute","GetRedirectByIdFeature","ListRedirectsFeature","GetActiveRedirectsFeature","CreateRedirectFeature","UpdateRedirectFeature","DeleteRedirectFeature","MoveRedirectFeature","InvalidateRedirectsCacheFeature","GetPageByIdFeature","GetPageByPathFeature","GetPageRevisionsFeature","ListPagesFeature","CreatePageFeature","CreatePageRevisionFromFeature","DeletePageFeature","UpdatePageFeature","PublishPageFeature","UnpublishPageFeature","DuplicatePageFeature","TranslatePageFeature","MovePageFeature","createPageModel","PAGE_MODEL_ID","createRedirectModel","REDIRECT_MODEL_ID","IdentityContext","PageModel","RedirectModel","WbPermissionsFeature","ApiKeyInstallerFeature","NextjsGraphQLSchema","NextjsFeature","ListDeletedPagesFeature","TrashPageFeature","RestorePageFeature","GetDeletedPageByIdFeature","GetPageLanguagePathsFeature","createContext","context","container","pageModel","redirectModel","plugins","register","identityContext","resolve","getModel","withoutAuthorization","Promise","all","execute","registerInstance","value","name","createWebsiteBuilder"],"sources":["index.ts"],"sourcesContent":["import { createContextPlugin } from \"@webiny/api\";\nimport { GetModelUseCase } from \"@webiny/api-headless-cms/features/contentModel/GetModel/index.js\";\nimport { createGraphQL } from \"./graphql/createGraphQL.js\";\nimport { createRedirectsRoute } from \"./rest/getRedirects.js\";\nimport { GetRedirectByIdFeature } from \"./features/redirects/GetRedirectById/feature.js\";\nimport { ListRedirectsFeature } from \"./features/redirects/ListRedirects/feature.js\";\nimport { GetActiveRedirectsFeature } from \"./features/redirects/GetActiveRedirects/feature.js\";\nimport { CreateRedirectFeature } from \"./features/redirects/CreateRedirect/feature.js\";\nimport { UpdateRedirectFeature } from \"./features/redirects/UpdateRedirect/feature.js\";\nimport { DeleteRedirectFeature } from \"./features/redirects/DeleteRedirect/feature.js\";\nimport { MoveRedirectFeature } from \"./features/redirects/MoveRedirect/feature.js\";\nimport { InvalidateRedirectsCacheFeature } from \"./features/redirects/InvalidateRedirectsCache/feature.js\";\nimport { GetPageByIdFeature } from \"./features/pages/GetPageById/feature.js\";\nimport { GetPageByPathFeature } from \"./features/pages/GetPageByPath/feature.js\";\nimport { GetPageRevisionsFeature } from \"./features/pages/GetPageRevisions/feature.js\";\nimport { ListPagesFeature } from \"./features/pages/ListPages/feature.js\";\nimport { CreatePageFeature } from \"./features/pages/CreatePage/feature.js\";\nimport { CreatePageRevisionFromFeature } from \"./features/pages/CreatePageRevisionFrom/feature.js\";\nimport { DeletePageFeature } from \"./features/pages/DeletePage/feature.js\";\nimport { UpdatePageFeature } from \"./features/pages/UpdatePage/feature.js\";\nimport { PublishPageFeature } from \"./features/pages/PublishPage/feature.js\";\nimport { UnpublishPageFeature } from \"./features/pages/UnpublishPage/feature.js\";\nimport { DuplicatePageFeature } from \"./features/pages/DuplicatePage/feature.js\";\nimport { TranslatePageFeature } from \"./features/pages/TranslatePage/feature.js\";\nimport { MovePageFeature } from \"./features/pages/MovePage/feature.js\";\nimport { createPageModel, PAGE_MODEL_ID } from \"~/domain/page/page.model.js\";\nimport { createRedirectModel, REDIRECT_MODEL_ID } from \"~/domain/redirect/redirect.model.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { RedirectModel } from \"~/domain/redirect/abstractions.js\";\nimport { WbPermissionsFeature } from \"~/features/permissions/feature.js\";\nimport { ApiKeyInstallerFeature } from \"~/features/installer/feature.js\";\nimport { NextjsGraphQLSchema } from \"~/graphql/nextjs/NextjsGraphQLSchema.js\";\nimport { NextjsFeature } from \"~/features/nextjs/feature.js\";\nimport { ListDeletedPagesFeature } from \"~/features/pages/ListDeletedPages/feature.js\";\nimport { TrashPageFeature } from \"~/features/pages/TrashPage/feature.js\";\nimport { RestorePageFeature } from \"~/features/pages/RestorePage/feature.js\";\nimport { GetDeletedPageByIdFeature } from \"~/features/pages/GetDeletedPageById/feature.js\";\nimport { GetPageLanguagePathsFeature } from \"~/features/pages/GetPageLanguagePaths/feature.js\";\n// import { TenantModelExtensionFeature } from \"~/features/tenantManager/feature.js\";\n\nconst createContext = () => {\n return createContextPlugin(\n async context => {\n const container = context.container;\n\n // Register models\n const pageModel = createPageModel();\n const redirectModel = createRedirectModel();\n\n context.plugins.register(pageModel, redirectModel);\n\n const identityContext = container.resolve(IdentityContext);\n const getModel = container.resolve(GetModelUseCase);\n\n await identityContext.withoutAuthorization(async () => {\n const [pageModel, redirectModel] = await Promise.all([\n getModel.execute(PAGE_MODEL_ID),\n getModel.execute(REDIRECT_MODEL_ID)\n ]);\n\n container.registerInstance(PageModel, pageModel.value);\n container.registerInstance(RedirectModel, redirectModel.value);\n });\n\n // Register permissions\n WbPermissionsFeature.register(container);\n\n // Register features\n GetRedirectByIdFeature.register(container);\n ListRedirectsFeature.register(container);\n GetActiveRedirectsFeature.register(container);\n CreateRedirectFeature.register(container);\n UpdateRedirectFeature.register(container);\n DeleteRedirectFeature.register(container);\n MoveRedirectFeature.register(container);\n InvalidateRedirectsCacheFeature.register(container);\n GetPageByIdFeature.register(container);\n GetPageByPathFeature.register(container);\n GetPageRevisionsFeature.register(container);\n GetDeletedPageByIdFeature.register(container);\n GetPageLanguagePathsFeature.register(container);\n ListPagesFeature.register(container);\n ListDeletedPagesFeature.register(container);\n CreatePageFeature.register(container);\n CreatePageRevisionFromFeature.register(container);\n DeletePageFeature.register(container);\n TrashPageFeature.register(container);\n RestorePageFeature.register(container);\n UpdatePageFeature.register(container);\n PublishPageFeature.register(container);\n UnpublishPageFeature.register(container);\n DuplicatePageFeature.register(container);\n TranslatePageFeature.register(container);\n MovePageFeature.register(container);\n ApiKeyInstallerFeature.register(container);\n NextjsFeature.register(container);\n // TenantModelExtensionFeature.register(container);\n\n // Register GraphQL\n container.register(NextjsGraphQLSchema);\n },\n { name: \"wb.createContext\" }\n );\n};\n\nexport const createWebsiteBuilder = () => {\n return [createContext(), createGraphQL(), createRedirectsRoute()];\n};\n"],"mappings":"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","ignoreList":[]}