@webiny/api-website-builder 0.0.0-unstable.6f45466a1d → 0.0.0-unstable.7be00a75a9

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (562) hide show
  1. package/constants.js +4 -3
  2. package/constants.js.map +1 -1
  3. package/domain/page/EntryToPageMapper.js +30 -26
  4. package/domain/page/EntryToPageMapper.js.map +1 -1
  5. package/domain/page/PagePath.d.ts +7 -0
  6. package/domain/page/PagePath.js +26 -0
  7. package/domain/page/PagePath.js.map +1 -0
  8. package/domain/page/abstractions.d.ts +22 -3
  9. package/domain/page/abstractions.js +2 -5
  10. package/domain/page/abstractions.js.map +1 -1
  11. package/domain/page/errors.d.ts +12 -0
  12. package/domain/page/errors.js +48 -31
  13. package/domain/page/errors.js.map +1 -1
  14. package/domain/page/page.model.d.ts +8 -1
  15. package/domain/page/page.model.js +25 -30
  16. package/domain/page/page.model.js.map +1 -1
  17. package/domain/permissionsSchema.d.ts +29 -0
  18. package/domain/permissionsSchema.js +53 -0
  19. package/domain/permissionsSchema.js.map +1 -0
  20. package/domain/redirect/EntryToRedirectMapper.js +21 -20
  21. package/domain/redirect/EntryToRedirectMapper.js.map +1 -1
  22. package/domain/redirect/abstractions.js +2 -9
  23. package/domain/redirect/abstractions.js.map +1 -1
  24. package/domain/redirect/errors.js +28 -31
  25. package/domain/redirect/errors.js.map +1 -1
  26. package/domain/redirect/redirect.model.d.ts +8 -1
  27. package/domain/redirect/redirect.model.js +24 -30
  28. package/domain/redirect/redirect.model.js.map +1 -1
  29. package/domain/shared/abstractions.js +0 -3
  30. package/exports/api/website-builder/nextjs.js +0 -2
  31. package/exports/api/website-builder/page.d.ts +12 -8
  32. package/exports/api/website-builder/page.js +12 -10
  33. package/exports/api/website-builder/redirect.d.ts +4 -4
  34. package/exports/api/website-builder/redirect.js +4 -6
  35. package/features/installer/ApiKeyInstaller.d.ts +1 -1
  36. package/features/installer/ApiKeyInstaller.js +34 -28
  37. package/features/installer/ApiKeyInstaller.js.map +1 -1
  38. package/features/installer/feature.d.ts +4 -1
  39. package/features/installer/feature.js +6 -5
  40. package/features/installer/feature.js.map +1 -1
  41. package/features/nextjs/MarkdownContentBuilder.js +67 -76
  42. package/features/nextjs/MarkdownContentBuilder.js.map +1 -1
  43. package/features/nextjs/MarkdownContentBuilder.test.js +266 -273
  44. package/features/nextjs/MarkdownContentBuilder.test.js.map +1 -1
  45. package/features/nextjs/NextjsConfig.js +43 -46
  46. package/features/nextjs/NextjsConfig.js.map +1 -1
  47. package/features/nextjs/abstractions.d.ts +1 -0
  48. package/features/nextjs/abstractions.js +2 -1
  49. package/features/nextjs/abstractions.js.map +1 -1
  50. package/features/nextjs/feature.d.ts +4 -1
  51. package/features/nextjs/feature.js +6 -5
  52. package/features/nextjs/feature.js.map +1 -1
  53. package/features/nextjs/index.js +0 -2
  54. package/features/pages/CreatePage/CreatePageRepository.js +23 -25
  55. package/features/pages/CreatePage/CreatePageRepository.js.map +1 -1
  56. package/features/pages/CreatePage/CreatePageUseCase.d.ts +4 -2
  57. package/features/pages/CreatePage/CreatePageUseCase.js +33 -30
  58. package/features/pages/CreatePage/CreatePageUseCase.js.map +1 -1
  59. package/features/pages/CreatePage/abstractions.d.ts +10 -6
  60. package/features/pages/CreatePage/abstractions.js +5 -27
  61. package/features/pages/CreatePage/abstractions.js.map +1 -1
  62. package/features/pages/CreatePage/events.d.ts +3 -3
  63. package/features/pages/CreatePage/events.js +17 -15
  64. package/features/pages/CreatePage/events.js.map +1 -1
  65. package/features/pages/CreatePage/feature.d.ts +4 -1
  66. package/features/pages/CreatePage/feature.js +7 -6
  67. package/features/pages/CreatePage/feature.js.map +1 -1
  68. package/features/pages/CreatePage/index.d.ts +1 -1
  69. package/features/pages/CreatePage/index.js +1 -3
  70. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js +30 -36
  71. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js.map +1 -1
  72. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.d.ts +6 -2
  73. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js +38 -30
  74. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js.map +1 -1
  75. package/features/pages/CreatePageRevisionFrom/abstractions.d.ts +11 -7
  76. package/features/pages/CreatePageRevisionFrom/abstractions.js +5 -27
  77. package/features/pages/CreatePageRevisionFrom/abstractions.js.map +1 -1
  78. package/features/pages/CreatePageRevisionFrom/events.d.ts +3 -3
  79. package/features/pages/CreatePageRevisionFrom/events.js +17 -15
  80. package/features/pages/CreatePageRevisionFrom/events.js.map +1 -1
  81. package/features/pages/CreatePageRevisionFrom/feature.d.ts +4 -1
  82. package/features/pages/CreatePageRevisionFrom/feature.js +7 -6
  83. package/features/pages/CreatePageRevisionFrom/feature.js.map +1 -1
  84. package/features/pages/CreatePageRevisionFrom/index.d.ts +1 -1
  85. package/features/pages/CreatePageRevisionFrom/index.js +1 -3
  86. package/features/pages/DeletePage/DeletePageRepository.d.ts +1 -3
  87. package/features/pages/DeletePage/DeletePageRepository.js +18 -28
  88. package/features/pages/DeletePage/DeletePageRepository.js.map +1 -1
  89. package/features/pages/DeletePage/DeletePageUseCase.d.ts +7 -5
  90. package/features/pages/DeletePage/DeletePageUseCase.js +37 -37
  91. package/features/pages/DeletePage/DeletePageUseCase.js.map +1 -1
  92. package/features/pages/DeletePage/abstractions.d.ts +12 -7
  93. package/features/pages/DeletePage/abstractions.js +5 -27
  94. package/features/pages/DeletePage/abstractions.js.map +1 -1
  95. package/features/pages/DeletePage/events.d.ts +3 -3
  96. package/features/pages/DeletePage/events.js +17 -15
  97. package/features/pages/DeletePage/events.js.map +1 -1
  98. package/features/pages/DeletePage/feature.d.ts +4 -1
  99. package/features/pages/DeletePage/feature.js +7 -6
  100. package/features/pages/DeletePage/feature.js.map +1 -1
  101. package/features/pages/DeletePage/index.d.ts +1 -1
  102. package/features/pages/DeletePage/index.js +1 -3
  103. package/features/pages/DuplicatePage/DuplicatePageRepository.d.ts +2 -2
  104. package/features/pages/DuplicatePage/DuplicatePageRepository.js +50 -45
  105. package/features/pages/DuplicatePage/DuplicatePageRepository.js.map +1 -1
  106. package/features/pages/DuplicatePage/DuplicatePageUseCase.d.ts +4 -2
  107. package/features/pages/DuplicatePage/DuplicatePageUseCase.js +38 -38
  108. package/features/pages/DuplicatePage/DuplicatePageUseCase.js.map +1 -1
  109. package/features/pages/DuplicatePage/abstractions.d.ts +18 -8
  110. package/features/pages/DuplicatePage/abstractions.js +5 -27
  111. package/features/pages/DuplicatePage/abstractions.js.map +1 -1
  112. package/features/pages/DuplicatePage/events.d.ts +3 -3
  113. package/features/pages/DuplicatePage/events.js +17 -15
  114. package/features/pages/DuplicatePage/events.js.map +1 -1
  115. package/features/pages/DuplicatePage/feature.d.ts +4 -1
  116. package/features/pages/DuplicatePage/feature.js +7 -6
  117. package/features/pages/DuplicatePage/feature.js.map +1 -1
  118. package/features/pages/DuplicatePage/index.d.ts +2 -1
  119. package/features/pages/DuplicatePage/index.js +1 -3
  120. package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.d.ts +13 -0
  121. package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js +32 -0
  122. package/features/pages/GetDeletedPageById/GetDeletedPageByIdRepository.js.map +1 -0
  123. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.d.ts +12 -0
  124. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js +29 -0
  125. package/features/pages/GetDeletedPageById/GetDeletedPageByIdUseCase.js.map +1 -0
  126. package/features/pages/GetDeletedPageById/abstractions.d.ts +42 -0
  127. package/features/pages/GetDeletedPageById/abstractions.js +6 -0
  128. package/features/pages/GetDeletedPageById/abstractions.js.map +1 -0
  129. package/features/pages/GetDeletedPageById/feature.d.ts +4 -0
  130. package/features/pages/GetDeletedPageById/feature.js +13 -0
  131. package/features/pages/GetDeletedPageById/feature.js.map +1 -0
  132. package/features/pages/GetDeletedPageById/index.d.ts +1 -0
  133. package/features/pages/GetDeletedPageById/index.js +1 -0
  134. package/features/pages/GetPageById/GetPageByIdRepository.js +20 -18
  135. package/features/pages/GetPageById/GetPageByIdRepository.js.map +1 -1
  136. package/features/pages/GetPageById/GetPageByIdUseCase.d.ts +3 -1
  137. package/features/pages/GetPageById/GetPageByIdUseCase.js +24 -10
  138. package/features/pages/GetPageById/GetPageByIdUseCase.js.map +1 -1
  139. package/features/pages/GetPageById/abstractions.d.ts +3 -1
  140. package/features/pages/GetPageById/abstractions.js +3 -12
  141. package/features/pages/GetPageById/abstractions.js.map +1 -1
  142. package/features/pages/GetPageById/feature.d.ts +4 -1
  143. package/features/pages/GetPageById/feature.js +7 -6
  144. package/features/pages/GetPageById/feature.js.map +1 -1
  145. package/features/pages/GetPageById/index.js +0 -2
  146. package/features/pages/GetPageByPath/GetPageByPathRepository.js +26 -26
  147. package/features/pages/GetPageByPath/GetPageByPathRepository.js.map +1 -1
  148. package/features/pages/GetPageByPath/GetPageByPathUseCase.d.ts +3 -1
  149. package/features/pages/GetPageByPath/GetPageByPathUseCase.js +24 -10
  150. package/features/pages/GetPageByPath/GetPageByPathUseCase.js.map +1 -1
  151. package/features/pages/GetPageByPath/abstractions.d.ts +3 -1
  152. package/features/pages/GetPageByPath/abstractions.js +3 -12
  153. package/features/pages/GetPageByPath/abstractions.js.map +1 -1
  154. package/features/pages/GetPageByPath/feature.d.ts +4 -1
  155. package/features/pages/GetPageByPath/feature.js +7 -6
  156. package/features/pages/GetPageByPath/feature.js.map +1 -1
  157. package/features/pages/GetPageByPath/index.js +0 -2
  158. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.d.ts +15 -0
  159. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js +55 -0
  160. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js.map +1 -0
  161. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.d.ts +10 -0
  162. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js +21 -0
  163. package/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js.map +1 -0
  164. package/features/pages/GetPageLanguagePaths/abstractions.d.ts +20 -0
  165. package/features/pages/GetPageLanguagePaths/abstractions.js +6 -0
  166. package/features/pages/GetPageLanguagePaths/abstractions.js.map +1 -0
  167. package/features/pages/GetPageLanguagePaths/feature.d.ts +4 -0
  168. package/features/pages/GetPageLanguagePaths/feature.js +13 -0
  169. package/features/pages/GetPageLanguagePaths/feature.js.map +1 -0
  170. package/features/pages/GetPageLanguagePaths/index.d.ts +1 -0
  171. package/features/pages/GetPageLanguagePaths/index.js +1 -0
  172. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js +17 -15
  173. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js.map +1 -1
  174. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.d.ts +3 -1
  175. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js +27 -10
  176. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js.map +1 -1
  177. package/features/pages/GetPageRevisions/abstractions.d.ts +3 -1
  178. package/features/pages/GetPageRevisions/abstractions.js +3 -12
  179. package/features/pages/GetPageRevisions/abstractions.js.map +1 -1
  180. package/features/pages/GetPageRevisions/feature.d.ts +4 -1
  181. package/features/pages/GetPageRevisions/feature.js +7 -6
  182. package/features/pages/GetPageRevisions/feature.js.map +1 -1
  183. package/features/pages/GetPageRevisions/index.js +0 -2
  184. package/features/pages/ListDeletedPages/ListDeletedPagesRepository.d.ts +17 -0
  185. package/features/pages/ListDeletedPages/ListDeletedPagesRepository.js +50 -0
  186. package/features/pages/ListDeletedPages/ListDeletedPagesRepository.js.map +1 -0
  187. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.d.ts +14 -0
  188. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js +38 -0
  189. package/features/pages/ListDeletedPages/ListDeletedPagesUseCase.js.map +1 -0
  190. package/features/pages/ListDeletedPages/abstractions.d.ts +56 -0
  191. package/features/pages/ListDeletedPages/abstractions.js +6 -0
  192. package/features/pages/ListDeletedPages/abstractions.js.map +1 -0
  193. package/features/pages/ListDeletedPages/feature.d.ts +4 -0
  194. package/features/pages/ListDeletedPages/feature.js +13 -0
  195. package/features/pages/ListDeletedPages/feature.js.map +1 -0
  196. package/features/pages/ListDeletedPages/index.d.ts +1 -0
  197. package/features/pages/ListDeletedPages/index.js +1 -0
  198. package/features/pages/ListPages/ListPagesRepository.d.ts +5 -1
  199. package/features/pages/ListPages/ListPagesRepository.js +39 -28
  200. package/features/pages/ListPages/ListPagesRepository.js.map +1 -1
  201. package/features/pages/ListPages/ListPagesUseCase.d.ts +5 -1
  202. package/features/pages/ListPages/ListPagesUseCase.js +33 -10
  203. package/features/pages/ListPages/ListPagesUseCase.js.map +1 -1
  204. package/features/pages/ListPages/abstractions.d.ts +3 -1
  205. package/features/pages/ListPages/abstractions.js +3 -12
  206. package/features/pages/ListPages/abstractions.js.map +1 -1
  207. package/features/pages/ListPages/feature.d.ts +4 -1
  208. package/features/pages/ListPages/feature.js +7 -6
  209. package/features/pages/ListPages/feature.js.map +1 -1
  210. package/features/pages/ListPages/index.js +0 -2
  211. package/features/pages/MovePage/MovePageRepository.js +25 -27
  212. package/features/pages/MovePage/MovePageRepository.js.map +1 -1
  213. package/features/pages/MovePage/MovePageUseCase.d.ts +4 -2
  214. package/features/pages/MovePage/MovePageUseCase.js +42 -40
  215. package/features/pages/MovePage/MovePageUseCase.js.map +1 -1
  216. package/features/pages/MovePage/abstractions.d.ts +11 -7
  217. package/features/pages/MovePage/abstractions.js +5 -27
  218. package/features/pages/MovePage/abstractions.js.map +1 -1
  219. package/features/pages/MovePage/events.d.ts +3 -3
  220. package/features/pages/MovePage/events.js +17 -15
  221. package/features/pages/MovePage/events.js.map +1 -1
  222. package/features/pages/MovePage/feature.d.ts +4 -1
  223. package/features/pages/MovePage/feature.js +7 -6
  224. package/features/pages/MovePage/feature.js.map +1 -1
  225. package/features/pages/MovePage/index.d.ts +1 -1
  226. package/features/pages/MovePage/index.js +1 -3
  227. package/features/pages/PublishPage/PublishPageRepository.js +26 -28
  228. package/features/pages/PublishPage/PublishPageRepository.js.map +1 -1
  229. package/features/pages/PublishPage/PublishPageUseCase.d.ts +4 -2
  230. package/features/pages/PublishPage/PublishPageUseCase.js +39 -37
  231. package/features/pages/PublishPage/PublishPageUseCase.js.map +1 -1
  232. package/features/pages/PublishPage/abstractions.d.ts +11 -7
  233. package/features/pages/PublishPage/abstractions.js +5 -27
  234. package/features/pages/PublishPage/abstractions.js.map +1 -1
  235. package/features/pages/PublishPage/events.d.ts +3 -3
  236. package/features/pages/PublishPage/events.js +17 -15
  237. package/features/pages/PublishPage/events.js.map +1 -1
  238. package/features/pages/PublishPage/feature.d.ts +4 -1
  239. package/features/pages/PublishPage/feature.js +7 -6
  240. package/features/pages/PublishPage/feature.js.map +1 -1
  241. package/features/pages/PublishPage/index.d.ts +1 -1
  242. package/features/pages/PublishPage/index.js +1 -3
  243. package/features/pages/RestorePage/RestorePageRepository.d.ts +13 -0
  244. package/features/pages/RestorePage/RestorePageRepository.js +31 -0
  245. package/features/pages/RestorePage/RestorePageRepository.js.map +1 -0
  246. package/features/pages/RestorePage/RestorePageUseCase.d.ts +16 -0
  247. package/features/pages/RestorePage/RestorePageUseCase.js +45 -0
  248. package/features/pages/RestorePage/RestorePageUseCase.js.map +1 -0
  249. package/features/pages/RestorePage/abstractions.d.ts +59 -0
  250. package/features/pages/RestorePage/abstractions.js +8 -0
  251. package/features/pages/RestorePage/abstractions.js.map +1 -0
  252. package/features/pages/RestorePage/events.d.ts +10 -0
  253. package/features/pages/RestorePage/events.js +21 -0
  254. package/features/pages/RestorePage/events.js.map +1 -0
  255. package/features/pages/RestorePage/feature.d.ts +4 -0
  256. package/features/pages/RestorePage/feature.js +13 -0
  257. package/features/pages/RestorePage/feature.js.map +1 -0
  258. package/features/pages/RestorePage/index.d.ts +1 -0
  259. package/features/pages/RestorePage/index.js +1 -0
  260. package/features/pages/TranslatePage/TranslatePageUseCase.d.ts +17 -0
  261. package/features/pages/TranslatePage/TranslatePageUseCase.js +58 -0
  262. package/features/pages/TranslatePage/TranslatePageUseCase.js.map +1 -0
  263. package/features/pages/TranslatePage/abstractions.d.ts +29 -0
  264. package/features/pages/TranslatePage/abstractions.js +5 -0
  265. package/features/pages/TranslatePage/abstractions.js.map +1 -0
  266. package/features/pages/TranslatePage/feature.d.ts +4 -0
  267. package/features/pages/TranslatePage/feature.js +11 -0
  268. package/features/pages/TranslatePage/feature.js.map +1 -0
  269. package/features/pages/TranslatePage/index.d.ts +1 -0
  270. package/features/pages/TranslatePage/index.js +1 -0
  271. package/features/pages/TrashPage/TrashPageRepository.d.ts +13 -0
  272. package/features/pages/TrashPage/TrashPageRepository.js +31 -0
  273. package/features/pages/TrashPage/TrashPageRepository.js.map +1 -0
  274. package/features/pages/TrashPage/TrashPageUseCase.d.ts +16 -0
  275. package/features/pages/TrashPage/TrashPageUseCase.js +45 -0
  276. package/features/pages/TrashPage/TrashPageUseCase.js.map +1 -0
  277. package/features/pages/TrashPage/abstractions.d.ts +58 -0
  278. package/features/pages/TrashPage/abstractions.js +8 -0
  279. package/features/pages/TrashPage/abstractions.js.map +1 -0
  280. package/features/pages/TrashPage/events.d.ts +10 -0
  281. package/features/pages/TrashPage/events.js +21 -0
  282. package/features/pages/TrashPage/events.js.map +1 -0
  283. package/features/pages/TrashPage/feature.d.ts +4 -0
  284. package/features/pages/TrashPage/feature.js +13 -0
  285. package/features/pages/TrashPage/feature.js.map +1 -0
  286. package/features/pages/TrashPage/index.d.ts +1 -0
  287. package/features/pages/TrashPage/index.js +1 -0
  288. package/features/pages/UnpublishPage/UnpublishPageRepository.js +26 -28
  289. package/features/pages/UnpublishPage/UnpublishPageRepository.js.map +1 -1
  290. package/features/pages/UnpublishPage/UnpublishPageUseCase.d.ts +4 -2
  291. package/features/pages/UnpublishPage/UnpublishPageUseCase.js +38 -36
  292. package/features/pages/UnpublishPage/UnpublishPageUseCase.js.map +1 -1
  293. package/features/pages/UnpublishPage/abstractions.d.ts +11 -7
  294. package/features/pages/UnpublishPage/abstractions.js +5 -27
  295. package/features/pages/UnpublishPage/abstractions.js.map +1 -1
  296. package/features/pages/UnpublishPage/events.d.ts +3 -3
  297. package/features/pages/UnpublishPage/events.js +17 -15
  298. package/features/pages/UnpublishPage/events.js.map +1 -1
  299. package/features/pages/UnpublishPage/feature.d.ts +4 -1
  300. package/features/pages/UnpublishPage/feature.js +7 -6
  301. package/features/pages/UnpublishPage/feature.js.map +1 -1
  302. package/features/pages/UnpublishPage/index.d.ts +1 -1
  303. package/features/pages/UnpublishPage/index.js +1 -3
  304. package/features/pages/UpdatePage/UpdatePageRepository.js +30 -34
  305. package/features/pages/UpdatePage/UpdatePageRepository.js.map +1 -1
  306. package/features/pages/UpdatePage/UpdatePageUseCase.d.ts +4 -2
  307. package/features/pages/UpdatePage/UpdatePageUseCase.js +47 -45
  308. package/features/pages/UpdatePage/UpdatePageUseCase.js.map +1 -1
  309. package/features/pages/UpdatePage/abstractions.d.ts +12 -9
  310. package/features/pages/UpdatePage/abstractions.js +5 -27
  311. package/features/pages/UpdatePage/abstractions.js.map +1 -1
  312. package/features/pages/UpdatePage/events.d.ts +3 -3
  313. package/features/pages/UpdatePage/events.js +17 -15
  314. package/features/pages/UpdatePage/events.js.map +1 -1
  315. package/features/pages/UpdatePage/feature.d.ts +4 -1
  316. package/features/pages/UpdatePage/feature.js +7 -6
  317. package/features/pages/UpdatePage/feature.js.map +1 -1
  318. package/features/pages/UpdatePage/index.d.ts +1 -1
  319. package/features/pages/UpdatePage/index.js +1 -3
  320. package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionRepository.d.ts +15 -0
  321. package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionRepository.js +40 -0
  322. package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionRepository.js.map +1 -0
  323. package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionUseCase.d.ts +16 -0
  324. package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionUseCase.js +56 -0
  325. package/features/pages/UpdatePageRevisionDescription/UpdatePageRevisionDescriptionUseCase.js.map +1 -0
  326. package/features/pages/UpdatePageRevisionDescription/abstractions.d.ts +67 -0
  327. package/features/pages/UpdatePageRevisionDescription/abstractions.js +8 -0
  328. package/features/pages/UpdatePageRevisionDescription/abstractions.js.map +1 -0
  329. package/features/pages/UpdatePageRevisionDescription/events.d.ts +10 -0
  330. package/features/pages/UpdatePageRevisionDescription/events.js +21 -0
  331. package/features/pages/UpdatePageRevisionDescription/events.js.map +1 -0
  332. package/features/pages/UpdatePageRevisionDescription/feature.d.ts +4 -0
  333. package/features/pages/UpdatePageRevisionDescription/feature.js +13 -0
  334. package/features/pages/UpdatePageRevisionDescription/feature.js.map +1 -0
  335. package/features/pages/UpdatePageRevisionDescription/index.d.ts +1 -0
  336. package/features/pages/UpdatePageRevisionDescription/index.js +1 -0
  337. package/features/permissions/abstractions.d.ts +34 -0
  338. package/features/permissions/abstractions.js +6 -0
  339. package/features/permissions/abstractions.js.map +1 -0
  340. package/features/permissions/feature.d.ts +4 -0
  341. package/features/permissions/feature.js +7 -0
  342. package/features/permissions/feature.js.map +1 -0
  343. package/features/redirects/CreateRedirect/CreateRedirectRepository.js +23 -21
  344. package/features/redirects/CreateRedirect/CreateRedirectRepository.js.map +1 -1
  345. package/features/redirects/CreateRedirect/CreateRedirectUseCase.d.ts +4 -2
  346. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js +33 -30
  347. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js.map +1 -1
  348. package/features/redirects/CreateRedirect/abstractions.d.ts +11 -7
  349. package/features/redirects/CreateRedirect/abstractions.js +5 -27
  350. package/features/redirects/CreateRedirect/abstractions.js.map +1 -1
  351. package/features/redirects/CreateRedirect/events.d.ts +3 -3
  352. package/features/redirects/CreateRedirect/events.js +17 -15
  353. package/features/redirects/CreateRedirect/events.js.map +1 -1
  354. package/features/redirects/CreateRedirect/feature.d.ts +4 -1
  355. package/features/redirects/CreateRedirect/feature.js +7 -6
  356. package/features/redirects/CreateRedirect/feature.js.map +1 -1
  357. package/features/redirects/CreateRedirect/index.d.ts +1 -1
  358. package/features/redirects/CreateRedirect/index.js +1 -3
  359. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js +19 -17
  360. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js.map +1 -1
  361. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.d.ts +4 -2
  362. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js +37 -37
  363. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js.map +1 -1
  364. package/features/redirects/DeleteRedirect/abstractions.d.ts +11 -7
  365. package/features/redirects/DeleteRedirect/abstractions.js +5 -27
  366. package/features/redirects/DeleteRedirect/abstractions.js.map +1 -1
  367. package/features/redirects/DeleteRedirect/events.d.ts +3 -3
  368. package/features/redirects/DeleteRedirect/events.js +17 -15
  369. package/features/redirects/DeleteRedirect/events.js.map +1 -1
  370. package/features/redirects/DeleteRedirect/feature.d.ts +4 -1
  371. package/features/redirects/DeleteRedirect/feature.js +7 -6
  372. package/features/redirects/DeleteRedirect/feature.js.map +1 -1
  373. package/features/redirects/DeleteRedirect/index.d.ts +1 -1
  374. package/features/redirects/DeleteRedirect/index.js +1 -3
  375. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js +22 -21
  376. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js.map +1 -1
  377. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.d.ts +3 -1
  378. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js +21 -12
  379. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js.map +1 -1
  380. package/features/redirects/GetActiveRedirects/abstractions.d.ts +3 -1
  381. package/features/redirects/GetActiveRedirects/abstractions.js +3 -12
  382. package/features/redirects/GetActiveRedirects/abstractions.js.map +1 -1
  383. package/features/redirects/GetActiveRedirects/feature.d.ts +4 -1
  384. package/features/redirects/GetActiveRedirects/feature.js +7 -6
  385. package/features/redirects/GetActiveRedirects/feature.js.map +1 -1
  386. package/features/redirects/GetActiveRedirects/index.js +0 -2
  387. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js +20 -18
  388. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js.map +1 -1
  389. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.d.ts +3 -1
  390. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js +25 -12
  391. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js.map +1 -1
  392. package/features/redirects/GetRedirectById/abstractions.d.ts +3 -1
  393. package/features/redirects/GetRedirectById/abstractions.js +3 -12
  394. package/features/redirects/GetRedirectById/abstractions.js.map +1 -1
  395. package/features/redirects/GetRedirectById/feature.d.ts +4 -1
  396. package/features/redirects/GetRedirectById/feature.js +7 -6
  397. package/features/redirects/GetRedirectById/feature.js.map +1 -1
  398. package/features/redirects/GetRedirectById/index.js +0 -2
  399. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js +23 -20
  400. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js.map +1 -1
  401. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.d.ts +3 -3
  402. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js +14 -17
  403. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js.map +1 -1
  404. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.d.ts +3 -3
  405. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js +14 -17
  406. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js.map +1 -1
  407. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.d.ts +3 -3
  408. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js +14 -18
  409. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js.map +1 -1
  410. package/features/redirects/InvalidateRedirectsCache/abstractions.d.ts +1 -0
  411. package/features/redirects/InvalidateRedirectsCache/abstractions.js +2 -6
  412. package/features/redirects/InvalidateRedirectsCache/abstractions.js.map +1 -1
  413. package/features/redirects/InvalidateRedirectsCache/feature.d.ts +4 -1
  414. package/features/redirects/InvalidateRedirectsCache/feature.js +9 -8
  415. package/features/redirects/InvalidateRedirectsCache/feature.js.map +1 -1
  416. package/features/redirects/InvalidateRedirectsCache/index.js +0 -2
  417. package/features/redirects/ListRedirects/ListRedirectsRepository.js +35 -34
  418. package/features/redirects/ListRedirects/ListRedirectsRepository.js.map +1 -1
  419. package/features/redirects/ListRedirects/ListRedirectsUseCase.d.ts +5 -1
  420. package/features/redirects/ListRedirects/ListRedirectsUseCase.js +34 -12
  421. package/features/redirects/ListRedirects/ListRedirectsUseCase.js.map +1 -1
  422. package/features/redirects/ListRedirects/abstractions.d.ts +8 -5
  423. package/features/redirects/ListRedirects/abstractions.js +3 -16
  424. package/features/redirects/ListRedirects/abstractions.js.map +1 -1
  425. package/features/redirects/ListRedirects/feature.d.ts +4 -1
  426. package/features/redirects/ListRedirects/feature.js +7 -6
  427. package/features/redirects/ListRedirects/feature.js.map +1 -1
  428. package/features/redirects/ListRedirects/index.js +0 -2
  429. package/features/redirects/MoveRedirect/MoveRedirectRepository.js +25 -27
  430. package/features/redirects/MoveRedirect/MoveRedirectRepository.js.map +1 -1
  431. package/features/redirects/MoveRedirect/MoveRedirectUseCase.d.ts +4 -2
  432. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js +42 -40
  433. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js.map +1 -1
  434. package/features/redirects/MoveRedirect/abstractions.d.ts +11 -7
  435. package/features/redirects/MoveRedirect/abstractions.js +5 -27
  436. package/features/redirects/MoveRedirect/abstractions.js.map +1 -1
  437. package/features/redirects/MoveRedirect/events.d.ts +3 -3
  438. package/features/redirects/MoveRedirect/events.js +17 -15
  439. package/features/redirects/MoveRedirect/events.js.map +1 -1
  440. package/features/redirects/MoveRedirect/feature.d.ts +4 -1
  441. package/features/redirects/MoveRedirect/feature.js +7 -6
  442. package/features/redirects/MoveRedirect/feature.js.map +1 -1
  443. package/features/redirects/MoveRedirect/index.d.ts +1 -1
  444. package/features/redirects/MoveRedirect/index.js +1 -3
  445. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js +31 -35
  446. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js.map +1 -1
  447. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.d.ts +4 -2
  448. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js +47 -45
  449. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js.map +1 -1
  450. package/features/redirects/UpdateRedirect/abstractions.d.ts +11 -7
  451. package/features/redirects/UpdateRedirect/abstractions.js +5 -27
  452. package/features/redirects/UpdateRedirect/abstractions.js.map +1 -1
  453. package/features/redirects/UpdateRedirect/events.d.ts +3 -3
  454. package/features/redirects/UpdateRedirect/events.js +17 -15
  455. package/features/redirects/UpdateRedirect/events.js.map +1 -1
  456. package/features/redirects/UpdateRedirect/feature.d.ts +4 -1
  457. package/features/redirects/UpdateRedirect/feature.js +7 -6
  458. package/features/redirects/UpdateRedirect/feature.js.map +1 -1
  459. package/features/redirects/UpdateRedirect/index.d.ts +1 -1
  460. package/features/redirects/UpdateRedirect/index.js +1 -3
  461. package/features/tenantManager/TenantModelExtension.js +52 -32
  462. package/features/tenantManager/TenantModelExtension.js.map +1 -1
  463. package/features/tenantManager/feature.d.ts +4 -1
  464. package/features/tenantManager/feature.js +6 -5
  465. package/features/tenantManager/feature.js.map +1 -1
  466. package/features/webhooks/WbWebhookEventProvider.d.ts +8 -0
  467. package/features/webhooks/WbWebhookEventProvider.js +95 -0
  468. package/features/webhooks/WbWebhookEventProvider.js.map +1 -0
  469. package/features/webhooks/constants.d.ts +12 -0
  470. package/features/webhooks/constants.js +16 -0
  471. package/features/webhooks/constants.js.map +1 -0
  472. package/features/webhooks/feature.d.ts +4 -0
  473. package/features/webhooks/feature.js +31 -0
  474. package/features/webhooks/feature.js.map +1 -0
  475. package/features/webhooks/handlers/OnPageCreatedHandler.d.ts +11 -0
  476. package/features/webhooks/handlers/OnPageCreatedHandler.js +22 -0
  477. package/features/webhooks/handlers/OnPageCreatedHandler.js.map +1 -0
  478. package/features/webhooks/handlers/OnPageDeletedHandler.d.ts +11 -0
  479. package/features/webhooks/handlers/OnPageDeletedHandler.js +22 -0
  480. package/features/webhooks/handlers/OnPageDeletedHandler.js.map +1 -0
  481. package/features/webhooks/handlers/OnPagePublishedHandler.d.ts +11 -0
  482. package/features/webhooks/handlers/OnPagePublishedHandler.js +22 -0
  483. package/features/webhooks/handlers/OnPagePublishedHandler.js.map +1 -0
  484. package/features/webhooks/handlers/OnPageRestoredHandler.d.ts +11 -0
  485. package/features/webhooks/handlers/OnPageRestoredHandler.js +22 -0
  486. package/features/webhooks/handlers/OnPageRestoredHandler.js.map +1 -0
  487. package/features/webhooks/handlers/OnPageTrashedHandler.d.ts +11 -0
  488. package/features/webhooks/handlers/OnPageTrashedHandler.js +22 -0
  489. package/features/webhooks/handlers/OnPageTrashedHandler.js.map +1 -0
  490. package/features/webhooks/handlers/OnPageUnpublishedHandler.d.ts +11 -0
  491. package/features/webhooks/handlers/OnPageUnpublishedHandler.js +22 -0
  492. package/features/webhooks/handlers/OnPageUnpublishedHandler.js.map +1 -0
  493. package/features/webhooks/handlers/OnPageUpdatedHandler.d.ts +11 -0
  494. package/features/webhooks/handlers/OnPageUpdatedHandler.js +23 -0
  495. package/features/webhooks/handlers/OnPageUpdatedHandler.js.map +1 -0
  496. package/features/webhooks/handlers/OnRedirectCreatedHandler.d.ts +11 -0
  497. package/features/webhooks/handlers/OnRedirectCreatedHandler.js +22 -0
  498. package/features/webhooks/handlers/OnRedirectCreatedHandler.js.map +1 -0
  499. package/features/webhooks/handlers/OnRedirectDeletedHandler.d.ts +11 -0
  500. package/features/webhooks/handlers/OnRedirectDeletedHandler.js +22 -0
  501. package/features/webhooks/handlers/OnRedirectDeletedHandler.js.map +1 -0
  502. package/features/webhooks/handlers/OnRedirectUpdatedHandler.d.ts +11 -0
  503. package/features/webhooks/handlers/OnRedirectUpdatedHandler.js +23 -0
  504. package/features/webhooks/handlers/OnRedirectUpdatedHandler.js.map +1 -0
  505. package/graphql/createGraphQL.js +15 -12
  506. package/graphql/createGraphQL.js.map +1 -1
  507. package/graphql/nextjs/NextjsGraphQLSchema.js +28 -29
  508. package/graphql/nextjs/NextjsGraphQLSchema.js.map +1 -1
  509. package/graphql/pages/pages.gql.js +226 -254
  510. package/graphql/pages/pages.gql.js.map +1 -1
  511. package/graphql/pages/pages.typeDefs.d.ts +1 -1
  512. package/graphql/pages/pages.typeDefs.js +24 -2
  513. package/graphql/pages/pages.typeDefs.js.map +1 -1
  514. package/graphql/redirects/redirects.gql.js +56 -86
  515. package/graphql/redirects/redirects.gql.js.map +1 -1
  516. package/graphql/redirects/redirects.typeDefs.js +3 -4
  517. package/graphql/redirects/redirects.typeDefs.js.map +1 -1
  518. package/index.d.ts +1 -1
  519. package/index.js +73 -55
  520. package/index.js.map +1 -1
  521. package/package.json +30 -27
  522. package/rest/ActiveRedirectDto.js +0 -3
  523. package/rest/ActiveRedirectRestMapper.js +10 -9
  524. package/rest/ActiveRedirectRestMapper.js.map +1 -1
  525. package/rest/getRedirects.js +19 -26
  526. package/rest/getRedirects.js.map +1 -1
  527. package/utils/ensureAuthentication.js +6 -9
  528. package/utils/ensureAuthentication.js.map +1 -1
  529. package/utils/resolve.js +7 -6
  530. package/utils/resolve.js.map +1 -1
  531. package/domain/shared/abstractions.js.map +0 -1
  532. package/exports/api/website-builder/nextjs.js.map +0 -1
  533. package/exports/api/website-builder/page.js.map +0 -1
  534. package/exports/api/website-builder/redirect.js.map +0 -1
  535. package/features/nextjs/index.js.map +0 -1
  536. package/features/pages/CreatePage/index.js.map +0 -1
  537. package/features/pages/CreatePageRevisionFrom/index.js.map +0 -1
  538. package/features/pages/DeletePage/index.js.map +0 -1
  539. package/features/pages/DuplicatePage/index.js.map +0 -1
  540. package/features/pages/GetPageById/index.js.map +0 -1
  541. package/features/pages/GetPageByPath/index.js.map +0 -1
  542. package/features/pages/GetPageRevisions/index.js.map +0 -1
  543. package/features/pages/ListPages/index.js.map +0 -1
  544. package/features/pages/MovePage/index.js.map +0 -1
  545. package/features/pages/PagePermissions/feature.d.ts +0 -1
  546. package/features/pages/PagePermissions/feature.js +0 -53
  547. package/features/pages/PagePermissions/feature.js.map +0 -1
  548. package/features/pages/PublishPage/index.js.map +0 -1
  549. package/features/pages/UnpublishPage/index.js.map +0 -1
  550. package/features/pages/UpdatePage/index.js.map +0 -1
  551. package/features/redirects/CreateRedirect/index.js.map +0 -1
  552. package/features/redirects/DeleteRedirect/index.js.map +0 -1
  553. package/features/redirects/GetActiveRedirects/index.js.map +0 -1
  554. package/features/redirects/GetRedirectById/index.js.map +0 -1
  555. package/features/redirects/InvalidateRedirectsCache/index.js.map +0 -1
  556. package/features/redirects/ListRedirects/index.js.map +0 -1
  557. package/features/redirects/MoveRedirect/index.js.map +0 -1
  558. package/features/redirects/RedirectPermissions/feature.d.ts +0 -1
  559. package/features/redirects/RedirectPermissions/feature.js +0 -45
  560. package/features/redirects/RedirectPermissions/feature.js.map +0 -1
  561. package/features/redirects/UpdateRedirect/index.js.map +0 -1
  562. package/rest/ActiveRedirectDto.js.map +0 -1
@@ -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 { PageBeforeUnpublishPayload, PageAfterUnpublishPayload } from "./abstractions.js";
3
3
  export declare class PageBeforeUnpublishEvent extends DomainEvent<PageBeforeUnpublishPayload> {
4
4
  eventType: "page.beforeUnpublish";
5
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>>;
5
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<PageBeforeUnpublishPayload>>>;
6
6
  }
7
7
  export declare class PageAfterUnpublishEvent extends DomainEvent<PageAfterUnpublishPayload> {
8
8
  eventType: "page.afterUnpublish";
9
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageAfterUnpublishPayload>>>;
9
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<PageAfterUnpublishPayload>>>;
10
10
  }
@@ -1,19 +1,21 @@
1
- import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
- import { PageBeforeUnpublishHandler, PageAfterUnpublishHandler } from "./abstractions.js";
3
- // PageBeforeUnpublish Event
4
- export class PageBeforeUnpublishEvent extends DomainEvent {
5
- eventType = "page.beforeUnpublish";
6
- getHandlerAbstraction() {
7
- return PageBeforeUnpublishHandler;
8
- }
1
+ import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
2
+ import { PageAfterUnpublishEventHandler, PageBeforeUnpublishEventHandler } from "./abstractions.js";
3
+ class PageBeforeUnpublishEvent extends DomainEvent {
4
+ getHandlerAbstraction() {
5
+ return PageBeforeUnpublishEventHandler;
6
+ }
7
+ constructor(...args){
8
+ super(...args), this.eventType = "page.beforeUnpublish";
9
+ }
9
10
  }
10
-
11
- // PageAfterUnpublish Event
12
- export class PageAfterUnpublishEvent extends DomainEvent {
13
- eventType = "page.afterUnpublish";
14
- getHandlerAbstraction() {
15
- return PageAfterUnpublishHandler;
16
- }
11
+ class PageAfterUnpublishEvent extends DomainEvent {
12
+ getHandlerAbstraction() {
13
+ return PageAfterUnpublishEventHandler;
14
+ }
15
+ constructor(...args){
16
+ super(...args), this.eventType = "page.afterUnpublish";
17
+ }
17
18
  }
19
+ export { PageAfterUnpublishEvent, PageBeforeUnpublishEvent };
18
20
 
19
21
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DomainEvent","PageBeforeUnpublishHandler","PageAfterUnpublishHandler","PageBeforeUnpublishEvent","eventType","getHandlerAbstraction","PageAfterUnpublishEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { PageBeforeUnpublishHandler, PageAfterUnpublishHandler } from \"./abstractions.js\";\nimport type { PageBeforeUnpublishPayload, PageAfterUnpublishPayload } from \"./abstractions.js\";\n\n// PageBeforeUnpublish Event\nexport class PageBeforeUnpublishEvent extends DomainEvent<PageBeforeUnpublishPayload> {\n eventType = \"page.beforeUnpublish\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeUnpublishHandler;\n }\n}\n\n// PageAfterUnpublish Event\nexport class PageAfterUnpublishEvent extends DomainEvent<PageAfterUnpublishPayload> {\n eventType = \"page.afterUnpublish\" as const;\n\n getHandlerAbstraction() {\n return PageAfterUnpublishHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,0BAA0B,EAAEC,yBAAyB;AAG9D;AACA,OAAO,MAAMC,wBAAwB,SAASH,WAAW,CAA6B;EAClFI,SAAS,GAAG,sBAAsB;EAElCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,0BAA0B;EACrC;AACJ;;AAEA;AACA,OAAO,MAAMK,uBAAuB,SAASN,WAAW,CAA4B;EAChFI,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,yBAAyB;EACpC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/UnpublishPage/events.js","sources":["../../../../src/features/pages/UnpublishPage/events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { PageBeforeUnpublishEventHandler, PageAfterUnpublishEventHandler } from \"./abstractions.js\";\nimport type { PageBeforeUnpublishPayload, PageAfterUnpublishPayload } from \"./abstractions.js\";\n\n// PageBeforeUnpublish Event\nexport class PageBeforeUnpublishEvent extends DomainEvent<PageBeforeUnpublishPayload> {\n eventType = \"page.beforeUnpublish\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeUnpublishEventHandler;\n }\n}\n\n// PageAfterUnpublish Event\nexport class PageAfterUnpublishEvent extends DomainEvent<PageAfterUnpublishPayload> {\n eventType = \"page.afterUnpublish\" as const;\n\n getHandlerAbstraction() {\n return PageAfterUnpublishEventHandler;\n }\n}\n"],"names":["PageBeforeUnpublishEvent","DomainEvent","PageBeforeUnpublishEventHandler","PageAfterUnpublishEvent","PageAfterUnpublishEventHandler"],"mappings":";;AAKO,MAAMA,iCAAiCC;IAG1C,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMC,gCAAgCF;IAGzC,wBAAwB;QACpB,OAAOG;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB"}
@@ -1 +1,4 @@
1
- export declare const UnpublishPageFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const UnpublishPageFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -1,12 +1,13 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { UnpublishPageRepository } from "./UnpublishPageRepository.js";
3
3
  import { UnpublishPageUseCase } from "./UnpublishPageUseCase.js";
4
- export const UnpublishPageFeature = createFeature({
5
- name: "WebsiteBuilder/UnpublishPage",
6
- register(container) {
7
- container.register(UnpublishPageRepository).inSingletonScope();
8
- container.register(UnpublishPageUseCase);
9
- }
4
+ const UnpublishPageFeature = createFeature({
5
+ name: "WebsiteBuilder/UnpublishPage",
6
+ register (container) {
7
+ container.register(UnpublishPageRepository).inSingletonScope();
8
+ container.register(UnpublishPageUseCase);
9
+ }
10
10
  });
11
+ export { UnpublishPageFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","UnpublishPageRepository","UnpublishPageUseCase","UnpublishPageFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UnpublishPageRepository } from \"./UnpublishPageRepository.js\";\nimport { UnpublishPageUseCase } from \"./UnpublishPageUseCase.js\";\n\nexport const UnpublishPageFeature = createFeature({\n name: \"WebsiteBuilder/UnpublishPage\",\n register(container) {\n container.register(UnpublishPageRepository).inSingletonScope();\n container.register(UnpublishPageUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAE7B,OAAO,MAAMC,oBAAoB,GAAGH,aAAa,CAAC;EAC9CI,IAAI,EAAE,8BAA8B;EACpCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,uBAAuB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC9DD,SAAS,CAACD,QAAQ,CAACH,oBAAoB,CAAC;EAC5C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/UnpublishPage/feature.js","sources":["../../../../src/features/pages/UnpublishPage/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UnpublishPageRepository } from \"./UnpublishPageRepository.js\";\nimport { UnpublishPageUseCase } from \"./UnpublishPageUseCase.js\";\n\nexport const UnpublishPageFeature = createFeature({\n name: \"WebsiteBuilder/UnpublishPage\",\n register(container) {\n container.register(UnpublishPageRepository).inSingletonScope();\n container.register(UnpublishPageUseCase);\n }\n});\n"],"names":["UnpublishPageFeature","createFeature","container","UnpublishPageRepository","UnpublishPageUseCase"],"mappings":";;;AAIO,MAAMA,uBAAuBC,cAAc;IAC9C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,yBAAyB,gBAAgB;QAC5DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1 +1 @@
1
- export { PageAfterUnpublishHandler, PageBeforeUnpublishHandler, UnpublishPageUseCase } from "./abstractions.js";
1
+ export { PageAfterUnpublishEventHandler, PageBeforeUnpublishEventHandler, UnpublishPageUseCase } from "./abstractions.js";
@@ -1,3 +1 @@
1
- export { PageAfterUnpublishHandler, PageBeforeUnpublishHandler, UnpublishPageUseCase } from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
1
+ export { PageAfterUnpublishEventHandler, PageBeforeUnpublishEventHandler, UnpublishPageUseCase } from "./abstractions.js";
@@ -1,47 +1,43 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { UpdateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/UpdateEntry";
3
3
  import { GetEntryByIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntryById";
4
- import { UpdatePageRepository as RepositoryAbstraction } from "./abstractions.js";
4
+ import { UpdatePageRepository } from "./abstractions.js";
5
5
  import { PageModel } from "../../../domain/page/abstractions.js";
6
6
  import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
7
7
  import { PageNotFoundError, PagePersistenceError, PageValidationError } from "../../../domain/page/errors.js";
8
8
  class UpdatePageRepositoryImpl {
9
- constructor(updateEntry, getEntryById, pageModel) {
10
- this.updateEntry = updateEntry;
11
- this.getEntryById = getEntryById;
12
- this.pageModel = pageModel;
13
- }
14
- async execute(id, data) {
15
- // First, validate the page exists
16
- const getResult = await this.getEntryById.execute(this.pageModel, id);
17
- if (getResult.isFail()) {
18
- if (getResult.error.code === "Cms/Entry/NotFound") {
19
- return Result.fail(new PageNotFoundError(id));
20
- }
21
- return Result.fail(new PagePersistenceError(getResult.error));
9
+ constructor(updateEntry, getEntryById, pageModel){
10
+ this.updateEntry = updateEntry;
11
+ this.getEntryById = getEntryById;
12
+ this.pageModel = pageModel;
22
13
  }
23
-
24
- // Update the entry
25
- const result = await this.updateEntry.execute(this.pageModel, id, {
26
- location: data.location,
27
- values: data
28
- });
29
- if (result.isFail()) {
30
- if (result.error.code === "Cms/Entry/ValidationError") {
31
- return Result.fail(new PageValidationError(result.error.message));
32
- }
33
- if (result.error.code === "Cms/Entry/NotFound") {
34
- return Result.fail(new PageNotFoundError(id));
35
- }
36
- return Result.fail(new PagePersistenceError(result.error));
14
+ async execute(id, data) {
15
+ const getResult = await this.getEntryById.execute(this.pageModel, id);
16
+ if (getResult.isFail()) {
17
+ if ("Cms/Entry/NotFound" === getResult.error.code) return Result.fail(new PageNotFoundError(id));
18
+ return Result.fail(new PagePersistenceError(getResult.error));
19
+ }
20
+ const result = await this.updateEntry.execute(this.pageModel, id, {
21
+ location: data.location,
22
+ values: data
23
+ });
24
+ if (result.isFail()) {
25
+ if ("Cms/Entry/ValidationError" === result.error.code) return Result.fail(new PageValidationError(result.error.message));
26
+ if ("Cms/Entry/NotFound" === result.error.code) return Result.fail(new PageNotFoundError(id));
27
+ return Result.fail(new PagePersistenceError(result.error));
28
+ }
29
+ const page = EntryToPageMapper.toPage(result.value);
30
+ return Result.ok(page);
37
31
  }
38
- const page = EntryToPageMapper.toPage(result.value);
39
- return Result.ok(page);
40
- }
41
32
  }
42
- export const UpdatePageRepository = RepositoryAbstraction.createImplementation({
43
- implementation: UpdatePageRepositoryImpl,
44
- dependencies: [UpdateEntryUseCase, GetEntryByIdUseCase, PageModel]
33
+ const UpdatePageRepository_UpdatePageRepository = UpdatePageRepository.createImplementation({
34
+ implementation: UpdatePageRepositoryImpl,
35
+ dependencies: [
36
+ UpdateEntryUseCase,
37
+ GetEntryByIdUseCase,
38
+ PageModel
39
+ ]
45
40
  });
41
+ export { UpdatePageRepository_UpdatePageRepository as UpdatePageRepository };
46
42
 
47
43
  //# sourceMappingURL=UpdatePageRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","UpdateEntryUseCase","GetEntryByIdUseCase","UpdatePageRepository","RepositoryAbstraction","PageModel","EntryToPageMapper","PageNotFoundError","PagePersistenceError","PageValidationError","UpdatePageRepositoryImpl","constructor","updateEntry","getEntryById","pageModel","execute","id","data","getResult","isFail","error","code","fail","result","location","values","message","page","toPage","value","ok","createImplementation","implementation","dependencies"],"sources":["UpdatePageRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById\";\nimport { UpdatePageRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport {\n PageNotFoundError,\n PagePersistenceError,\n PageValidationError\n} from \"~/domain/page/errors.js\";\n\nclass UpdatePageRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private updateEntry: UpdateEntryUseCase.Interface,\n private getEntryById: GetEntryByIdUseCase.Interface,\n private pageModel: PageModel.Interface\n ) {}\n\n async execute(\n id: string,\n data: RepositoryAbstraction.UpdateData\n ): RepositoryAbstraction.Return {\n // First, validate the page exists\n const getResult = await this.getEntryById.execute(this.pageModel, id);\n\n if (getResult.isFail()) {\n if (getResult.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new PageNotFoundError(id));\n }\n return Result.fail(new PagePersistenceError(getResult.error));\n }\n\n // Update the entry\n const result = await this.updateEntry.execute(this.pageModel, id, {\n location: data.location,\n values: data\n });\n\n if (result.isFail()) {\n if (result.error.code === \"Cms/Entry/ValidationError\") {\n return Result.fail(new PageValidationError(result.error.message));\n }\n if (result.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new PageNotFoundError(id));\n }\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const page = EntryToPageMapper.toPage(result.value);\n return Result.ok(page);\n }\n}\n\nexport const UpdatePageRepository = RepositoryAbstraction.createImplementation({\n implementation: UpdatePageRepositoryImpl,\n dependencies: [UpdateEntryUseCase, GetEntryByIdUseCase, PageModel]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB,QAAQ,4DAA4D;AAC/F,SAASC,mBAAmB,QAAQ,6DAA6D;AACjG,SAASC,oBAAoB,IAAIC,qBAAqB;AACtD,SAASC,SAAS;AAClB,SAASC,iBAAiB;AAC1B,SACIC,iBAAiB,EACjBC,oBAAoB,EACpBC,mBAAmB;AAGvB,MAAMC,wBAAwB,CAA4C;EACtEC,WAAWA,CACCC,WAAyC,EACzCC,YAA2C,EAC3CC,SAA8B,EACxC;IAAA,KAHUF,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,YAA2C,GAA3CA,YAA2C;IAAA,KAC3CC,SAA8B,GAA9BA,SAA8B;EACvC;EAEH,MAAMC,OAAOA,CACTC,EAAU,EACVC,IAAsC,EACV;IAC5B;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACL,YAAY,CAACE,OAAO,CAAC,IAAI,CAACD,SAAS,EAAEE,EAAE,CAAC;IAErE,IAAIE,SAAS,CAACC,MAAM,CAAC,CAAC,EAAE;MACpB,IAAID,SAAS,CAACE,KAAK,CAACC,IAAI,KAAK,oBAAoB,EAAE;QAC/C,OAAOrB,MAAM,CAACsB,IAAI,CAAC,IAAIf,iBAAiB,CAACS,EAAE,CAAC,CAAC;MACjD;MACA,OAAOhB,MAAM,CAACsB,IAAI,CAAC,IAAId,oBAAoB,CAACU,SAAS,CAACE,KAAK,CAAC,CAAC;IACjE;;IAEA;IACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACX,WAAW,CAACG,OAAO,CAAC,IAAI,CAACD,SAAS,EAAEE,EAAE,EAAE;MAC9DQ,QAAQ,EAAEP,IAAI,CAACO,QAAQ;MACvBC,MAAM,EAAER;IACZ,CAAC,CAAC;IAEF,IAAIM,MAAM,CAACJ,MAAM,CAAC,CAAC,EAAE;MACjB,IAAII,MAAM,CAACH,KAAK,CAACC,IAAI,KAAK,2BAA2B,EAAE;QACnD,OAAOrB,MAAM,CAACsB,IAAI,CAAC,IAAIb,mBAAmB,CAACc,MAAM,CAACH,KAAK,CAACM,OAAO,CAAC,CAAC;MACrE;MACA,IAAIH,MAAM,CAACH,KAAK,CAACC,IAAI,KAAK,oBAAoB,EAAE;QAC5C,OAAOrB,MAAM,CAACsB,IAAI,CAAC,IAAIf,iBAAiB,CAACS,EAAE,CAAC,CAAC;MACjD;MACA,OAAOhB,MAAM,CAACsB,IAAI,CAAC,IAAId,oBAAoB,CAACe,MAAM,CAACH,KAAK,CAAC,CAAC;IAC9D;IAEA,MAAMO,IAAI,GAAGrB,iBAAiB,CAACsB,MAAM,CAACL,MAAM,CAACM,KAAK,CAAC;IACnD,OAAO7B,MAAM,CAAC8B,EAAE,CAACH,IAAI,CAAC;EAC1B;AACJ;AAEA,OAAO,MAAMxB,oBAAoB,GAAGC,qBAAqB,CAAC2B,oBAAoB,CAAC;EAC3EC,cAAc,EAAEtB,wBAAwB;EACxCuB,YAAY,EAAE,CAAChC,kBAAkB,EAAEC,mBAAmB,EAAEG,SAAS;AACrE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/UpdatePage/UpdatePageRepository.js","sources":["../../../../src/features/pages/UpdatePage/UpdatePageRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { UpdateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/UpdateEntry\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById\";\nimport { UpdatePageRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport {\n PageNotFoundError,\n PagePersistenceError,\n PageValidationError\n} from \"~/domain/page/errors.js\";\n\nclass UpdatePageRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private updateEntry: UpdateEntryUseCase.Interface,\n private getEntryById: GetEntryByIdUseCase.Interface,\n private pageModel: PageModel.Interface\n ) {}\n\n async execute(\n id: string,\n data: RepositoryAbstraction.UpdateData\n ): RepositoryAbstraction.Return {\n // First, validate the page exists\n const getResult = await this.getEntryById.execute(this.pageModel, id);\n\n if (getResult.isFail()) {\n if (getResult.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new PageNotFoundError(id));\n }\n return Result.fail(new PagePersistenceError(getResult.error));\n }\n\n // Update the entry\n const result = await this.updateEntry.execute(this.pageModel, id, {\n location: data.location,\n values: data\n });\n\n if (result.isFail()) {\n if (result.error.code === \"Cms/Entry/ValidationError\") {\n return Result.fail(new PageValidationError(result.error.message));\n }\n if (result.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new PageNotFoundError(id));\n }\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const page = EntryToPageMapper.toPage(result.value);\n return Result.ok(page);\n }\n}\n\nexport const UpdatePageRepository = RepositoryAbstraction.createImplementation({\n implementation: UpdatePageRepositoryImpl,\n dependencies: [UpdateEntryUseCase, GetEntryByIdUseCase, PageModel]\n});\n"],"names":["UpdatePageRepositoryImpl","updateEntry","getEntryById","pageModel","id","data","getResult","Result","PageNotFoundError","PagePersistenceError","result","PageValidationError","page","EntryToPageMapper","UpdatePageRepository","RepositoryAbstraction","UpdateEntryUseCase","GetEntryByIdUseCase","PageModel"],"mappings":";;;;;;;AAYA,MAAMA;IACF,YACYC,WAAyC,EACzCC,YAA2C,EAC3CC,SAA8B,CACxC;aAHUF,WAAW,GAAXA;aACAC,YAAY,GAAZA;aACAC,SAAS,GAATA;IACT;IAEH,MAAM,QACFC,EAAU,EACVC,IAAsC,EACV;QAE5B,MAAMC,YAAY,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAEF;QAElE,IAAIE,UAAU,MAAM,IAAI;YACpB,IAAIA,AAAyB,yBAAzBA,UAAU,KAAK,CAAC,IAAI,EACpB,OAAOC,OAAO,IAAI,CAAC,IAAIC,kBAAkBJ;YAE7C,OAAOG,OAAO,IAAI,CAAC,IAAIE,qBAAqBH,UAAU,KAAK;QAC/D;QAGA,MAAMI,SAAS,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAEN,IAAI;YAC9D,UAAUC,KAAK,QAAQ;YACvB,QAAQA;QACZ;QAEA,IAAIK,OAAO,MAAM,IAAI;YACjB,IAAIA,AAAsB,gCAAtBA,OAAO,KAAK,CAAC,IAAI,EACjB,OAAOH,OAAO,IAAI,CAAC,IAAII,oBAAoBD,OAAO,KAAK,CAAC,OAAO;YAEnE,IAAIA,AAAsB,yBAAtBA,OAAO,KAAK,CAAC,IAAI,EACjB,OAAOH,OAAO,IAAI,CAAC,IAAIC,kBAAkBJ;YAE7C,OAAOG,OAAO,IAAI,CAAC,IAAIE,qBAAqBC,OAAO,KAAK;QAC5D;QAEA,MAAME,OAAOC,kBAAkB,MAAM,CAACH,OAAO,KAAK;QAClD,OAAOH,OAAO,EAAE,CAACK;IACrB;AACJ;AAEO,MAAME,4CAAuBC,qBAAAA,oBAA0C,CAAC;IAC3E,gBAAgBf;IAChB,cAAc;QAACgB;QAAoBC;QAAqBC;KAAU;AACtE"}
@@ -1,11 +1,13 @@
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 { UpdatePageUseCase as UseCaseAbstraction, UpdatePageRepository } from "./abstractions.js";
3
3
  import { GetPageByIdUseCase } from "../../../features/pages/GetPageById/index.js";
4
+ import { WbPermissions } from "../../../features/permissions/abstractions.js";
4
5
  declare class UpdatePageUseCaseImpl implements UseCaseAbstraction.Interface {
6
+ private permissions;
5
7
  private eventPublisher;
6
8
  private getPageById;
7
9
  private repository;
8
- constructor(eventPublisher: EventPublisherAbstraction.Interface, getPageById: GetPageByIdUseCase.Interface, repository: UpdatePageRepository.Interface);
10
+ constructor(permissions: WbPermissions.Interface, eventPublisher: EventPublisherAbstraction.Interface, getPageById: GetPageByIdUseCase.Interface, repository: UpdatePageRepository.Interface);
9
11
  execute(id: string, data: UseCaseAbstraction.UpdateData): UseCaseAbstraction.Return;
10
12
  }
11
13
  export declare const UpdatePageUseCase: typeof UpdatePageUseCaseImpl & {
@@ -1,54 +1,56 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
3
- import { UpdatePageUseCase as UseCaseAbstraction, UpdatePageRepository } from "./abstractions.js";
4
- import { PageBeforeUpdateEvent, PageAfterUpdateEvent } from "./events.js";
2
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
3
+ import { UpdatePageRepository, UpdatePageUseCase } from "./abstractions.js";
4
+ import { PageAfterUpdateEvent, PageBeforeUpdateEvent } from "./events.js";
5
5
  import { GetPageByIdUseCase } from "../GetPageById/index.js";
6
+ import { WbPermissions } from "../../permissions/abstractions.js";
7
+ import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
6
8
  class UpdatePageUseCaseImpl {
7
- constructor(eventPublisher, getPageById, repository) {
8
- this.eventPublisher = eventPublisher;
9
- this.getPageById = getPageById;
10
- this.repository = repository;
11
- }
12
- async execute(id, data) {
13
- // Get the original page for events
14
- const getResult = await this.getPageById.execute(id);
15
- if (getResult.isFail()) {
16
- return getResult;
9
+ constructor(permissions, eventPublisher, getPageById, repository){
10
+ this.permissions = permissions;
11
+ this.eventPublisher = eventPublisher;
12
+ this.getPageById = getPageById;
13
+ this.repository = repository;
17
14
  }
18
- const original = getResult.value;
19
-
20
- // Publish before update event
21
- const beforeEvent = new PageBeforeUpdateEvent({
22
- original,
23
- input: {
24
- id,
25
- data
26
- }
27
- });
28
- await this.eventPublisher.publish(beforeEvent);
29
-
30
- // Execute the update operation
31
- const result = await this.repository.execute(id, data);
32
- if (result.isFail()) {
33
- return result;
15
+ async execute(id, data) {
16
+ const hasPermission = await this.permissions.canEdit("page");
17
+ if (!hasPermission) return Result.fail(new PageNotAuthorizedError());
18
+ const getResult = await this.getPageById.execute(id);
19
+ if (getResult.isFail()) return getResult;
20
+ const original = getResult.value;
21
+ const canEdit = await this.permissions.canEdit("page", original);
22
+ if (!canEdit) return Result.fail(new PageNotAuthorizedError());
23
+ const beforeEvent = new PageBeforeUpdateEvent({
24
+ original,
25
+ input: {
26
+ id,
27
+ data
28
+ }
29
+ });
30
+ await this.eventPublisher.publish(beforeEvent);
31
+ const result = await this.repository.execute(id, data);
32
+ if (result.isFail()) return result;
33
+ const afterEvent = new PageAfterUpdateEvent({
34
+ original,
35
+ input: {
36
+ id,
37
+ data
38
+ },
39
+ page: result.value
40
+ });
41
+ await this.eventPublisher.publish(afterEvent);
42
+ return Result.ok(result.value);
34
43
  }
35
-
36
- // Publish after update event
37
- const afterEvent = new PageAfterUpdateEvent({
38
- original,
39
- input: {
40
- id,
41
- data
42
- },
43
- page: result.value
44
- });
45
- await this.eventPublisher.publish(afterEvent);
46
- return Result.ok(result.value);
47
- }
48
44
  }
49
- export const UpdatePageUseCase = UseCaseAbstraction.createImplementation({
50
- implementation: UpdatePageUseCaseImpl,
51
- dependencies: [EventPublisher, GetPageByIdUseCase, UpdatePageRepository]
45
+ const UpdatePageUseCase_UpdatePageUseCase = UpdatePageUseCase.createImplementation({
46
+ implementation: UpdatePageUseCaseImpl,
47
+ dependencies: [
48
+ WbPermissions,
49
+ EventPublisher,
50
+ GetPageByIdUseCase,
51
+ UpdatePageRepository
52
+ ]
52
53
  });
54
+ export { UpdatePageUseCase_UpdatePageUseCase as UpdatePageUseCase };
53
55
 
54
56
  //# sourceMappingURL=UpdatePageUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","EventPublisher","UpdatePageUseCase","UseCaseAbstraction","UpdatePageRepository","PageBeforeUpdateEvent","PageAfterUpdateEvent","GetPageByIdUseCase","UpdatePageUseCaseImpl","constructor","eventPublisher","getPageById","repository","execute","id","data","getResult","isFail","original","value","beforeEvent","input","publish","result","afterEvent","page","ok","createImplementation","implementation","dependencies"],"sources":["UpdatePageUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n EventPublisher,\n EventPublisher as EventPublisherAbstraction\n} from \"@webiny/api-core/features/EventPublisher\";\nimport { UpdatePageUseCase as UseCaseAbstraction, UpdatePageRepository } from \"./abstractions.js\";\nimport { PageBeforeUpdateEvent, PageAfterUpdateEvent } from \"./events.js\";\nimport { GetPageByIdUseCase } from \"~/features/pages/GetPageById/index.js\";\n\nclass UpdatePageUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getPageById: GetPageByIdUseCase.Interface,\n private repository: UpdatePageRepository.Interface\n ) {}\n\n async execute(id: string, data: UseCaseAbstraction.UpdateData): UseCaseAbstraction.Return {\n // Get the original page for events\n const getResult = await this.getPageById.execute(id);\n\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n // Publish before update event\n const beforeEvent = new PageBeforeUpdateEvent({\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 PageAfterUpdateEvent({\n original,\n input: { id, data },\n page: result.value\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const UpdatePageUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdatePageUseCaseImpl,\n dependencies: [EventPublisher, GetPageByIdUseCase, UpdatePageRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SACIC,cAAc,QAEX,0CAA0C;AACjD,SAASC,iBAAiB,IAAIC,kBAAkB,EAAEC,oBAAoB;AACtE,SAASC,qBAAqB,EAAEC,oBAAoB;AACpD,SAASC,kBAAkB;AAE3B,MAAMC,qBAAqB,CAAyC;EAChEC,WAAWA,CACCC,cAAmD,EACnDC,WAAyC,EACzCC,UAA0C,EACpD;IAAA,KAHUF,cAAmD,GAAnDA,cAAmD;IAAA,KACnDC,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,UAA0C,GAA1CA,UAA0C;EACnD;EAEH,MAAMC,OAAOA,CAACC,EAAU,EAAEC,IAAmC,EAA6B;IACtF;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACL,WAAW,CAACE,OAAO,CAACC,EAAE,CAAC;IAEpD,IAAIE,SAAS,CAACC,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOD,SAAS;IACpB;IAEA,MAAME,QAAQ,GAAGF,SAAS,CAACG,KAAK;;IAEhC;IACA,MAAMC,WAAW,GAAG,IAAIf,qBAAqB,CAAC;MAC1Ca,QAAQ;MACRG,KAAK,EAAE;QAAEP,EAAE;QAAEC;MAAK;IACtB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACL,cAAc,CAACY,OAAO,CAACF,WAAW,CAAC;;IAE9C;IACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACX,UAAU,CAACC,OAAO,CAACC,EAAE,EAAEC,IAAI,CAAC;IAEtD,IAAIQ,MAAM,CAACN,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOM,MAAM;IACjB;;IAEA;IACA,MAAMC,UAAU,GAAG,IAAIlB,oBAAoB,CAAC;MACxCY,QAAQ;MACRG,KAAK,EAAE;QAAEP,EAAE;QAAEC;MAAK,CAAC;MACnBU,IAAI,EAAEF,MAAM,CAACJ;IACjB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACT,cAAc,CAACY,OAAO,CAACE,UAAU,CAAC;IAE7C,OAAOxB,MAAM,CAAC0B,EAAE,CAACH,MAAM,CAACJ,KAAK,CAAC;EAClC;AACJ;AAEA,OAAO,MAAMjB,iBAAiB,GAAGC,kBAAkB,CAACwB,oBAAoB,CAAC;EACrEC,cAAc,EAAEpB,qBAAqB;EACrCqB,YAAY,EAAE,CAAC5B,cAAc,EAAEM,kBAAkB,EAAEH,oBAAoB;AAC3E,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/UpdatePage/UpdatePageUseCase.js","sources":["../../../../src/features/pages/UpdatePage/UpdatePageUseCase.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 { UpdatePageUseCase as UseCaseAbstraction, UpdatePageRepository } from \"./abstractions.js\";\nimport { PageBeforeUpdateEvent, PageAfterUpdateEvent } from \"./events.js\";\nimport { GetPageByIdUseCase } from \"~/features/pages/GetPageById/index.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\nclass UpdatePageUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getPageById: GetPageByIdUseCase.Interface,\n private repository: UpdatePageRepository.Interface\n ) {}\n\n async execute(id: string, data: UseCaseAbstraction.UpdateData): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canEdit(\"page\");\n if (!hasPermission) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n // Get the original page for events\n const getResult = await this.getPageById.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(\"page\", original);\n if (!canEdit) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n // Publish before update event\n const beforeEvent = new PageBeforeUpdateEvent({\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 PageAfterUpdateEvent({\n original,\n input: { id, data },\n page: result.value\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const UpdatePageUseCase = UseCaseAbstraction.createImplementation({\n implementation: UpdatePageUseCaseImpl,\n dependencies: [WbPermissions, EventPublisher, GetPageByIdUseCase, UpdatePageRepository]\n});\n"],"names":["UpdatePageUseCaseImpl","permissions","eventPublisher","getPageById","repository","id","data","hasPermission","Result","PageNotAuthorizedError","getResult","original","canEdit","beforeEvent","PageBeforeUpdateEvent","result","afterEvent","PageAfterUpdateEvent","UpdatePageUseCase","UseCaseAbstraction","WbPermissions","EventPublisher","GetPageByIdUseCase","UpdatePageRepository"],"mappings":";;;;;;;AAWA,MAAMA;IACF,YACYC,WAAoC,EACpCC,cAAmD,EACnDC,WAAyC,EACzCC,UAA0C,CACpD;aAJUH,WAAW,GAAXA;aACAC,cAAc,GAAdA;aACAC,WAAW,GAAXA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,EAAU,EAAEC,IAAmC,EAA6B;QACtF,MAAMC,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACrD,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAI3B,MAAMC,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAACL;QAEjD,IAAIK,UAAU,MAAM,IAChB,OAAOA;QAGX,MAAMC,WAAWD,UAAU,KAAK;QAEhC,MAAME,UAAU,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,QAAQD;QACvD,IAAI,CAACC,SACD,OAAOJ,OAAO,IAAI,CAAC,IAAIC;QAI3B,MAAMI,cAAc,IAAIC,sBAAsB;YAC1CH;YACA,OAAO;gBAAEN;gBAAIC;YAAK;QACtB;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACO;QAGlC,MAAME,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACV,IAAIC;QAEjD,IAAIS,OAAO,MAAM,IACb,OAAOA;QAIX,MAAMC,aAAa,IAAIC,qBAAqB;YACxCN;YACA,OAAO;gBAAEN;gBAAIC;YAAK;YAClB,MAAMS,OAAO,KAAK;QACtB;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACC;QAElC,OAAOR,OAAO,EAAE,CAACO,OAAO,KAAK;IACjC;AACJ;AAEO,MAAMG,sCAAoBC,kBAAAA,oBAAuC,CAAC;IACrE,gBAAgBnB;IAChB,cAAc;QAACoB;QAAeC;QAAgBC;QAAoBC;KAAqB;AAC3F"}
@@ -1,17 +1,16 @@
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 { DomainEvent, IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js";
4
3
  import type { WbPage } from "../../../domain/page/abstractions.js";
5
4
  import type { WbLocation } from "../../../domain/shared/abstractions.js";
6
- import type { IEntryState } from "@webiny/api-headless-cms/types/index.js";
7
- import { PageValidationError, PageNotFoundError, PagePersistenceError } from "../../../domain/page/errors.js";
5
+ import type { ICmsEntrySystem } from "@webiny/api-headless-cms/types/index.js";
6
+ import { PageNotAuthorizedError, PageNotFoundError, PagePersistenceError, PageValidationError } from "../../../domain/page/errors.js";
8
7
  export interface IUpdateWbPageData {
9
8
  location?: WbLocation;
10
9
  properties?: Record<string, any>;
11
10
  metadata?: Record<string, any>;
12
11
  bindings?: Record<string, any>;
13
12
  elements?: Record<string, any>;
14
- state?: Partial<IEntryState>;
13
+ system?: ICmsEntrySystem;
15
14
  }
16
15
  export interface IUpdatePageRepository {
17
16
  execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, RepositoryError>>;
@@ -33,11 +32,13 @@ export interface IUpdatePageUseCase {
33
32
  execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, UseCaseError>>;
34
33
  }
35
34
  export interface IUpdatePageUseCaseErrors {
35
+ notAuthorized: PageNotAuthorizedError;
36
36
  validation: PageValidationError;
37
37
  notFound: PageNotFoundError;
38
38
  persistence: PagePersistenceError;
39
39
  }
40
40
  type UseCaseError = IUpdatePageUseCaseErrors[keyof IUpdatePageUseCaseErrors];
41
+ /** Update a page. */
41
42
  export declare const UpdatePageUseCase: import("@webiny/di").Abstraction<IUpdatePageUseCase>;
42
43
  export declare namespace UpdatePageUseCase {
43
44
  type Interface = IUpdatePageUseCase;
@@ -61,14 +62,16 @@ export interface PageAfterUpdatePayload {
61
62
  };
62
63
  page: WbPage;
63
64
  }
64
- export declare const PageBeforeUpdateHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageBeforeUpdatePayload>>>;
65
- export declare namespace PageBeforeUpdateHandler {
65
+ /** Hook into page lifecycle before a page is updated. */
66
+ export declare const PageBeforeUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageBeforeUpdatePayload>>>;
67
+ export declare namespace PageBeforeUpdateEventHandler {
66
68
  type Interface = IEventHandler<DomainEvent<PageBeforeUpdatePayload>>;
67
69
  type Event = DomainEvent<PageBeforeUpdatePayload>;
68
70
  type Page = WbPage;
69
71
  }
70
- export declare const PageAfterUpdateHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageAfterUpdatePayload>>>;
71
- export declare namespace PageAfterUpdateHandler {
72
+ /** Hook into page lifecycle after a page is updated. */
73
+ export declare const PageAfterUpdateEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageAfterUpdatePayload>>>;
74
+ export declare namespace PageAfterUpdateEventHandler {
72
75
  type Interface = IEventHandler<DomainEvent<PageAfterUpdatePayload>>;
73
76
  type Event = DomainEvent<PageAfterUpdatePayload>;
74
77
  type Page = WbPage;
@@ -1,30 +1,8 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- // ============================================================================
4
- // Type Definitions
5
- // ============================================================================
6
-
7
- // ============================================================================
8
- // Repository Abstraction
9
- // ============================================================================
10
-
11
- export const UpdatePageRepository = createAbstraction("Wb/UpdatePageRepository");
12
-
13
- // ============================================================================
14
- // Use Case Abstraction
15
- // ============================================================================
16
-
17
- export const UpdatePageUseCase = createAbstraction("Wb/UpdatePageUseCase");
18
-
19
- // ============================================================================
20
- // Event Payload Types
21
- // ============================================================================
22
-
23
- // ============================================================================
24
- // Event Handler Abstractions
25
- // ============================================================================
26
-
27
- export const PageBeforeUpdateHandler = createAbstraction("Wb/PageBeforeUpdateHandler");
28
- export const PageAfterUpdateHandler = createAbstraction("Wb/PageAfterUpdateHandler");
2
+ const UpdatePageRepository = createAbstraction("Wb/UpdatePageRepository");
3
+ const UpdatePageUseCase = createAbstraction("Wb/UpdatePageUseCase");
4
+ const PageBeforeUpdateEventHandler = createAbstraction("Wb/PageBeforeUpdateEventHandler");
5
+ const PageAfterUpdateEventHandler = createAbstraction("Wb/PageAfterUpdateEventHandler");
6
+ export { PageAfterUpdateEventHandler, PageBeforeUpdateEventHandler, UpdatePageRepository, UpdatePageUseCase };
29
7
 
30
8
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","UpdatePageRepository","UpdatePageUseCase","PageBeforeUpdateHandler","PageAfterUpdateHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { WbLocation } from \"~/domain/shared/abstractions.js\";\nimport type { IEntryState } from \"@webiny/api-headless-cms/types/index.js\";\nimport {\n PageValidationError,\n PageNotFoundError,\n PagePersistenceError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUpdateWbPageData {\n location?: WbLocation;\n properties?: Record<string, any>;\n metadata?: Record<string, any>;\n bindings?: Record<string, any>;\n elements?: Record<string, any>;\n // Workflows - remove when workflows are more generic\n state?: Partial<IEntryState>;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUpdatePageRepository {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IUpdatePageRepositoryErrors {\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IUpdatePageRepositoryErrors[keyof IUpdatePageRepositoryErrors];\n\nexport const UpdatePageRepository =\n createAbstraction<IUpdatePageRepository>(\"Wb/UpdatePageRepository\");\n\nexport namespace UpdatePageRepository {\n export type Interface = IUpdatePageRepository;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IUpdatePageUseCase {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IUpdatePageUseCaseErrors {\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IUpdatePageUseCaseErrors[keyof IUpdatePageUseCaseErrors];\n\nexport const UpdatePageUseCase = createAbstraction<IUpdatePageUseCase>(\"Wb/UpdatePageUseCase\");\n\nexport namespace UpdatePageUseCase {\n export type Interface = IUpdatePageUseCase;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n}\n\nexport interface PageAfterUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\nexport const PageBeforeUpdateHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeUpdatePayload>>\n>(\"Wb/PageBeforeUpdateHandler\");\n\nexport namespace PageBeforeUpdateHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeUpdatePayload>>;\n export type Event = DomainEvent<PageBeforeUpdatePayload>;\n export type Page = WbPage;\n}\n\nexport const PageAfterUpdateHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterUpdatePayload>>\n>(\"Wb/PageAfterUpdateHandler\");\n\nexport namespace PageAfterUpdateHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterUpdatePayload>>;\n export type Event = DomainEvent<PageAfterUpdatePayload>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAYpE;AACA;AACA;;AAYA;AACA;AACA;;AAcA,OAAO,MAAMC,oBAAoB,GAC7BD,iBAAiB,CAAwB,yBAAyB,CAAC;;AASvE;AACA;AACA;;AAcA,OAAO,MAAME,iBAAiB,GAAGF,iBAAiB,CAAqB,sBAAsB,CAAC;;AAU9F;AACA;AACA;;AAmBA;AACA;AACA;;AAEA,OAAO,MAAMG,uBAAuB,GAAGH,iBAAiB,CAEtD,4BAA4B,CAAC;AAQ/B,OAAO,MAAMI,sBAAsB,GAAGJ,iBAAiB,CAErD,2BAA2B,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/UpdatePage/abstractions.js","sources":["../../../../src/features/pages/UpdatePage/abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { DomainEvent, IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { WbLocation } from \"~/domain/shared/abstractions.js\";\nimport type { ICmsEntrySystem } from \"@webiny/api-headless-cms/types/index.js\";\nimport {\n PageNotAuthorizedError,\n PageNotFoundError,\n PagePersistenceError,\n PageValidationError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IUpdateWbPageData {\n location?: WbLocation;\n properties?: Record<string, any>;\n metadata?: Record<string, any>;\n bindings?: Record<string, any>;\n elements?: Record<string, any>;\n system?: ICmsEntrySystem;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IUpdatePageRepository {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IUpdatePageRepositoryErrors {\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IUpdatePageRepositoryErrors[keyof IUpdatePageRepositoryErrors];\n\nexport const UpdatePageRepository =\n createAbstraction<IUpdatePageRepository>(\"Wb/UpdatePageRepository\");\n\nexport namespace UpdatePageRepository {\n export type Interface = IUpdatePageRepository;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IUpdatePageUseCase {\n execute(id: string, data: IUpdateWbPageData): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IUpdatePageUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IUpdatePageUseCaseErrors[keyof IUpdatePageUseCaseErrors];\n\n/** Update a page. */\nexport const UpdatePageUseCase = createAbstraction<IUpdatePageUseCase>(\"Wb/UpdatePageUseCase\");\n\nexport namespace UpdatePageUseCase {\n export type Interface = IUpdatePageUseCase;\n export type UpdateData = IUpdateWbPageData;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n}\n\nexport interface PageAfterUpdatePayload {\n original: WbPage;\n input: {\n id: string;\n data: IUpdateWbPageData;\n };\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into page lifecycle before a page is updated. */\nexport const PageBeforeUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeUpdatePayload>>\n>(\"Wb/PageBeforeUpdateEventHandler\");\n\nexport namespace PageBeforeUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeUpdatePayload>>;\n export type Event = DomainEvent<PageBeforeUpdatePayload>;\n export type Page = WbPage;\n}\n\n/** Hook into page lifecycle after a page is updated. */\nexport const PageAfterUpdateEventHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterUpdatePayload>>\n>(\"Wb/PageAfterUpdateEventHandler\");\n\nexport namespace PageAfterUpdateEventHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterUpdatePayload>>;\n export type Event = DomainEvent<PageAfterUpdatePayload>;\n export type Page = WbPage;\n}\n"],"names":["UpdatePageRepository","createAbstraction","UpdatePageUseCase","PageBeforeUpdateEventHandler","PageAfterUpdateEventHandler"],"mappings":";AAyCO,MAAMA,uBACTC,kBAAyC;AA2BtC,MAAMC,oBAAoBD,kBAAsC;AAoChE,MAAME,+BAA+BF,kBAE1C;AASK,MAAMG,8BAA8BH,kBAEzC"}
@@ -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 { PageBeforeUpdatePayload, PageAfterUpdatePayload } from "./abstractions.js";
3
3
  export declare class PageBeforeUpdateEvent extends DomainEvent<PageBeforeUpdatePayload> {
4
4
  eventType: "page.beforeUpdate";
5
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageBeforeUpdatePayload>>>;
5
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<PageBeforeUpdatePayload>>>;
6
6
  }
7
7
  export declare class PageAfterUpdateEvent extends DomainEvent<PageAfterUpdatePayload> {
8
8
  eventType: "page.afterUpdate";
9
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageAfterUpdatePayload>>>;
9
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<PageAfterUpdatePayload>>>;
10
10
  }
@@ -1,19 +1,21 @@
1
- import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
- import { PageBeforeUpdateHandler, PageAfterUpdateHandler } from "./abstractions.js";
3
- // PageBeforeUpdate Event
4
- export class PageBeforeUpdateEvent extends DomainEvent {
5
- eventType = "page.beforeUpdate";
6
- getHandlerAbstraction() {
7
- return PageBeforeUpdateHandler;
8
- }
1
+ import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
2
+ import { PageAfterUpdateEventHandler, PageBeforeUpdateEventHandler } from "./abstractions.js";
3
+ class PageBeforeUpdateEvent extends DomainEvent {
4
+ getHandlerAbstraction() {
5
+ return PageBeforeUpdateEventHandler;
6
+ }
7
+ constructor(...args){
8
+ super(...args), this.eventType = "page.beforeUpdate";
9
+ }
9
10
  }
10
-
11
- // PageAfterUpdate Event
12
- export class PageAfterUpdateEvent extends DomainEvent {
13
- eventType = "page.afterUpdate";
14
- getHandlerAbstraction() {
15
- return PageAfterUpdateHandler;
16
- }
11
+ class PageAfterUpdateEvent extends DomainEvent {
12
+ getHandlerAbstraction() {
13
+ return PageAfterUpdateEventHandler;
14
+ }
15
+ constructor(...args){
16
+ super(...args), this.eventType = "page.afterUpdate";
17
+ }
17
18
  }
19
+ export { PageAfterUpdateEvent, PageBeforeUpdateEvent };
18
20
 
19
21
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DomainEvent","PageBeforeUpdateHandler","PageAfterUpdateHandler","PageBeforeUpdateEvent","eventType","getHandlerAbstraction","PageAfterUpdateEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { PageBeforeUpdateHandler, PageAfterUpdateHandler } from \"./abstractions.js\";\nimport type { PageBeforeUpdatePayload, PageAfterUpdatePayload } from \"./abstractions.js\";\n\n// PageBeforeUpdate Event\nexport class PageBeforeUpdateEvent extends DomainEvent<PageBeforeUpdatePayload> {\n eventType = \"page.beforeUpdate\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeUpdateHandler;\n }\n}\n\n// PageAfterUpdate Event\nexport class PageAfterUpdateEvent extends DomainEvent<PageAfterUpdatePayload> {\n eventType = \"page.afterUpdate\" as const;\n\n getHandlerAbstraction() {\n return PageAfterUpdateHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,uBAAuB,EAAEC,sBAAsB;AAGxD;AACA,OAAO,MAAMC,qBAAqB,SAASH,WAAW,CAA0B;EAC5EI,SAAS,GAAG,mBAAmB;EAE/BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,uBAAuB;EAClC;AACJ;;AAEA;AACA,OAAO,MAAMK,oBAAoB,SAASN,WAAW,CAAyB;EAC1EI,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,sBAAsB;EACjC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/UpdatePage/events.js","sources":["../../../../src/features/pages/UpdatePage/events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { PageBeforeUpdateEventHandler, PageAfterUpdateEventHandler } from \"./abstractions.js\";\nimport type { PageBeforeUpdatePayload, PageAfterUpdatePayload } from \"./abstractions.js\";\n\n// PageBeforeUpdate Event\nexport class PageBeforeUpdateEvent extends DomainEvent<PageBeforeUpdatePayload> {\n eventType = \"page.beforeUpdate\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeUpdateEventHandler;\n }\n}\n\n// PageAfterUpdate Event\nexport class PageAfterUpdateEvent extends DomainEvent<PageAfterUpdatePayload> {\n eventType = \"page.afterUpdate\" as const;\n\n getHandlerAbstraction() {\n return PageAfterUpdateEventHandler;\n }\n}\n"],"names":["PageBeforeUpdateEvent","DomainEvent","PageBeforeUpdateEventHandler","PageAfterUpdateEvent","PageAfterUpdateEventHandler"],"mappings":";;AAKO,MAAMA,8BAA8BC;IAGvC,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMC,6BAA6BF;IAGtC,wBAAwB;QACpB,OAAOG;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB"}
@@ -1 +1,4 @@
1
- export declare const UpdatePageFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const UpdatePageFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -1,12 +1,13 @@
1
1
  import { createFeature } from "@webiny/feature/api";
2
2
  import { UpdatePageRepository } from "./UpdatePageRepository.js";
3
3
  import { UpdatePageUseCase } from "./UpdatePageUseCase.js";
4
- export const UpdatePageFeature = createFeature({
5
- name: "WebsiteBuilder/UpdatePage",
6
- register(container) {
7
- container.register(UpdatePageRepository).inSingletonScope();
8
- container.register(UpdatePageUseCase);
9
- }
4
+ const UpdatePageFeature = createFeature({
5
+ name: "WebsiteBuilder/UpdatePage",
6
+ register (container) {
7
+ container.register(UpdatePageRepository).inSingletonScope();
8
+ container.register(UpdatePageUseCase);
9
+ }
10
10
  });
11
+ export { UpdatePageFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","UpdatePageRepository","UpdatePageUseCase","UpdatePageFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpdatePageRepository } from \"./UpdatePageRepository.js\";\nimport { UpdatePageUseCase } from \"./UpdatePageUseCase.js\";\n\nexport const UpdatePageFeature = createFeature({\n name: \"WebsiteBuilder/UpdatePage\",\n register(container) {\n container.register(UpdatePageRepository).inSingletonScope();\n container.register(UpdatePageUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,oBAAoB;AAC7B,SAASC,iBAAiB;AAE1B,OAAO,MAAMC,iBAAiB,GAAGH,aAAa,CAAC;EAC3CI,IAAI,EAAE,2BAA2B;EACjCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,oBAAoB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC3DD,SAAS,CAACD,QAAQ,CAACH,iBAAiB,CAAC;EACzC;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/UpdatePage/feature.js","sources":["../../../../src/features/pages/UpdatePage/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { UpdatePageRepository } from \"./UpdatePageRepository.js\";\nimport { UpdatePageUseCase } from \"./UpdatePageUseCase.js\";\n\nexport const UpdatePageFeature = createFeature({\n name: \"WebsiteBuilder/UpdatePage\",\n register(container) {\n container.register(UpdatePageRepository).inSingletonScope();\n container.register(UpdatePageUseCase);\n }\n});\n"],"names":["UpdatePageFeature","createFeature","container","UpdatePageRepository","UpdatePageUseCase"],"mappings":";;;AAIO,MAAMA,oBAAoBC,cAAc;IAC3C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,sBAAsB,gBAAgB;QACzDD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1 +1 @@
1
- export { PageAfterUpdateHandler, PageBeforeUpdateHandler, UpdatePageUseCase } from "./abstractions.js";
1
+ export { PageAfterUpdateEventHandler, PageBeforeUpdateEventHandler, UpdatePageUseCase } from "./abstractions.js";