@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 +1 @@
1
- {"version":3,"names":["createFeature","ListRedirectsRepository","ListRedirectsUseCase","ListRedirectsFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListRedirectsRepository } from \"./ListRedirectsRepository.js\";\nimport { ListRedirectsUseCase } from \"./ListRedirectsUseCase.js\";\n\nexport const ListRedirectsFeature = createFeature({\n name: \"WebsiteBuilder/ListRedirects\",\n register(container) {\n container.register(ListRedirectsRepository).inSingletonScope();\n container.register(ListRedirectsUseCase);\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/redirects/ListRedirects/feature.js","sources":["../../../../src/features/redirects/ListRedirects/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { ListRedirectsRepository } from \"./ListRedirectsRepository.js\";\nimport { ListRedirectsUseCase } from \"./ListRedirectsUseCase.js\";\n\nexport const ListRedirectsFeature = createFeature({\n name: \"WebsiteBuilder/ListRedirects\",\n register(container) {\n container.register(ListRedirectsRepository).inSingletonScope();\n container.register(ListRedirectsUseCase);\n }\n});\n"],"names":["ListRedirectsFeature","createFeature","container","ListRedirectsRepository","ListRedirectsUseCase"],"mappings":";;;AAIO,MAAMA,uBAAuBC,cAAc;IAC9C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,yBAAyB,gBAAgB;QAC5DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1,3 +1 @@
1
1
  export { ListRedirectsUseCase } from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -1,39 +1,37 @@
1
1
  import { Result } from "@webiny/feature/api";
2
- import { MoveRedirectRepository as RepositoryAbstraction } from "./abstractions.js";
2
+ import { MoveRedirectRepository } from "./abstractions.js";
3
3
  import { RedirectModel } from "../../../domain/redirect/abstractions.js";
4
4
  import { RedirectPersistenceError } from "../../../domain/redirect/errors.js";
5
5
  import { MoveEntryRepository } from "@webiny/api-headless-cms/features/contentEntry/MoveEntry/index.js";
6
6
  import { GetRedirectByIdRepository } from "../GetRedirectById/abstractions.js";
7
7
  class MoveRedirectRepositoryImpl {
8
- constructor(redirectModel, moveEntry, getRedirectById) {
9
- this.redirectModel = redirectModel;
10
- this.moveEntry = moveEntry;
11
- this.getRedirectById = getRedirectById;
12
- }
13
- async execute(params) {
14
- // First, validate the redirect exists
15
- const getResult = await this.getRedirectById.execute(params.id);
16
- if (getResult.isFail()) {
17
- return Result.fail(getResult.error);
8
+ constructor(redirectModel, moveEntry, getRedirectById){
9
+ this.redirectModel = redirectModel;
10
+ this.moveEntry = moveEntry;
11
+ this.getRedirectById = getRedirectById;
18
12
  }
19
-
20
- // Update the redirect location with the new folderId
21
- const result = await this.moveEntry.execute(this.redirectModel, params.id, params.folderId);
22
- if (result.isFail()) {
23
- return Result.fail(new RedirectPersistenceError(result.error));
13
+ async execute(params) {
14
+ const getResult = await this.getRedirectById.execute(params.id);
15
+ if (getResult.isFail()) return Result.fail(getResult.error);
16
+ const result = await this.moveEntry.execute(this.redirectModel, params.id, params.folderId);
17
+ if (result.isFail()) return Result.fail(new RedirectPersistenceError(result.error));
18
+ const movedRedirect = {
19
+ ...getResult.value,
20
+ location: {
21
+ folderId: params.folderId
22
+ }
23
+ };
24
+ return Result.ok(movedRedirect);
24
25
  }
25
- const movedRedirect = {
26
- ...getResult.value,
27
- location: {
28
- folderId: params.folderId
29
- }
30
- };
31
- return Result.ok(movedRedirect);
32
- }
33
26
  }
34
- export const MoveRedirectRepository = RepositoryAbstraction.createImplementation({
35
- implementation: MoveRedirectRepositoryImpl,
36
- dependencies: [RedirectModel, MoveEntryRepository, GetRedirectByIdRepository]
27
+ const MoveRedirectRepository_MoveRedirectRepository = MoveRedirectRepository.createImplementation({
28
+ implementation: MoveRedirectRepositoryImpl,
29
+ dependencies: [
30
+ RedirectModel,
31
+ MoveEntryRepository,
32
+ GetRedirectByIdRepository
33
+ ]
37
34
  });
35
+ export { MoveRedirectRepository_MoveRedirectRepository as MoveRedirectRepository };
38
36
 
39
37
  //# sourceMappingURL=MoveRedirectRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","MoveRedirectRepository","RepositoryAbstraction","RedirectModel","RedirectPersistenceError","MoveEntryRepository","GetRedirectByIdRepository","MoveRedirectRepositoryImpl","constructor","redirectModel","moveEntry","getRedirectById","execute","params","getResult","id","isFail","fail","error","result","folderId","movedRedirect","value","location","ok","createImplementation","implementation","dependencies"],"sources":["MoveRedirectRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { MoveRedirectRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { RedirectModel, type WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport { RedirectPersistenceError } from \"~/domain/redirect/errors.js\";\nimport { MoveEntryRepository } from \"@webiny/api-headless-cms/features/contentEntry/MoveEntry/index.js\";\nimport { GetRedirectByIdRepository } from \"~/features/redirects/GetRedirectById/abstractions.js\";\n\nclass MoveRedirectRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private redirectModel: RedirectModel.Interface,\n private moveEntry: MoveEntryRepository.Interface,\n private getRedirectById: GetRedirectByIdRepository.Interface\n ) {}\n\n async execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return {\n // First, validate the redirect exists\n const getResult = await this.getRedirectById.execute(params.id);\n\n if (getResult.isFail()) {\n return Result.fail(getResult.error);\n }\n\n // Update the redirect location with the new folderId\n const result = await this.moveEntry.execute(this.redirectModel, params.id, params.folderId);\n\n if (result.isFail()) {\n return Result.fail(new RedirectPersistenceError(result.error));\n }\n\n const movedRedirect: WbRedirect = {\n ...getResult.value,\n location: {\n folderId: params.folderId\n }\n };\n return Result.ok(movedRedirect);\n }\n}\n\nexport const MoveRedirectRepository = RepositoryAbstraction.createImplementation({\n implementation: MoveRedirectRepositoryImpl,\n dependencies: [RedirectModel, MoveEntryRepository, GetRedirectByIdRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,sBAAsB,IAAIC,qBAAqB;AACxD,SAASC,aAAa;AACtB,SAASC,wBAAwB;AACjC,SAASC,mBAAmB,QAAQ,mEAAmE;AACvG,SAASC,yBAAyB;AAElC,MAAMC,0BAA0B,CAA4C;EACxEC,WAAWA,CACCC,aAAsC,EACtCC,SAAwC,EACxCC,eAAoD,EAC9D;IAAA,KAHUF,aAAsC,GAAtCA,aAAsC;IAAA,KACtCC,SAAwC,GAAxCA,SAAwC;IAAA,KACxCC,eAAoD,GAApDA,eAAoD;EAC7D;EAEH,MAAMC,OAAOA,CAACC,MAAoC,EAAgC;IAC9E;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACH,eAAe,CAACC,OAAO,CAACC,MAAM,CAACE,EAAE,CAAC;IAE/D,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOhB,MAAM,CAACiB,IAAI,CAACH,SAAS,CAACI,KAAK,CAAC;IACvC;;IAEA;IACA,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACT,SAAS,CAACE,OAAO,CAAC,IAAI,CAACH,aAAa,EAAEI,MAAM,CAACE,EAAE,EAAEF,MAAM,CAACO,QAAQ,CAAC;IAE3F,IAAID,MAAM,CAACH,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOhB,MAAM,CAACiB,IAAI,CAAC,IAAIb,wBAAwB,CAACe,MAAM,CAACD,KAAK,CAAC,CAAC;IAClE;IAEA,MAAMG,aAAyB,GAAG;MAC9B,GAAGP,SAAS,CAACQ,KAAK;MAClBC,QAAQ,EAAE;QACNH,QAAQ,EAAEP,MAAM,CAACO;MACrB;IACJ,CAAC;IACD,OAAOpB,MAAM,CAACwB,EAAE,CAACH,aAAa,CAAC;EACnC;AACJ;AAEA,OAAO,MAAMpB,sBAAsB,GAAGC,qBAAqB,CAACuB,oBAAoB,CAAC;EAC7EC,cAAc,EAAEnB,0BAA0B;EAC1CoB,YAAY,EAAE,CAACxB,aAAa,EAAEE,mBAAmB,EAAEC,yBAAyB;AAChF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/redirects/MoveRedirect/MoveRedirectRepository.js","sources":["../../../../src/features/redirects/MoveRedirect/MoveRedirectRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { MoveRedirectRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { RedirectModel, type WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport { RedirectPersistenceError } from \"~/domain/redirect/errors.js\";\nimport { MoveEntryRepository } from \"@webiny/api-headless-cms/features/contentEntry/MoveEntry/index.js\";\nimport { GetRedirectByIdRepository } from \"~/features/redirects/GetRedirectById/abstractions.js\";\n\nclass MoveRedirectRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private redirectModel: RedirectModel.Interface,\n private moveEntry: MoveEntryRepository.Interface,\n private getRedirectById: GetRedirectByIdRepository.Interface\n ) {}\n\n async execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return {\n // First, validate the redirect exists\n const getResult = await this.getRedirectById.execute(params.id);\n\n if (getResult.isFail()) {\n return Result.fail(getResult.error);\n }\n\n // Update the redirect location with the new folderId\n const result = await this.moveEntry.execute(this.redirectModel, params.id, params.folderId);\n\n if (result.isFail()) {\n return Result.fail(new RedirectPersistenceError(result.error));\n }\n\n const movedRedirect: WbRedirect = {\n ...getResult.value,\n location: {\n folderId: params.folderId\n }\n };\n return Result.ok(movedRedirect);\n }\n}\n\nexport const MoveRedirectRepository = RepositoryAbstraction.createImplementation({\n implementation: MoveRedirectRepositoryImpl,\n dependencies: [RedirectModel, MoveEntryRepository, GetRedirectByIdRepository]\n});\n"],"names":["MoveRedirectRepositoryImpl","redirectModel","moveEntry","getRedirectById","params","getResult","Result","result","RedirectPersistenceError","movedRedirect","MoveRedirectRepository","RepositoryAbstraction","RedirectModel","MoveEntryRepository","GetRedirectByIdRepository"],"mappings":";;;;;;AAOA,MAAMA;IACF,YACYC,aAAsC,EACtCC,SAAwC,EACxCC,eAAoD,CAC9D;aAHUF,aAAa,GAAbA;aACAC,SAAS,GAATA;aACAC,eAAe,GAAfA;IACT;IAEH,MAAM,QAAQC,MAAoC,EAAgC;QAE9E,MAAMC,YAAY,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAACD,OAAO,EAAE;QAE9D,IAAIC,UAAU,MAAM,IAChB,OAAOC,OAAO,IAAI,CAACD,UAAU,KAAK;QAItC,MAAME,SAAS,MAAM,IAAI,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAEH,OAAO,EAAE,EAAEA,OAAO,QAAQ;QAE1F,IAAIG,OAAO,MAAM,IACb,OAAOD,OAAO,IAAI,CAAC,IAAIE,yBAAyBD,OAAO,KAAK;QAGhE,MAAME,gBAA4B;YAC9B,GAAGJ,UAAU,KAAK;YAClB,UAAU;gBACN,UAAUD,OAAO,QAAQ;YAC7B;QACJ;QACA,OAAOE,OAAO,EAAE,CAACG;IACrB;AACJ;AAEO,MAAMC,gDAAyBC,uBAAAA,oBAA0C,CAAC;IAC7E,gBAAgBX;IAChB,cAAc;QAACY;QAAeC;QAAqBC;KAA0B;AACjF"}
@@ -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 { MoveRedirectUseCase as UseCaseAbstraction, MoveRedirectRepository } from "./abstractions.js";
3
3
  import { GetRedirectByIdUseCase } from "../../../features/redirects/GetRedirectById/index.js";
4
+ import { WbPermissions } from "../../../features/permissions/abstractions.js";
4
5
  declare class MoveRedirectUseCaseImpl implements UseCaseAbstraction.Interface {
6
+ private permissions;
5
7
  private eventPublisher;
6
8
  private getRedirectById;
7
9
  private repository;
8
- constructor(eventPublisher: EventPublisherAbstraction.Interface, getRedirectById: GetRedirectByIdUseCase.Interface, repository: MoveRedirectRepository.Interface);
10
+ constructor(permissions: WbPermissions.Interface, eventPublisher: EventPublisherAbstraction.Interface, getRedirectById: GetRedirectByIdUseCase.Interface, repository: MoveRedirectRepository.Interface);
9
11
  execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return;
10
12
  }
11
13
  export declare const MoveRedirectUseCase: import("@webiny/di").Implementation<typeof MoveRedirectUseCaseImpl>;
@@ -1,49 +1,51 @@
1
1
  import { Result, createImplementation } from "@webiny/feature/api";
2
- import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
3
- import { MoveRedirectUseCase as UseCaseAbstraction, MoveRedirectRepository } from "./abstractions.js";
4
- import { RedirectBeforeMoveEvent, RedirectAfterMoveEvent } from "./events.js";
2
+ import { EventPublisher } from "@webiny/api-core/features/eventPublisher/index.js";
3
+ import { MoveRedirectRepository, MoveRedirectUseCase } from "./abstractions.js";
4
+ import { RedirectAfterMoveEvent, RedirectBeforeMoveEvent } from "./events.js";
5
5
  import { GetRedirectByIdUseCase } from "../GetRedirectById/index.js";
6
+ import { WbPermissions } from "../../permissions/abstractions.js";
7
+ import { RedirectNotAuthorizedError } from "../../../domain/redirect/errors.js";
6
8
  class MoveRedirectUseCaseImpl {
7
- constructor(eventPublisher, getRedirectById, repository) {
8
- this.eventPublisher = eventPublisher;
9
- this.getRedirectById = getRedirectById;
10
- this.repository = repository;
11
- }
12
- async execute(params) {
13
- // Get the original redirect for events
14
- const getResult = await this.getRedirectById.execute(params.id);
15
- if (getResult.isFail()) {
16
- return getResult;
9
+ constructor(permissions, eventPublisher, getRedirectById, repository){
10
+ this.permissions = permissions;
11
+ this.eventPublisher = eventPublisher;
12
+ this.getRedirectById = getRedirectById;
13
+ this.repository = repository;
17
14
  }
18
- const original = getResult.value;
19
-
20
- // Publish before move event
21
- const beforeEvent = new RedirectBeforeMoveEvent({
22
- original,
23
- input: params
24
- });
25
- await this.eventPublisher.publish(beforeEvent);
26
-
27
- // Execute the move operation
28
- const result = await this.repository.execute(params);
29
- if (result.isFail()) {
30
- return result;
15
+ async execute(params) {
16
+ const hasPermission = await this.permissions.canEdit("redirect");
17
+ if (!hasPermission) return Result.fail(new RedirectNotAuthorizedError());
18
+ const getResult = await this.getRedirectById.execute(params.id);
19
+ if (getResult.isFail()) return getResult;
20
+ const original = getResult.value;
21
+ const canEdit = await this.permissions.canEdit("redirect", original);
22
+ if (!canEdit) return Result.fail(new RedirectNotAuthorizedError());
23
+ const beforeEvent = new RedirectBeforeMoveEvent({
24
+ original,
25
+ input: params
26
+ });
27
+ await this.eventPublisher.publish(beforeEvent);
28
+ const result = await this.repository.execute(params);
29
+ if (result.isFail()) return result;
30
+ const afterEvent = new RedirectAfterMoveEvent({
31
+ original,
32
+ input: params,
33
+ redirect: result.value
34
+ });
35
+ await this.eventPublisher.publish(afterEvent);
36
+ return Result.ok(result.value);
31
37
  }
32
-
33
- // Publish after move event
34
- const afterEvent = new RedirectAfterMoveEvent({
35
- original,
36
- input: params,
37
- redirect: result.value
38
- });
39
- await this.eventPublisher.publish(afterEvent);
40
- return Result.ok(result.value);
41
- }
42
38
  }
43
- export const MoveRedirectUseCase = createImplementation({
44
- abstraction: UseCaseAbstraction,
45
- implementation: MoveRedirectUseCaseImpl,
46
- dependencies: [EventPublisher, GetRedirectByIdUseCase, MoveRedirectRepository]
39
+ const MoveRedirectUseCase_MoveRedirectUseCase = createImplementation({
40
+ abstraction: MoveRedirectUseCase,
41
+ implementation: MoveRedirectUseCaseImpl,
42
+ dependencies: [
43
+ WbPermissions,
44
+ EventPublisher,
45
+ GetRedirectByIdUseCase,
46
+ MoveRedirectRepository
47
+ ]
47
48
  });
49
+ export { MoveRedirectUseCase_MoveRedirectUseCase as MoveRedirectUseCase };
48
50
 
49
51
  //# sourceMappingURL=MoveRedirectUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","createImplementation","EventPublisher","MoveRedirectUseCase","UseCaseAbstraction","MoveRedirectRepository","RedirectBeforeMoveEvent","RedirectAfterMoveEvent","GetRedirectByIdUseCase","MoveRedirectUseCaseImpl","constructor","eventPublisher","getRedirectById","repository","execute","params","getResult","id","isFail","original","value","beforeEvent","input","publish","result","afterEvent","redirect","ok","abstraction","implementation","dependencies"],"sources":["MoveRedirectUseCase.ts"],"sourcesContent":["import { Result, createImplementation } from \"@webiny/feature/api\";\nimport {\n EventPublisher,\n EventPublisher as EventPublisherAbstraction\n} from \"@webiny/api-core/features/EventPublisher\";\nimport {\n MoveRedirectUseCase as UseCaseAbstraction,\n MoveRedirectRepository\n} from \"./abstractions.js\";\nimport { RedirectBeforeMoveEvent, RedirectAfterMoveEvent } from \"./events.js\";\nimport { GetRedirectByIdUseCase } from \"~/features/redirects/GetRedirectById/index.js\";\n\nclass MoveRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getRedirectById: GetRedirectByIdUseCase.Interface,\n private repository: MoveRedirectRepository.Interface\n ) {}\n\n async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return {\n // Get the original redirect for events\n const getResult = await this.getRedirectById.execute(params.id);\n\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n // Publish before move event\n const beforeEvent = new RedirectBeforeMoveEvent({\n original,\n input: params\n });\n\n await this.eventPublisher.publish(beforeEvent);\n\n // Execute the move operation\n const result = await this.repository.execute(params);\n\n if (result.isFail()) {\n return result;\n }\n\n // Publish after move event\n const afterEvent = new RedirectAfterMoveEvent({\n original,\n input: params,\n redirect: result.value\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const MoveRedirectUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: MoveRedirectUseCaseImpl,\n dependencies: [EventPublisher, GetRedirectByIdUseCase, MoveRedirectRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,oBAAoB,QAAQ,qBAAqB;AAClE,SACIC,cAAc,QAEX,0CAA0C;AACjD,SACIC,mBAAmB,IAAIC,kBAAkB,EACzCC,sBAAsB;AAE1B,SAASC,uBAAuB,EAAEC,sBAAsB;AACxD,SAASC,sBAAsB;AAE/B,MAAMC,uBAAuB,CAAyC;EAClEC,WAAWA,CACCC,cAAmD,EACnDC,eAAiD,EACjDC,UAA4C,EACtD;IAAA,KAHUF,cAAmD,GAAnDA,cAAmD;IAAA,KACnDC,eAAiD,GAAjDA,eAAiD;IAAA,KACjDC,UAA4C,GAA5CA,UAA4C;EACrD;EAEH,MAAMC,OAAOA,CAACC,MAAiC,EAA6B;IACxE;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACJ,eAAe,CAACE,OAAO,CAACC,MAAM,CAACE,EAAE,CAAC;IAE/D,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOF,SAAS;IACpB;IAEA,MAAMG,QAAQ,GAAGH,SAAS,CAACI,KAAK;;IAEhC;IACA,MAAMC,WAAW,GAAG,IAAIf,uBAAuB,CAAC;MAC5Ca,QAAQ;MACRG,KAAK,EAAEP;IACX,CAAC,CAAC;IAEF,MAAM,IAAI,CAACJ,cAAc,CAACY,OAAO,CAACF,WAAW,CAAC;;IAE9C;IACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACX,UAAU,CAACC,OAAO,CAACC,MAAM,CAAC;IAEpD,IAAIS,MAAM,CAACN,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOM,MAAM;IACjB;;IAEA;IACA,MAAMC,UAAU,GAAG,IAAIlB,sBAAsB,CAAC;MAC1CY,QAAQ;MACRG,KAAK,EAAEP,MAAM;MACbW,QAAQ,EAAEF,MAAM,CAACJ;IACrB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACT,cAAc,CAACY,OAAO,CAACE,UAAU,CAAC;IAE7C,OAAOzB,MAAM,CAAC2B,EAAE,CAACH,MAAM,CAACJ,KAAK,CAAC;EAClC;AACJ;AAEA,OAAO,MAAMjB,mBAAmB,GAAGF,oBAAoB,CAAC;EACpD2B,WAAW,EAAExB,kBAAkB;EAC/ByB,cAAc,EAAEpB,uBAAuB;EACvCqB,YAAY,EAAE,CAAC5B,cAAc,EAAEM,sBAAsB,EAAEH,sBAAsB;AACjF,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/redirects/MoveRedirect/MoveRedirectUseCase.js","sources":["../../../../src/features/redirects/MoveRedirect/MoveRedirectUseCase.ts"],"sourcesContent":["import { Result, createImplementation } from \"@webiny/feature/api\";\nimport {\n EventPublisher,\n EventPublisher as EventPublisherAbstraction\n} from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport {\n MoveRedirectUseCase as UseCaseAbstraction,\n MoveRedirectRepository\n} from \"./abstractions.js\";\nimport { RedirectBeforeMoveEvent, RedirectAfterMoveEvent } from \"./events.js\";\nimport { GetRedirectByIdUseCase } from \"~/features/redirects/GetRedirectById/index.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { RedirectNotAuthorizedError } from \"~/domain/redirect/errors.js\";\n\nclass MoveRedirectUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getRedirectById: GetRedirectByIdUseCase.Interface,\n private repository: MoveRedirectRepository.Interface\n ) {}\n\n async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canEdit(\"redirect\");\n if (!hasPermission) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n // Get the original redirect for events\n const getResult = await this.getRedirectById.execute(params.id);\n\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n const canEdit = await this.permissions.canEdit(\"redirect\", original);\n if (!canEdit) {\n return Result.fail(new RedirectNotAuthorizedError());\n }\n\n // Publish before move event\n const beforeEvent = new RedirectBeforeMoveEvent({\n original,\n input: params\n });\n\n await this.eventPublisher.publish(beforeEvent);\n\n // Execute the move operation\n const result = await this.repository.execute(params);\n\n if (result.isFail()) {\n return result;\n }\n\n // Publish after move event\n const afterEvent = new RedirectAfterMoveEvent({\n original,\n input: params,\n redirect: result.value\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const MoveRedirectUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: MoveRedirectUseCaseImpl,\n dependencies: [WbPermissions, EventPublisher, GetRedirectByIdUseCase, MoveRedirectRepository]\n});\n"],"names":["MoveRedirectUseCaseImpl","permissions","eventPublisher","getRedirectById","repository","params","hasPermission","Result","RedirectNotAuthorizedError","getResult","original","canEdit","beforeEvent","RedirectBeforeMoveEvent","result","afterEvent","RedirectAfterMoveEvent","MoveRedirectUseCase","createImplementation","UseCaseAbstraction","WbPermissions","EventPublisher","GetRedirectByIdUseCase","MoveRedirectRepository"],"mappings":";;;;;;;AAcA,MAAMA;IACF,YACYC,WAAoC,EACpCC,cAAmD,EACnDC,eAAiD,EACjDC,UAA4C,CACtD;aAJUH,WAAW,GAAXA;aACAC,cAAc,GAAdA;aACAC,eAAe,GAAfA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,MAAiC,EAA6B;QACxE,MAAMC,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACrD,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAI3B,MAAMC,YAAY,MAAM,IAAI,CAAC,eAAe,CAAC,OAAO,CAACJ,OAAO,EAAE;QAE9D,IAAII,UAAU,MAAM,IAChB,OAAOA;QAGX,MAAMC,WAAWD,UAAU,KAAK;QAEhC,MAAME,UAAU,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,YAAYD;QAC3D,IAAI,CAACC,SACD,OAAOJ,OAAO,IAAI,CAAC,IAAIC;QAI3B,MAAMI,cAAc,IAAIC,wBAAwB;YAC5CH;YACA,OAAOL;QACX;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACO;QAGlC,MAAME,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACT;QAE7C,IAAIS,OAAO,MAAM,IACb,OAAOA;QAIX,MAAMC,aAAa,IAAIC,uBAAuB;YAC1CN;YACA,OAAOL;YACP,UAAUS,OAAO,KAAK;QAC1B;QAEA,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAACC;QAElC,OAAOR,OAAO,EAAE,CAACO,OAAO,KAAK;IACjC;AACJ;AAEO,MAAMG,0CAAsBC,qBAAqB;IACpD,aAAaC;IACb,gBAAgBnB;IAChB,cAAc;QAACoB;QAAeC;QAAgBC;QAAwBC;KAAuB;AACjG"}
@@ -1,8 +1,8 @@
1
1
  import { type Result } from "@webiny/feature/api";
2
- import type { IEventHandler } from "@webiny/api-core/features/EventPublisher";
3
- import type { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import type { IEventHandler } from "@webiny/api-core/features/eventPublisher/index.js";
3
+ import type { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
4
4
  import type { WbRedirect } from "../../../domain/redirect/abstractions.js";
5
- import { RedirectNotFoundError, RedirectPersistenceError } from "../../../domain/redirect/errors.js";
5
+ import { RedirectNotFoundError, RedirectPersistenceError, RedirectNotAuthorizedError } from "../../../domain/redirect/errors.js";
6
6
  export interface IMoveWbRedirectParams {
7
7
  id: string;
8
8
  folderId: string;
@@ -27,10 +27,12 @@ export interface IMoveRedirectUseCase {
27
27
  execute(params: IMoveWbRedirectParams): Promise<Result<WbRedirect, UseCaseError>>;
28
28
  }
29
29
  export interface IMoveRedirectUseCaseErrors {
30
+ notAuthorized: RedirectNotAuthorizedError;
30
31
  notFound: RedirectNotFoundError;
31
32
  persistence: RedirectPersistenceError;
32
33
  }
33
34
  type UseCaseError = IMoveRedirectUseCaseErrors[keyof IMoveRedirectUseCaseErrors];
35
+ /** Move a URL redirect to a different folder. */
34
36
  export declare const MoveRedirectUseCase: import("@webiny/di").Abstraction<IMoveRedirectUseCase>;
35
37
  export declare namespace MoveRedirectUseCase {
36
38
  type Interface = IMoveRedirectUseCase;
@@ -48,14 +50,16 @@ export interface RedirectAfterMovePayload {
48
50
  input: IMoveWbRedirectParams;
49
51
  redirect: WbRedirect;
50
52
  }
51
- export declare const RedirectBeforeMoveHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectBeforeMovePayload>>>;
52
- export declare namespace RedirectBeforeMoveHandler {
53
+ /** Hook into redirect lifecycle before a redirect is moved. */
54
+ export declare const RedirectBeforeMoveEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectBeforeMovePayload>>>;
55
+ export declare namespace RedirectBeforeMoveEventHandler {
53
56
  type Interface = IEventHandler<DomainEvent<RedirectBeforeMovePayload>>;
54
57
  type Event = DomainEvent<RedirectBeforeMovePayload>;
55
58
  type Redirect = WbRedirect;
56
59
  }
57
- export declare const RedirectAfterMoveHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectAfterMovePayload>>>;
58
- export declare namespace RedirectAfterMoveHandler {
60
+ /** Hook into redirect lifecycle after a redirect is moved. */
61
+ export declare const RedirectAfterMoveEventHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<RedirectAfterMovePayload>>>;
62
+ export declare namespace RedirectAfterMoveEventHandler {
59
63
  type Interface = IEventHandler<DomainEvent<RedirectAfterMovePayload>>;
60
64
  type Event = DomainEvent<RedirectAfterMovePayload>;
61
65
  type Redirect = WbRedirect;
@@ -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 MoveRedirectRepository = createAbstraction("Wb/MoveRedirectRepository");
12
-
13
- // ============================================================================
14
- // Use Case Abstraction
15
- // ============================================================================
16
-
17
- export const MoveRedirectUseCase = createAbstraction("Wb/MoveRedirectUseCase");
18
-
19
- // ============================================================================
20
- // Event Payload Types
21
- // ============================================================================
22
-
23
- // ============================================================================
24
- // Event Handler Abstractions
25
- // ============================================================================
26
-
27
- export const RedirectBeforeMoveHandler = createAbstraction("Wb/RedirectBeforeMoveHandler");
28
- export const RedirectAfterMoveHandler = createAbstraction("Wb/RedirectAfterMoveHandler");
2
+ const MoveRedirectRepository = createAbstraction("Wb/MoveRedirectRepository");
3
+ const MoveRedirectUseCase = createAbstraction("Wb/MoveRedirectUseCase");
4
+ const RedirectBeforeMoveEventHandler = createAbstraction("Wb/RedirectBeforeMoveEventHandler");
5
+ const RedirectAfterMoveEventHandler = createAbstraction("Wb/RedirectAfterMoveEventHandler");
6
+ export { MoveRedirectRepository, MoveRedirectUseCase, RedirectAfterMoveEventHandler, RedirectBeforeMoveEventHandler };
29
7
 
30
8
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","MoveRedirectRepository","MoveRedirectUseCase","RedirectBeforeMoveHandler","RedirectAfterMoveHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport { RedirectNotFoundError, RedirectPersistenceError } from \"~/domain/redirect/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IMoveWbRedirectParams {\n id: string;\n folderId: string;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IMoveRedirectRepository {\n execute(params: IMoveWbRedirectParams): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface IMoveRedirectRepositoryErrors {\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = IMoveRedirectRepositoryErrors[keyof IMoveRedirectRepositoryErrors];\n\nexport const MoveRedirectRepository = createAbstraction<IMoveRedirectRepository>(\n \"Wb/MoveRedirectRepository\"\n);\n\nexport namespace MoveRedirectRepository {\n export type Interface = IMoveRedirectRepository;\n export type Params = IMoveWbRedirectParams;\n export type Return = Promise<Result<WbRedirect, RepositoryError>>;\n export type Error = RepositoryError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IMoveRedirectUseCase {\n execute(params: IMoveWbRedirectParams): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface IMoveRedirectUseCaseErrors {\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IMoveRedirectUseCaseErrors[keyof IMoveRedirectUseCaseErrors];\n\nexport const MoveRedirectUseCase =\n createAbstraction<IMoveRedirectUseCase>(\"Wb/MoveRedirectUseCase\");\n\nexport namespace MoveRedirectUseCase {\n export type Interface = IMoveRedirectUseCase;\n export type Params = IMoveWbRedirectParams;\n export type Return = Promise<Result<WbRedirect, UseCaseError>>;\n export type Error = UseCaseError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface RedirectBeforeMovePayload {\n original: WbRedirect;\n input: IMoveWbRedirectParams;\n}\n\nexport interface RedirectAfterMovePayload {\n original: WbRedirect;\n input: IMoveWbRedirectParams;\n redirect: WbRedirect;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\nexport const RedirectBeforeMoveHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectBeforeMovePayload>>\n>(\"Wb/RedirectBeforeMoveHandler\");\n\nexport namespace RedirectBeforeMoveHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectBeforeMovePayload>>;\n export type Event = DomainEvent<RedirectBeforeMovePayload>;\n export type Redirect = WbRedirect;\n}\n\nexport const RedirectAfterMoveHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectAfterMovePayload>>\n>(\"Wb/RedirectAfterMoveHandler\");\n\nexport namespace RedirectAfterMoveHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectAfterMovePayload>>;\n export type Event = DomainEvent<RedirectAfterMovePayload>;\n export type Redirect = WbRedirect;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAMpE;AACA;AACA;;AAOA;AACA;AACA;;AAaA,OAAO,MAAMC,sBAAsB,GAAGD,iBAAiB,CACnD,2BACJ,CAAC;;AAUD;AACA;AACA;;AAaA,OAAO,MAAME,mBAAmB,GAC5BF,iBAAiB,CAAuB,wBAAwB,CAAC;;AAUrE;AACA;AACA;;AAaA;AACA;AACA;;AAEA,OAAO,MAAMG,yBAAyB,GAAGH,iBAAiB,CAExD,8BAA8B,CAAC;AAQjC,OAAO,MAAMI,wBAAwB,GAAGJ,iBAAiB,CAEvD,6BAA6B,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/redirects/MoveRedirect/abstractions.js","sources":["../../../../src/features/redirects/MoveRedirect/abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport type { WbRedirect } from \"~/domain/redirect/abstractions.js\";\nimport {\n RedirectNotFoundError,\n RedirectPersistenceError,\n RedirectNotAuthorizedError\n} from \"~/domain/redirect/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IMoveWbRedirectParams {\n id: string;\n folderId: string;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IMoveRedirectRepository {\n execute(params: IMoveWbRedirectParams): Promise<Result<WbRedirect, RepositoryError>>;\n}\n\nexport interface IMoveRedirectRepositoryErrors {\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype RepositoryError = IMoveRedirectRepositoryErrors[keyof IMoveRedirectRepositoryErrors];\n\nexport const MoveRedirectRepository = createAbstraction<IMoveRedirectRepository>(\n \"Wb/MoveRedirectRepository\"\n);\n\nexport namespace MoveRedirectRepository {\n export type Interface = IMoveRedirectRepository;\n export type Params = IMoveWbRedirectParams;\n export type Return = Promise<Result<WbRedirect, RepositoryError>>;\n export type Error = RepositoryError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IMoveRedirectUseCase {\n execute(params: IMoveWbRedirectParams): Promise<Result<WbRedirect, UseCaseError>>;\n}\n\nexport interface IMoveRedirectUseCaseErrors {\n notAuthorized: RedirectNotAuthorizedError;\n notFound: RedirectNotFoundError;\n persistence: RedirectPersistenceError;\n}\n\ntype UseCaseError = IMoveRedirectUseCaseErrors[keyof IMoveRedirectUseCaseErrors];\n\n/** Move a URL redirect to a different folder. */\nexport const MoveRedirectUseCase =\n createAbstraction<IMoveRedirectUseCase>(\"Wb/MoveRedirectUseCase\");\n\nexport namespace MoveRedirectUseCase {\n export type Interface = IMoveRedirectUseCase;\n export type Params = IMoveWbRedirectParams;\n export type Return = Promise<Result<WbRedirect, UseCaseError>>;\n export type Error = UseCaseError;\n export type Redirect = WbRedirect;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface RedirectBeforeMovePayload {\n original: WbRedirect;\n input: IMoveWbRedirectParams;\n}\n\nexport interface RedirectAfterMovePayload {\n original: WbRedirect;\n input: IMoveWbRedirectParams;\n redirect: WbRedirect;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\n/** Hook into redirect lifecycle before a redirect is moved. */\nexport const RedirectBeforeMoveEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectBeforeMovePayload>>\n>(\"Wb/RedirectBeforeMoveEventHandler\");\n\nexport namespace RedirectBeforeMoveEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectBeforeMovePayload>>;\n export type Event = DomainEvent<RedirectBeforeMovePayload>;\n export type Redirect = WbRedirect;\n}\n\n/** Hook into redirect lifecycle after a redirect is moved. */\nexport const RedirectAfterMoveEventHandler = createAbstraction<\n IEventHandler<DomainEvent<RedirectAfterMovePayload>>\n>(\"Wb/RedirectAfterMoveEventHandler\");\n\nexport namespace RedirectAfterMoveEventHandler {\n export type Interface = IEventHandler<DomainEvent<RedirectAfterMovePayload>>;\n export type Event = DomainEvent<RedirectAfterMovePayload>;\n export type Redirect = WbRedirect;\n}\n"],"names":["MoveRedirectRepository","createAbstraction","MoveRedirectUseCase","RedirectBeforeMoveEventHandler","RedirectAfterMoveEventHandler"],"mappings":";AAkCO,MAAMA,yBAAyBC,kBAClC;AA4BG,MAAMC,sBACTD,kBAAwC;AA8BrC,MAAME,iCAAiCF,kBAE5C;AASK,MAAMG,gCAAgCH,kBAE3C"}
@@ -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 { RedirectBeforeMovePayload, RedirectAfterMovePayload } from "./abstractions.js";
3
3
  export declare class RedirectBeforeMoveEvent extends DomainEvent<RedirectBeforeMovePayload> {
4
4
  eventType: "redirect.beforeMove";
5
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<RedirectBeforeMovePayload>>>;
5
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<RedirectBeforeMovePayload>>>;
6
6
  }
7
7
  export declare class RedirectAfterMoveEvent extends DomainEvent<RedirectAfterMovePayload> {
8
8
  eventType: "redirect.afterMove";
9
- getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<RedirectAfterMovePayload>>>;
9
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/eventPublisher/abstractions.js").IEventHandler<DomainEvent<RedirectAfterMovePayload>>>;
10
10
  }
@@ -1,19 +1,21 @@
1
- import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
- import { RedirectBeforeMoveHandler, RedirectAfterMoveHandler } from "./abstractions.js";
3
- // RedirectBeforeMove Event
4
- export class RedirectBeforeMoveEvent extends DomainEvent {
5
- eventType = "redirect.beforeMove";
6
- getHandlerAbstraction() {
7
- return RedirectBeforeMoveHandler;
8
- }
1
+ import { DomainEvent } from "@webiny/api-core/features/eventPublisher/index.js";
2
+ import { RedirectAfterMoveEventHandler, RedirectBeforeMoveEventHandler } from "./abstractions.js";
3
+ class RedirectBeforeMoveEvent extends DomainEvent {
4
+ getHandlerAbstraction() {
5
+ return RedirectBeforeMoveEventHandler;
6
+ }
7
+ constructor(...args){
8
+ super(...args), this.eventType = "redirect.beforeMove";
9
+ }
9
10
  }
10
-
11
- // RedirectAfterMove Event
12
- export class RedirectAfterMoveEvent extends DomainEvent {
13
- eventType = "redirect.afterMove";
14
- getHandlerAbstraction() {
15
- return RedirectAfterMoveHandler;
16
- }
11
+ class RedirectAfterMoveEvent extends DomainEvent {
12
+ getHandlerAbstraction() {
13
+ return RedirectAfterMoveEventHandler;
14
+ }
15
+ constructor(...args){
16
+ super(...args), this.eventType = "redirect.afterMove";
17
+ }
17
18
  }
19
+ export { RedirectAfterMoveEvent, RedirectBeforeMoveEvent };
18
20
 
19
21
  //# sourceMappingURL=events.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["DomainEvent","RedirectBeforeMoveHandler","RedirectAfterMoveHandler","RedirectBeforeMoveEvent","eventType","getHandlerAbstraction","RedirectAfterMoveEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { RedirectBeforeMoveHandler, RedirectAfterMoveHandler } from \"./abstractions.js\";\nimport type { RedirectBeforeMovePayload, RedirectAfterMovePayload } from \"./abstractions.js\";\n\n// RedirectBeforeMove Event\nexport class RedirectBeforeMoveEvent extends DomainEvent<RedirectBeforeMovePayload> {\n eventType = \"redirect.beforeMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeMoveHandler;\n }\n}\n\n// RedirectAfterMove Event\nexport class RedirectAfterMoveEvent extends DomainEvent<RedirectAfterMovePayload> {\n eventType = \"redirect.afterMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterMoveHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,yBAAyB,EAAEC,wBAAwB;AAG5D;AACA,OAAO,MAAMC,uBAAuB,SAASH,WAAW,CAA4B;EAChFI,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,yBAAyB;EACpC;AACJ;;AAEA;AACA,OAAO,MAAMK,sBAAsB,SAASN,WAAW,CAA2B;EAC9EI,SAAS,GAAG,oBAAoB;EAEhCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,wBAAwB;EACnC;AACJ","ignoreList":[]}
1
+ {"version":3,"file":"features/redirects/MoveRedirect/events.js","sources":["../../../../src/features/redirects/MoveRedirect/events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/eventPublisher/index.js\";\nimport { RedirectBeforeMoveEventHandler, RedirectAfterMoveEventHandler } from \"./abstractions.js\";\nimport type { RedirectBeforeMovePayload, RedirectAfterMovePayload } from \"./abstractions.js\";\n\n// RedirectBeforeMove Event\nexport class RedirectBeforeMoveEvent extends DomainEvent<RedirectBeforeMovePayload> {\n eventType = \"redirect.beforeMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectBeforeMoveEventHandler;\n }\n}\n\n// RedirectAfterMove Event\nexport class RedirectAfterMoveEvent extends DomainEvent<RedirectAfterMovePayload> {\n eventType = \"redirect.afterMove\" as const;\n\n getHandlerAbstraction() {\n return RedirectAfterMoveEventHandler;\n }\n}\n"],"names":["RedirectBeforeMoveEvent","DomainEvent","RedirectBeforeMoveEventHandler","RedirectAfterMoveEvent","RedirectAfterMoveEventHandler"],"mappings":";;AAKO,MAAMA,gCAAgCC;IAGzC,wBAAwB;QACpB,OAAOC;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB;AAGO,MAAMC,+BAA+BF;IAGxC,wBAAwB;QACpB,OAAOG;IACX;;QALG,qBACH,SAAS,GAAG;;AAKhB"}
@@ -1 +1,4 @@
1
- export declare const MoveRedirectFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const MoveRedirectFeature: {
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 { MoveRedirectRepository } from "./MoveRedirectRepository.js";
3
3
  import { MoveRedirectUseCase } from "./MoveRedirectUseCase.js";
4
- export const MoveRedirectFeature = createFeature({
5
- name: "WebsiteBuilder/MoveRedirect",
6
- register(container) {
7
- container.register(MoveRedirectRepository).inSingletonScope();
8
- container.register(MoveRedirectUseCase);
9
- }
4
+ const MoveRedirectFeature = createFeature({
5
+ name: "WebsiteBuilder/MoveRedirect",
6
+ register (container) {
7
+ container.register(MoveRedirectRepository).inSingletonScope();
8
+ container.register(MoveRedirectUseCase);
9
+ }
10
10
  });
11
+ export { MoveRedirectFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","MoveRedirectRepository","MoveRedirectUseCase","MoveRedirectFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { MoveRedirectRepository } from \"./MoveRedirectRepository.js\";\nimport { MoveRedirectUseCase } from \"./MoveRedirectUseCase.js\";\n\nexport const MoveRedirectFeature = createFeature({\n name: \"WebsiteBuilder/MoveRedirect\",\n register(container) {\n container.register(MoveRedirectRepository).inSingletonScope();\n container.register(MoveRedirectUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,sBAAsB;AAC/B,SAASC,mBAAmB;AAE5B,OAAO,MAAMC,mBAAmB,GAAGH,aAAa,CAAC;EAC7CI,IAAI,EAAE,6BAA6B;EACnCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,sBAAsB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC7DD,SAAS,CAACD,QAAQ,CAACH,mBAAmB,CAAC;EAC3C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/redirects/MoveRedirect/feature.js","sources":["../../../../src/features/redirects/MoveRedirect/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { MoveRedirectRepository } from \"./MoveRedirectRepository.js\";\nimport { MoveRedirectUseCase } from \"./MoveRedirectUseCase.js\";\n\nexport const MoveRedirectFeature = createFeature({\n name: \"WebsiteBuilder/MoveRedirect\",\n register(container) {\n container.register(MoveRedirectRepository).inSingletonScope();\n container.register(MoveRedirectUseCase);\n }\n});\n"],"names":["MoveRedirectFeature","createFeature","container","MoveRedirectRepository","MoveRedirectUseCase"],"mappings":";;;AAIO,MAAMA,sBAAsBC,cAAc;IAC7C,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,wBAAwB,gBAAgB;QAC3DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1 +1 @@
1
- export { RedirectAfterMoveHandler, RedirectBeforeMoveHandler, MoveRedirectUseCase } from "./abstractions.js";
1
+ export { RedirectAfterMoveEventHandler, RedirectBeforeMoveEventHandler, MoveRedirectUseCase } from "./abstractions.js";
@@ -1,3 +1 @@
1
- export { RedirectAfterMoveHandler, RedirectBeforeMoveHandler, MoveRedirectUseCase } from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
1
+ export { MoveRedirectUseCase, RedirectAfterMoveEventHandler, RedirectBeforeMoveEventHandler } 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 { UpdateRedirectRepository as RepositoryAbstraction } from "./abstractions.js";
4
+ import { UpdateRedirectRepository } from "./abstractions.js";
5
5
  import { RedirectModel } from "../../../domain/redirect/abstractions.js";
6
- import { RedirectValidationError, RedirectNotFoundError, RedirectPersistenceError } from "../../../domain/redirect/errors.js";
6
+ import { RedirectNotFoundError, RedirectPersistenceError, RedirectValidationError } from "../../../domain/redirect/errors.js";
7
7
  import { EntryToRedirectMapper } from "../../../domain/redirect/EntryToRedirectMapper.js";
8
8
  class UpdateRedirectRepositoryImpl {
9
- constructor(redirectModel, updateEntry, getEntryById) {
10
- this.redirectModel = redirectModel;
11
- this.updateEntry = updateEntry;
12
- this.getEntryById = getEntryById;
13
- }
14
- async execute(id, data) {
15
- // First, validate the redirect exists
16
- const getResult = await this.getEntryById.execute(this.redirectModel, id);
17
- if (getResult.isFail()) {
18
- if (getResult.error.code === "Cms/Entry/NotFound") {
19
- return Result.fail(new RedirectNotFoundError(id));
20
- }
21
- return Result.fail(new RedirectPersistenceError(getResult.error));
9
+ constructor(redirectModel, updateEntry, getEntryById){
10
+ this.redirectModel = redirectModel;
11
+ this.updateEntry = updateEntry;
12
+ this.getEntryById = getEntryById;
22
13
  }
23
-
24
- // Update the entry
25
- const result = await this.updateEntry.execute(this.redirectModel, 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 RedirectValidationError(result.error.message));
32
- }
33
- if (result.error.code === "Cms/Entry/NotFound") {
34
- return Result.fail(new RedirectNotFoundError(id));
35
- }
36
- return Result.fail(new RedirectPersistenceError(result.error));
14
+ async execute(id, data) {
15
+ const getResult = await this.getEntryById.execute(this.redirectModel, id);
16
+ if (getResult.isFail()) {
17
+ if ("Cms/Entry/NotFound" === getResult.error.code) return Result.fail(new RedirectNotFoundError(id));
18
+ return Result.fail(new RedirectPersistenceError(getResult.error));
19
+ }
20
+ const result = await this.updateEntry.execute(this.redirectModel, 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 RedirectValidationError(result.error.message));
26
+ if ("Cms/Entry/NotFound" === result.error.code) return Result.fail(new RedirectNotFoundError(id));
27
+ return Result.fail(new RedirectPersistenceError(result.error));
28
+ }
29
+ const redirect = EntryToRedirectMapper.toRedirect(result.value);
30
+ return Result.ok(redirect);
37
31
  }
38
- const redirect = EntryToRedirectMapper.toRedirect(result.value);
39
- return Result.ok(redirect);
40
- }
41
32
  }
42
- export const UpdateRedirectRepository = RepositoryAbstraction.createImplementation({
43
- implementation: UpdateRedirectRepositoryImpl,
44
- dependencies: [RedirectModel, UpdateEntryUseCase, GetEntryByIdUseCase]
33
+ const UpdateRedirectRepository_UpdateRedirectRepository = UpdateRedirectRepository.createImplementation({
34
+ implementation: UpdateRedirectRepositoryImpl,
35
+ dependencies: [
36
+ RedirectModel,
37
+ UpdateEntryUseCase,
38
+ GetEntryByIdUseCase
39
+ ]
45
40
  });
41
+ export { UpdateRedirectRepository_UpdateRedirectRepository as UpdateRedirectRepository };
46
42
 
47
43
  //# sourceMappingURL=UpdateRedirectRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","UpdateEntryUseCase","GetEntryByIdUseCase","UpdateRedirectRepository","RepositoryAbstraction","RedirectModel","RedirectValidationError","RedirectNotFoundError","RedirectPersistenceError","EntryToRedirectMapper","UpdateRedirectRepositoryImpl","constructor","redirectModel","updateEntry","getEntryById","execute","id","data","getResult","isFail","error","code","fail","result","location","values","message","redirect","toRedirect","value","ok","createImplementation","implementation","dependencies"],"sources":["UpdateRedirectRepository.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 { UpdateRedirectRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { RedirectModel } from \"~/domain/redirect/abstractions.js\";\nimport {\n RedirectValidationError,\n RedirectNotFoundError,\n RedirectPersistenceError\n} from \"~/domain/redirect/errors.js\";\nimport { EntryToRedirectMapper } from \"~/domain/redirect/EntryToRedirectMapper.js\";\n\nclass UpdateRedirectRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private redirectModel: RedirectModel.Interface,\n private updateEntry: UpdateEntryUseCase.Interface,\n private getEntryById: GetEntryByIdUseCase.Interface\n ) {}\n\n async execute(\n id: string,\n data: RepositoryAbstraction.UpdateData\n ): RepositoryAbstraction.Return {\n // First, validate the redirect exists\n const getResult = await this.getEntryById.execute(this.redirectModel, id);\n\n if (getResult.isFail()) {\n if (getResult.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new RedirectNotFoundError(id));\n }\n return Result.fail(new RedirectPersistenceError(getResult.error));\n }\n\n // Update the entry\n const result = await this.updateEntry.execute(this.redirectModel, 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 RedirectValidationError(result.error.message));\n }\n if (result.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new RedirectNotFoundError(id));\n }\n return Result.fail(new RedirectPersistenceError(result.error));\n }\n\n const redirect = EntryToRedirectMapper.toRedirect(result.value);\n return Result.ok(redirect);\n }\n}\n\nexport const UpdateRedirectRepository = RepositoryAbstraction.createImplementation({\n implementation: UpdateRedirectRepositoryImpl,\n dependencies: [RedirectModel, UpdateEntryUseCase, GetEntryByIdUseCase]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB,QAAQ,4DAA4D;AAC/F,SAASC,mBAAmB,QAAQ,6DAA6D;AACjG,SAASC,wBAAwB,IAAIC,qBAAqB;AAC1D,SAASC,aAAa;AACtB,SACIC,uBAAuB,EACvBC,qBAAqB,EACrBC,wBAAwB;AAE5B,SAASC,qBAAqB;AAE9B,MAAMC,4BAA4B,CAA4C;EAC1EC,WAAWA,CACCC,aAAsC,EACtCC,WAAyC,EACzCC,YAA2C,EACrD;IAAA,KAHUF,aAAsC,GAAtCA,aAAsC;IAAA,KACtCC,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,YAA2C,GAA3CA,YAA2C;EACpD;EAEH,MAAMC,OAAOA,CACTC,EAAU,EACVC,IAAsC,EACV;IAC5B;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACJ,YAAY,CAACC,OAAO,CAAC,IAAI,CAACH,aAAa,EAAEI,EAAE,CAAC;IAEzE,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,qBAAqB,CAACS,EAAE,CAAC,CAAC;MACrD;MACA,OAAOhB,MAAM,CAACsB,IAAI,CAAC,IAAId,wBAAwB,CAACU,SAAS,CAACE,KAAK,CAAC,CAAC;IACrE;;IAEA;IACA,MAAMG,MAAM,GAAG,MAAM,IAAI,CAACV,WAAW,CAACE,OAAO,CAAC,IAAI,CAACH,aAAa,EAAEI,EAAE,EAAE;MAClEQ,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,IAAIhB,uBAAuB,CAACiB,MAAM,CAACH,KAAK,CAACM,OAAO,CAAC,CAAC;MACzE;MACA,IAAIH,MAAM,CAACH,KAAK,CAACC,IAAI,KAAK,oBAAoB,EAAE;QAC5C,OAAOrB,MAAM,CAACsB,IAAI,CAAC,IAAIf,qBAAqB,CAACS,EAAE,CAAC,CAAC;MACrD;MACA,OAAOhB,MAAM,CAACsB,IAAI,CAAC,IAAId,wBAAwB,CAACe,MAAM,CAACH,KAAK,CAAC,CAAC;IAClE;IAEA,MAAMO,QAAQ,GAAGlB,qBAAqB,CAACmB,UAAU,CAACL,MAAM,CAACM,KAAK,CAAC;IAC/D,OAAO7B,MAAM,CAAC8B,EAAE,CAACH,QAAQ,CAAC;EAC9B;AACJ;AAEA,OAAO,MAAMxB,wBAAwB,GAAGC,qBAAqB,CAAC2B,oBAAoB,CAAC;EAC/EC,cAAc,EAAEtB,4BAA4B;EAC5CuB,YAAY,EAAE,CAAC5B,aAAa,EAAEJ,kBAAkB,EAAEC,mBAAmB;AACzE,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/redirects/UpdateRedirect/UpdateRedirectRepository.js","sources":["../../../../src/features/redirects/UpdateRedirect/UpdateRedirectRepository.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 { UpdateRedirectRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { RedirectModel } from \"~/domain/redirect/abstractions.js\";\nimport {\n RedirectValidationError,\n RedirectNotFoundError,\n RedirectPersistenceError\n} from \"~/domain/redirect/errors.js\";\nimport { EntryToRedirectMapper } from \"~/domain/redirect/EntryToRedirectMapper.js\";\n\nclass UpdateRedirectRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private redirectModel: RedirectModel.Interface,\n private updateEntry: UpdateEntryUseCase.Interface,\n private getEntryById: GetEntryByIdUseCase.Interface\n ) {}\n\n async execute(\n id: string,\n data: RepositoryAbstraction.UpdateData\n ): RepositoryAbstraction.Return {\n // First, validate the redirect exists\n const getResult = await this.getEntryById.execute(this.redirectModel, id);\n\n if (getResult.isFail()) {\n if (getResult.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new RedirectNotFoundError(id));\n }\n return Result.fail(new RedirectPersistenceError(getResult.error));\n }\n\n // Update the entry\n const result = await this.updateEntry.execute(this.redirectModel, 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 RedirectValidationError(result.error.message));\n }\n if (result.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new RedirectNotFoundError(id));\n }\n return Result.fail(new RedirectPersistenceError(result.error));\n }\n\n const redirect = EntryToRedirectMapper.toRedirect(result.value);\n return Result.ok(redirect);\n }\n}\n\nexport const UpdateRedirectRepository = RepositoryAbstraction.createImplementation({\n implementation: UpdateRedirectRepositoryImpl,\n dependencies: [RedirectModel, UpdateEntryUseCase, GetEntryByIdUseCase]\n});\n"],"names":["UpdateRedirectRepositoryImpl","redirectModel","updateEntry","getEntryById","id","data","getResult","Result","RedirectNotFoundError","RedirectPersistenceError","result","RedirectValidationError","redirect","EntryToRedirectMapper","UpdateRedirectRepository","RepositoryAbstraction","RedirectModel","UpdateEntryUseCase","GetEntryByIdUseCase"],"mappings":";;;;;;;AAYA,MAAMA;IACF,YACYC,aAAsC,EACtCC,WAAyC,EACzCC,YAA2C,CACrD;aAHUF,aAAa,GAAbA;aACAC,WAAW,GAAXA;aACAC,YAAY,GAAZA;IACT;IAEH,MAAM,QACFC,EAAU,EACVC,IAAsC,EACV;QAE5B,MAAMC,YAAY,MAAM,IAAI,CAAC,YAAY,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAEF;QAEtE,IAAIE,UAAU,MAAM,IAAI;YACpB,IAAIA,AAAyB,yBAAzBA,UAAU,KAAK,CAAC,IAAI,EACpB,OAAOC,OAAO,IAAI,CAAC,IAAIC,sBAAsBJ;YAEjD,OAAOG,OAAO,IAAI,CAAC,IAAIE,yBAAyBH,UAAU,KAAK;QACnE;QAGA,MAAMI,SAAS,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,IAAI,CAAC,aAAa,EAAEN,IAAI;YAClE,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,wBAAwBD,OAAO,KAAK,CAAC,OAAO;YAEvE,IAAIA,AAAsB,yBAAtBA,OAAO,KAAK,CAAC,IAAI,EACjB,OAAOH,OAAO,IAAI,CAAC,IAAIC,sBAAsBJ;YAEjD,OAAOG,OAAO,IAAI,CAAC,IAAIE,yBAAyBC,OAAO,KAAK;QAChE;QAEA,MAAME,WAAWC,sBAAsB,UAAU,CAACH,OAAO,KAAK;QAC9D,OAAOH,OAAO,EAAE,CAACK;IACrB;AACJ;AAEO,MAAME,oDAA2BC,yBAAAA,oBAA0C,CAAC;IAC/E,gBAAgBf;IAChB,cAAc;QAACgB;QAAeC;QAAoBC;KAAoB;AAC1E"}
@@ -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 { UpdateRedirectUseCase as UseCaseAbstraction, UpdateRedirectRepository } from "./abstractions.js";
3
3
  import { GetRedirectByIdUseCase } from "../../../features/redirects/GetRedirectById/index.js";
4
+ import { WbPermissions } from "../../../features/permissions/abstractions.js";
4
5
  declare class UpdateRedirectUseCaseImpl implements UseCaseAbstraction.Interface {
6
+ private permissions;
5
7
  private eventPublisher;
6
8
  private getRedirectById;
7
9
  private repository;
8
- constructor(eventPublisher: EventPublisherAbstraction.Interface, getRedirectById: GetRedirectByIdUseCase.Interface, repository: UpdateRedirectRepository.Interface);
10
+ constructor(permissions: WbPermissions.Interface, eventPublisher: EventPublisherAbstraction.Interface, getRedirectById: GetRedirectByIdUseCase.Interface, repository: UpdateRedirectRepository.Interface);
9
11
  execute(id: string, data: UseCaseAbstraction.UpdateData): UseCaseAbstraction.Return;
10
12
  }
11
13
  export declare const UpdateRedirectUseCase: typeof UpdateRedirectUseCaseImpl & {