@webiny/api-website-builder 6.0.0-alpha.5 → 6.0.0-rc.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (640) hide show
  1. package/README.md +7 -29
  2. package/constants.js +3 -9
  3. package/constants.js.map +1 -1
  4. package/domain/page/EntryToPageMapper.d.ts +5 -0
  5. package/domain/page/EntryToPageMapper.js +30 -0
  6. package/domain/page/EntryToPageMapper.js.map +1 -0
  7. package/domain/page/abstractions.d.ts +33 -0
  8. package/domain/page/abstractions.js +8 -0
  9. package/domain/page/abstractions.js.map +1 -0
  10. package/domain/page/errors.d.ts +19 -0
  11. package/domain/page/errors.js +38 -0
  12. package/domain/page/errors.js.map +1 -0
  13. package/domain/page/page.model.d.ts +2 -0
  14. package/domain/page/page.model.js +32 -0
  15. package/domain/page/page.model.js.map +1 -0
  16. package/domain/permissions.d.ts +133 -0
  17. package/domain/permissions.js +35 -0
  18. package/domain/permissions.js.map +1 -0
  19. package/domain/redirect/EntryToRedirectMapper.d.ts +5 -0
  20. package/domain/redirect/EntryToRedirectMapper.js +24 -0
  21. package/domain/redirect/EntryToRedirectMapper.js.map +1 -0
  22. package/domain/redirect/abstractions.d.ts +30 -0
  23. package/domain/redirect/abstractions.js +12 -0
  24. package/domain/redirect/abstractions.js.map +1 -0
  25. package/domain/redirect/errors.d.ts +19 -0
  26. package/domain/redirect/errors.js +38 -0
  27. package/domain/redirect/errors.js.map +1 -0
  28. package/domain/redirect/redirect.model.d.ts +2 -0
  29. package/domain/redirect/redirect.model.js +32 -0
  30. package/domain/redirect/redirect.model.js.map +1 -0
  31. package/domain/shared/abstractions.d.ts +5 -0
  32. package/domain/shared/abstractions.js +3 -0
  33. package/domain/shared/abstractions.js.map +1 -0
  34. package/exports/api/website-builder/nextjs.d.ts +1 -0
  35. package/exports/api/website-builder/nextjs.js +3 -0
  36. package/exports/api/website-builder/nextjs.js.map +1 -0
  37. package/exports/api/website-builder/page.d.ts +12 -0
  38. package/exports/api/website-builder/page.js +14 -0
  39. package/exports/api/website-builder/page.js.map +1 -0
  40. package/exports/api/website-builder/redirect.d.ts +8 -0
  41. package/exports/api/website-builder/redirect.js +10 -0
  42. package/exports/api/website-builder/redirect.js.map +1 -0
  43. package/features/installer/ApiKeyInstaller.d.ts +20 -0
  44. package/features/installer/ApiKeyInstaller.js +44 -0
  45. package/features/installer/ApiKeyInstaller.js.map +1 -0
  46. package/features/installer/feature.d.ts +1 -0
  47. package/features/installer/feature.js +10 -0
  48. package/features/installer/feature.js.map +1 -0
  49. package/features/nextjs/MarkdownContentBuilder.d.ts +31 -0
  50. package/features/nextjs/MarkdownContentBuilder.js +86 -0
  51. package/features/nextjs/MarkdownContentBuilder.js.map +1 -0
  52. package/features/nextjs/MarkdownContentBuilder.test.d.ts +1 -0
  53. package/features/nextjs/MarkdownContentBuilder.test.js +278 -0
  54. package/features/nextjs/MarkdownContentBuilder.test.js.map +1 -0
  55. package/features/nextjs/NextjsConfig.d.ts +14 -0
  56. package/features/nextjs/NextjsConfig.js +58 -0
  57. package/features/nextjs/NextjsConfig.js.map +1 -0
  58. package/features/nextjs/abstractions.d.ts +9 -0
  59. package/features/nextjs/abstractions.js +4 -0
  60. package/features/nextjs/abstractions.js.map +1 -0
  61. package/features/nextjs/feature.d.ts +1 -0
  62. package/features/nextjs/feature.js +10 -0
  63. package/features/nextjs/feature.js.map +1 -0
  64. package/features/nextjs/index.d.ts +1 -0
  65. package/features/nextjs/index.js +3 -0
  66. package/features/nextjs/index.js.map +1 -0
  67. package/features/pages/CreatePage/CreatePageRepository.d.ts +13 -0
  68. package/features/pages/CreatePage/CreatePageRepository.js +36 -0
  69. package/features/pages/CreatePage/CreatePageRepository.js.map +1 -0
  70. package/features/pages/CreatePage/CreatePageUseCase.d.ts +14 -0
  71. package/features/pages/CreatePage/CreatePageUseCase.js +45 -0
  72. package/features/pages/CreatePage/CreatePageUseCase.js.map +1 -0
  73. package/features/pages/CreatePage/abstractions.d.ts +56 -0
  74. package/features/pages/CreatePage/abstractions.js +30 -0
  75. package/features/pages/CreatePage/abstractions.js.map +1 -0
  76. package/features/pages/CreatePage/events.d.ts +10 -0
  77. package/features/pages/CreatePage/events.js +19 -0
  78. package/features/pages/CreatePage/events.js.map +1 -0
  79. package/features/pages/CreatePage/feature.d.ts +1 -0
  80. package/features/pages/CreatePage/feature.js +12 -0
  81. package/features/pages/CreatePage/feature.js.map +1 -0
  82. package/features/pages/CreatePage/index.d.ts +1 -15
  83. package/features/pages/CreatePage/index.js +1 -16
  84. package/features/pages/CreatePage/index.js.map +1 -1
  85. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.d.ts +15 -0
  86. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js +49 -0
  87. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromRepository.js.map +1 -0
  88. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.d.ts +16 -0
  89. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js +53 -0
  90. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromUseCase.js.map +1 -0
  91. package/features/pages/CreatePageRevisionFrom/abstractions.d.ts +61 -0
  92. package/features/pages/CreatePageRevisionFrom/abstractions.js +30 -0
  93. package/features/pages/CreatePageRevisionFrom/abstractions.js.map +1 -0
  94. package/features/pages/CreatePageRevisionFrom/events.d.ts +10 -0
  95. package/features/pages/CreatePageRevisionFrom/events.js +19 -0
  96. package/features/pages/CreatePageRevisionFrom/events.js.map +1 -0
  97. package/features/pages/CreatePageRevisionFrom/feature.d.ts +1 -0
  98. package/features/pages/CreatePageRevisionFrom/feature.js +12 -0
  99. package/features/pages/CreatePageRevisionFrom/feature.js.map +1 -0
  100. package/features/pages/CreatePageRevisionFrom/index.d.ts +1 -16
  101. package/features/pages/CreatePageRevisionFrom/index.js +1 -16
  102. package/features/pages/CreatePageRevisionFrom/index.js.map +1 -1
  103. package/features/pages/DeletePage/DeletePageRepository.d.ts +15 -0
  104. package/features/pages/DeletePage/DeletePageRepository.js +39 -0
  105. package/features/pages/DeletePage/DeletePageRepository.js.map +1 -0
  106. package/features/pages/DeletePage/DeletePageUseCase.d.ts +16 -0
  107. package/features/pages/DeletePage/DeletePageUseCase.js +52 -0
  108. package/features/pages/DeletePage/DeletePageUseCase.js.map +1 -0
  109. package/features/pages/DeletePage/abstractions.d.ts +58 -0
  110. package/features/pages/DeletePage/abstractions.js +30 -0
  111. package/features/pages/DeletePage/abstractions.js.map +1 -0
  112. package/features/pages/DeletePage/events.d.ts +10 -0
  113. package/features/pages/DeletePage/events.js +19 -0
  114. package/features/pages/DeletePage/events.js.map +1 -0
  115. package/features/pages/DeletePage/feature.d.ts +1 -0
  116. package/features/pages/DeletePage/feature.js +12 -0
  117. package/features/pages/DeletePage/feature.js.map +1 -0
  118. package/features/pages/DeletePage/index.d.ts +1 -16
  119. package/features/pages/DeletePage/index.js +1 -16
  120. package/features/pages/DeletePage/index.js.map +1 -1
  121. package/features/pages/DuplicatePage/DuplicatePageRepository.d.ts +15 -0
  122. package/features/pages/DuplicatePage/DuplicatePageRepository.js +59 -0
  123. package/features/pages/DuplicatePage/DuplicatePageRepository.js.map +1 -0
  124. package/features/pages/DuplicatePage/DuplicatePageUseCase.d.ts +14 -0
  125. package/features/pages/DuplicatePage/DuplicatePageUseCase.js +55 -0
  126. package/features/pages/DuplicatePage/DuplicatePageUseCase.js.map +1 -0
  127. package/features/pages/DuplicatePage/abstractions.d.ts +62 -0
  128. package/features/pages/DuplicatePage/abstractions.js +30 -0
  129. package/features/pages/DuplicatePage/abstractions.js.map +1 -0
  130. package/features/pages/DuplicatePage/events.d.ts +10 -0
  131. package/features/pages/DuplicatePage/events.js +19 -0
  132. package/features/pages/DuplicatePage/events.js.map +1 -0
  133. package/features/pages/DuplicatePage/feature.d.ts +1 -0
  134. package/features/pages/DuplicatePage/feature.js +12 -0
  135. package/features/pages/DuplicatePage/feature.js.map +1 -0
  136. package/features/pages/DuplicatePage/index.d.ts +1 -16
  137. package/features/pages/DuplicatePage/index.js +1 -16
  138. package/features/pages/DuplicatePage/index.js.map +1 -1
  139. package/features/pages/GetPageById/GetPageByIdRepository.d.ts +13 -0
  140. package/features/pages/GetPageById/GetPageByIdRepository.js +29 -0
  141. package/features/pages/GetPageById/GetPageByIdRepository.js.map +1 -0
  142. package/features/pages/GetPageById/GetPageByIdUseCase.d.ts +12 -0
  143. package/features/pages/GetPageById/GetPageByIdUseCase.js +31 -0
  144. package/features/pages/GetPageById/GetPageByIdUseCase.js.map +1 -0
  145. package/features/pages/GetPageById/abstractions.d.ts +40 -0
  146. package/features/pages/GetPageById/abstractions.js +15 -0
  147. package/features/pages/GetPageById/abstractions.js.map +1 -0
  148. package/features/pages/GetPageById/feature.d.ts +1 -0
  149. package/features/pages/GetPageById/feature.js +12 -0
  150. package/features/pages/GetPageById/feature.js.map +1 -0
  151. package/features/pages/GetPageById/index.d.ts +1 -9
  152. package/features/pages/GetPageById/index.js +1 -14
  153. package/features/pages/GetPageById/index.js.map +1 -1
  154. package/features/pages/GetPageByPath/GetPageByPathRepository.d.ts +13 -0
  155. package/features/pages/GetPageByPath/GetPageByPathRepository.js +38 -0
  156. package/features/pages/GetPageByPath/GetPageByPathRepository.js.map +1 -0
  157. package/features/pages/GetPageByPath/GetPageByPathUseCase.d.ts +12 -0
  158. package/features/pages/GetPageByPath/GetPageByPathUseCase.js +31 -0
  159. package/features/pages/GetPageByPath/GetPageByPathUseCase.js.map +1 -0
  160. package/features/pages/GetPageByPath/abstractions.d.ts +40 -0
  161. package/features/pages/GetPageByPath/abstractions.js +15 -0
  162. package/features/pages/GetPageByPath/abstractions.js.map +1 -0
  163. package/features/pages/GetPageByPath/feature.d.ts +1 -0
  164. package/features/pages/GetPageByPath/feature.js +12 -0
  165. package/features/pages/GetPageByPath/feature.js.map +1 -0
  166. package/features/pages/GetPageByPath/index.d.ts +1 -9
  167. package/features/pages/GetPageByPath/index.js +1 -14
  168. package/features/pages/GetPageByPath/index.js.map +1 -1
  169. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.d.ts +13 -0
  170. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js +26 -0
  171. package/features/pages/GetPageRevisions/GetPageRevisionsRepository.js.map +1 -0
  172. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.d.ts +12 -0
  173. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js +34 -0
  174. package/features/pages/GetPageRevisions/GetPageRevisionsUseCase.js.map +1 -0
  175. package/features/pages/GetPageRevisions/abstractions.d.ts +38 -0
  176. package/features/pages/GetPageRevisions/abstractions.js +15 -0
  177. package/features/pages/GetPageRevisions/abstractions.js.map +1 -0
  178. package/features/pages/GetPageRevisions/feature.d.ts +1 -0
  179. package/features/pages/GetPageRevisions/feature.js +12 -0
  180. package/features/pages/GetPageRevisions/feature.js.map +1 -0
  181. package/features/pages/GetPageRevisions/index.d.ts +1 -9
  182. package/features/pages/GetPageRevisions/index.js +1 -14
  183. package/features/pages/GetPageRevisions/index.js.map +1 -1
  184. package/features/pages/ListPages/ListPagesRepository.d.ts +13 -0
  185. package/features/pages/ListPages/ListPagesRepository.js +39 -0
  186. package/features/pages/ListPages/ListPagesRepository.js.map +1 -0
  187. package/features/pages/ListPages/ListPagesUseCase.d.ts +14 -0
  188. package/features/pages/ListPages/ListPagesUseCase.js +35 -0
  189. package/features/pages/ListPages/ListPagesUseCase.js.map +1 -0
  190. package/features/pages/ListPages/abstractions.d.ts +56 -0
  191. package/features/pages/ListPages/abstractions.js +15 -0
  192. package/features/pages/ListPages/abstractions.js.map +1 -0
  193. package/features/pages/ListPages/feature.d.ts +1 -0
  194. package/features/pages/ListPages/feature.js +12 -0
  195. package/features/pages/ListPages/feature.js.map +1 -0
  196. package/features/pages/ListPages/index.d.ts +1 -9
  197. package/features/pages/ListPages/index.js +1 -14
  198. package/features/pages/ListPages/index.js.map +1 -1
  199. package/features/pages/MovePage/MovePageRepository.d.ts +15 -0
  200. package/features/pages/MovePage/MovePageRepository.js +39 -0
  201. package/features/pages/MovePage/MovePageRepository.js.map +1 -0
  202. package/features/pages/MovePage/MovePageUseCase.d.ts +14 -0
  203. package/features/pages/MovePage/MovePageUseCase.js +61 -0
  204. package/features/pages/MovePage/MovePageUseCase.js.map +1 -0
  205. package/features/pages/MovePage/abstractions.d.ts +63 -0
  206. package/features/pages/MovePage/abstractions.js +30 -0
  207. package/features/pages/MovePage/abstractions.js.map +1 -0
  208. package/features/pages/MovePage/events.d.ts +10 -0
  209. package/features/pages/MovePage/events.js +19 -0
  210. package/features/pages/MovePage/events.js.map +1 -0
  211. package/features/pages/MovePage/feature.d.ts +1 -0
  212. package/features/pages/MovePage/feature.js +12 -0
  213. package/features/pages/MovePage/feature.js.map +1 -0
  214. package/features/pages/MovePage/index.d.ts +1 -16
  215. package/features/pages/MovePage/index.js +1 -16
  216. package/features/pages/MovePage/index.js.map +1 -1
  217. package/features/pages/PublishPage/PublishPageRepository.d.ts +15 -0
  218. package/features/pages/PublishPage/PublishPageRepository.js +41 -0
  219. package/features/pages/PublishPage/PublishPageRepository.js.map +1 -0
  220. package/features/pages/PublishPage/PublishPageUseCase.d.ts +14 -0
  221. package/features/pages/PublishPage/PublishPageUseCase.js +58 -0
  222. package/features/pages/PublishPage/PublishPageUseCase.js.map +1 -0
  223. package/features/pages/PublishPage/abstractions.d.ts +59 -0
  224. package/features/pages/PublishPage/abstractions.js +30 -0
  225. package/features/pages/PublishPage/abstractions.js.map +1 -0
  226. package/features/pages/PublishPage/events.d.ts +10 -0
  227. package/features/pages/PublishPage/events.js +19 -0
  228. package/features/pages/PublishPage/events.js.map +1 -0
  229. package/features/pages/PublishPage/feature.d.ts +1 -0
  230. package/features/pages/PublishPage/feature.js +12 -0
  231. package/features/pages/PublishPage/feature.js.map +1 -0
  232. package/features/pages/PublishPage/index.d.ts +1 -16
  233. package/features/pages/PublishPage/index.js +1 -16
  234. package/features/pages/PublishPage/index.js.map +1 -1
  235. package/features/pages/UnpublishPage/UnpublishPageRepository.d.ts +15 -0
  236. package/features/pages/UnpublishPage/UnpublishPageRepository.js +41 -0
  237. package/features/pages/UnpublishPage/UnpublishPageRepository.js.map +1 -0
  238. package/features/pages/UnpublishPage/UnpublishPageUseCase.d.ts +16 -0
  239. package/features/pages/UnpublishPage/UnpublishPageUseCase.js +57 -0
  240. package/features/pages/UnpublishPage/UnpublishPageUseCase.js.map +1 -0
  241. package/features/pages/UnpublishPage/abstractions.d.ts +59 -0
  242. package/features/pages/UnpublishPage/abstractions.js +30 -0
  243. package/features/pages/UnpublishPage/abstractions.js.map +1 -0
  244. package/features/pages/UnpublishPage/events.d.ts +10 -0
  245. package/features/pages/UnpublishPage/events.js +19 -0
  246. package/features/pages/UnpublishPage/events.js.map +1 -0
  247. package/features/pages/UnpublishPage/feature.d.ts +1 -0
  248. package/features/pages/UnpublishPage/feature.js +12 -0
  249. package/features/pages/UnpublishPage/feature.js.map +1 -0
  250. package/features/pages/UnpublishPage/index.d.ts +1 -16
  251. package/features/pages/UnpublishPage/index.js +1 -16
  252. package/features/pages/UnpublishPage/index.js.map +1 -1
  253. package/features/pages/UpdatePage/UpdatePageRepository.d.ts +15 -0
  254. package/features/pages/UpdatePage/UpdatePageRepository.js +47 -0
  255. package/features/pages/UpdatePage/UpdatePageRepository.js.map +1 -0
  256. package/features/pages/UpdatePage/UpdatePageUseCase.d.ts +16 -0
  257. package/features/pages/UpdatePage/UpdatePageUseCase.js +66 -0
  258. package/features/pages/UpdatePage/UpdatePageUseCase.js.map +1 -0
  259. package/features/pages/UpdatePage/abstractions.d.ts +77 -0
  260. package/features/pages/UpdatePage/abstractions.js +30 -0
  261. package/features/pages/UpdatePage/abstractions.js.map +1 -0
  262. package/features/pages/UpdatePage/events.d.ts +10 -0
  263. package/features/pages/UpdatePage/events.js +19 -0
  264. package/features/pages/UpdatePage/events.js.map +1 -0
  265. package/features/pages/UpdatePage/feature.d.ts +1 -0
  266. package/features/pages/UpdatePage/feature.js +12 -0
  267. package/features/pages/UpdatePage/feature.js.map +1 -0
  268. package/features/pages/UpdatePage/index.d.ts +1 -16
  269. package/features/pages/UpdatePage/index.js +1 -16
  270. package/features/pages/UpdatePage/index.js.map +1 -1
  271. package/features/redirects/CreateRedirect/CreateRedirectRepository.d.ts +13 -0
  272. package/features/redirects/CreateRedirect/CreateRedirectRepository.js +32 -0
  273. package/features/redirects/CreateRedirect/CreateRedirectRepository.js.map +1 -0
  274. package/features/redirects/CreateRedirect/CreateRedirectUseCase.d.ts +12 -0
  275. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js +45 -0
  276. package/features/redirects/CreateRedirect/CreateRedirectUseCase.js.map +1 -0
  277. package/features/redirects/CreateRedirect/abstractions.d.ts +58 -0
  278. package/features/redirects/CreateRedirect/abstractions.js +30 -0
  279. package/features/redirects/CreateRedirect/abstractions.js.map +1 -0
  280. package/features/redirects/CreateRedirect/events.d.ts +10 -0
  281. package/features/redirects/CreateRedirect/events.js +19 -0
  282. package/features/redirects/CreateRedirect/events.js.map +1 -0
  283. package/features/redirects/CreateRedirect/feature.d.ts +1 -0
  284. package/features/redirects/CreateRedirect/feature.js +12 -0
  285. package/features/redirects/CreateRedirect/feature.js.map +1 -0
  286. package/features/redirects/CreateRedirect/index.d.ts +1 -15
  287. package/features/redirects/CreateRedirect/index.js +1 -16
  288. package/features/redirects/CreateRedirect/index.js.map +1 -1
  289. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.d.ts +13 -0
  290. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js +27 -0
  291. package/features/redirects/DeleteRedirect/DeleteRedirectRepository.js.map +1 -0
  292. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.d.ts +14 -0
  293. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js +53 -0
  294. package/features/redirects/DeleteRedirect/DeleteRedirectUseCase.js.map +1 -0
  295. package/features/redirects/DeleteRedirect/abstractions.d.ts +58 -0
  296. package/features/redirects/DeleteRedirect/abstractions.js +30 -0
  297. package/features/redirects/DeleteRedirect/abstractions.js.map +1 -0
  298. package/features/redirects/DeleteRedirect/events.d.ts +10 -0
  299. package/features/redirects/DeleteRedirect/events.js +19 -0
  300. package/features/redirects/DeleteRedirect/events.js.map +1 -0
  301. package/features/redirects/DeleteRedirect/feature.d.ts +1 -0
  302. package/features/redirects/DeleteRedirect/feature.js +12 -0
  303. package/features/redirects/DeleteRedirect/feature.js.map +1 -0
  304. package/features/redirects/DeleteRedirect/index.d.ts +1 -16
  305. package/features/redirects/DeleteRedirect/index.js +1 -16
  306. package/features/redirects/DeleteRedirect/index.js.map +1 -1
  307. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.d.ts +11 -0
  308. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js +30 -0
  309. package/features/redirects/GetActiveRedirects/GetActiveRedirectsRepository.js.map +1 -0
  310. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.d.ts +10 -0
  311. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js +24 -0
  312. package/features/redirects/GetActiveRedirects/GetActiveRedirectsUseCase.js.map +1 -0
  313. package/features/redirects/GetActiveRedirects/abstractions.d.ts +39 -0
  314. package/features/redirects/GetActiveRedirects/abstractions.js +15 -0
  315. package/features/redirects/GetActiveRedirects/abstractions.js.map +1 -0
  316. package/features/redirects/GetActiveRedirects/feature.d.ts +1 -0
  317. package/features/redirects/GetActiveRedirects/feature.js +12 -0
  318. package/features/redirects/GetActiveRedirects/feature.js.map +1 -0
  319. package/features/redirects/GetActiveRedirects/index.d.ts +1 -7
  320. package/features/redirects/GetActiveRedirects/index.js +1 -11
  321. package/features/redirects/GetActiveRedirects/index.js.map +1 -1
  322. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.d.ts +13 -0
  323. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js +29 -0
  324. package/features/redirects/GetRedirectById/GetRedirectByIdRepository.js.map +1 -0
  325. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.d.ts +10 -0
  326. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js +32 -0
  327. package/features/redirects/GetRedirectById/GetRedirectByIdUseCase.js.map +1 -0
  328. package/features/redirects/GetRedirectById/abstractions.d.ts +41 -0
  329. package/features/redirects/GetRedirectById/abstractions.js +15 -0
  330. package/features/redirects/GetRedirectById/abstractions.js.map +1 -0
  331. package/features/redirects/GetRedirectById/feature.d.ts +1 -0
  332. package/features/redirects/GetRedirectById/feature.js +12 -0
  333. package/features/redirects/GetRedirectById/feature.js.map +1 -0
  334. package/features/redirects/GetRedirectById/index.d.ts +1 -9
  335. package/features/redirects/GetRedirectById/index.js +1 -14
  336. package/features/redirects/GetRedirectById/index.js.map +1 -1
  337. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.d.ts +12 -0
  338. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js +28 -0
  339. package/features/redirects/InvalidateRedirectsCache/InvalidateRedirectsCacheUseCase.js.map +1 -0
  340. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.d.ts +9 -0
  341. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js +25 -0
  342. package/features/redirects/InvalidateRedirectsCache/RedirectAfterCreateHandler.js.map +1 -0
  343. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.d.ts +9 -0
  344. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js +25 -0
  345. package/features/redirects/InvalidateRedirectsCache/RedirectAfterDeleteHandler.js.map +1 -0
  346. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.d.ts +9 -0
  347. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js +26 -0
  348. package/features/redirects/InvalidateRedirectsCache/RedirectAfterUpdateHandler.js.map +1 -0
  349. package/features/redirects/InvalidateRedirectsCache/abstractions.d.ts +15 -0
  350. package/features/redirects/InvalidateRedirectsCache/abstractions.js +9 -0
  351. package/features/redirects/InvalidateRedirectsCache/abstractions.js.map +1 -0
  352. package/features/redirects/InvalidateRedirectsCache/feature.d.ts +1 -0
  353. package/features/redirects/InvalidateRedirectsCache/feature.js +16 -0
  354. package/features/redirects/InvalidateRedirectsCache/feature.js.map +1 -0
  355. package/features/redirects/InvalidateRedirectsCache/index.d.ts +1 -0
  356. package/features/redirects/InvalidateRedirectsCache/index.js +3 -0
  357. package/features/redirects/InvalidateRedirectsCache/index.js.map +1 -0
  358. package/features/redirects/ListRedirects/ListRedirectsRepository.d.ts +16 -0
  359. package/features/redirects/ListRedirects/ListRedirectsRepository.js +46 -0
  360. package/features/redirects/ListRedirects/ListRedirectsRepository.js.map +1 -0
  361. package/features/redirects/ListRedirects/ListRedirectsUseCase.d.ts +12 -0
  362. package/features/redirects/ListRedirects/ListRedirectsUseCase.js +36 -0
  363. package/features/redirects/ListRedirects/ListRedirectsUseCase.js.map +1 -0
  364. package/features/redirects/ListRedirects/abstractions.d.ts +69 -0
  365. package/features/redirects/ListRedirects/abstractions.js +19 -0
  366. package/features/redirects/ListRedirects/abstractions.js.map +1 -0
  367. package/features/redirects/ListRedirects/feature.d.ts +1 -0
  368. package/features/redirects/ListRedirects/feature.js +12 -0
  369. package/features/redirects/ListRedirects/feature.js.map +1 -0
  370. package/features/redirects/ListRedirects/index.d.ts +1 -9
  371. package/features/redirects/ListRedirects/index.js +1 -14
  372. package/features/redirects/ListRedirects/index.js.map +1 -1
  373. package/features/redirects/MoveRedirect/MoveRedirectRepository.d.ts +15 -0
  374. package/features/redirects/MoveRedirect/MoveRedirectRepository.js +39 -0
  375. package/features/redirects/MoveRedirect/MoveRedirectRepository.js.map +1 -0
  376. package/features/redirects/MoveRedirect/MoveRedirectUseCase.d.ts +14 -0
  377. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js +61 -0
  378. package/features/redirects/MoveRedirect/MoveRedirectUseCase.js.map +1 -0
  379. package/features/redirects/MoveRedirect/abstractions.d.ts +64 -0
  380. package/features/redirects/MoveRedirect/abstractions.js +30 -0
  381. package/features/redirects/MoveRedirect/abstractions.js.map +1 -0
  382. package/features/redirects/MoveRedirect/events.d.ts +10 -0
  383. package/features/redirects/MoveRedirect/events.js +19 -0
  384. package/features/redirects/MoveRedirect/events.js.map +1 -0
  385. package/features/redirects/MoveRedirect/feature.d.ts +1 -0
  386. package/features/redirects/MoveRedirect/feature.js +12 -0
  387. package/features/redirects/MoveRedirect/feature.js.map +1 -0
  388. package/features/redirects/MoveRedirect/index.d.ts +1 -16
  389. package/features/redirects/MoveRedirect/index.js +1 -16
  390. package/features/redirects/MoveRedirect/index.js.map +1 -1
  391. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.d.ts +15 -0
  392. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js +47 -0
  393. package/features/redirects/UpdateRedirect/UpdateRedirectRepository.js.map +1 -0
  394. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.d.ts +16 -0
  395. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js +66 -0
  396. package/features/redirects/UpdateRedirect/UpdateRedirectUseCase.js.map +1 -0
  397. package/features/redirects/UpdateRedirect/abstractions.d.ts +76 -0
  398. package/features/redirects/UpdateRedirect/abstractions.js +30 -0
  399. package/features/redirects/UpdateRedirect/abstractions.js.map +1 -0
  400. package/features/redirects/UpdateRedirect/events.d.ts +10 -0
  401. package/features/redirects/UpdateRedirect/events.js +19 -0
  402. package/features/redirects/UpdateRedirect/events.js.map +1 -0
  403. package/features/redirects/UpdateRedirect/feature.d.ts +1 -0
  404. package/features/redirects/UpdateRedirect/feature.js +12 -0
  405. package/features/redirects/UpdateRedirect/feature.js.map +1 -0
  406. package/features/redirects/UpdateRedirect/index.d.ts +1 -16
  407. package/features/redirects/UpdateRedirect/index.js +1 -16
  408. package/features/redirects/UpdateRedirect/index.js.map +1 -1
  409. package/features/tenantManager/TenantModelExtension.d.ts +8 -0
  410. package/features/tenantManager/TenantModelExtension.js +36 -0
  411. package/features/tenantManager/TenantModelExtension.js.map +1 -0
  412. package/features/tenantManager/feature.d.ts +1 -0
  413. package/features/tenantManager/feature.js +10 -0
  414. package/features/tenantManager/feature.js.map +1 -0
  415. package/graphql/createGraphQL.d.ts +1 -1
  416. package/graphql/createGraphQL.js +6 -13
  417. package/graphql/createGraphQL.js.map +1 -1
  418. package/graphql/nextjs/NextjsGraphQLSchema.d.ts +9 -0
  419. package/graphql/nextjs/NextjsGraphQLSchema.js +48 -0
  420. package/graphql/nextjs/NextjsGraphQLSchema.js.map +1 -0
  421. package/graphql/pages/pages.gql.d.ts +2 -2
  422. package/graphql/pages/pages.gql.js +164 -85
  423. package/graphql/pages/pages.gql.js.map +1 -1
  424. package/graphql/pages/pages.typeDefs.d.ts +1 -1
  425. package/graphql/pages/pages.typeDefs.js +4 -10
  426. package/graphql/pages/pages.typeDefs.js.map +1 -1
  427. package/graphql/redirects/redirects.gql.d.ts +2 -2
  428. package/graphql/redirects/redirects.gql.js +61 -33
  429. package/graphql/redirects/redirects.gql.js.map +1 -1
  430. package/graphql/redirects/redirects.typeDefs.js +5 -10
  431. package/graphql/redirects/redirects.typeDefs.js.map +1 -1
  432. package/index.d.ts +1 -3
  433. package/index.js +81 -14
  434. package/index.js.map +1 -1
  435. package/package.json +24 -32
  436. package/rest/ActiveRedirectDto.js +1 -5
  437. package/rest/ActiveRedirectRestMapper.d.ts +2 -2
  438. package/rest/ActiveRedirectRestMapper.js +1 -8
  439. package/rest/ActiveRedirectRestMapper.js.map +1 -1
  440. package/rest/getRedirects.d.ts +2 -2
  441. package/rest/getRedirects.js +10 -15
  442. package/rest/getRedirects.js.map +1 -1
  443. package/utils/ensureAuthentication.d.ts +6 -2
  444. package/utils/ensureAuthentication.js +10 -12
  445. package/utils/ensureAuthentication.js.map +1 -1
  446. package/utils/resolve.d.ts +1 -2
  447. package/utils/resolve.js +4 -20
  448. package/utils/resolve.js.map +1 -1
  449. package/context/BaseContext.d.ts +0 -11
  450. package/context/BaseContext.js +0 -41
  451. package/context/BaseContext.js.map +0 -1
  452. package/context/WebsiteBuilder.d.ts +0 -15
  453. package/context/WebsiteBuilder.js +0 -65
  454. package/context/WebsiteBuilder.js.map +0 -1
  455. package/context/pages/PagesStorage.d.ts +0 -33
  456. package/context/pages/PagesStorage.js +0 -123
  457. package/context/pages/PagesStorage.js.map +0 -1
  458. package/context/pages/pages.context.d.ts +0 -11
  459. package/context/pages/pages.context.js +0 -82
  460. package/context/pages/pages.context.js.map +0 -1
  461. package/context/pages/pages.crud.d.ts +0 -3
  462. package/context/pages/pages.crud.js +0 -208
  463. package/context/pages/pages.crud.js.map +0 -1
  464. package/context/pages/pages.types.d.ts +0 -247
  465. package/context/pages/pages.types.js +0 -7
  466. package/context/pages/pages.types.js.map +0 -1
  467. package/context/redirects/RedirectsStorage.d.ts +0 -21
  468. package/context/redirects/RedirectsStorage.js +0 -88
  469. package/context/redirects/RedirectsStorage.js.map +0 -1
  470. package/context/redirects/redirects.context.d.ts +0 -11
  471. package/context/redirects/redirects.context.js +0 -80
  472. package/context/redirects/redirects.context.js.map +0 -1
  473. package/context/redirects/redirects.crud.d.ts +0 -3
  474. package/context/redirects/redirects.crud.js +0 -116
  475. package/context/redirects/redirects.crud.js.map +0 -1
  476. package/context/redirects/redirects.types.d.ts +0 -147
  477. package/context/redirects/redirects.types.js +0 -7
  478. package/context/redirects/redirects.types.js.map +0 -1
  479. package/context/types.d.ts +0 -29
  480. package/context/types.js +0 -7
  481. package/context/types.js.map +0 -1
  482. package/features/pages/CreatePage/CreatePage.d.ts +0 -7
  483. package/features/pages/CreatePage/CreatePage.js +0 -19
  484. package/features/pages/CreatePage/CreatePage.js.map +0 -1
  485. package/features/pages/CreatePage/CreatePageWithEvents.d.ts +0 -9
  486. package/features/pages/CreatePage/CreatePageWithEvents.js +0 -25
  487. package/features/pages/CreatePage/CreatePageWithEvents.js.map +0 -1
  488. package/features/pages/CreatePage/ICreatePage.d.ts +0 -4
  489. package/features/pages/CreatePage/ICreatePage.js +0 -7
  490. package/features/pages/CreatePage/ICreatePage.js.map +0 -1
  491. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.d.ts +0 -7
  492. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.js +0 -17
  493. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.js.map +0 -1
  494. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.d.ts +0 -10
  495. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js +0 -32
  496. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js.map +0 -1
  497. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.d.ts +0 -4
  498. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.js +0 -7
  499. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.js.map +0 -1
  500. package/features/pages/DeletePage/DeletePage.d.ts +0 -7
  501. package/features/pages/DeletePage/DeletePage.js +0 -17
  502. package/features/pages/DeletePage/DeletePage.js.map +0 -1
  503. package/features/pages/DeletePage/DeletePageWithEvents.d.ts +0 -10
  504. package/features/pages/DeletePage/DeletePageWithEvents.js +0 -30
  505. package/features/pages/DeletePage/DeletePageWithEvents.js.map +0 -1
  506. package/features/pages/DeletePage/IDeletePage.d.ts +0 -4
  507. package/features/pages/DeletePage/IDeletePage.js +0 -7
  508. package/features/pages/DeletePage/IDeletePage.js.map +0 -1
  509. package/features/pages/DuplicatePage/DuplicatePage.d.ts +0 -9
  510. package/features/pages/DuplicatePage/DuplicatePage.js +0 -39
  511. package/features/pages/DuplicatePage/DuplicatePage.js.map +0 -1
  512. package/features/pages/DuplicatePage/DuplicatePageWithEvents.d.ts +0 -10
  513. package/features/pages/DuplicatePage/DuplicatePageWithEvents.js +0 -32
  514. package/features/pages/DuplicatePage/DuplicatePageWithEvents.js.map +0 -1
  515. package/features/pages/DuplicatePage/IDuplicatePage.d.ts +0 -4
  516. package/features/pages/DuplicatePage/IDuplicatePage.js +0 -7
  517. package/features/pages/DuplicatePage/IDuplicatePage.js.map +0 -1
  518. package/features/pages/GetPageById/GetPageById.d.ts +0 -7
  519. package/features/pages/GetPageById/GetPageById.js +0 -17
  520. package/features/pages/GetPageById/GetPageById.js.map +0 -1
  521. package/features/pages/GetPageById/IGetPageById.d.ts +0 -4
  522. package/features/pages/GetPageById/IGetPageById.js +0 -7
  523. package/features/pages/GetPageById/IGetPageById.js.map +0 -1
  524. package/features/pages/GetPageByPath/GetPageByPath.d.ts +0 -11
  525. package/features/pages/GetPageByPath/GetPageByPath.js +0 -28
  526. package/features/pages/GetPageByPath/GetPageByPath.js.map +0 -1
  527. package/features/pages/GetPageByPath/IGetPageByPath.d.ts +0 -4
  528. package/features/pages/GetPageByPath/IGetPageByPath.js +0 -7
  529. package/features/pages/GetPageByPath/IGetPageByPath.js.map +0 -1
  530. package/features/pages/GetPageRevisions/GetPageRevisions.d.ts +0 -7
  531. package/features/pages/GetPageRevisions/GetPageRevisions.js +0 -17
  532. package/features/pages/GetPageRevisions/GetPageRevisions.js.map +0 -1
  533. package/features/pages/GetPageRevisions/IGetPageById.d.ts +0 -4
  534. package/features/pages/GetPageRevisions/IGetPageById.js +0 -7
  535. package/features/pages/GetPageRevisions/IGetPageById.js.map +0 -1
  536. package/features/pages/ListPages/IListPages.d.ts +0 -17
  537. package/features/pages/ListPages/IListPages.js +0 -7
  538. package/features/pages/ListPages/IListPages.js.map +0 -1
  539. package/features/pages/ListPages/ListPages.d.ts +0 -7
  540. package/features/pages/ListPages/ListPages.js +0 -17
  541. package/features/pages/ListPages/ListPages.js.map +0 -1
  542. package/features/pages/MovePage/IMovePage.d.ts +0 -4
  543. package/features/pages/MovePage/IMovePage.js +0 -7
  544. package/features/pages/MovePage/IMovePage.js.map +0 -1
  545. package/features/pages/MovePage/MovePage.d.ts +0 -7
  546. package/features/pages/MovePage/MovePage.js +0 -17
  547. package/features/pages/MovePage/MovePage.js.map +0 -1
  548. package/features/pages/MovePage/MovePageWithEvents.d.ts +0 -10
  549. package/features/pages/MovePage/MovePageWithEvents.js +0 -32
  550. package/features/pages/MovePage/MovePageWithEvents.js.map +0 -1
  551. package/features/pages/PublishPage/IPublishPage.d.ts +0 -4
  552. package/features/pages/PublishPage/IPublishPage.js +0 -7
  553. package/features/pages/PublishPage/IPublishPage.js.map +0 -1
  554. package/features/pages/PublishPage/PublishPage.d.ts +0 -7
  555. package/features/pages/PublishPage/PublishPage.js +0 -17
  556. package/features/pages/PublishPage/PublishPage.js.map +0 -1
  557. package/features/pages/PublishPage/PublishPageWithEvents.d.ts +0 -10
  558. package/features/pages/PublishPage/PublishPageWithEvents.js +0 -31
  559. package/features/pages/PublishPage/PublishPageWithEvents.js.map +0 -1
  560. package/features/pages/UnpublishPage/IUnpublishPage.d.ts +0 -4
  561. package/features/pages/UnpublishPage/IUnpublishPage.js +0 -7
  562. package/features/pages/UnpublishPage/IUnpublishPage.js.map +0 -1
  563. package/features/pages/UnpublishPage/UnpublishPage.d.ts +0 -7
  564. package/features/pages/UnpublishPage/UnpublishPage.js +0 -17
  565. package/features/pages/UnpublishPage/UnpublishPage.js.map +0 -1
  566. package/features/pages/UnpublishPage/UnpublishPageWithEvents.d.ts +0 -10
  567. package/features/pages/UnpublishPage/UnpublishPageWithEvents.js +0 -31
  568. package/features/pages/UnpublishPage/UnpublishPageWithEvents.js.map +0 -1
  569. package/features/pages/UpdatePage/IUpdatePage.d.ts +0 -4
  570. package/features/pages/UpdatePage/IUpdatePage.js +0 -7
  571. package/features/pages/UpdatePage/IUpdatePage.js.map +0 -1
  572. package/features/pages/UpdatePage/UpdatePage.d.ts +0 -7
  573. package/features/pages/UpdatePage/UpdatePage.js +0 -20
  574. package/features/pages/UpdatePage/UpdatePage.js.map +0 -1
  575. package/features/pages/UpdatePage/UpdatePageWithEvents.d.ts +0 -10
  576. package/features/pages/UpdatePage/UpdatePageWithEvents.js +0 -40
  577. package/features/pages/UpdatePage/UpdatePageWithEvents.js.map +0 -1
  578. package/features/pages/index.d.ts +0 -9
  579. package/features/pages/index.js +0 -106
  580. package/features/pages/index.js.map +0 -1
  581. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.d.ts +0 -9
  582. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.js +0 -25
  583. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.js.map +0 -1
  584. package/features/redirects/CreateRedirect/CreateRevision.d.ts +0 -7
  585. package/features/redirects/CreateRedirect/CreateRevision.js +0 -19
  586. package/features/redirects/CreateRedirect/CreateRevision.js.map +0 -1
  587. package/features/redirects/CreateRedirect/ICreateRedirect.d.ts +0 -4
  588. package/features/redirects/CreateRedirect/ICreateRedirect.js +0 -7
  589. package/features/redirects/CreateRedirect/ICreateRedirect.js.map +0 -1
  590. package/features/redirects/DeleteRedirect/DeleteRedirect.d.ts +0 -7
  591. package/features/redirects/DeleteRedirect/DeleteRedirect.js +0 -17
  592. package/features/redirects/DeleteRedirect/DeleteRedirect.js.map +0 -1
  593. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.d.ts +0 -10
  594. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.js +0 -30
  595. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.js.map +0 -1
  596. package/features/redirects/DeleteRedirect/IDeleteRedirect.d.ts +0 -4
  597. package/features/redirects/DeleteRedirect/IDeleteRedirect.js +0 -7
  598. package/features/redirects/DeleteRedirect/IDeleteRedirect.js.map +0 -1
  599. package/features/redirects/GetActiveRedirects/GetActiveRedirects.d.ts +0 -7
  600. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js +0 -26
  601. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js.map +0 -1
  602. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.d.ts +0 -4
  603. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js +0 -7
  604. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js.map +0 -1
  605. package/features/redirects/GetRedirectById/GetRedirectById.d.ts +0 -7
  606. package/features/redirects/GetRedirectById/GetRedirectById.js +0 -17
  607. package/features/redirects/GetRedirectById/GetRedirectById.js.map +0 -1
  608. package/features/redirects/GetRedirectById/IGetRedirectById.d.ts +0 -4
  609. package/features/redirects/GetRedirectById/IGetRedirectById.js +0 -7
  610. package/features/redirects/GetRedirectById/IGetRedirectById.js.map +0 -1
  611. package/features/redirects/InvalidateRedirectsCache.d.ts +0 -7
  612. package/features/redirects/InvalidateRedirectsCache.js +0 -24
  613. package/features/redirects/InvalidateRedirectsCache.js.map +0 -1
  614. package/features/redirects/ListRedirects/IListRedirects.d.ts +0 -17
  615. package/features/redirects/ListRedirects/IListRedirects.js +0 -7
  616. package/features/redirects/ListRedirects/IListRedirects.js.map +0 -1
  617. package/features/redirects/ListRedirects/ListRedirects.d.ts +0 -7
  618. package/features/redirects/ListRedirects/ListRedirects.js +0 -17
  619. package/features/redirects/ListRedirects/ListRedirects.js.map +0 -1
  620. package/features/redirects/MoveRedirect/IMoveRedirect.d.ts +0 -4
  621. package/features/redirects/MoveRedirect/IMoveRedirect.js +0 -7
  622. package/features/redirects/MoveRedirect/IMoveRedirect.js.map +0 -1
  623. package/features/redirects/MoveRedirect/MoveRedirect.d.ts +0 -7
  624. package/features/redirects/MoveRedirect/MoveRedirect.js +0 -17
  625. package/features/redirects/MoveRedirect/MoveRedirect.js.map +0 -1
  626. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.d.ts +0 -10
  627. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.js +0 -32
  628. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.js.map +0 -1
  629. package/features/redirects/UpdateRedirect/IUpdateRedirect.d.ts +0 -4
  630. package/features/redirects/UpdateRedirect/IUpdateRedirect.js +0 -7
  631. package/features/redirects/UpdateRedirect/IUpdateRedirect.js.map +0 -1
  632. package/features/redirects/UpdateRedirect/UpdateRedirect.d.ts +0 -7
  633. package/features/redirects/UpdateRedirect/UpdateRedirect.js +0 -20
  634. package/features/redirects/UpdateRedirect/UpdateRedirect.js.map +0 -1
  635. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.d.ts +0 -10
  636. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.js +0 -40
  637. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.js.map +0 -1
  638. package/features/redirects/index.d.ts +0 -7
  639. package/features/redirects/index.js +0 -84
  640. package/features/redirects/index.js.map +0 -1
@@ -0,0 +1,10 @@
1
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import type { PageBeforeDeletePayload, PageAfterDeletePayload } from "./abstractions.js";
3
+ export declare class PageBeforeDeleteEvent extends DomainEvent<PageBeforeDeletePayload> {
4
+ eventType: "page.beforeDelete";
5
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageBeforeDeletePayload>>>;
6
+ }
7
+ export declare class PageAfterDeleteEvent extends DomainEvent<PageAfterDeletePayload> {
8
+ eventType: "page.afterDelete";
9
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageAfterDeletePayload>>>;
10
+ }
@@ -0,0 +1,19 @@
1
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import { PageBeforeDeleteHandler, PageAfterDeleteHandler } from "./abstractions.js";
3
+ // PageBeforeDelete Event
4
+ export class PageBeforeDeleteEvent extends DomainEvent {
5
+ eventType = "page.beforeDelete";
6
+ getHandlerAbstraction() {
7
+ return PageBeforeDeleteHandler;
8
+ }
9
+ }
10
+
11
+ // PageAfterDelete Event
12
+ export class PageAfterDeleteEvent extends DomainEvent {
13
+ eventType = "page.afterDelete";
14
+ getHandlerAbstraction() {
15
+ return PageAfterDeleteHandler;
16
+ }
17
+ }
18
+
19
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DomainEvent","PageBeforeDeleteHandler","PageAfterDeleteHandler","PageBeforeDeleteEvent","eventType","getHandlerAbstraction","PageAfterDeleteEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { PageBeforeDeleteHandler, PageAfterDeleteHandler } from \"./abstractions.js\";\nimport type { PageBeforeDeletePayload, PageAfterDeletePayload } from \"./abstractions.js\";\n\n// PageBeforeDelete Event\nexport class PageBeforeDeleteEvent extends DomainEvent<PageBeforeDeletePayload> {\n eventType = \"page.beforeDelete\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeDeleteHandler;\n }\n}\n\n// PageAfterDelete Event\nexport class PageAfterDeleteEvent extends DomainEvent<PageAfterDeletePayload> {\n eventType = \"page.afterDelete\" as const;\n\n getHandlerAbstraction() {\n return PageAfterDeleteHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,uBAAuB,EAAEC,sBAAsB;AAGxD;AACA,OAAO,MAAMC,qBAAqB,SAASH,WAAW,CAA0B;EAC5EI,SAAS,GAAG,mBAAmB;EAE/BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,uBAAuB;EAClC;AACJ;;AAEA;AACA,OAAO,MAAMK,oBAAoB,SAASN,WAAW,CAAyB;EAC1EI,SAAS,GAAG,kBAAkB;EAE9BC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,sBAAsB;EACjC;AACJ","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const DeletePageFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
@@ -0,0 +1,12 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { DeletePageRepository } from "./DeletePageRepository.js";
3
+ import { DeletePageUseCase } from "./DeletePageUseCase.js";
4
+ export const DeletePageFeature = createFeature({
5
+ name: "WebsiteBuilder/DeletePage",
6
+ register(container) {
7
+ container.register(DeletePageRepository).inSingletonScope();
8
+ container.register(DeletePageUseCase);
9
+ }
10
+ });
11
+
12
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","DeletePageRepository","DeletePageUseCase","DeletePageFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DeletePageRepository } from \"./DeletePageRepository.js\";\nimport { DeletePageUseCase } from \"./DeletePageUseCase.js\";\n\nexport const DeletePageFeature = createFeature({\n name: \"WebsiteBuilder/DeletePage\",\n register(container) {\n container.register(DeletePageRepository).inSingletonScope();\n container.register(DeletePageUseCase);\n }\n});\n"],"mappings":"AAAA,SAASA,aAAa,QAAQ,qBAAqB;AACnD,SAASC,oBAAoB;AAC7B,SAASC,iBAAiB;AAE1B,OAAO,MAAMC,iBAAiB,GAAGH,aAAa,CAAC;EAC3CI,IAAI,EAAE,2BAA2B;EACjCC,QAAQA,CAACC,SAAS,EAAE;IAChBA,SAAS,CAACD,QAAQ,CAACJ,oBAAoB,CAAC,CAACM,gBAAgB,CAAC,CAAC;IAC3DD,SAAS,CAACD,QAAQ,CAACH,iBAAiB,CAAC;EACzC;AACJ,CAAC,CAAC","ignoreList":[]}
@@ -1,16 +1 @@
1
- import type { Topic } from "@webiny/pubsub/types";
2
- import { DeletePageWithEvents } from "./DeletePageWithEvents";
3
- import type { OnPageAfterDeleteTopicParams, OnPageBeforeDeleteTopicParams, WbPagesStorageOperations } from "../../../context/pages/pages.types";
4
- export interface DeletePageUseCasesTopics {
5
- onPageBeforeDelete: Topic<OnPageBeforeDeleteTopicParams>;
6
- onPageAfterDelete: Topic<OnPageAfterDeleteTopicParams>;
7
- }
8
- interface DeletePageUseCasesParams {
9
- deleteOperation: WbPagesStorageOperations["delete"];
10
- getOperation: WbPagesStorageOperations["getById"];
11
- topics: DeletePageUseCasesTopics;
12
- }
13
- export declare const getDeletePageUseCase: (params: DeletePageUseCasesParams) => {
14
- deletePageUseCase: DeletePageWithEvents;
15
- };
16
- export {};
1
+ export { PageAfterDeleteHandler, PageBeforeDeleteHandler, DeletePageUseCase } from "./abstractions.js";
@@ -1,18 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getDeletePageUseCase = void 0;
7
- var _DeletePage = require("./DeletePage");
8
- var _DeletePageWithEvents = require("./DeletePageWithEvents");
9
- const getDeletePageUseCase = params => {
10
- const deletePage = new _DeletePage.DeletePage(params.deleteOperation);
11
- const deletePageUseCase = new _DeletePageWithEvents.DeletePageWithEvents(params.topics, params.getOperation, deletePage);
12
- return {
13
- deletePageUseCase
14
- };
15
- };
16
- exports.getDeletePageUseCase = getDeletePageUseCase;
1
+ export { PageAfterDeleteHandler, PageBeforeDeleteHandler, DeletePageUseCase } from "./abstractions.js";
17
2
 
18
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_DeletePage","require","_DeletePageWithEvents","getDeletePageUseCase","params","deletePage","DeletePage","deleteOperation","deletePageUseCase","DeletePageWithEvents","topics","getOperation","exports"],"sources":["index.ts"],"sourcesContent":["import type { Topic } from \"@webiny/pubsub/types\";\nimport { DeletePage } from \"./DeletePage\";\nimport { DeletePageWithEvents } from \"./DeletePageWithEvents\";\nimport type {\n OnPageAfterDeleteTopicParams,\n OnPageBeforeDeleteTopicParams,\n WbPagesStorageOperations\n} from \"~/context/pages/pages.types\";\n\nexport interface DeletePageUseCasesTopics {\n onPageBeforeDelete: Topic<OnPageBeforeDeleteTopicParams>;\n onPageAfterDelete: Topic<OnPageAfterDeleteTopicParams>;\n}\n\ninterface DeletePageUseCasesParams {\n deleteOperation: WbPagesStorageOperations[\"delete\"];\n getOperation: WbPagesStorageOperations[\"getById\"];\n topics: DeletePageUseCasesTopics;\n}\n\nexport const getDeletePageUseCase = (params: DeletePageUseCasesParams) => {\n const deletePage = new DeletePage(params.deleteOperation);\n const deletePageUseCase = new DeletePageWithEvents(\n params.topics,\n params.getOperation,\n deletePage\n );\n\n return {\n deletePageUseCase\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAD,OAAA;AAkBO,MAAME,oBAAoB,GAAIC,MAAgC,IAAK;EACtE,MAAMC,UAAU,GAAG,IAAIC,sBAAU,CAACF,MAAM,CAACG,eAAe,CAAC;EACzD,MAAMC,iBAAiB,GAAG,IAAIC,0CAAoB,CAC9CL,MAAM,CAACM,MAAM,EACbN,MAAM,CAACO,YAAY,EACnBN,UACJ,CAAC;EAED,OAAO;IACHG;EACJ,CAAC;AACL,CAAC;AAACI,OAAA,CAAAT,oBAAA,GAAAA,oBAAA","ignoreList":[]}
1
+ {"version":3,"names":["PageAfterDeleteHandler","PageBeforeDeleteHandler","DeletePageUseCase"],"sources":["index.ts"],"sourcesContent":["export {\n PageAfterDeleteHandler,\n PageBeforeDeleteHandler,\n DeletePageUseCase\n} from \"./abstractions.js\";\n"],"mappings":"AAAA,SACIA,sBAAsB,EACtBC,uBAAuB,EACvBC,iBAAiB","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import { CreateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/CreateEntry";
2
+ import { GetEntryByIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntryById";
3
+ import { DuplicatePageRepository as RepositoryAbstraction } from "./abstractions.js";
4
+ import { PageModel } from "../../../domain/page/abstractions.js";
5
+ declare class DuplicatePageRepositoryImpl implements RepositoryAbstraction.Interface {
6
+ private createEntry;
7
+ private getEntryById;
8
+ private pageModel;
9
+ constructor(createEntry: CreateEntryUseCase.Interface, getEntryById: GetEntryByIdUseCase.Interface, pageModel: PageModel.Interface);
10
+ execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return;
11
+ }
12
+ export declare const DuplicatePageRepository: typeof DuplicatePageRepositoryImpl & {
13
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IDuplicatePageRepository>;
14
+ };
15
+ export {};
@@ -0,0 +1,59 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import pick from "lodash/pick.js";
3
+ import { CreateEntryUseCase } from "@webiny/api-headless-cms/features/contentEntry/CreateEntry";
4
+ import { GetEntryByIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntryById";
5
+ import { DuplicatePageRepository as RepositoryAbstraction } from "./abstractions.js";
6
+ import { PageModel } from "../../../domain/page/abstractions.js";
7
+ import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
8
+ import { PageNotFoundError, PagePersistenceError, PageValidationError } from "../../../domain/page/errors.js";
9
+ class DuplicatePageRepositoryImpl {
10
+ constructor(createEntry, getEntryById, pageModel) {
11
+ this.createEntry = createEntry;
12
+ this.getEntryById = getEntryById;
13
+ this.pageModel = pageModel;
14
+ }
15
+ async execute(params) {
16
+ // First, get the page to duplicate
17
+ const getResult = await this.getEntryById.execute(this.pageModel, params.id);
18
+ if (getResult.isFail()) {
19
+ if (getResult.error.code === "Cms/Entry/NotFound") {
20
+ return Result.fail(new PageNotFoundError(params.id));
21
+ }
22
+ return Result.fail(new PagePersistenceError(getResult.error));
23
+ }
24
+ const originalPage = EntryToPageMapper.toPage(getResult.value);
25
+
26
+ // Pick only the necessary data for duplication
27
+ const dataToDuplicate = pick(originalPage, ["bindings", "elements", "location", "properties", "metadata", "extensions"]);
28
+
29
+ // Create new page data with "Copy of" prefix
30
+ const newPageData = {
31
+ ...dataToDuplicate,
32
+ properties: {
33
+ ...dataToDuplicate.properties,
34
+ path: `${originalPage.properties.path}-copy`,
35
+ title: "Copy of " + originalPage.properties.title
36
+ }
37
+ };
38
+
39
+ // Create the duplicated page
40
+ const result = await this.createEntry.execute(this.pageModel, {
41
+ location: newPageData.location,
42
+ values: newPageData
43
+ });
44
+ if (result.isFail()) {
45
+ if (result.error.code === "Cms/Entry/ValidationError") {
46
+ return Result.fail(new PageValidationError(result.error.message));
47
+ }
48
+ return Result.fail(new PagePersistenceError(result.error));
49
+ }
50
+ const page = EntryToPageMapper.toPage(result.value);
51
+ return Result.ok(page);
52
+ }
53
+ }
54
+ export const DuplicatePageRepository = RepositoryAbstraction.createImplementation({
55
+ implementation: DuplicatePageRepositoryImpl,
56
+ dependencies: [CreateEntryUseCase, GetEntryByIdUseCase, PageModel]
57
+ });
58
+
59
+ //# sourceMappingURL=DuplicatePageRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","pick","CreateEntryUseCase","GetEntryByIdUseCase","DuplicatePageRepository","RepositoryAbstraction","PageModel","EntryToPageMapper","PageNotFoundError","PagePersistenceError","PageValidationError","DuplicatePageRepositoryImpl","constructor","createEntry","getEntryById","pageModel","execute","params","getResult","id","isFail","error","code","fail","originalPage","toPage","value","dataToDuplicate","newPageData","properties","path","title","result","location","values","message","page","ok","createImplementation","implementation","dependencies"],"sources":["DuplicatePageRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport pick from \"lodash/pick.js\";\nimport { CreateEntryUseCase } from \"@webiny/api-headless-cms/features/contentEntry/CreateEntry\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById\";\nimport { DuplicatePageRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\nimport {\n PageNotFoundError,\n PagePersistenceError,\n PageValidationError\n} from \"~/domain/page/errors.js\";\n\nclass DuplicatePageRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private createEntry: CreateEntryUseCase.Interface,\n private getEntryById: GetEntryByIdUseCase.Interface,\n private pageModel: PageModel.Interface\n ) {}\n\n async execute(params: RepositoryAbstraction.Params): RepositoryAbstraction.Return {\n // First, get the page to duplicate\n const getResult = await this.getEntryById.execute(this.pageModel, params.id);\n\n if (getResult.isFail()) {\n if (getResult.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new PageNotFoundError(params.id));\n }\n return Result.fail(new PagePersistenceError(getResult.error));\n }\n\n const originalPage = EntryToPageMapper.toPage(getResult.value);\n\n // Pick only the necessary data for duplication\n const dataToDuplicate = pick(originalPage, [\n \"bindings\",\n \"elements\",\n \"location\",\n \"properties\",\n \"metadata\",\n \"extensions\"\n ]);\n\n // Create new page data with \"Copy of\" prefix\n const newPageData = {\n ...dataToDuplicate,\n properties: {\n ...dataToDuplicate.properties,\n path: `${originalPage.properties.path}-copy`,\n title: \"Copy of \" + originalPage.properties.title\n }\n };\n\n // Create the duplicated page\n const result = await this.createEntry.execute(this.pageModel, {\n location: newPageData.location,\n values: newPageData\n });\n\n if (result.isFail()) {\n if (result.error.code === \"Cms/Entry/ValidationError\") {\n return Result.fail(new PageValidationError(result.error.message));\n }\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const page = EntryToPageMapper.toPage(result.value);\n return Result.ok(page);\n }\n}\n\nexport const DuplicatePageRepository = RepositoryAbstraction.createImplementation({\n implementation: DuplicatePageRepositoryImpl,\n dependencies: [CreateEntryUseCase, GetEntryByIdUseCase, PageModel]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,OAAOC,IAAI,MAAM,gBAAgB;AACjC,SAASC,kBAAkB,QAAQ,4DAA4D;AAC/F,SAASC,mBAAmB,QAAQ,6DAA6D;AACjG,SAASC,uBAAuB,IAAIC,qBAAqB;AACzD,SAASC,SAAS;AAClB,SAASC,iBAAiB;AAC1B,SACIC,iBAAiB,EACjBC,oBAAoB,EACpBC,mBAAmB;AAGvB,MAAMC,2BAA2B,CAA4C;EACzEC,WAAWA,CACCC,WAAyC,EACzCC,YAA2C,EAC3CC,SAA8B,EACxC;IAAA,KAHUF,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,YAA2C,GAA3CA,YAA2C;IAAA,KAC3CC,SAA8B,GAA9BA,SAA8B;EACvC;EAEH,MAAMC,OAAOA,CAACC,MAAoC,EAAgC;IAC9E;IACA,MAAMC,SAAS,GAAG,MAAM,IAAI,CAACJ,YAAY,CAACE,OAAO,CAAC,IAAI,CAACD,SAAS,EAAEE,MAAM,CAACE,EAAE,CAAC;IAE5E,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,IAAIF,SAAS,CAACG,KAAK,CAACC,IAAI,KAAK,oBAAoB,EAAE;QAC/C,OAAOtB,MAAM,CAACuB,IAAI,CAAC,IAAIf,iBAAiB,CAACS,MAAM,CAACE,EAAE,CAAC,CAAC;MACxD;MACA,OAAOnB,MAAM,CAACuB,IAAI,CAAC,IAAId,oBAAoB,CAACS,SAAS,CAACG,KAAK,CAAC,CAAC;IACjE;IAEA,MAAMG,YAAY,GAAGjB,iBAAiB,CAACkB,MAAM,CAACP,SAAS,CAACQ,KAAK,CAAC;;IAE9D;IACA,MAAMC,eAAe,GAAG1B,IAAI,CAACuB,YAAY,EAAE,CACvC,UAAU,EACV,UAAU,EACV,UAAU,EACV,YAAY,EACZ,UAAU,EACV,YAAY,CACf,CAAC;;IAEF;IACA,MAAMI,WAAW,GAAG;MAChB,GAAGD,eAAe;MAClBE,UAAU,EAAE;QACR,GAAGF,eAAe,CAACE,UAAU;QAC7BC,IAAI,EAAE,GAAGN,YAAY,CAACK,UAAU,CAACC,IAAI,OAAO;QAC5CC,KAAK,EAAE,UAAU,GAAGP,YAAY,CAACK,UAAU,CAACE;MAChD;IACJ,CAAC;;IAED;IACA,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACnB,WAAW,CAACG,OAAO,CAAC,IAAI,CAACD,SAAS,EAAE;MAC1DkB,QAAQ,EAAEL,WAAW,CAACK,QAAQ;MAC9BC,MAAM,EAAEN;IACZ,CAAC,CAAC;IAEF,IAAII,MAAM,CAACZ,MAAM,CAAC,CAAC,EAAE;MACjB,IAAIY,MAAM,CAACX,KAAK,CAACC,IAAI,KAAK,2BAA2B,EAAE;QACnD,OAAOtB,MAAM,CAACuB,IAAI,CAAC,IAAIb,mBAAmB,CAACsB,MAAM,CAACX,KAAK,CAACc,OAAO,CAAC,CAAC;MACrE;MACA,OAAOnC,MAAM,CAACuB,IAAI,CAAC,IAAId,oBAAoB,CAACuB,MAAM,CAACX,KAAK,CAAC,CAAC;IAC9D;IAEA,MAAMe,IAAI,GAAG7B,iBAAiB,CAACkB,MAAM,CAACO,MAAM,CAACN,KAAK,CAAC;IACnD,OAAO1B,MAAM,CAACqC,EAAE,CAACD,IAAI,CAAC;EAC1B;AACJ;AAEA,OAAO,MAAMhC,uBAAuB,GAAGC,qBAAqB,CAACiC,oBAAoB,CAAC;EAC9EC,cAAc,EAAE5B,2BAA2B;EAC3C6B,YAAY,EAAE,CAACtC,kBAAkB,EAAEC,mBAAmB,EAAEG,SAAS;AACrE,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,14 @@
1
+ import { EventPublisher as EventPublisherAbstraction } from "@webiny/api-core/features/EventPublisher";
2
+ import { DuplicatePageUseCase as UseCaseAbstraction, DuplicatePageRepository } from "./abstractions.js";
3
+ import { GetPageByIdUseCase } from "../../../features/pages/GetPageById/index.js";
4
+ import { WbPermissions } from "../../../domain/permissions.js";
5
+ declare class DuplicatePageUseCaseImpl implements UseCaseAbstraction.Interface {
6
+ private permissions;
7
+ private eventPublisher;
8
+ private getPageById;
9
+ private repository;
10
+ constructor(permissions: WbPermissions.Interface, eventPublisher: EventPublisherAbstraction.Interface, getPageById: GetPageByIdUseCase.Interface, repository: DuplicatePageRepository.Interface);
11
+ execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return;
12
+ }
13
+ export declare const DuplicatePageUseCase: import("@webiny/di").Implementation<typeof DuplicatePageUseCaseImpl>;
14
+ export {};
@@ -0,0 +1,55 @@
1
+ import { Result, createImplementation } from "@webiny/feature/api";
2
+ import { EventPublisher } from "@webiny/api-core/features/EventPublisher";
3
+ import { DuplicatePageUseCase as UseCaseAbstraction, DuplicatePageRepository } from "./abstractions.js";
4
+ import { PageBeforeDuplicateEvent, PageAfterDuplicateEvent } from "./events.js";
5
+ import { GetPageByIdUseCase } from "../GetPageById/index.js";
6
+ import { WbPermissions } from "../../../domain/permissions.js";
7
+ import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
8
+ class DuplicatePageUseCaseImpl {
9
+ constructor(permissions, eventPublisher, getPageById, repository) {
10
+ this.permissions = permissions;
11
+ this.eventPublisher = eventPublisher;
12
+ this.getPageById = getPageById;
13
+ this.repository = repository;
14
+ }
15
+ async execute(params) {
16
+ const hasPermission = await this.permissions.canCreate("page");
17
+ if (!hasPermission) {
18
+ return Result.fail(new PageNotAuthorizedError());
19
+ }
20
+
21
+ // Get the original page for events
22
+ const getResult = await this.getPageById.execute(params.id);
23
+ if (getResult.isFail()) {
24
+ return getResult;
25
+ }
26
+ const original = getResult.value;
27
+
28
+ // Publish before duplicate event
29
+ const beforeEvent = new PageBeforeDuplicateEvent({
30
+ original
31
+ });
32
+ await this.eventPublisher.publish(beforeEvent);
33
+
34
+ // Execute the duplicate operation
35
+ const result = await this.repository.execute(params);
36
+ if (result.isFail()) {
37
+ return result;
38
+ }
39
+
40
+ // Publish after duplicate event
41
+ const afterEvent = new PageAfterDuplicateEvent({
42
+ original,
43
+ page: result.value
44
+ });
45
+ await this.eventPublisher.publish(afterEvent);
46
+ return Result.ok(result.value);
47
+ }
48
+ }
49
+ export const DuplicatePageUseCase = createImplementation({
50
+ abstraction: UseCaseAbstraction,
51
+ implementation: DuplicatePageUseCaseImpl,
52
+ dependencies: [WbPermissions.Abstraction, EventPublisher, GetPageByIdUseCase, DuplicatePageRepository]
53
+ });
54
+
55
+ //# sourceMappingURL=DuplicatePageUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","createImplementation","EventPublisher","DuplicatePageUseCase","UseCaseAbstraction","DuplicatePageRepository","PageBeforeDuplicateEvent","PageAfterDuplicateEvent","GetPageByIdUseCase","WbPermissions","PageNotAuthorizedError","DuplicatePageUseCaseImpl","constructor","permissions","eventPublisher","getPageById","repository","execute","params","hasPermission","canCreate","fail","getResult","id","isFail","original","value","beforeEvent","publish","result","afterEvent","page","ok","abstraction","implementation","dependencies","Abstraction"],"sources":["DuplicatePageUseCase.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 DuplicatePageUseCase as UseCaseAbstraction,\n DuplicatePageRepository\n} from \"./abstractions.js\";\nimport { PageBeforeDuplicateEvent, PageAfterDuplicateEvent } from \"./events.js\";\nimport { GetPageByIdUseCase } from \"~/features/pages/GetPageById/index.js\";\nimport { WbPermissions } from \"~/domain/permissions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\nclass DuplicatePageUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private eventPublisher: EventPublisherAbstraction.Interface,\n private getPageById: GetPageByIdUseCase.Interface,\n private repository: DuplicatePageRepository.Interface\n ) {}\n\n async execute(params: UseCaseAbstraction.Params): UseCaseAbstraction.Return {\n const hasPermission = await this.permissions.canCreate(\"page\");\n if (!hasPermission) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n // Get the original page for events\n const getResult = await this.getPageById.execute(params.id);\n\n if (getResult.isFail()) {\n return getResult;\n }\n\n const original = getResult.value;\n\n // Publish before duplicate event\n const beforeEvent = new PageBeforeDuplicateEvent({\n original\n });\n\n await this.eventPublisher.publish(beforeEvent);\n\n // Execute the duplicate operation\n const result = await this.repository.execute(params);\n\n if (result.isFail()) {\n return result;\n }\n\n // Publish after duplicate event\n const afterEvent = new PageAfterDuplicateEvent({\n original,\n page: result.value\n });\n\n await this.eventPublisher.publish(afterEvent);\n\n return Result.ok(result.value);\n }\n}\n\nexport const DuplicatePageUseCase = createImplementation({\n abstraction: UseCaseAbstraction,\n implementation: DuplicatePageUseCaseImpl,\n dependencies: [\n WbPermissions.Abstraction,\n EventPublisher,\n GetPageByIdUseCase,\n DuplicatePageRepository\n ]\n});\n"],"mappings":"AAAA,SAASA,MAAM,EAAEC,oBAAoB,QAAQ,qBAAqB;AAClE,SACIC,cAAc,QAEX,0CAA0C;AACjD,SACIC,oBAAoB,IAAIC,kBAAkB,EAC1CC,uBAAuB;AAE3B,SAASC,wBAAwB,EAAEC,uBAAuB;AAC1D,SAASC,kBAAkB;AAC3B,SAASC,aAAa;AACtB,SAASC,sBAAsB;AAE/B,MAAMC,wBAAwB,CAAyC;EACnEC,WAAWA,CACCC,WAAoC,EACpCC,cAAmD,EACnDC,WAAyC,EACzCC,UAA6C,EACvD;IAAA,KAJUH,WAAoC,GAApCA,WAAoC;IAAA,KACpCC,cAAmD,GAAnDA,cAAmD;IAAA,KACnDC,WAAyC,GAAzCA,WAAyC;IAAA,KACzCC,UAA6C,GAA7CA,UAA6C;EACtD;EAEH,MAAMC,OAAOA,CAACC,MAAiC,EAA6B;IACxE,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACN,WAAW,CAACO,SAAS,CAAC,MAAM,CAAC;IAC9D,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOnB,MAAM,CAACqB,IAAI,CAAC,IAAIX,sBAAsB,CAAC,CAAC,CAAC;IACpD;;IAEA;IACA,MAAMY,SAAS,GAAG,MAAM,IAAI,CAACP,WAAW,CAACE,OAAO,CAACC,MAAM,CAACK,EAAE,CAAC;IAE3D,IAAID,SAAS,CAACE,MAAM,CAAC,CAAC,EAAE;MACpB,OAAOF,SAAS;IACpB;IAEA,MAAMG,QAAQ,GAAGH,SAAS,CAACI,KAAK;;IAEhC;IACA,MAAMC,WAAW,GAAG,IAAIrB,wBAAwB,CAAC;MAC7CmB;IACJ,CAAC,CAAC;IAEF,MAAM,IAAI,CAACX,cAAc,CAACc,OAAO,CAACD,WAAW,CAAC;;IAE9C;IACA,MAAME,MAAM,GAAG,MAAM,IAAI,CAACb,UAAU,CAACC,OAAO,CAACC,MAAM,CAAC;IAEpD,IAAIW,MAAM,CAACL,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOK,MAAM;IACjB;;IAEA;IACA,MAAMC,UAAU,GAAG,IAAIvB,uBAAuB,CAAC;MAC3CkB,QAAQ;MACRM,IAAI,EAAEF,MAAM,CAACH;IACjB,CAAC,CAAC;IAEF,MAAM,IAAI,CAACZ,cAAc,CAACc,OAAO,CAACE,UAAU,CAAC;IAE7C,OAAO9B,MAAM,CAACgC,EAAE,CAACH,MAAM,CAACH,KAAK,CAAC;EAClC;AACJ;AAEA,OAAO,MAAMvB,oBAAoB,GAAGF,oBAAoB,CAAC;EACrDgC,WAAW,EAAE7B,kBAAkB;EAC/B8B,cAAc,EAAEvB,wBAAwB;EACxCwB,YAAY,EAAE,CACV1B,aAAa,CAAC2B,WAAW,EACzBlC,cAAc,EACdM,kBAAkB,EAClBH,uBAAuB;AAE/B,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,62 @@
1
+ import { type Result } from "@webiny/feature/api";
2
+ import type { IEventHandler } from "@webiny/api-core/features/EventPublisher";
3
+ import type { DomainEvent } from "@webiny/api-core/features/EventPublisher";
4
+ import type { WbPage } from "../../../domain/page/abstractions.js";
5
+ import { PageValidationError, PageNotFoundError, PagePersistenceError, PageNotAuthorizedError } from "../../../domain/page/errors.js";
6
+ export interface IDuplicateWbPageParams {
7
+ id: string;
8
+ }
9
+ export interface IDuplicatePageRepository {
10
+ execute(params: IDuplicateWbPageParams): Promise<Result<WbPage, RepositoryError>>;
11
+ }
12
+ export interface IDuplicatePageRepositoryErrors {
13
+ validation: PageValidationError;
14
+ notFound: PageNotFoundError;
15
+ persistence: PagePersistenceError;
16
+ }
17
+ type RepositoryError = IDuplicatePageRepositoryErrors[keyof IDuplicatePageRepositoryErrors];
18
+ export declare const DuplicatePageRepository: import("@webiny/di").Abstraction<IDuplicatePageRepository>;
19
+ export declare namespace DuplicatePageRepository {
20
+ type Interface = IDuplicatePageRepository;
21
+ type Params = IDuplicateWbPageParams;
22
+ type Return = Promise<Result<WbPage, RepositoryError>>;
23
+ type Error = RepositoryError;
24
+ }
25
+ export interface IDuplicatePageUseCase {
26
+ execute(params: IDuplicateWbPageParams): Promise<Result<WbPage, UseCaseError>>;
27
+ }
28
+ export interface IDuplicatePageUseCaseErrors {
29
+ notAuthorized: PageNotAuthorizedError;
30
+ validation: PageValidationError;
31
+ notFound: PageNotFoundError;
32
+ persistence: PagePersistenceError;
33
+ }
34
+ type UseCaseError = IDuplicatePageUseCaseErrors[keyof IDuplicatePageUseCaseErrors];
35
+ export declare const DuplicatePageUseCase: import("@webiny/di").Abstraction<IDuplicatePageUseCase>;
36
+ export declare namespace DuplicatePageUseCase {
37
+ type Interface = IDuplicatePageUseCase;
38
+ type Params = IDuplicateWbPageParams;
39
+ type Return = Promise<Result<WbPage, UseCaseError>>;
40
+ type Error = UseCaseError;
41
+ type Page = WbPage;
42
+ }
43
+ export interface PageBeforeDuplicatePayload {
44
+ original: WbPage;
45
+ }
46
+ export interface PageAfterDuplicatePayload {
47
+ original: WbPage;
48
+ page: WbPage;
49
+ }
50
+ export declare const PageBeforeDuplicateHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageBeforeDuplicatePayload>>>;
51
+ export declare namespace PageBeforeDuplicateHandler {
52
+ type Interface = IEventHandler<DomainEvent<PageBeforeDuplicatePayload>>;
53
+ type Event = DomainEvent<PageBeforeDuplicatePayload>;
54
+ type Page = WbPage;
55
+ }
56
+ export declare const PageAfterDuplicateHandler: import("@webiny/di").Abstraction<IEventHandler<DomainEvent<PageAfterDuplicatePayload>>>;
57
+ export declare namespace PageAfterDuplicateHandler {
58
+ type Interface = IEventHandler<DomainEvent<PageAfterDuplicatePayload>>;
59
+ type Event = DomainEvent<PageAfterDuplicatePayload>;
60
+ type Page = WbPage;
61
+ }
62
+ export {};
@@ -0,0 +1,30 @@
1
+ import { createAbstraction } from "@webiny/feature/api";
2
+
3
+ // ============================================================================
4
+ // Type Definitions
5
+ // ============================================================================
6
+
7
+ // ============================================================================
8
+ // Repository Abstraction
9
+ // ============================================================================
10
+
11
+ export const DuplicatePageRepository = createAbstraction("Wb/DuplicatePageRepository");
12
+
13
+ // ============================================================================
14
+ // Use Case Abstraction
15
+ // ============================================================================
16
+
17
+ export const DuplicatePageUseCase = createAbstraction("Wb/DuplicatePageUseCase");
18
+
19
+ // ============================================================================
20
+ // Event Payload Types
21
+ // ============================================================================
22
+
23
+ // ============================================================================
24
+ // Event Handler Abstractions
25
+ // ============================================================================
26
+
27
+ export const PageBeforeDuplicateHandler = createAbstraction("Wb/PageBeforeDuplicateHandler");
28
+ export const PageAfterDuplicateHandler = createAbstraction("Wb/PageAfterDuplicateHandler");
29
+
30
+ //# sourceMappingURL=abstractions.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createAbstraction","DuplicatePageRepository","DuplicatePageUseCase","PageBeforeDuplicateHandler","PageAfterDuplicateHandler"],"sources":["abstractions.ts"],"sourcesContent":["import { createAbstraction, type Result } from \"@webiny/feature/api\";\nimport type { IEventHandler } from \"@webiny/api-core/features/EventPublisher\";\nimport type { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport type { WbPage } from \"~/domain/page/abstractions.js\";\nimport {\n PageValidationError,\n PageNotFoundError,\n PagePersistenceError,\n PageNotAuthorizedError\n} from \"~/domain/page/errors.js\";\n\n// ============================================================================\n// Type Definitions\n// ============================================================================\n\nexport interface IDuplicateWbPageParams {\n id: string;\n}\n\n// ============================================================================\n// Repository Abstraction\n// ============================================================================\n\nexport interface IDuplicatePageRepository {\n execute(params: IDuplicateWbPageParams): Promise<Result<WbPage, RepositoryError>>;\n}\n\nexport interface IDuplicatePageRepositoryErrors {\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype RepositoryError = IDuplicatePageRepositoryErrors[keyof IDuplicatePageRepositoryErrors];\n\nexport const DuplicatePageRepository = createAbstraction<IDuplicatePageRepository>(\n \"Wb/DuplicatePageRepository\"\n);\n\nexport namespace DuplicatePageRepository {\n export type Interface = IDuplicatePageRepository;\n export type Params = IDuplicateWbPageParams;\n export type Return = Promise<Result<WbPage, RepositoryError>>;\n export type Error = RepositoryError;\n}\n\n// ============================================================================\n// Use Case Abstraction\n// ============================================================================\n\nexport interface IDuplicatePageUseCase {\n execute(params: IDuplicateWbPageParams): Promise<Result<WbPage, UseCaseError>>;\n}\n\nexport interface IDuplicatePageUseCaseErrors {\n notAuthorized: PageNotAuthorizedError;\n validation: PageValidationError;\n notFound: PageNotFoundError;\n persistence: PagePersistenceError;\n}\n\ntype UseCaseError = IDuplicatePageUseCaseErrors[keyof IDuplicatePageUseCaseErrors];\n\nexport const DuplicatePageUseCase =\n createAbstraction<IDuplicatePageUseCase>(\"Wb/DuplicatePageUseCase\");\n\nexport namespace DuplicatePageUseCase {\n export type Interface = IDuplicatePageUseCase;\n export type Params = IDuplicateWbPageParams;\n export type Return = Promise<Result<WbPage, UseCaseError>>;\n export type Error = UseCaseError;\n export type Page = WbPage;\n}\n\n// ============================================================================\n// Event Payload Types\n// ============================================================================\n\nexport interface PageBeforeDuplicatePayload {\n original: WbPage;\n}\n\nexport interface PageAfterDuplicatePayload {\n original: WbPage;\n page: WbPage;\n}\n\n// ============================================================================\n// Event Handler Abstractions\n// ============================================================================\n\nexport const PageBeforeDuplicateHandler = createAbstraction<\n IEventHandler<DomainEvent<PageBeforeDuplicatePayload>>\n>(\"Wb/PageBeforeDuplicateHandler\");\n\nexport namespace PageBeforeDuplicateHandler {\n export type Interface = IEventHandler<DomainEvent<PageBeforeDuplicatePayload>>;\n export type Event = DomainEvent<PageBeforeDuplicatePayload>;\n export type Page = WbPage;\n}\n\nexport const PageAfterDuplicateHandler = createAbstraction<\n IEventHandler<DomainEvent<PageAfterDuplicatePayload>>\n>(\"Wb/PageAfterDuplicateHandler\");\n\nexport namespace PageAfterDuplicateHandler {\n export type Interface = IEventHandler<DomainEvent<PageAfterDuplicatePayload>>;\n export type Event = DomainEvent<PageAfterDuplicatePayload>;\n export type Page = WbPage;\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAqB,qBAAqB;;AAWpE;AACA;AACA;;AAMA;AACA;AACA;;AAcA,OAAO,MAAMC,uBAAuB,GAAGD,iBAAiB,CACpD,4BACJ,CAAC;;AASD;AACA;AACA;;AAeA,OAAO,MAAME,oBAAoB,GAC7BF,iBAAiB,CAAwB,yBAAyB,CAAC;;AAUvE;AACA;AACA;;AAWA;AACA;AACA;;AAEA,OAAO,MAAMG,0BAA0B,GAAGH,iBAAiB,CAEzD,+BAA+B,CAAC;AAQlC,OAAO,MAAMI,yBAAyB,GAAGJ,iBAAiB,CAExD,8BAA8B,CAAC","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import type { PageBeforeDuplicatePayload, PageAfterDuplicatePayload } from "./abstractions.js";
3
+ export declare class PageBeforeDuplicateEvent extends DomainEvent<PageBeforeDuplicatePayload> {
4
+ eventType: "page.beforeDuplicate";
5
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageBeforeDuplicatePayload>>>;
6
+ }
7
+ export declare class PageAfterDuplicateEvent extends DomainEvent<PageAfterDuplicatePayload> {
8
+ eventType: "page.afterDuplicate";
9
+ getHandlerAbstraction(): import("@webiny/di").Abstraction<import("@webiny/api-core/features/EventPublisher").IEventHandler<DomainEvent<PageAfterDuplicatePayload>>>;
10
+ }
@@ -0,0 +1,19 @@
1
+ import { DomainEvent } from "@webiny/api-core/features/EventPublisher";
2
+ import { PageBeforeDuplicateHandler, PageAfterDuplicateHandler } from "./abstractions.js";
3
+ // PageBeforeDuplicate Event
4
+ export class PageBeforeDuplicateEvent extends DomainEvent {
5
+ eventType = "page.beforeDuplicate";
6
+ getHandlerAbstraction() {
7
+ return PageBeforeDuplicateHandler;
8
+ }
9
+ }
10
+
11
+ // PageAfterDuplicate Event
12
+ export class PageAfterDuplicateEvent extends DomainEvent {
13
+ eventType = "page.afterDuplicate";
14
+ getHandlerAbstraction() {
15
+ return PageAfterDuplicateHandler;
16
+ }
17
+ }
18
+
19
+ //# sourceMappingURL=events.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["DomainEvent","PageBeforeDuplicateHandler","PageAfterDuplicateHandler","PageBeforeDuplicateEvent","eventType","getHandlerAbstraction","PageAfterDuplicateEvent"],"sources":["events.ts"],"sourcesContent":["import { DomainEvent } from \"@webiny/api-core/features/EventPublisher\";\nimport { PageBeforeDuplicateHandler, PageAfterDuplicateHandler } from \"./abstractions.js\";\nimport type { PageBeforeDuplicatePayload, PageAfterDuplicatePayload } from \"./abstractions.js\";\n\n// PageBeforeDuplicate Event\nexport class PageBeforeDuplicateEvent extends DomainEvent<PageBeforeDuplicatePayload> {\n eventType = \"page.beforeDuplicate\" as const;\n\n getHandlerAbstraction() {\n return PageBeforeDuplicateHandler;\n }\n}\n\n// PageAfterDuplicate Event\nexport class PageAfterDuplicateEvent extends DomainEvent<PageAfterDuplicatePayload> {\n eventType = \"page.afterDuplicate\" as const;\n\n getHandlerAbstraction() {\n return PageAfterDuplicateHandler;\n }\n}\n"],"mappings":"AAAA,SAASA,WAAW,QAAQ,0CAA0C;AACtE,SAASC,0BAA0B,EAAEC,yBAAyB;AAG9D;AACA,OAAO,MAAMC,wBAAwB,SAASH,WAAW,CAA6B;EAClFI,SAAS,GAAG,sBAAsB;EAElCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOJ,0BAA0B;EACrC;AACJ;;AAEA;AACA,OAAO,MAAMK,uBAAuB,SAASN,WAAW,CAA4B;EAChFI,SAAS,GAAG,qBAAqB;EAEjCC,qBAAqBA,CAAA,EAAG;IACpB,OAAOH,yBAAyB;EACpC;AACJ","ignoreList":[]}
@@ -0,0 +1 @@
1
+ export declare const DuplicatePageFeature: import("@webiny/feature/api/createFeature.js").FeatureDefinition<unknown>;
@@ -0,0 +1,12 @@
1
+ import { createFeature } from "@webiny/feature/api";
2
+ import { DuplicatePageRepository } from "./DuplicatePageRepository.js";
3
+ import { DuplicatePageUseCase } from "./DuplicatePageUseCase.js";
4
+ export const DuplicatePageFeature = createFeature({
5
+ name: "WebsiteBuilder/DuplicatePage",
6
+ register(container) {
7
+ container.register(DuplicatePageRepository).inSingletonScope();
8
+ container.register(DuplicatePageUseCase);
9
+ }
10
+ });
11
+
12
+ //# sourceMappingURL=feature.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["createFeature","DuplicatePageRepository","DuplicatePageUseCase","DuplicatePageFeature","name","register","container","inSingletonScope"],"sources":["feature.ts"],"sourcesContent":["import { createFeature } from \"@webiny/feature/api\";\nimport { DuplicatePageRepository } from \"./DuplicatePageRepository.js\";\nimport { DuplicatePageUseCase } from \"./DuplicatePageUseCase.js\";\n\nexport const DuplicatePageFeature = createFeature({\n name: \"WebsiteBuilder/DuplicatePage\",\n register(container) {\n container.register(DuplicatePageRepository).inSingletonScope();\n container.register(DuplicatePageUseCase);\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,16 +1 @@
1
- import type { Topic } from "@webiny/pubsub/types";
2
- import { DuplicatePageWithEvents } from "./DuplicatePageWithEvents";
3
- import type { OnPageAfterDuplicateTopicParams, OnPageBeforeDuplicateTopicParams, WbPagesStorageOperations } from "../../../context/pages/pages.types";
4
- export interface DuplicatePageUseCasesTopics {
5
- onPageBeforeDuplicate: Topic<OnPageBeforeDuplicateTopicParams>;
6
- onPageAfterDuplicate: Topic<OnPageAfterDuplicateTopicParams>;
7
- }
8
- interface DuplicatePageUseCasesParams {
9
- createOperation: WbPagesStorageOperations["create"];
10
- getOperation: WbPagesStorageOperations["getById"];
11
- topics: DuplicatePageUseCasesTopics;
12
- }
13
- export declare const getDuplicatePageUseCase: (params: DuplicatePageUseCasesParams) => {
14
- duplicatePageUseCase: DuplicatePageWithEvents;
15
- };
16
- export {};
1
+ export { PageAfterDuplicateHandler, PageBeforeDuplicateHandler, DuplicatePageUseCase } from "./abstractions.js";
@@ -1,18 +1,3 @@
1
- "use strict";
2
-
3
- Object.defineProperty(exports, "__esModule", {
4
- value: true
5
- });
6
- exports.getDuplicatePageUseCase = void 0;
7
- var _DuplicatePage = require("./DuplicatePage");
8
- var _DuplicatePageWithEvents = require("./DuplicatePageWithEvents");
9
- const getDuplicatePageUseCase = params => {
10
- const duplicatePage = new _DuplicatePage.DuplicatePage(params.getOperation, params.createOperation);
11
- const duplicatePageUseCase = new _DuplicatePageWithEvents.DuplicatePageWithEvents(params.topics, params.getOperation, duplicatePage);
12
- return {
13
- duplicatePageUseCase
14
- };
15
- };
16
- exports.getDuplicatePageUseCase = getDuplicatePageUseCase;
1
+ export { PageAfterDuplicateHandler, PageBeforeDuplicateHandler, DuplicatePageUseCase } from "./abstractions.js";
17
2
 
18
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["_DuplicatePage","require","_DuplicatePageWithEvents","getDuplicatePageUseCase","params","duplicatePage","DuplicatePage","getOperation","createOperation","duplicatePageUseCase","DuplicatePageWithEvents","topics","exports"],"sources":["index.ts"],"sourcesContent":["import type { Topic } from \"@webiny/pubsub/types\";\nimport { DuplicatePage } from \"./DuplicatePage\";\nimport { DuplicatePageWithEvents } from \"./DuplicatePageWithEvents\";\nimport type {\n OnPageAfterDuplicateTopicParams,\n OnPageBeforeDuplicateTopicParams,\n WbPagesStorageOperations\n} from \"~/context/pages/pages.types\";\n\nexport interface DuplicatePageUseCasesTopics {\n onPageBeforeDuplicate: Topic<OnPageBeforeDuplicateTopicParams>;\n onPageAfterDuplicate: Topic<OnPageAfterDuplicateTopicParams>;\n}\n\ninterface DuplicatePageUseCasesParams {\n createOperation: WbPagesStorageOperations[\"create\"];\n getOperation: WbPagesStorageOperations[\"getById\"];\n topics: DuplicatePageUseCasesTopics;\n}\n\nexport const getDuplicatePageUseCase = (params: DuplicatePageUseCasesParams) => {\n const duplicatePage = new DuplicatePage(params.getOperation, params.createOperation);\n const duplicatePageUseCase = new DuplicatePageWithEvents(\n params.topics,\n params.getOperation,\n duplicatePage\n );\n\n return {\n duplicatePageUseCase\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,cAAA,GAAAC,OAAA;AACA,IAAAC,wBAAA,GAAAD,OAAA;AAkBO,MAAME,uBAAuB,GAAIC,MAAmC,IAAK;EAC5E,MAAMC,aAAa,GAAG,IAAIC,4BAAa,CAACF,MAAM,CAACG,YAAY,EAAEH,MAAM,CAACI,eAAe,CAAC;EACpF,MAAMC,oBAAoB,GAAG,IAAIC,gDAAuB,CACpDN,MAAM,CAACO,MAAM,EACbP,MAAM,CAACG,YAAY,EACnBF,aACJ,CAAC;EAED,OAAO;IACHI;EACJ,CAAC;AACL,CAAC;AAACG,OAAA,CAAAT,uBAAA,GAAAA,uBAAA","ignoreList":[]}
1
+ {"version":3,"names":["PageAfterDuplicateHandler","PageBeforeDuplicateHandler","DuplicatePageUseCase"],"sources":["index.ts"],"sourcesContent":["export {\n PageAfterDuplicateHandler,\n PageBeforeDuplicateHandler,\n DuplicatePageUseCase\n} from \"./abstractions.js\";\n"],"mappings":"AAAA,SACIA,yBAAyB,EACzBC,0BAA0B,EAC1BC,oBAAoB","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import { GetPageByIdRepository as RepositoryAbstraction } from "./abstractions.js";
2
+ import { GetEntryByIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntryById";
3
+ import { PageModel } from "../../../domain/page/abstractions.js";
4
+ declare class GetPageByIdRepositoryImpl implements RepositoryAbstraction.Interface {
5
+ private pageModel;
6
+ private getEntryById;
7
+ constructor(pageModel: PageModel.Interface, getEntryById: GetEntryByIdUseCase.Interface);
8
+ execute(id: string): RepositoryAbstraction.Return;
9
+ }
10
+ export declare const GetPageByIdRepository: typeof GetPageByIdRepositoryImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetPageByIdRepository>;
12
+ };
13
+ export {};
@@ -0,0 +1,29 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { GetPageByIdRepository as RepositoryAbstraction } from "./abstractions.js";
3
+ import { GetEntryByIdUseCase } from "@webiny/api-headless-cms/features/contentEntry/GetEntryById";
4
+ import { PageModel } from "../../../domain/page/abstractions.js";
5
+ import { PageNotFoundError, PagePersistenceError } from "../../../domain/page/errors.js";
6
+ import { EntryToPageMapper } from "../../../domain/page/EntryToPageMapper.js";
7
+ class GetPageByIdRepositoryImpl {
8
+ constructor(pageModel, getEntryById) {
9
+ this.pageModel = pageModel;
10
+ this.getEntryById = getEntryById;
11
+ }
12
+ async execute(id) {
13
+ const result = await this.getEntryById.execute(this.pageModel, id);
14
+ if (result.isFail()) {
15
+ if (result.error.code === "Cms/Entry/NotFound") {
16
+ return Result.fail(new PageNotFoundError(id));
17
+ }
18
+ return Result.fail(new PagePersistenceError(result.error));
19
+ }
20
+ const page = EntryToPageMapper.toPage(result.value);
21
+ return Result.ok(page);
22
+ }
23
+ }
24
+ export const GetPageByIdRepository = RepositoryAbstraction.createImplementation({
25
+ implementation: GetPageByIdRepositoryImpl,
26
+ dependencies: [PageModel, GetEntryByIdUseCase]
27
+ });
28
+
29
+ //# sourceMappingURL=GetPageByIdRepository.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","GetPageByIdRepository","RepositoryAbstraction","GetEntryByIdUseCase","PageModel","PageNotFoundError","PagePersistenceError","EntryToPageMapper","GetPageByIdRepositoryImpl","constructor","pageModel","getEntryById","execute","id","result","isFail","error","code","fail","page","toPage","value","ok","createImplementation","implementation","dependencies"],"sources":["GetPageByIdRepository.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetPageByIdRepository as RepositoryAbstraction } from \"./abstractions.js\";\nimport { GetEntryByIdUseCase } from \"@webiny/api-headless-cms/features/contentEntry/GetEntryById\";\nimport { PageModel } from \"~/domain/page/abstractions.js\";\nimport { PageNotFoundError, PagePersistenceError } from \"~/domain/page/errors.js\";\nimport { EntryToPageMapper } from \"~/domain/page/EntryToPageMapper.js\";\n\nclass GetPageByIdRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private pageModel: PageModel.Interface,\n private getEntryById: GetEntryByIdUseCase.Interface\n ) {}\n\n async execute(id: string): RepositoryAbstraction.Return {\n const result = await this.getEntryById.execute(this.pageModel, id);\n\n if (result.isFail()) {\n if (result.error.code === \"Cms/Entry/NotFound\") {\n return Result.fail(new PageNotFoundError(id));\n }\n\n return Result.fail(new PagePersistenceError(result.error));\n }\n\n const page = EntryToPageMapper.toPage(result.value);\n return Result.ok(page);\n }\n}\n\nexport const GetPageByIdRepository = RepositoryAbstraction.createImplementation({\n implementation: GetPageByIdRepositoryImpl,\n dependencies: [PageModel, GetEntryByIdUseCase]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,qBAAqB,IAAIC,qBAAqB;AACvD,SAASC,mBAAmB,QAAQ,6DAA6D;AACjG,SAASC,SAAS;AAClB,SAASC,iBAAiB,EAAEC,oBAAoB;AAChD,SAASC,iBAAiB;AAE1B,MAAMC,yBAAyB,CAA4C;EACvEC,WAAWA,CACCC,SAA8B,EAC9BC,YAA2C,EACrD;IAAA,KAFUD,SAA8B,GAA9BA,SAA8B;IAAA,KAC9BC,YAA2C,GAA3CA,YAA2C;EACpD;EAEH,MAAMC,OAAOA,CAACC,EAAU,EAAgC;IACpD,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACH,YAAY,CAACC,OAAO,CAAC,IAAI,CAACF,SAAS,EAAEG,EAAE,CAAC;IAElE,IAAIC,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;MACjB,IAAID,MAAM,CAACE,KAAK,CAACC,IAAI,KAAK,oBAAoB,EAAE;QAC5C,OAAOjB,MAAM,CAACkB,IAAI,CAAC,IAAIb,iBAAiB,CAACQ,EAAE,CAAC,CAAC;MACjD;MAEA,OAAOb,MAAM,CAACkB,IAAI,CAAC,IAAIZ,oBAAoB,CAACQ,MAAM,CAACE,KAAK,CAAC,CAAC;IAC9D;IAEA,MAAMG,IAAI,GAAGZ,iBAAiB,CAACa,MAAM,CAACN,MAAM,CAACO,KAAK,CAAC;IACnD,OAAOrB,MAAM,CAACsB,EAAE,CAACH,IAAI,CAAC;EAC1B;AACJ;AAEA,OAAO,MAAMlB,qBAAqB,GAAGC,qBAAqB,CAACqB,oBAAoB,CAAC;EAC5EC,cAAc,EAAEhB,yBAAyB;EACzCiB,YAAY,EAAE,CAACrB,SAAS,EAAED,mBAAmB;AACjD,CAAC,CAAC","ignoreList":[]}
@@ -0,0 +1,12 @@
1
+ import { GetPageByIdUseCase as UseCaseAbstraction, GetPageByIdRepository } from "./abstractions.js";
2
+ import { WbPermissions } from "../../../domain/permissions.js";
3
+ declare class GetPageByIdUseCaseImpl implements UseCaseAbstraction.Interface {
4
+ private permissions;
5
+ private repository;
6
+ constructor(permissions: WbPermissions.Interface, repository: GetPageByIdRepository.Interface);
7
+ execute(id: string): UseCaseAbstraction.Return;
8
+ }
9
+ export declare const GetPageByIdUseCase: typeof GetPageByIdUseCaseImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").IGetPageByIdUseCase>;
11
+ };
12
+ export {};
@@ -0,0 +1,31 @@
1
+ import { Result } from "@webiny/feature/api";
2
+ import { GetPageByIdUseCase as UseCaseAbstraction, GetPageByIdRepository } from "./abstractions.js";
3
+ import { WbPermissions } from "../../../domain/permissions.js";
4
+ import { PageNotAuthorizedError } from "../../../domain/page/errors.js";
5
+ class GetPageByIdUseCaseImpl {
6
+ constructor(permissions, repository) {
7
+ this.permissions = permissions;
8
+ this.repository = repository;
9
+ }
10
+ async execute(id) {
11
+ const hasPermission = await this.permissions.canRead("page");
12
+ if (!hasPermission) {
13
+ return Result.fail(new PageNotAuthorizedError());
14
+ }
15
+ const result = await this.repository.execute(id);
16
+ if (result.isFail()) {
17
+ return result;
18
+ }
19
+ const canAccess = await this.permissions.canAccess("page", result.value);
20
+ if (!canAccess) {
21
+ return Result.fail(new PageNotAuthorizedError());
22
+ }
23
+ return result;
24
+ }
25
+ }
26
+ export const GetPageByIdUseCase = UseCaseAbstraction.createImplementation({
27
+ implementation: GetPageByIdUseCaseImpl,
28
+ dependencies: [WbPermissions.Abstraction, GetPageByIdRepository]
29
+ });
30
+
31
+ //# sourceMappingURL=GetPageByIdUseCase.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["Result","GetPageByIdUseCase","UseCaseAbstraction","GetPageByIdRepository","WbPermissions","PageNotAuthorizedError","GetPageByIdUseCaseImpl","constructor","permissions","repository","execute","id","hasPermission","canRead","fail","result","isFail","canAccess","value","createImplementation","implementation","dependencies","Abstraction"],"sources":["GetPageByIdUseCase.ts"],"sourcesContent":["import { Result } from \"@webiny/feature/api\";\nimport { GetPageByIdUseCase as UseCaseAbstraction, GetPageByIdRepository } from \"./abstractions.js\";\nimport { WbPermissions } from \"~/domain/permissions.js\";\nimport { PageNotAuthorizedError } from \"~/domain/page/errors.js\";\n\nclass GetPageByIdUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(\n private permissions: WbPermissions.Interface,\n private repository: GetPageByIdRepository.Interface\n ) {}\n\n async execute(id: 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(id);\n\n if (result.isFail()) {\n return result;\n }\n\n const canAccess = await this.permissions.canAccess(\"page\", result.value);\n if (!canAccess) {\n return Result.fail(new PageNotAuthorizedError());\n }\n\n return result;\n }\n}\n\nexport const GetPageByIdUseCase = UseCaseAbstraction.createImplementation({\n implementation: GetPageByIdUseCaseImpl,\n dependencies: [WbPermissions.Abstraction, GetPageByIdRepository]\n});\n"],"mappings":"AAAA,SAASA,MAAM,QAAQ,qBAAqB;AAC5C,SAASC,kBAAkB,IAAIC,kBAAkB,EAAEC,qBAAqB;AACxE,SAASC,aAAa;AACtB,SAASC,sBAAsB;AAE/B,MAAMC,sBAAsB,CAAyC;EACjEC,WAAWA,CACCC,WAAoC,EACpCC,UAA2C,EACrD;IAAA,KAFUD,WAAoC,GAApCA,WAAoC;IAAA,KACpCC,UAA2C,GAA3CA,UAA2C;EACpD;EAEH,MAAMC,OAAOA,CAACC,EAAU,EAA6B;IACjD,MAAMC,aAAa,GAAG,MAAM,IAAI,CAACJ,WAAW,CAACK,OAAO,CAAC,MAAM,CAAC;IAC5D,IAAI,CAACD,aAAa,EAAE;MAChB,OAAOZ,MAAM,CAACc,IAAI,CAAC,IAAIT,sBAAsB,CAAC,CAAC,CAAC;IACpD;IAEA,MAAMU,MAAM,GAAG,MAAM,IAAI,CAACN,UAAU,CAACC,OAAO,CAACC,EAAE,CAAC;IAEhD,IAAII,MAAM,CAACC,MAAM,CAAC,CAAC,EAAE;MACjB,OAAOD,MAAM;IACjB;IAEA,MAAME,SAAS,GAAG,MAAM,IAAI,CAACT,WAAW,CAACS,SAAS,CAAC,MAAM,EAAEF,MAAM,CAACG,KAAK,CAAC;IACxE,IAAI,CAACD,SAAS,EAAE;MACZ,OAAOjB,MAAM,CAACc,IAAI,CAAC,IAAIT,sBAAsB,CAAC,CAAC,CAAC;IACpD;IAEA,OAAOU,MAAM;EACjB;AACJ;AAEA,OAAO,MAAMd,kBAAkB,GAAGC,kBAAkB,CAACiB,oBAAoB,CAAC;EACtEC,cAAc,EAAEd,sBAAsB;EACtCe,YAAY,EAAE,CAACjB,aAAa,CAACkB,WAAW,EAAEnB,qBAAqB;AACnE,CAAC,CAAC","ignoreList":[]}