@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","GetPageByPathRepository","GetPageByPathUseCase","GetPageByPathFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetPageByPathRepository } from \"./GetPageByPathRepository.js\";\nimport { GetPageByPathUseCase } from \"./GetPageByPathUseCase.js\";\n\nexport const GetPageByPathFeature = createFeature({\n name: \"WebsiteBuilder/GetPageByPath\",\n register(container) {\n container.register(GetPageByPathRepository).inSingletonScope();\n container.register(GetPageByPathUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,uBAAuB;AAChC,SAASC,oBAAoB;AAE7B,OAAO,MAAMC,oBAAoB,GAAGH,aAAa,CAAC;EAC9CI,IAAI,EAAE,8BAA8B;EACpCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,uBAAuB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC9DD,SAAS,CAACD,QAAQ,CAACH,oBAAoB,CAAC;EAC5C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/GetPageByPath/feature.js","sources":["../../../../src/features/pages/GetPageByPath/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetPageByPathRepository } from \"./GetPageByPathRepository.js\";\nimport { GetPageByPathUseCase } from \"./GetPageByPathUseCase.js\";\n\nexport const GetPageByPathFeature = createFeature({\n name: \"WebsiteBuilder/GetPageByPath\",\n register(container) {\n container.register(GetPageByPathRepository).inSingletonScope();\n container.register(GetPageByPathUseCase);\n }\n});\n"],"names":["GetPageByPathFeature","createFeature","container","GetPageByPathRepository","GetPageByPathUseCase"],"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 * from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -0,0 +1,15 @@
1
+ import { ListPublishedEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries";
2
+ import { GetEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntry";
3
+ import { GetPageLanguagePathsRepository as RepositoryAbstraction } from "./abstractions.js";
4
+ import { PageModel } from "../../../domain/page/abstractions.js";
5
+ declare class GetPageLanguagePathsRepositoryImpl implements RepositoryAbstraction.Interface {
6
+ private pageModel;
7
+ private listPublished;
8
+ private getEntry;
9
+ constructor(pageModel: PageModel.Interface, listPublished: ListPublishedEntriesUseCase.Interface, getEntry: GetEntryUseCase.Interface);
10
+ execute(rootEntryId: string): RepositoryAbstraction.Return;
11
+ }
12
+ export declare const GetPageLanguagePathsRepository: typeof GetPageLanguagePathsRepositoryImpl & {
13
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetPageLanguagePathsRepository>;
14
+ };
15
+ export {};
@@ -0,0 +1,55 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { ListPublishedEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries";
3
+ import { GetEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntry";
4
+ import { GetPageLanguagePathsRepository } from "./abstractions.js";
5
+ import { PageModel } from "../../../domain/page/abstractions.js";
6
+ import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
7
+ import { PagePersistenceError } from "../../../domain/page/errors.js";
8
+ class GetPageLanguagePathsRepositoryImpl {
9
+ constructor(pageModel, listPublished, getEntry){
10
+ this.pageModel = pageModel;
11
+ this.listPublished = listPublished;
12
+ this.getEntry = getEntry;
13
+ }
14
+ async execute(rootEntryId) {
15
+ const [sourceResult, translationsResult] = await Promise.all([
16
+ this.getEntry.execute(this.pageModel, {
17
+ where: {
18
+ entryId: rootEntryId,
19
+ published: true
20
+ }
21
+ }),
22
+ this.listPublished.execute(this.pageModel, {
23
+ where: {
24
+ values: {
25
+ properties: {
26
+ sourcePage: rootEntryId
27
+ }
28
+ }
29
+ }
30
+ })
31
+ ]);
32
+ if (translationsResult.isFail()) return Result.fail(new PagePersistenceError(translationsResult.error));
33
+ const languagePaths = {};
34
+ if (!sourceResult.isFail() && sourceResult.value) {
35
+ const source = EntryToPageMapper.toPage(sourceResult.value);
36
+ if (source.properties?.language && source.properties?.path) languagePaths[source.properties.language] = source.properties.path;
37
+ }
38
+ for (const entry of translationsResult.value.entries){
39
+ const page = EntryToPageMapper.toPage(entry);
40
+ if (page.properties?.language && page.properties?.path) languagePaths[page.properties.language] = page.properties.path;
41
+ }
42
+ return Result.ok(languagePaths);
43
+ }
44
+ }
45
+ const GetPageLanguagePathsRepository_GetPageLanguagePathsRepository = GetPageLanguagePathsRepository.createImplementation({
46
+ implementation: GetPageLanguagePathsRepositoryImpl,
47
+ dependencies: [
48
+ PageModel,
49
+ ListPublishedEntriesUseCase,
50
+ GetEntryUseCase
51
+ ]
52
+ });
53
+ export { GetPageLanguagePathsRepository_GetPageLanguagePathsRepository as GetPageLanguagePathsRepository };
54
+
55
+ //# sourceMappingURL=GetPageLanguagePathsRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.js","sources":["../../../../src/features/pages/GetPageLanguagePaths/GetPageLanguagePathsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListPublishedEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries\";\nimport { GetEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntry\";\nimport { GetPageLanguagePathsRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { type CmsEntryWbPage, PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport { PagePersistenceError } from \"~/domain/page/errors.js\";\n\nclass GetPageLanguagePathsRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private listPublished: ListPublishedEntriesUseCase.Interface,\n private getEntry: GetEntryUseCase.Interface\n ) {}\n\n async execute(rootEntryId: string): RepositoryAbstraction.Return {\n const [sourceResult, translationsResult] = await Promise.all([\n // Fetch the source page itself.\n this.getEntry.execute<CmsEntryWbPage>(this.pageModel, {\n where: { entryId: rootEntryId, published: true }\n }),\n // Fetch all translated pages pointing to the source.\n this.listPublished.execute<CmsEntryWbPage>(this.pageModel, {\n where: {\n values: {\n properties: { sourcePage: rootEntryId }\n }\n }\n })\n ]);\n\n if (translationsResult.isFail()) {\n return Result.fail(new PagePersistenceError(translationsResult.error));\n }\n\n const languagePaths: Record<string, string> = {};\n\n // Include the source page.\n if (!sourceResult.isFail() && sourceResult.value) {\n const source = EntryToPageMapper.toPage(sourceResult.value);\n if (source.properties?.language && source.properties?.path) {\n languagePaths[source.properties.language] = source.properties.path;\n }\n }\n\n // Include all translations.\n for (const entry of translationsResult.value.entries) {\n const page = EntryToPageMapper.toPage(entry);\n if (page.properties?.language && page.properties?.path) {\n languagePaths[page.properties.language] = page.properties.path;\n }\n }\n\n return Result.ok(languagePaths);\n }\n}\n\nexport const GetPageLanguagePathsRepository = RepositoryAbstraction.createImplementation({\n implementation: GetPageLanguagePathsRepositoryImpl,\n dependencies: [PageModel, ListPublishedEntriesUseCase, GetEntryUseCase]\n});\n"],"names":["GetPageLanguagePathsRepositoryImpl","pageModel","listPublished","getEntry","rootEntryId","sourceResult","translationsResult","Promise","Result","PagePersistenceError","languagePaths","source","EntryToPageMapper","entry","page","GetPageLanguagePathsRepository","RepositoryAbstraction","PageModel","ListPublishedEntriesUseCase","GetEntryUseCase"],"mappings":";;;;;;;AAQA,MAAMA;IACF,YACYC,SAA8B,EAC9BC,aAAoD,EACpDC,QAAmC,CAC7C;aAHUF,SAAS,GAATA;aACAC,aAAa,GAAbA;aACAC,QAAQ,GAARA;IACT;IAEH,MAAM,QAAQC,WAAmB,EAAgC;QAC7D,MAAM,CAACC,cAAcC,mBAAmB,GAAG,MAAMC,QAAQ,GAAG,CAAC;YAEzD,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAiB,IAAI,CAAC,SAAS,EAAE;gBAClD,OAAO;oBAAE,SAASH;oBAAa,WAAW;gBAAK;YACnD;YAEA,IAAI,CAAC,aAAa,CAAC,OAAO,CAAiB,IAAI,CAAC,SAAS,EAAE;gBACvD,OAAO;oBACH,QAAQ;wBACJ,YAAY;4BAAE,YAAYA;wBAAY;oBAC1C;gBACJ;YACJ;SACH;QAED,IAAIE,mBAAmB,MAAM,IACzB,OAAOE,OAAO,IAAI,CAAC,IAAIC,qBAAqBH,mBAAmB,KAAK;QAGxE,MAAMI,gBAAwC,CAAC;QAG/C,IAAI,CAACL,aAAa,MAAM,MAAMA,aAAa,KAAK,EAAE;YAC9C,MAAMM,SAASC,kBAAkB,MAAM,CAACP,aAAa,KAAK;YAC1D,IAAIM,OAAO,UAAU,EAAE,YAAYA,OAAO,UAAU,EAAE,MAClDD,aAAa,CAACC,OAAO,UAAU,CAAC,QAAQ,CAAC,GAAGA,OAAO,UAAU,CAAC,IAAI;QAE1E;QAGA,KAAK,MAAME,SAASP,mBAAmB,KAAK,CAAC,OAAO,CAAE;YAClD,MAAMQ,OAAOF,kBAAkB,MAAM,CAACC;YACtC,IAAIC,KAAK,UAAU,EAAE,YAAYA,KAAK,UAAU,EAAE,MAC9CJ,aAAa,CAACI,KAAK,UAAU,CAAC,QAAQ,CAAC,GAAGA,KAAK,UAAU,CAAC,IAAI;QAEtE;QAEA,OAAON,OAAO,EAAE,CAACE;IACrB;AACJ;AAEO,MAAMK,gEAAiCC,+BAAAA,oBAA0C,CAAC;IACrF,gBAAgBhB;IAChB,cAAc;QAACiB;QAAWC;QAA6BC;KAAgB;AAC3E"}
@@ -0,0 +1,10 @@
1
+ import { GetPageLanguagePathsUseCase as UseCaseAbstraction, GetPageLanguagePathsRepository } from "./abstractions.js";
2
+ declare class GetPageLanguagePathsUseCaseImpl implements UseCaseAbstraction.Interface {
3
+ private repository;
4
+ constructor(repository: GetPageLanguagePathsRepository.Interface);
5
+ execute(rootEntryId: string): UseCaseAbstraction.Return;
6
+ }
7
+ export declare const GetPageLanguagePathsUseCase: typeof GetPageLanguagePathsUseCaseImpl & {
8
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetPageLanguagePathsUseCase>;
9
+ };
10
+ export {};
@@ -0,0 +1,21 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { GetPageLanguagePathsRepository, GetPageLanguagePathsUseCase } from "./abstractions.js";
3
+ class GetPageLanguagePathsUseCaseImpl {
4
+ constructor(repository){
5
+ this.repository = repository;
6
+ }
7
+ async execute(rootEntryId) {
8
+ const result = await this.repository.execute(rootEntryId);
9
+ if (result.isFail()) return result;
10
+ return Result.ok(result.value);
11
+ }
12
+ }
13
+ const GetPageLanguagePathsUseCase_GetPageLanguagePathsUseCase = GetPageLanguagePathsUseCase.createImplementation({
14
+ implementation: GetPageLanguagePathsUseCaseImpl,
15
+ dependencies: [
16
+ GetPageLanguagePathsRepository
17
+ ]
18
+ });
19
+ export { GetPageLanguagePathsUseCase_GetPageLanguagePathsUseCase as GetPageLanguagePathsUseCase };
20
+
21
+ //# sourceMappingURL=GetPageLanguagePathsUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.js","sources":["../../../../src/features/pages/GetPageLanguagePaths/GetPageLanguagePathsUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n GetPageLanguagePathsUseCase as UseCaseAbstraction,\n GetPageLanguagePathsRepository\n} from \"./abstractions.js\";\n\nclass GetPageLanguagePathsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: GetPageLanguagePathsRepository.Interface) {}\n\n async execute(rootEntryId: string): UseCaseAbstraction.Return {\n const result = await this.repository.execute(rootEntryId);\n\n if (result.isFail()) {\n return result;\n }\n\n return Result.ok(result.value);\n }\n}\n\nexport const GetPageLanguagePathsUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetPageLanguagePathsUseCaseImpl,\n dependencies: [GetPageLanguagePathsRepository]\n});\n"],"names":["GetPageLanguagePathsUseCaseImpl","repository","rootEntryId","result","Result","GetPageLanguagePathsUseCase","UseCaseAbstraction","GetPageLanguagePathsRepository"],"mappings":";;AAMA,MAAMA;IACF,YAAoBC,UAAoD,CAAE;aAAtDA,UAAU,GAAVA;IAAuD;IAE3E,MAAM,QAAQC,WAAmB,EAA6B;QAC1D,MAAMC,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACD;QAE7C,IAAIC,OAAO,MAAM,IACb,OAAOA;QAGX,OAAOC,OAAO,EAAE,CAACD,OAAO,KAAK;IACjC;AACJ;AAEO,MAAME,0DAA8BC,4BAAAA,oBAAuC,CAAC;IAC/E,gBAAgBN;IAChB,cAAc;QAACO;KAA+B;AAClD"}
@@ -0,0 +1,20 @@
1
+ import type { Result } from "@webiny/feature/api";
2
+ import type { PagePersistenceError } from "../../../domain/page/errors.js";
3
+ export type PageLanguagePaths = Record<string, string>;
4
+ export interface IGetPageLanguagePathsRepository {
5
+ execute(rootEntryId: string): Promise<Result<PageLanguagePaths, PagePersistenceError>>;
6
+ }
7
+ export declare const GetPageLanguagePathsRepository: import("@webiny/di").Abstraction<IGetPageLanguagePathsRepository>;
8
+ export declare namespace GetPageLanguagePathsRepository {
9
+ type Interface = IGetPageLanguagePathsRepository;
10
+ type Return = Promise<Result<PageLanguagePaths, PagePersistenceError>>;
11
+ }
12
+ export interface IGetPageLanguagePathsUseCase {
13
+ execute(rootEntryId: string): Promise<Result<PageLanguagePaths, PagePersistenceError>>;
14
+ }
15
+ /** Retrieve all published language paths of a page as { languageCode: path }. */
16
+ export declare const GetPageLanguagePathsUseCase: import("@webiny/di").Abstraction<IGetPageLanguagePathsUseCase>;
17
+ export declare namespace GetPageLanguagePathsUseCase {
18
+ type Interface = IGetPageLanguagePathsUseCase;
19
+ type Return = Promise<Result<PageLanguagePaths, PagePersistenceError>>;
20
+ }
@@ -0,0 +1,6 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+ const GetPageLanguagePathsRepository = createAbstraction("Wb/GetPageLanguagePathsRepository");
3
+ const GetPageLanguagePathsUseCase = createAbstraction("Wb/GetPageLanguagePathsUseCase");
4
+ export { GetPageLanguagePathsRepository, GetPageLanguagePathsUseCase };
5
+
6
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/pages/GetPageLanguagePaths/abstractions.js","sources":["../../../../src/features/pages/GetPageLanguagePaths/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { PagePersistenceError } from \"~/domain/page/errors.js\";\n\nexport type PageLanguagePaths = Record<string, string>;\n\nexport interface IGetPageLanguagePathsRepository {\n execute(rootEntryId: string): Promise<Result<PageLanguagePaths, PagePersistenceError>>;\n}\n\nexport const GetPageLanguagePathsRepository = createAbstraction<IGetPageLanguagePathsRepository>(\n \"Wb/GetPageLanguagePathsRepository\"\n);\n\nexport namespace GetPageLanguagePathsRepository {\n export type Interface = IGetPageLanguagePathsRepository;\n export type Return = Promise<Result<PageLanguagePaths, PagePersistenceError>>;\n}\n\nexport interface IGetPageLanguagePathsUseCase {\n execute(rootEntryId: string): Promise<Result<PageLanguagePaths, PagePersistenceError>>;\n}\n\n/** Retrieve all published language paths of a page as { languageCode: path }. */\nexport const GetPageLanguagePathsUseCase = createAbstraction<IGetPageLanguagePathsUseCase>(\n \"Wb/GetPageLanguagePathsUseCase\"\n);\n\nexport namespace GetPageLanguagePathsUseCase {\n export type Interface = IGetPageLanguagePathsUseCase;\n export type Return = Promise<Result<PageLanguagePaths, PagePersistenceError>>;\n}\n"],"names":["GetPageLanguagePathsRepository","createAbstraction","GetPageLanguagePathsUseCase"],"mappings":";AAUO,MAAMA,iCAAiCC,kBAC1C;AAaG,MAAMC,8BAA8BD,kBACvC"}
@@ -0,0 +1,4 @@
1
+ export declare const GetPageLanguagePathsFeature: {
2
+ name: string;
3
+ register(container: import("@webiny/di").Container): void;
4
+ };
@@ -0,0 +1,13 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { GetPageLanguagePathsRepository } from "./GetPageLanguagePathsRepository.js";
3
+ import { GetPageLanguagePathsUseCase } from "./GetPageLanguagePathsUseCase.js";
4
+ const GetPageLanguagePathsFeature = createFeature({
5
+ name: "WebsiteBuilder/GetPageLanguagePaths",
6
+ register (container) {
7
+ container.register(GetPageLanguagePathsRepository).inSingletonScope();
8
+ container.register(GetPageLanguagePathsUseCase);
9
+ }
10
+ });
11
+ export { GetPageLanguagePathsFeature };
12
+
13
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/pages/GetPageLanguagePaths/feature.js","sources":["../../../../src/features/pages/GetPageLanguagePaths/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetPageLanguagePathsRepository } from \"./GetPageLanguagePathsRepository.js\";\nimport { GetPageLanguagePathsUseCase } from \"./GetPageLanguagePathsUseCase.js\";\n\nexport const GetPageLanguagePathsFeature = createFeature({\n name: \"WebsiteBuilder/GetPageLanguagePaths\",\n register(container) {\n container.register(GetPageLanguagePathsRepository).inSingletonScope();\n container.register(GetPageLanguagePathsUseCase);\n }\n});\n"],"names":["GetPageLanguagePathsFeature","createFeature","container","GetPageLanguagePathsRepository","GetPageLanguagePathsUseCase"],"mappings":";;;AAIO,MAAMA,8BAA8BC,cAAc;IACrD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,gCAAgC,gBAAgB;QACnED,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -0,0 +1 @@
1
+ export * from "./abstractions.js";
@@ -0,0 +1 @@
1
+ export * from "./abstractions.js";
@@ -1,26 +1,28 @@
1
1
  import { Result } from "@webiny/feature/api";
2
2
  import { GetRevisionsByEntryIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetRevisionsByEntryId/index.js";
3
- import { GetPageRevisionsRepository as RepositoryAbstraction } from "./abstractions.js";
3
+ import { GetPageRevisionsRepository } from "./abstractions.js";
4
4
  import { PageModel } from "../../../domain/page/abstractions.js";
5
5
  import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
6
6
  import { PagePersistenceError } from "../../../domain/page/errors.js";
7
7
  class GetPageRevisionsRepositoryImpl {
8
- constructor(pageModel, getEntryRevisions) {
9
- this.pageModel = pageModel;
10
- this.getEntryRevisions = getEntryRevisions;
11
- }
12
- async execute(entryId) {
13
- const result = await this.getEntryRevisions.execute(this.pageModel, entryId);
14
- if (result.isFail()) {
15
- return Result.fail(new PagePersistenceError(result.error));
8
+ constructor(pageModel, getEntryRevisions){
9
+ this.pageModel = pageModel;
10
+ this.getEntryRevisions = getEntryRevisions;
11
+ }
12
+ async execute(entryId) {
13
+ const result = await this.getEntryRevisions.execute(this.pageModel, entryId);
14
+ if (result.isFail()) return Result.fail(new PagePersistenceError(result.error));
15
+ const pages = result.value.map((entry)=>EntryToPageMapper.toPage(entry));
16
+ return Result.ok(pages);
16
17
  }
17
- const pages = result.value.map(entry => EntryToPageMapper.toPage(entry));
18
- return Result.ok(pages);
19
- }
20
18
  }
21
- export const GetPageRevisionsRepository = RepositoryAbstraction.createImplementation({
22
- implementation: GetPageRevisionsRepositoryImpl,
23
- dependencies: [PageModel, GetRevisionsByEntryIdUseCase]
19
+ const GetPageRevisionsRepository_GetPageRevisionsRepository = GetPageRevisionsRepository.createImplementation({
20
+ implementation: GetPageRevisionsRepositoryImpl,
21
+ dependencies: [
22
+ PageModel,
23
+ GetRevisionsByEntryIdUseCase
24
+ ]
24
25
  });
26
+ export { GetPageRevisionsRepository_GetPageRevisionsRepository as GetPageRevisionsRepository };
25
27
 
26
28
  //# sourceMappingURL=GetPageRevisionsRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Result","GetRevisionsByEntryIdUseCase","GetPageRevisionsRepository","RepositoryAbstraction","PageModel","EntryToPageMapper","PagePersistenceError","GetPageRevisionsRepositoryImpl","constructor","pageModel","getEntryRevisions","execute","entryId","result","isFail","fail","error","pages","value","map","entry","toPage","ok","createImplementation","implementation","dependencies"],"sources":["GetPageRevisionsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetRevisionsByEntryIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetRevisionsByEntryId/index.js\";\nimport { GetPageRevisionsRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport { PagePersistenceError } from \"~/domain/page/errors.js\";\n\nclass GetPageRevisionsRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private getEntryRevisions: GetRevisionsByEntryIdUseCase.Interface\n ) {}\n\n async execute(entryId: string): RepositoryAbstraction.Return {\n const result = await this.getEntryRevisions.execute(this.pageModel, entryId);\n\n if (result.isFail()) {\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const pages = result.value.map(entry => EntryToPageMapper.toPage(entry));\n return Result.ok(pages);\n }\n}\n\nexport const GetPageRevisionsRepository = RepositoryAbstraction.createImplementation({\n implementation: GetPageRevisionsRepositoryImpl,\n dependencies: [PageModel, GetRevisionsByEntryIdUseCase]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,4BAA4B,QAAQ,+EAA+E;AAC5H,SAASC,0BAA0B,IAAIC,qBAAqB;AAC5D,SAASC,SAAS;AAClB,SAASC,iBAAiB;AAC1B,SAASC,oBAAoB;AAE7B,MAAMC,8BAA8B,CAA4C;EAC5EC,WAAWA,CACCC,SAA8B,EAC9BC,iBAAyD,EACnE;IAAA,KAFUD,SAA8B,GAA9BA,SAA8B;IAAA,KAC9BC,iBAAyD,GAAzDA,iBAAyD;EAClE;EAEH,MAAMC,OAAOA,CAACC,OAAe,EAAgC;IACzD,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACH,iBAAiB,CAACC,OAAO,CAAC,IAAI,CAACF,SAAS,EAAEG,OAAO,CAAC;IAE5E,IAAIC,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOd,MAAM,CAACe,IAAI,CAAC,IAAIT,oBAAoB,CAACO,MAAM,CAACG,KAAK,CAAC,CAAC;IAC9D;IAEA,MAAMC,KAAK,GAAGJ,MAAM,CAACK,KAAK,CAACC,GAAG,CAACC,KAAK,IAAIf,iBAAiB,CAACgB,MAAM,CAACD,KAAK,CAAC,CAAC;IACxE,OAAOpB,MAAM,CAACsB,EAAE,CAACL,KAAK,CAAC;EAC3B;AACJ;AAEA,OAAO,MAAMf,0BAA0B,GAAGC,qBAAqB,CAACoB,oBAAoB,CAAC;EACjFC,cAAc,EAAEjB,8BAA8B;EAC9CkB,YAAY,EAAE,CAACrB,SAAS,EAAEH,4BAA4B;AAC1D,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/GetPageRevisions/GetPageRevisionsRepository.js","sources":["../../../../src/features/pages/GetPageRevisions/GetPageRevisionsRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetRevisionsByEntryIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetRevisionsByEntryId/index.js\";\nimport { GetPageRevisionsRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport { PagePersistenceError } from \"~/domain/page/errors.js\";\n\nclass GetPageRevisionsRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private getEntryRevisions: GetRevisionsByEntryIdUseCase.Interface\n ) {}\n\n async execute(entryId: string): RepositoryAbstraction.Return {\n const result = await this.getEntryRevisions.execute(this.pageModel, entryId);\n\n if (result.isFail()) {\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const pages = result.value.map(entry => EntryToPageMapper.toPage(entry));\n return Result.ok(pages);\n }\n}\n\nexport const GetPageRevisionsRepository = RepositoryAbstraction.createImplementation({\n implementation: GetPageRevisionsRepositoryImpl,\n dependencies: [PageModel, GetRevisionsByEntryIdUseCase]\n});\n"],"names":["GetPageRevisionsRepositoryImpl","pageModel","getEntryRevisions","entryId","result","Result","PagePersistenceError","pages","entry","EntryToPageMapper","GetPageRevisionsRepository","RepositoryAbstraction","PageModel","GetRevisionsByEntryIdUseCase"],"mappings":";;;;;;AAOA,MAAMA;IACF,YACYC,SAA8B,EAC9BC,iBAAyD,CACnE;aAFUD,SAAS,GAATA;aACAC,iBAAiB,GAAjBA;IACT;IAEH,MAAM,QAAQC,OAAe,EAAgC;QACzD,MAAMC,SAAS,MAAM,IAAI,CAAC,iBAAiB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAED;QAEpE,IAAIC,OAAO,MAAM,IACb,OAAOC,OAAO,IAAI,CAAC,IAAIC,qBAAqBF,OAAO,KAAK;QAG5D,MAAMG,QAAQH,OAAO,KAAK,CAAC,GAAG,CAACI,CAAAA,QAASC,kBAAkB,MAAM,CAACD;QACjE,OAAOH,OAAO,EAAE,CAACE;IACrB;AACJ;AAEO,MAAMG,wDAA6BC,2BAAAA,oBAA0C,CAAC;IACjF,gBAAgBX;IAChB,cAAc;QAACY;QAAWC;KAA6B;AAC3D"}
@@ -1,7 +1,9 @@
1
1
  import { GetPageRevisionsUseCase as UseCaseAbstraction, GetPageRevisionsRepository } from "./abstractions.js";
2
+ import { WbPermissions } from "../../../features/permissions/abstractions.js";
2
3
  declare class GetPageRevisionsUseCaseImpl implements UseCaseAbstraction.Interface {
4
+ private permissions;
3
5
  private repository;
4
- constructor(repository: GetPageRevisionsRepository.Interface);
6
+ constructor(permissions: WbPermissions.Interface, repository: GetPageRevisionsRepository.Interface);
5
7
  execute(entryId: string): UseCaseAbstraction.Return;
6
8
  }
7
9
  export declare const GetPageRevisionsUseCase: typeof GetPageRevisionsUseCaseImpl & {
@@ -1,15 +1,32 @@
1
- import { GetPageRevisionsUseCase as UseCaseAbstraction, GetPageRevisionsRepository } from "./abstractions.js";
1
+ import { Result } from "@webiny/feature/api";
2
+ import { GetPageRevisionsRepository, GetPageRevisionsUseCase } from "./abstractions.js";
3
+ import { WbPermissions } from "../../permissions/abstractions.js";
4
+ import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
2
5
  class GetPageRevisionsUseCaseImpl {
3
- constructor(repository) {
4
- this.repository = repository;
5
- }
6
- async execute(entryId) {
7
- return this.repository.execute(entryId);
8
- }
6
+ constructor(permissions, repository){
7
+ this.permissions = permissions;
8
+ this.repository = repository;
9
+ }
10
+ async execute(entryId) {
11
+ const hasPermission = await this.permissions.canRead("page");
12
+ if (!hasPermission) return Result.fail(new PageNotAuthorizedError());
13
+ const result = await this.repository.execute(entryId);
14
+ if (result.isFail()) return result;
15
+ const pages = result.value;
16
+ if (pages.length > 0) {
17
+ const canAccess = await this.permissions.canAccess("page", pages[0]);
18
+ if (!canAccess) return Result.fail(new PageNotAuthorizedError());
19
+ }
20
+ return result;
21
+ }
9
22
  }
10
- export const GetPageRevisionsUseCase = UseCaseAbstraction.createImplementation({
11
- implementation: GetPageRevisionsUseCaseImpl,
12
- dependencies: [GetPageRevisionsRepository]
23
+ const GetPageRevisionsUseCase_GetPageRevisionsUseCase = GetPageRevisionsUseCase.createImplementation({
24
+ implementation: GetPageRevisionsUseCaseImpl,
25
+ dependencies: [
26
+ WbPermissions,
27
+ GetPageRevisionsRepository
28
+ ]
13
29
  });
30
+ export { GetPageRevisionsUseCase_GetPageRevisionsUseCase as GetPageRevisionsUseCase };
14
31
 
15
32
  //# sourceMappingURL=GetPageRevisionsUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["GetPageRevisionsUseCase","UseCaseAbstraction","GetPageRevisionsRepository","GetPageRevisionsUseCaseImpl","constructor","repository","execute","entryId","createImplementation","implementation","dependencies"],"sources":["GetPageRevisionsUseCase.ts"],"sourcesContent":["import {\n GetPageRevisionsUseCase as UseCaseAbstraction,\n GetPageRevisionsRepository\n} from \"./abstractions.js\";\n\nclass GetPageRevisionsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: GetPageRevisionsRepository.Interface) {}\n\n async execute(entryId: string): UseCaseAbstraction.Return {\n return this.repository.execute(entryId);\n }\n}\n\nexport const GetPageRevisionsUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetPageRevisionsUseCaseImpl,\n dependencies: [GetPageRevisionsRepository]\n});\n"],"mappings":"AAAA,SACIA,uBAAuB,IAAIC,kBAAkB,EAC7CC,0BAA0B;AAG9B,MAAMC,2BAA2B,CAAyC;EACtEC,WAAWA,CAASC,UAAgD,EAAE;IAAA,KAAlDA,UAAgD,GAAhDA,UAAgD;EAAG;EAEvE,MAAMC,OAAOA,CAACC,OAAe,EAA6B;IACtD,OAAO,IAAI,CAACF,UAAU,CAACC,OAAO,CAACC,OAAO,CAAC;EAC3C;AACJ;AAEA,OAAO,MAAMP,uBAAuB,GAAGC,kBAAkB,CAACO,oBAAoB,CAAC;EAC3EC,cAAc,EAAEN,2BAA2B;EAC3CO,YAAY,EAAE,CAACR,0BAA0B;AAC7C,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/GetPageRevisions/GetPageRevisionsUseCase.js","sources":["../../../../src/features/pages/GetPageRevisions/GetPageRevisionsUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n GetPageRevisionsUseCase as UseCaseAbstraction,\n GetPageRevisionsRepository\n} from \"./abstractions.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\nclass GetPageRevisionsUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private repository: GetPageRevisionsRepository.Interface\n ) {}\n\n async execute(entryId: string): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canRead(\"page\");\n if (!hasPermission) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n const result = await this.repository.execute(entryId);\n\n if (result.isFail()) {\n return result;\n }\n\n const pages = result.value;\n if (pages.length > 0) {\n const canAccess = await this.permissions.canAccess(\"page\", pages[0]);\n if (!canAccess) {\n return Result.fail(new PageNotAuthorizedError());\n }\n }\n\n return result;\n }\n}\n\nexport const GetPageRevisionsUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetPageRevisionsUseCaseImpl,\n dependencies: [WbPermissions, GetPageRevisionsRepository]\n});\n"],"names":["GetPageRevisionsUseCaseImpl","permissions","repository","entryId","hasPermission","Result","PageNotAuthorizedError","result","pages","canAccess","GetPageRevisionsUseCase","UseCaseAbstraction","WbPermissions","GetPageRevisionsRepository"],"mappings":";;;;AAQA,MAAMA;IACF,YACYC,WAAoC,EACpCC,UAAgD,CAC1D;aAFUD,WAAW,GAAXA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,OAAe,EAA6B;QACtD,MAAMC,gBAAgB,MAAM,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC;QACrD,IAAI,CAACA,eACD,OAAOC,OAAO,IAAI,CAAC,IAAIC;QAG3B,MAAMC,SAAS,MAAM,IAAI,CAAC,UAAU,CAAC,OAAO,CAACJ;QAE7C,IAAII,OAAO,MAAM,IACb,OAAOA;QAGX,MAAMC,QAAQD,OAAO,KAAK;QAC1B,IAAIC,MAAM,MAAM,GAAG,GAAG;YAClB,MAAMC,YAAY,MAAM,IAAI,CAAC,WAAW,CAAC,SAAS,CAAC,QAAQD,KAAK,CAAC,EAAE;YACnE,IAAI,CAACC,WACD,OAAOJ,OAAO,IAAI,CAAC,IAAIC;QAE/B;QAEA,OAAOC;IACX;AACJ;AAEO,MAAMG,kDAA0BC,wBAAAA,oBAAuC,CAAC;IAC3E,gBAAgBX;IAChB,cAAc;QAACY;QAAeC;KAA2B;AAC7D"}
@@ -1,6 +1,6 @@
1
1
  import type { Result } from "@webiny/feature/api";
2
2
  import type { WbPage } from "../../../domain/page/abstractions.js";
3
- import type { PagePersistenceError } from "../../../domain/page/errors.js";
3
+ import type { PagePersistenceError, PageNotAuthorizedError } from "../../../domain/page/errors.js";
4
4
  /**
5
5
  * GetPageRevisions repository interface
6
6
  */
@@ -24,9 +24,11 @@ export interface IGetPageRevisionsUseCase {
24
24
  execute(entryId: string): Promise<Result<WbPage[], UseCaseError>>;
25
25
  }
26
26
  export interface IGetPageRevisionsUseCaseErrors {
27
+ notAuthorized: PageNotAuthorizedError;
27
28
  persistence: PagePersistenceError;
28
29
  }
29
30
  type UseCaseError = IGetPageRevisionsUseCaseErrors[keyof IGetPageRevisionsUseCaseErrors];
31
+ /** Retrieve all revisions of a page. */
30
32
  export declare const GetPageRevisionsUseCase: import("@webiny/di").Abstraction<IGetPageRevisionsUseCase>;
31
33
  export declare namespace GetPageRevisionsUseCase {
32
34
  type Interface = IGetPageRevisionsUseCase;
@@ -1,15 +1,6 @@
1
1
  import { createAbstraction } from "@webiny/feature/api";
2
-
3
- /**
4
- * GetPageRevisions repository interface
5
- */
6
-
7
- export const GetPageRevisionsRepository = createAbstraction("Wb/GetPageRevisionsRepository");
8
-
9
- /**
10
- * GetPageRevisions use case interface
11
- */
12
-
13
- export const GetPageRevisionsUseCase = createAbstraction("Wb/GetPageRevisionsUseCase");
2
+ const GetPageRevisionsRepository = createAbstraction("Wb/GetPageRevisionsRepository");
3
+ const GetPageRevisionsUseCase = createAbstraction("Wb/GetPageRevisionsUseCase");
4
+ export { GetPageRevisionsRepository, GetPageRevisionsUseCase };
14
5
 
15
6
  //# sourceMappingURL=abstractions.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createAbstraction","GetPageRevisionsRepository","GetPageRevisionsUseCase"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { PagePersistenceError } from \"~/domain/page/errors.js\";\n\n/**\n * GetPageRevisions repository interface\n */\nexport interface IGetPageRevisionsRepository {\n execute(entryId: string): Promise<Result<WbPage[], RepositoryError>>;\n}\n\nexport interface IGetPageRevisionsRepositoryErrors {\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IGetPageRevisionsRepositoryErrors[keyof IGetPageRevisionsRepositoryErrors];\n\nexport const GetPageRevisionsRepository = createAbstraction<IGetPageRevisionsRepository>(\n \"Wb/GetPageRevisionsRepository\"\n);\n\nexport namespace GetPageRevisionsRepository {\n export type Interface = IGetPageRevisionsRepository;\n export type Error = RepositoryError;\n export type Return = Promise<Result<WbPage[], RepositoryError>>;\n}\n\n/**\n * GetPageRevisions use case interface\n */\nexport interface IGetPageRevisionsUseCase {\n execute(entryId: string): Promise<Result<WbPage[], UseCaseError>>;\n}\n\nexport interface IGetPageRevisionsUseCaseErrors {\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IGetPageRevisionsUseCaseErrors[keyof IGetPageRevisionsUseCaseErrors];\n\nexport const GetPageRevisionsUseCase = createAbstraction<IGetPageRevisionsUseCase>(\n \"Wb/GetPageRevisionsUseCase\"\n);\n\nexport namespace GetPageRevisionsUseCase {\n export type Interface = IGetPageRevisionsUseCase;\n export type Error = UseCaseError;\n export type Return = Promise<Result<WbPage[], UseCaseError>>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,qBAAqB;;AAKvD;AACA;AACA;;AAWA,OAAO,MAAMC,0BAA0B,GAAGD,iBAAiB,CACvD,+BACJ,CAAC;;AAQD;AACA;AACA;;AAWA,OAAO,MAAME,uBAAuB,GAAGF,iBAAiB,CACpD,4BACJ,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/GetPageRevisions/abstractions.js","sources":["../../../../src/features/pages/GetPageRevisions/abstractions.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/api\";\nimport type { Result } from \"@webiny/feature/api\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport type { PagePersistenceError, PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\n/**\n * GetPageRevisions repository interface\n */\nexport interface IGetPageRevisionsRepository {\n execute(entryId: string): Promise<Result<WbPage[], RepositoryError>>;\n}\n\nexport interface IGetPageRevisionsRepositoryErrors {\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IGetPageRevisionsRepositoryErrors[keyof IGetPageRevisionsRepositoryErrors];\n\nexport const GetPageRevisionsRepository = createAbstraction<IGetPageRevisionsRepository>(\n \"Wb/GetPageRevisionsRepository\"\n);\n\nexport namespace GetPageRevisionsRepository {\n export type Interface = IGetPageRevisionsRepository;\n export type Error = RepositoryError;\n export type Return = Promise<Result<WbPage[], RepositoryError>>;\n}\n\n/**\n * GetPageRevisions use case interface\n */\nexport interface IGetPageRevisionsUseCase {\n execute(entryId: string): Promise<Result<WbPage[], UseCaseError>>;\n}\n\nexport interface IGetPageRevisionsUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IGetPageRevisionsUseCaseErrors[keyof IGetPageRevisionsUseCaseErrors];\n\n/** Retrieve all revisions of a page. */\nexport const GetPageRevisionsUseCase = createAbstraction<IGetPageRevisionsUseCase>(\n \"Wb/GetPageRevisionsUseCase\"\n);\n\nexport namespace GetPageRevisionsUseCase {\n export type Interface = IGetPageRevisionsUseCase;\n export type Error = UseCaseError;\n export type Return = Promise<Result<WbPage[], UseCaseError>>;\n export type Page = WbPage;\n}\n"],"names":["GetPageRevisionsRepository","createAbstraction","GetPageRevisionsUseCase"],"mappings":";AAkBO,MAAMA,6BAA6BC,kBACtC;AAwBG,MAAMC,0BAA0BD,kBACnC"}
@@ -1 +1,4 @@
1
- export declare const GetPageRevisionsFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
1
+ export declare const GetPageRevisionsFeature: {
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 { GetPageRevisionsRepository } from "./GetPageRevisionsRepository.js";
3
3
  import { GetPageRevisionsUseCase } from "./GetPageRevisionsUseCase.js";
4
- export const GetPageRevisionsFeature = createFeature({
5
- name: "WebsiteBuilder/GetPageRevisions",
6
- register(container) {
7
- container.register(GetPageRevisionsRepository).inSingletonScope();
8
- container.register(GetPageRevisionsUseCase);
9
- }
4
+ const GetPageRevisionsFeature = createFeature({
5
+ name: "WebsiteBuilder/GetPageRevisions",
6
+ register (container) {
7
+ container.register(GetPageRevisionsRepository).inSingletonScope();
8
+ container.register(GetPageRevisionsUseCase);
9
+ }
10
10
  });
11
+ export { GetPageRevisionsFeature };
11
12
 
12
13
  //# sourceMappingURL=feature.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["createFeature","GetPageRevisionsRepository","GetPageRevisionsUseCase","GetPageRevisionsFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetPageRevisionsRepository } from \"./GetPageRevisionsRepository.js\";\nimport { GetPageRevisionsUseCase } from \"./GetPageRevisionsUseCase.js\";\n\nexport const GetPageRevisionsFeature = createFeature({\n name: \"WebsiteBuilder/GetPageRevisions\",\n register(container) {\n container.register(GetPageRevisionsRepository).inSingletonScope();\n container.register(GetPageRevisionsUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,0BAA0B;AACnC,SAASC,uBAAuB;AAEhC,OAAO,MAAMC,uBAAuB,GAAGH,aAAa,CAAC;EACjDI,IAAI,EAAE,iCAAiC;EACvCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,0BAA0B,CAAC,CAACM,gBAAgB,CAAC,CAAC;IACjED,SAAS,CAACD,QAAQ,CAACH,uBAAuB,CAAC;EAC/C;AACJ,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"file":"features/pages/GetPageRevisions/feature.js","sources":["../../../../src/features/pages/GetPageRevisions/feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { GetPageRevisionsRepository } from \"./GetPageRevisionsRepository.js\";\nimport { GetPageRevisionsUseCase } from \"./GetPageRevisionsUseCase.js\";\n\nexport const GetPageRevisionsFeature = createFeature({\n name: \"WebsiteBuilder/GetPageRevisions\",\n register(container) {\n container.register(GetPageRevisionsRepository).inSingletonScope();\n container.register(GetPageRevisionsUseCase);\n }\n});\n"],"names":["GetPageRevisionsFeature","createFeature","container","GetPageRevisionsRepository","GetPageRevisionsUseCase"],"mappings":";;;AAIO,MAAMA,0BAA0BC,cAAc;IACjD,MAAM;IACN,UAASC,SAAS;QACdA,UAAU,QAAQ,CAACC,4BAA4B,gBAAgB;QAC/DD,UAAU,QAAQ,CAACE;IACvB;AACJ"}
@@ -1,3 +1 @@
1
1
  export * from "./abstractions.js";
2
-
3
- //# sourceMappingURL=index.js.map
@@ -0,0 +1,17 @@
1
+ import { ListDeletedPagesRepository as RepositoryAbstraction } from "./abstractions.js";
2
+ import { ListDeletedEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries";
3
+ import { PageModel } from "../../../domain/page/abstractions.js";
4
+ import { CmsWhereMapper } from "@webiny/api-headless-cms/features/whereMapper/abstractions.js";
5
+ import { CmsSortMapper } from "@webiny/api-headless-cms/features/sortMapper/abstractions.js";
6
+ declare class ListDeletedPagesRepositoryImpl implements RepositoryAbstraction.Interface {
7
+ private pageModel;
8
+ private listDeletedEntries;
9
+ private whereMapper;
10
+ private sortMapper;
11
+ constructor(pageModel: PageModel.Interface, listDeletedEntries: ListDeletedEntriesUseCase.Interface, whereMapper: CmsWhereMapper.Interface, sortMapper: CmsSortMapper.Interface);
12
+ execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return;
13
+ }
14
+ export declare const ListDeletedPagesRepository: typeof ListDeletedPagesRepositoryImpl & {
15
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListDeletedPagesRepository>;
16
+ };
17
+ export {};
@@ -0,0 +1,50 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { ListDeletedPagesRepository } from "./abstractions.js";
3
+ import { ListDeletedEntriesUseCase } from "@webiny/api-headless-cms/features/contentEntry/ListEntries";
4
+ import { PageModel } from "../../../domain/page/abstractions.js";
5
+ import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
6
+ import { PagePersistenceError } from "../../../domain/page/errors.js";
7
+ import { CmsWhereMapper } from "@webiny/api-headless-cms/features/whereMapper/abstractions.js";
8
+ import { CmsSortMapper } from "@webiny/api-headless-cms/features/sortMapper/abstractions.js";
9
+ class ListDeletedPagesRepositoryImpl {
10
+ constructor(pageModel, listDeletedEntries, whereMapper, sortMapper){
11
+ this.pageModel = pageModel;
12
+ this.listDeletedEntries = listDeletedEntries;
13
+ this.whereMapper = whereMapper;
14
+ this.sortMapper = sortMapper;
15
+ }
16
+ async execute(params) {
17
+ const result = await this.listDeletedEntries.execute(this.pageModel, {
18
+ where: this.whereMapper.map({
19
+ fields: this.pageModel.fields,
20
+ input: params.where
21
+ }),
22
+ sort: this.sortMapper.map({
23
+ fields: this.pageModel.fields,
24
+ input: params.sort
25
+ }),
26
+ limit: params.limit,
27
+ after: params.after,
28
+ search: params.search
29
+ });
30
+ if (result.isFail()) return Result.fail(new PagePersistenceError(result.error));
31
+ const { entries, meta } = result.value;
32
+ const pages = entries.map((entry)=>EntryToPageMapper.toPage(entry));
33
+ return Result.ok({
34
+ pages,
35
+ meta
36
+ });
37
+ }
38
+ }
39
+ const ListDeletedPagesRepository_ListDeletedPagesRepository = ListDeletedPagesRepository.createImplementation({
40
+ implementation: ListDeletedPagesRepositoryImpl,
41
+ dependencies: [
42
+ PageModel,
43
+ ListDeletedEntriesUseCase,
44
+ CmsWhereMapper,
45
+ CmsSortMapper
46
+ ]
47
+ });
48
+ export { ListDeletedPagesRepository_ListDeletedPagesRepository as ListDeletedPagesRepository };
49
+
50
+ //# sourceMappingURL=ListDeletedPagesRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/pages/ListDeletedPages/ListDeletedPagesRepository.js","sources":["../../../../src/features/pages/ListDeletedPages/ListDeletedPagesRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { ListDeletedPagesRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { ListDeletedEntriesUseCase } from \"@webiny/api-headless-cms/features/contentEntry/ListEntries\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport { PagePersistenceError } from \"~/domain/page/errors.js\";\nimport { CmsWhereMapper } from \"@webiny/api-headless-cms/features/whereMapper/abstractions.js\";\nimport { CmsSortMapper } from \"@webiny/api-headless-cms/features/sortMapper/abstractions.js\";\n\nclass ListDeletedPagesRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private listDeletedEntries: ListDeletedEntriesUseCase.Interface,\n private whereMapper: CmsWhereMapper.Interface,\n private sortMapper: CmsSortMapper.Interface\n ) {}\n\n async execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return {\n const result = await this.listDeletedEntries.execute(this.pageModel, {\n where: this.whereMapper.map({\n fields: this.pageModel.fields,\n input: params.where\n }),\n sort: this.sortMapper.map({\n fields: this.pageModel.fields,\n input: params.sort\n }),\n limit: params.limit,\n after: params.after,\n search: params.search\n });\n\n if (result.isFail()) {\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const { entries, meta } = result.value;\n const pages = entries.map(entry => EntryToPageMapper.toPage(entry));\n\n return Result.ok({ pages, meta });\n }\n}\n\nexport const ListDeletedPagesRepository = RepositoryAbstraction.createImplementation({\n implementation: ListDeletedPagesRepositoryImpl,\n dependencies: [PageModel, ListDeletedEntriesUseCase, CmsWhereMapper, CmsSortMapper]\n});\n"],"names":["ListDeletedPagesRepositoryImpl","pageModel","listDeletedEntries","whereMapper","sortMapper","params","result","Result","PagePersistenceError","entries","meta","pages","entry","EntryToPageMapper","ListDeletedPagesRepository","RepositoryAbstraction","PageModel","ListDeletedEntriesUseCase","CmsWhereMapper","CmsSortMapper"],"mappings":";;;;;;;;AASA,MAAMA;IACF,YACYC,SAA8B,EAC9BC,kBAAuD,EACvDC,WAAqC,EACrCC,UAAmC,CAC7C;aAJUH,SAAS,GAATA;aACAC,kBAAkB,GAAlBA;aACAC,WAAW,GAAXA;aACAC,UAAU,GAAVA;IACT;IAEH,MAAM,QAAQC,MAAoC,EAAgC;QAC9E,MAAMC,SAAS,MAAM,IAAI,CAAC,kBAAkB,CAAC,OAAO,CAAC,IAAI,CAAC,SAAS,EAAE;YACjE,OAAO,IAAI,CAAC,WAAW,CAAC,GAAG,CAAC;gBACxB,QAAQ,IAAI,CAAC,SAAS,CAAC,MAAM;gBAC7B,OAAOD,OAAO,KAAK;YACvB;YACA,MAAM,IAAI,CAAC,UAAU,CAAC,GAAG,CAAC;gBACtB,QAAQ,IAAI,CAAC,SAAS,CAAC,MAAM;gBAC7B,OAAOA,OAAO,IAAI;YACtB;YACA,OAAOA,OAAO,KAAK;YACnB,OAAOA,OAAO,KAAK;YACnB,QAAQA,OAAO,MAAM;QACzB;QAEA,IAAIC,OAAO,MAAM,IACb,OAAOC,OAAO,IAAI,CAAC,IAAIC,qBAAqBF,OAAO,KAAK;QAG5D,MAAM,EAAEG,OAAO,EAAEC,IAAI,EAAE,GAAGJ,OAAO,KAAK;QACtC,MAAMK,QAAQF,QAAQ,GAAG,CAACG,CAAAA,QAASC,kBAAkB,MAAM,CAACD;QAE5D,OAAOL,OAAO,EAAE,CAAC;YAAEI;YAAOD;QAAK;IACnC;AACJ;AAEO,MAAMI,wDAA6BC,2BAAAA,oBAA0C,CAAC;IACjF,gBAAgBf;IAChB,cAAc;QAACgB;QAAWC;QAA2BC;QAAgBC;KAAc;AACvF"}
@@ -0,0 +1,14 @@
1
+ import { ListDeletedPagesUseCase as UseCaseAbstraction, ListDeletedPagesRepository } from "./abstractions.js";
2
+ import { WbPermissions } from "../../../features/permissions/abstractions.js";
3
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
4
+ declare class ListDeletedPagesUseCaseImpl implements UseCaseAbstraction.Interface {
5
+ private permissions;
6
+ private identityContext;
7
+ private repository;
8
+ constructor(permissions: WbPermissions.Interface, identityContext: IdentityContext.Interface, repository: ListDeletedPagesRepository.Interface);
9
+ execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return;
10
+ }
11
+ export declare const ListDeletedPagesUseCase: typeof ListDeletedPagesUseCaseImpl & {
12
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IListDeletedPagesUseCase>;
13
+ };
14
+ export {};
@@ -0,0 +1,38 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { ListDeletedPagesRepository, ListDeletedPagesUseCase } from "./abstractions.js";
3
+ import { WbPermissions } from "../../permissions/abstractions.js";
4
+ import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
5
+ import { IdentityContext } from "@webiny/api-core/features/security/IdentityContext/index.js";
6
+ class ListDeletedPagesUseCaseImpl {
7
+ constructor(permissions, identityContext, repository){
8
+ this.permissions = permissions;
9
+ this.identityContext = identityContext;
10
+ this.repository = repository;
11
+ }
12
+ async execute(params) {
13
+ const hasPermission = await this.permissions.canRead("page");
14
+ if (!hasPermission) return Result.fail(new PageNotAuthorizedError());
15
+ const where = {
16
+ ...params.where
17
+ };
18
+ if (await this.permissions.onlyOwnRecords("page")) {
19
+ const identity = this.identityContext.getIdentity();
20
+ where.createdBy = identity.id;
21
+ }
22
+ return this.repository.execute({
23
+ ...params,
24
+ where
25
+ });
26
+ }
27
+ }
28
+ const ListDeletedPagesUseCase_ListDeletedPagesUseCase = ListDeletedPagesUseCase.createImplementation({
29
+ implementation: ListDeletedPagesUseCaseImpl,
30
+ dependencies: [
31
+ WbPermissions,
32
+ IdentityContext,
33
+ ListDeletedPagesRepository
34
+ ]
35
+ });
36
+ export { ListDeletedPagesUseCase_ListDeletedPagesUseCase as ListDeletedPagesUseCase };
37
+
38
+ //# sourceMappingURL=ListDeletedPagesUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"features/pages/ListDeletedPages/ListDeletedPagesUseCase.js","sources":["../../../../src/features/pages/ListDeletedPages/ListDeletedPagesUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport {\n ListDeletedPagesUseCase as UseCaseAbstraction,\n ListDeletedPagesRepository\n} from \"./abstractions.js\";\nimport { WbPermissions } from \"~/features/permissions/abstractions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\nimport { IdentityContext } from \"@webiny/api-core/features/security/IdentityContext/index.js\";\n\nclass ListDeletedPagesUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private identityContext: IdentityContext.Interface,\n private repository: ListDeletedPagesRepository.Interface\n ) {}\n\n async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canRead(\"page\");\n if (!hasPermission) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n const where = { ...params.where };\n\n if (await this.permissions.onlyOwnRecords(\"page\")) {\n const identity = this.identityContext.getIdentity();\n where.createdBy = identity.id;\n }\n\n return this.repository.execute({ ...params, where });\n }\n}\n\nexport const ListDeletedPagesUseCase = UseCaseAbstraction.createImplementation({\n implementation: ListDeletedPagesUseCaseImpl,\n dependencies: [WbPermissions, IdentityContext, ListDeletedPagesRepository]\n});\n"],"names":["ListDeletedPagesUseCaseImpl","permissions","identityContext","repository","params","hasPermission","Result","PageNotAuthorizedError","where","identity","ListDeletedPagesUseCase","UseCaseAbstraction","WbPermissions","IdentityContext","ListDeletedPagesRepository"],"mappings":";;;;;AASA,MAAMA;IACF,YACYC,WAAoC,EACpCC,eAA0C,EAC1CC,UAAgD,CAC1D;aAHUF,WAAW,GAAXA;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;QAG3B,MAAMC,QAAQ;YAAE,GAAGJ,OAAO,KAAK;QAAC;QAEhC,IAAI,MAAM,IAAI,CAAC,WAAW,CAAC,cAAc,CAAC,SAAS;YAC/C,MAAMK,WAAW,IAAI,CAAC,eAAe,CAAC,WAAW;YACjDD,MAAM,SAAS,GAAGC,SAAS,EAAE;QACjC;QAEA,OAAO,IAAI,CAAC,UAAU,CAAC,OAAO,CAAC;YAAE,GAAGL,MAAM;YAAEI;QAAM;IACtD;AACJ;AAEO,MAAME,kDAA0BC,wBAAAA,oBAAuC,CAAC;IAC3E,gBAAgBX;IAChB,cAAc;QAACY;QAAeC;QAAiBC;KAA2B;AAC9E"}