@webiny/api-website-builder 0.0.0-unstable.06b2ede40f

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 (282) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +33 -0
  3. package/constants.d.ts +3 -0
  4. package/constants.js +11 -0
  5. package/constants.js.map +1 -0
  6. package/context/BaseContext.d.ts +11 -0
  7. package/context/BaseContext.js +41 -0
  8. package/context/BaseContext.js.map +1 -0
  9. package/context/WebsiteBuilder.d.ts +13 -0
  10. package/context/WebsiteBuilder.js +35 -0
  11. package/context/WebsiteBuilder.js.map +1 -0
  12. package/context/pages/PagesStorage.d.ts +33 -0
  13. package/context/pages/PagesStorage.js +123 -0
  14. package/context/pages/PagesStorage.js.map +1 -0
  15. package/context/pages/pages.context.d.ts +11 -0
  16. package/context/pages/pages.context.js +82 -0
  17. package/context/pages/pages.context.js.map +1 -0
  18. package/context/pages/pages.crud.d.ts +3 -0
  19. package/context/pages/pages.crud.js +208 -0
  20. package/context/pages/pages.crud.js.map +1 -0
  21. package/context/pages/pages.types.d.ts +247 -0
  22. package/context/pages/pages.types.js +7 -0
  23. package/context/pages/pages.types.js.map +1 -0
  24. package/context/redirects/RedirectsStorage.d.ts +21 -0
  25. package/context/redirects/RedirectsStorage.js +88 -0
  26. package/context/redirects/RedirectsStorage.js.map +1 -0
  27. package/context/redirects/redirects.context.d.ts +11 -0
  28. package/context/redirects/redirects.context.js +80 -0
  29. package/context/redirects/redirects.context.js.map +1 -0
  30. package/context/redirects/redirects.crud.d.ts +3 -0
  31. package/context/redirects/redirects.crud.js +116 -0
  32. package/context/redirects/redirects.crud.js.map +1 -0
  33. package/context/redirects/redirects.types.d.ts +147 -0
  34. package/context/redirects/redirects.types.js +7 -0
  35. package/context/redirects/redirects.types.js.map +1 -0
  36. package/context/types.d.ts +28 -0
  37. package/context/types.js +7 -0
  38. package/context/types.js.map +1 -0
  39. package/features/pages/CreatePage/CreatePage.d.ts +7 -0
  40. package/features/pages/CreatePage/CreatePage.js +19 -0
  41. package/features/pages/CreatePage/CreatePage.js.map +1 -0
  42. package/features/pages/CreatePage/CreatePageWithEvents.d.ts +9 -0
  43. package/features/pages/CreatePage/CreatePageWithEvents.js +25 -0
  44. package/features/pages/CreatePage/CreatePageWithEvents.js.map +1 -0
  45. package/features/pages/CreatePage/ICreatePage.d.ts +4 -0
  46. package/features/pages/CreatePage/ICreatePage.js +7 -0
  47. package/features/pages/CreatePage/ICreatePage.js.map +1 -0
  48. package/features/pages/CreatePage/index.d.ts +15 -0
  49. package/features/pages/CreatePage/index.js +18 -0
  50. package/features/pages/CreatePage/index.js.map +1 -0
  51. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.d.ts +7 -0
  52. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.js +17 -0
  53. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFrom.js.map +1 -0
  54. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.d.ts +10 -0
  55. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js +32 -0
  56. package/features/pages/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js.map +1 -0
  57. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.d.ts +4 -0
  58. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.js +7 -0
  59. package/features/pages/CreatePageRevisionFrom/ICreatePageRevisionFrom.js.map +1 -0
  60. package/features/pages/CreatePageRevisionFrom/index.d.ts +16 -0
  61. package/features/pages/CreatePageRevisionFrom/index.js +18 -0
  62. package/features/pages/CreatePageRevisionFrom/index.js.map +1 -0
  63. package/features/pages/DeletePage/DeletePage.d.ts +7 -0
  64. package/features/pages/DeletePage/DeletePage.js +17 -0
  65. package/features/pages/DeletePage/DeletePage.js.map +1 -0
  66. package/features/pages/DeletePage/DeletePageWithEvents.d.ts +10 -0
  67. package/features/pages/DeletePage/DeletePageWithEvents.js +30 -0
  68. package/features/pages/DeletePage/DeletePageWithEvents.js.map +1 -0
  69. package/features/pages/DeletePage/IDeletePage.d.ts +4 -0
  70. package/features/pages/DeletePage/IDeletePage.js +7 -0
  71. package/features/pages/DeletePage/IDeletePage.js.map +1 -0
  72. package/features/pages/DeletePage/index.d.ts +16 -0
  73. package/features/pages/DeletePage/index.js +18 -0
  74. package/features/pages/DeletePage/index.js.map +1 -0
  75. package/features/pages/DuplicatePage/DuplicatePage.d.ts +9 -0
  76. package/features/pages/DuplicatePage/DuplicatePage.js +39 -0
  77. package/features/pages/DuplicatePage/DuplicatePage.js.map +1 -0
  78. package/features/pages/DuplicatePage/DuplicatePageWithEvents.d.ts +10 -0
  79. package/features/pages/DuplicatePage/DuplicatePageWithEvents.js +32 -0
  80. package/features/pages/DuplicatePage/DuplicatePageWithEvents.js.map +1 -0
  81. package/features/pages/DuplicatePage/IDuplicatePage.d.ts +4 -0
  82. package/features/pages/DuplicatePage/IDuplicatePage.js +7 -0
  83. package/features/pages/DuplicatePage/IDuplicatePage.js.map +1 -0
  84. package/features/pages/DuplicatePage/index.d.ts +16 -0
  85. package/features/pages/DuplicatePage/index.js +18 -0
  86. package/features/pages/DuplicatePage/index.js.map +1 -0
  87. package/features/pages/GetPageById/GetPageById.d.ts +7 -0
  88. package/features/pages/GetPageById/GetPageById.js +17 -0
  89. package/features/pages/GetPageById/GetPageById.js.map +1 -0
  90. package/features/pages/GetPageById/IGetPageById.d.ts +4 -0
  91. package/features/pages/GetPageById/IGetPageById.js +7 -0
  92. package/features/pages/GetPageById/IGetPageById.js.map +1 -0
  93. package/features/pages/GetPageById/index.d.ts +9 -0
  94. package/features/pages/GetPageById/index.js +16 -0
  95. package/features/pages/GetPageById/index.js.map +1 -0
  96. package/features/pages/GetPageByPath/GetPageByPath.d.ts +11 -0
  97. package/features/pages/GetPageByPath/GetPageByPath.js +28 -0
  98. package/features/pages/GetPageByPath/GetPageByPath.js.map +1 -0
  99. package/features/pages/GetPageByPath/IGetPageByPath.d.ts +4 -0
  100. package/features/pages/GetPageByPath/IGetPageByPath.js +7 -0
  101. package/features/pages/GetPageByPath/IGetPageByPath.js.map +1 -0
  102. package/features/pages/GetPageByPath/index.d.ts +9 -0
  103. package/features/pages/GetPageByPath/index.js +16 -0
  104. package/features/pages/GetPageByPath/index.js.map +1 -0
  105. package/features/pages/GetPageRevisions/GetPageRevisions.d.ts +7 -0
  106. package/features/pages/GetPageRevisions/GetPageRevisions.js +17 -0
  107. package/features/pages/GetPageRevisions/GetPageRevisions.js.map +1 -0
  108. package/features/pages/GetPageRevisions/IGetPageById.d.ts +4 -0
  109. package/features/pages/GetPageRevisions/IGetPageById.js +7 -0
  110. package/features/pages/GetPageRevisions/IGetPageById.js.map +1 -0
  111. package/features/pages/GetPageRevisions/index.d.ts +9 -0
  112. package/features/pages/GetPageRevisions/index.js +16 -0
  113. package/features/pages/GetPageRevisions/index.js.map +1 -0
  114. package/features/pages/ListPages/IListPages.d.ts +17 -0
  115. package/features/pages/ListPages/IListPages.js +7 -0
  116. package/features/pages/ListPages/IListPages.js.map +1 -0
  117. package/features/pages/ListPages/ListPages.d.ts +7 -0
  118. package/features/pages/ListPages/ListPages.js +17 -0
  119. package/features/pages/ListPages/ListPages.js.map +1 -0
  120. package/features/pages/ListPages/index.d.ts +9 -0
  121. package/features/pages/ListPages/index.js +16 -0
  122. package/features/pages/ListPages/index.js.map +1 -0
  123. package/features/pages/MovePage/IMovePage.d.ts +4 -0
  124. package/features/pages/MovePage/IMovePage.js +7 -0
  125. package/features/pages/MovePage/IMovePage.js.map +1 -0
  126. package/features/pages/MovePage/MovePage.d.ts +7 -0
  127. package/features/pages/MovePage/MovePage.js +17 -0
  128. package/features/pages/MovePage/MovePage.js.map +1 -0
  129. package/features/pages/MovePage/MovePageWithEvents.d.ts +10 -0
  130. package/features/pages/MovePage/MovePageWithEvents.js +32 -0
  131. package/features/pages/MovePage/MovePageWithEvents.js.map +1 -0
  132. package/features/pages/MovePage/index.d.ts +16 -0
  133. package/features/pages/MovePage/index.js +18 -0
  134. package/features/pages/MovePage/index.js.map +1 -0
  135. package/features/pages/PublishPage/IPublishPage.d.ts +4 -0
  136. package/features/pages/PublishPage/IPublishPage.js +7 -0
  137. package/features/pages/PublishPage/IPublishPage.js.map +1 -0
  138. package/features/pages/PublishPage/PublishPage.d.ts +7 -0
  139. package/features/pages/PublishPage/PublishPage.js +17 -0
  140. package/features/pages/PublishPage/PublishPage.js.map +1 -0
  141. package/features/pages/PublishPage/PublishPageWithEvents.d.ts +10 -0
  142. package/features/pages/PublishPage/PublishPageWithEvents.js +31 -0
  143. package/features/pages/PublishPage/PublishPageWithEvents.js.map +1 -0
  144. package/features/pages/PublishPage/index.d.ts +16 -0
  145. package/features/pages/PublishPage/index.js +18 -0
  146. package/features/pages/PublishPage/index.js.map +1 -0
  147. package/features/pages/UnpublishPage/IUnpublishPage.d.ts +4 -0
  148. package/features/pages/UnpublishPage/IUnpublishPage.js +7 -0
  149. package/features/pages/UnpublishPage/IUnpublishPage.js.map +1 -0
  150. package/features/pages/UnpublishPage/UnpublishPage.d.ts +7 -0
  151. package/features/pages/UnpublishPage/UnpublishPage.js +17 -0
  152. package/features/pages/UnpublishPage/UnpublishPage.js.map +1 -0
  153. package/features/pages/UnpublishPage/UnpublishPageWithEvents.d.ts +10 -0
  154. package/features/pages/UnpublishPage/UnpublishPageWithEvents.js +31 -0
  155. package/features/pages/UnpublishPage/UnpublishPageWithEvents.js.map +1 -0
  156. package/features/pages/UnpublishPage/index.d.ts +16 -0
  157. package/features/pages/UnpublishPage/index.js +18 -0
  158. package/features/pages/UnpublishPage/index.js.map +1 -0
  159. package/features/pages/UpdatePage/IUpdatePage.d.ts +4 -0
  160. package/features/pages/UpdatePage/IUpdatePage.js +7 -0
  161. package/features/pages/UpdatePage/IUpdatePage.js.map +1 -0
  162. package/features/pages/UpdatePage/UpdatePage.d.ts +7 -0
  163. package/features/pages/UpdatePage/UpdatePage.js +20 -0
  164. package/features/pages/UpdatePage/UpdatePage.js.map +1 -0
  165. package/features/pages/UpdatePage/UpdatePageWithEvents.d.ts +10 -0
  166. package/features/pages/UpdatePage/UpdatePageWithEvents.js +40 -0
  167. package/features/pages/UpdatePage/UpdatePageWithEvents.js.map +1 -0
  168. package/features/pages/UpdatePage/index.d.ts +16 -0
  169. package/features/pages/UpdatePage/index.js +18 -0
  170. package/features/pages/UpdatePage/index.js.map +1 -0
  171. package/features/pages/index.d.ts +9 -0
  172. package/features/pages/index.js +106 -0
  173. package/features/pages/index.js.map +1 -0
  174. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.d.ts +9 -0
  175. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.js +25 -0
  176. package/features/redirects/CreateRedirect/CreateRedirectWithEvents.js.map +1 -0
  177. package/features/redirects/CreateRedirect/CreateRevision.d.ts +7 -0
  178. package/features/redirects/CreateRedirect/CreateRevision.js +19 -0
  179. package/features/redirects/CreateRedirect/CreateRevision.js.map +1 -0
  180. package/features/redirects/CreateRedirect/ICreateRedirect.d.ts +4 -0
  181. package/features/redirects/CreateRedirect/ICreateRedirect.js +7 -0
  182. package/features/redirects/CreateRedirect/ICreateRedirect.js.map +1 -0
  183. package/features/redirects/CreateRedirect/index.d.ts +15 -0
  184. package/features/redirects/CreateRedirect/index.js +18 -0
  185. package/features/redirects/CreateRedirect/index.js.map +1 -0
  186. package/features/redirects/DeleteRedirect/DeleteRedirect.d.ts +7 -0
  187. package/features/redirects/DeleteRedirect/DeleteRedirect.js +17 -0
  188. package/features/redirects/DeleteRedirect/DeleteRedirect.js.map +1 -0
  189. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.d.ts +10 -0
  190. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.js +30 -0
  191. package/features/redirects/DeleteRedirect/DeleteRedirectWithEvents.js.map +1 -0
  192. package/features/redirects/DeleteRedirect/IDeleteRedirect.d.ts +4 -0
  193. package/features/redirects/DeleteRedirect/IDeleteRedirect.js +7 -0
  194. package/features/redirects/DeleteRedirect/IDeleteRedirect.js.map +1 -0
  195. package/features/redirects/DeleteRedirect/index.d.ts +16 -0
  196. package/features/redirects/DeleteRedirect/index.js +18 -0
  197. package/features/redirects/DeleteRedirect/index.js.map +1 -0
  198. package/features/redirects/GetActiveRedirects/GetActiveRedirects.d.ts +7 -0
  199. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js +26 -0
  200. package/features/redirects/GetActiveRedirects/GetActiveRedirects.js.map +1 -0
  201. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.d.ts +4 -0
  202. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js +7 -0
  203. package/features/redirects/GetActiveRedirects/IGetActiveRedirects.js.map +1 -0
  204. package/features/redirects/GetActiveRedirects/index.d.ts +7 -0
  205. package/features/redirects/GetActiveRedirects/index.js +13 -0
  206. package/features/redirects/GetActiveRedirects/index.js.map +1 -0
  207. package/features/redirects/GetRedirectById/GetRedirectById.d.ts +7 -0
  208. package/features/redirects/GetRedirectById/GetRedirectById.js +17 -0
  209. package/features/redirects/GetRedirectById/GetRedirectById.js.map +1 -0
  210. package/features/redirects/GetRedirectById/IGetRedirectById.d.ts +4 -0
  211. package/features/redirects/GetRedirectById/IGetRedirectById.js +7 -0
  212. package/features/redirects/GetRedirectById/IGetRedirectById.js.map +1 -0
  213. package/features/redirects/GetRedirectById/index.d.ts +9 -0
  214. package/features/redirects/GetRedirectById/index.js +16 -0
  215. package/features/redirects/GetRedirectById/index.js.map +1 -0
  216. package/features/redirects/ListRedirects/IListRedirects.d.ts +17 -0
  217. package/features/redirects/ListRedirects/IListRedirects.js +7 -0
  218. package/features/redirects/ListRedirects/IListRedirects.js.map +1 -0
  219. package/features/redirects/ListRedirects/ListRedirects.d.ts +7 -0
  220. package/features/redirects/ListRedirects/ListRedirects.js +17 -0
  221. package/features/redirects/ListRedirects/ListRedirects.js.map +1 -0
  222. package/features/redirects/ListRedirects/index.d.ts +9 -0
  223. package/features/redirects/ListRedirects/index.js +16 -0
  224. package/features/redirects/ListRedirects/index.js.map +1 -0
  225. package/features/redirects/MoveRedirect/IMoveRedirect.d.ts +4 -0
  226. package/features/redirects/MoveRedirect/IMoveRedirect.js +7 -0
  227. package/features/redirects/MoveRedirect/IMoveRedirect.js.map +1 -0
  228. package/features/redirects/MoveRedirect/MoveRedirect.d.ts +7 -0
  229. package/features/redirects/MoveRedirect/MoveRedirect.js +17 -0
  230. package/features/redirects/MoveRedirect/MoveRedirect.js.map +1 -0
  231. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.d.ts +10 -0
  232. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.js +32 -0
  233. package/features/redirects/MoveRedirect/MoveRedirectWithEvents.js.map +1 -0
  234. package/features/redirects/MoveRedirect/index.d.ts +16 -0
  235. package/features/redirects/MoveRedirect/index.js +18 -0
  236. package/features/redirects/MoveRedirect/index.js.map +1 -0
  237. package/features/redirects/UpdateRedirect/IUpdateRedirect.d.ts +4 -0
  238. package/features/redirects/UpdateRedirect/IUpdateRedirect.js +7 -0
  239. package/features/redirects/UpdateRedirect/IUpdateRedirect.js.map +1 -0
  240. package/features/redirects/UpdateRedirect/UpdateRedirect.d.ts +7 -0
  241. package/features/redirects/UpdateRedirect/UpdateRedirect.js +20 -0
  242. package/features/redirects/UpdateRedirect/UpdateRedirect.js.map +1 -0
  243. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.d.ts +10 -0
  244. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.js +40 -0
  245. package/features/redirects/UpdateRedirect/UpdateRedirectWithEvents.js.map +1 -0
  246. package/features/redirects/UpdateRedirect/index.d.ts +16 -0
  247. package/features/redirects/UpdateRedirect/index.js +18 -0
  248. package/features/redirects/UpdateRedirect/index.js.map +1 -0
  249. package/features/redirects/index.d.ts +6 -0
  250. package/features/redirects/index.js +73 -0
  251. package/features/redirects/index.js.map +1 -0
  252. package/graphql/createGraphQL.d.ts +2 -0
  253. package/graphql/createGraphQL.js +88 -0
  254. package/graphql/createGraphQL.js.map +1 -0
  255. package/graphql/pages/pages.gql.d.ts +3 -0
  256. package/graphql/pages/pages.gql.js +199 -0
  257. package/graphql/pages/pages.gql.js.map +1 -0
  258. package/graphql/pages/pages.typeDefs.d.ts +1 -0
  259. package/graphql/pages/pages.typeDefs.js +248 -0
  260. package/graphql/pages/pages.typeDefs.js.map +1 -0
  261. package/graphql/redirects/ActiveRedirectGqlDto.d.ts +6 -0
  262. package/graphql/redirects/ActiveRedirectGqlDto.js +7 -0
  263. package/graphql/redirects/ActiveRedirectGqlDto.js.map +1 -0
  264. package/graphql/redirects/ActiveRedirectGqlMapper.d.ts +5 -0
  265. package/graphql/redirects/ActiveRedirectGqlMapper.js +19 -0
  266. package/graphql/redirects/ActiveRedirectGqlMapper.js.map +1 -0
  267. package/graphql/redirects/redirects.gql.d.ts +3 -0
  268. package/graphql/redirects/redirects.gql.js +90 -0
  269. package/graphql/redirects/redirects.gql.js.map +1 -0
  270. package/graphql/redirects/redirects.typeDefs.d.ts +1 -0
  271. package/graphql/redirects/redirects.typeDefs.js +158 -0
  272. package/graphql/redirects/redirects.typeDefs.js.map +1 -0
  273. package/index.d.ts +3 -0
  274. package/index.js +22 -0
  275. package/index.js.map +1 -0
  276. package/package.json +54 -0
  277. package/utils/ensureAuthentication.d.ts +2 -0
  278. package/utils/ensureAuthentication.js +16 -0
  279. package/utils/ensureAuthentication.js.map +1 -0
  280. package/utils/resolve.d.ts +3 -0
  281. package/utils/resolve.js +26 -0
  282. package/utils/resolve.js.map +1 -0
@@ -0,0 +1,80 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.RedirectsContext = exports.REDIRECT_MODEL_ID = void 0;
7
+ var _apiHeadlessCms = require("@webiny/api-headless-cms");
8
+ var _BaseContext = require("../BaseContext");
9
+ var _RedirectsStorage = require("./RedirectsStorage");
10
+ var _redirects = require("./redirects.crud");
11
+ const REDIRECT_MODEL_ID = exports.REDIRECT_MODEL_ID = "wbRedirect";
12
+ class RedirectsContext extends _BaseContext.BaseContext {
13
+ constructor(context) {
14
+ super(context);
15
+ }
16
+ async init() {
17
+ const storageOperations = await this.setupStorageOperations();
18
+ return (0, _redirects.createRedirectsCrud)({
19
+ storageOperations,
20
+ getTenantId: this.getTenantId.bind(this),
21
+ getLocaleCode: this.getLocaleCode.bind(this),
22
+ getIdentity: this.getIdentity.bind(this),
23
+ getPermissions: this.getPermissions.bind(this)
24
+ });
25
+ }
26
+ async setupStorageOperations() {
27
+ return this.context.security.withoutAuthorization(async () => {
28
+ // This registers code plugins (model group, models)
29
+ const modelDefinition = this.createModelDefinition();
30
+
31
+ // Finally, register all plugins
32
+ this.context.plugins.register([new _apiHeadlessCms.CmsModelPlugin(modelDefinition)]);
33
+
34
+ // Now load the page model registered in the previous step
35
+ const model = await this.getModel(REDIRECT_MODEL_ID);
36
+
37
+ // Overwrite the original `pages` storage ops
38
+ return await _RedirectsStorage.RedirectsStorage.create({
39
+ model,
40
+ cms: this.context.cms,
41
+ plugins: this.context.plugins
42
+ });
43
+ });
44
+ }
45
+ static async create(context) {
46
+ const pagesContext = new RedirectsContext(context);
47
+ return pagesContext.init();
48
+ }
49
+ createModelDefinition() {
50
+ return (0, _apiHeadlessCms.createPrivateModel)({
51
+ name: "Website Builder - Redirect",
52
+ modelId: REDIRECT_MODEL_ID,
53
+ titleFieldId: "from",
54
+ authorization: {
55
+ // Disables base permission checks, but leaves FLP checks enabled.
56
+ permissions: false
57
+ },
58
+ fields: [(0, _apiHeadlessCms.createModelField)({
59
+ fieldId: "redirectFrom",
60
+ label: "Redirect From",
61
+ type: "text"
62
+ }), (0, _apiHeadlessCms.createModelField)({
63
+ fieldId: "redirectTo",
64
+ label: "Redirect To",
65
+ type: "text"
66
+ }), (0, _apiHeadlessCms.createModelField)({
67
+ fieldId: "redirectType",
68
+ label: "Redirect Type",
69
+ type: "text"
70
+ }), (0, _apiHeadlessCms.createModelField)({
71
+ fieldId: "isEnabled",
72
+ label: "Is enabled?",
73
+ type: "boolean"
74
+ })]
75
+ });
76
+ }
77
+ }
78
+ exports.RedirectsContext = RedirectsContext;
79
+
80
+ //# sourceMappingURL=redirects.context.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_apiHeadlessCms","require","_BaseContext","_RedirectsStorage","_redirects","REDIRECT_MODEL_ID","exports","RedirectsContext","BaseContext","constructor","context","init","storageOperations","setupStorageOperations","createRedirectsCrud","getTenantId","bind","getLocaleCode","getIdentity","getPermissions","security","withoutAuthorization","modelDefinition","createModelDefinition","plugins","register","CmsModelPlugin","model","getModel","RedirectsStorage","create","cms","pagesContext","createPrivateModel","name","modelId","titleFieldId","authorization","permissions","fields","createModelField","fieldId","label","type"],"sources":["redirects.context.ts"],"sourcesContent":["import { CmsModelPlugin, createModelField, createPrivateModel } from \"@webiny/api-headless-cms\";\nimport type { WebsiteBuilderContext } from \"~/context/types\";\nimport { BaseContext } from \"~/context/BaseContext\";\nimport { RedirectsStorage } from \"./RedirectsStorage\";\nimport type { WbRedirectCrud } from \"~/context/redirects/redirects.types\";\nimport { createRedirectsCrud } from \"~/context/redirects/redirects.crud\";\n\nexport const REDIRECT_MODEL_ID = \"wbRedirect\";\n\nexport class RedirectsContext extends BaseContext {\n private constructor(context: WebsiteBuilderContext) {\n super(context);\n }\n\n private async init() {\n const storageOperations = await this.setupStorageOperations();\n\n return createRedirectsCrud({\n storageOperations,\n getTenantId: this.getTenantId.bind(this),\n getLocaleCode: this.getLocaleCode.bind(this),\n getIdentity: this.getIdentity.bind(this),\n getPermissions: this.getPermissions.bind(this)\n });\n }\n\n private async setupStorageOperations() {\n return this.context.security.withoutAuthorization(async () => {\n // This registers code plugins (model group, models)\n const modelDefinition = this.createModelDefinition();\n\n // Finally, register all plugins\n this.context.plugins.register([new CmsModelPlugin(modelDefinition)]);\n\n // Now load the page model registered in the previous step\n const model = await this.getModel(REDIRECT_MODEL_ID);\n\n // Overwrite the original `pages` storage ops\n return await RedirectsStorage.create({\n model,\n cms: this.context.cms,\n plugins: this.context.plugins\n });\n });\n }\n\n static async create(context: WebsiteBuilderContext): Promise<WbRedirectCrud> {\n const pagesContext = new RedirectsContext(context);\n return pagesContext.init();\n }\n\n private createModelDefinition() {\n return createPrivateModel({\n name: \"Website Builder - Redirect\",\n modelId: REDIRECT_MODEL_ID,\n titleFieldId: \"from\",\n authorization: {\n // Disables base permission checks, but leaves FLP checks enabled.\n permissions: false\n },\n fields: [\n createModelField({\n fieldId: \"redirectFrom\",\n label: \"Redirect From\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"redirectTo\",\n label: \"Redirect To\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"redirectType\",\n label: \"Redirect Type\",\n type: \"text\"\n }),\n createModelField({\n fieldId: \"isEnabled\",\n label: \"Is enabled?\",\n type: \"boolean\"\n })\n ]\n });\n }\n}\n"],"mappings":";;;;;;AAAA,IAAAA,eAAA,GAAAC,OAAA;AAEA,IAAAC,YAAA,GAAAD,OAAA;AACA,IAAAE,iBAAA,GAAAF,OAAA;AAEA,IAAAG,UAAA,GAAAH,OAAA;AAEO,MAAMI,iBAAiB,GAAAC,OAAA,CAAAD,iBAAA,GAAG,YAAY;AAEtC,MAAME,gBAAgB,SAASC,wBAAW,CAAC;EACtCC,WAAWA,CAACC,OAA8B,EAAE;IAChD,KAAK,CAACA,OAAO,CAAC;EAClB;EAEA,MAAcC,IAAIA,CAAA,EAAG;IACjB,MAAMC,iBAAiB,GAAG,MAAM,IAAI,CAACC,sBAAsB,CAAC,CAAC;IAE7D,OAAO,IAAAC,8BAAmB,EAAC;MACvBF,iBAAiB;MACjBG,WAAW,EAAE,IAAI,CAACA,WAAW,CAACC,IAAI,CAAC,IAAI,CAAC;MACxCC,aAAa,EAAE,IAAI,CAACA,aAAa,CAACD,IAAI,CAAC,IAAI,CAAC;MAC5CE,WAAW,EAAE,IAAI,CAACA,WAAW,CAACF,IAAI,CAAC,IAAI,CAAC;MACxCG,cAAc,EAAE,IAAI,CAACA,cAAc,CAACH,IAAI,CAAC,IAAI;IACjD,CAAC,CAAC;EACN;EAEA,MAAcH,sBAAsBA,CAAA,EAAG;IACnC,OAAO,IAAI,CAACH,OAAO,CAACU,QAAQ,CAACC,oBAAoB,CAAC,YAAY;MAC1D;MACA,MAAMC,eAAe,GAAG,IAAI,CAACC,qBAAqB,CAAC,CAAC;;MAEpD;MACA,IAAI,CAACb,OAAO,CAACc,OAAO,CAACC,QAAQ,CAAC,CAAC,IAAIC,8BAAc,CAACJ,eAAe,CAAC,CAAC,CAAC;;MAEpE;MACA,MAAMK,KAAK,GAAG,MAAM,IAAI,CAACC,QAAQ,CAACvB,iBAAiB,CAAC;;MAEpD;MACA,OAAO,MAAMwB,kCAAgB,CAACC,MAAM,CAAC;QACjCH,KAAK;QACLI,GAAG,EAAE,IAAI,CAACrB,OAAO,CAACqB,GAAG;QACrBP,OAAO,EAAE,IAAI,CAACd,OAAO,CAACc;MAC1B,CAAC,CAAC;IACN,CAAC,CAAC;EACN;EAEA,aAAaM,MAAMA,CAACpB,OAA8B,EAA2B;IACzE,MAAMsB,YAAY,GAAG,IAAIzB,gBAAgB,CAACG,OAAO,CAAC;IAClD,OAAOsB,YAAY,CAACrB,IAAI,CAAC,CAAC;EAC9B;EAEQY,qBAAqBA,CAAA,EAAG;IAC5B,OAAO,IAAAU,kCAAkB,EAAC;MACtBC,IAAI,EAAE,4BAA4B;MAClCC,OAAO,EAAE9B,iBAAiB;MAC1B+B,YAAY,EAAE,MAAM;MACpBC,aAAa,EAAE;QACX;QACAC,WAAW,EAAE;MACjB,CAAC;MACDC,MAAM,EAAE,CACJ,IAAAC,gCAAgB,EAAC;QACbC,OAAO,EAAE,cAAc;QACvBC,KAAK,EAAE,eAAe;QACtBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,YAAY;QACrBC,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,cAAc;QACvBC,KAAK,EAAE,eAAe;QACtBC,IAAI,EAAE;MACV,CAAC,CAAC,EACF,IAAAH,gCAAgB,EAAC;QACbC,OAAO,EAAE,WAAW;QACpBC,KAAK,EAAE,aAAa;QACpBC,IAAI,EAAE;MACV,CAAC,CAAC;IAEV,CAAC,CAAC;EACN;AACJ;AAACrC,OAAA,CAAAC,gBAAA,GAAAA,gBAAA","ignoreList":[]}
@@ -0,0 +1,3 @@
1
+ import type { WbRedirectCrud, WbRedirectsStorageOperations } from "./redirects.types";
2
+ import type { WebsiteBuilderConfig } from "../types";
3
+ export declare const createRedirectsCrud: (config: WebsiteBuilderConfig<WbRedirectsStorageOperations>) => WbRedirectCrud;
@@ -0,0 +1,116 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createRedirectsCrud = void 0;
7
+ var _pubsub = require("@webiny/pubsub");
8
+ var _redirects = require("../../features/redirects");
9
+ var _GetActiveRedirects = require("../../features/redirects/GetActiveRedirects");
10
+ const createRedirectsCrud = config => {
11
+ // create
12
+ const onRedirectBeforeCreate = (0, _pubsub.createTopic)("wb.onRedirectBeforeCreate");
13
+ const onRedirectAfterCreate = (0, _pubsub.createTopic)("wb.onRedirectAfterCreate");
14
+ const {
15
+ createRedirectUseCase
16
+ } = (0, _redirects.getCreateRedirectUseCase)({
17
+ createOperation: config.storageOperations.create,
18
+ topics: {
19
+ onRedirectBeforeCreate,
20
+ onRedirectAfterCreate
21
+ }
22
+ });
23
+ const getActiveRedirectsUseCase = (0, _GetActiveRedirects.getGetActiveRedirectsUseCase)({
24
+ listOperation: config.storageOperations.list
25
+ });
26
+
27
+ // update
28
+ const onRedirectBeforeUpdate = (0, _pubsub.createTopic)("wb.onRedirectBeforeUpdate");
29
+ const onRedirectAfterUpdate = (0, _pubsub.createTopic)("wb.onRedirectAfterUpdate");
30
+ const {
31
+ updateRedirectUseCase
32
+ } = (0, _redirects.getUpdateRedirectUseCase)({
33
+ updateOperation: config.storageOperations.update,
34
+ getOperation: config.storageOperations.getById,
35
+ topics: {
36
+ onRedirectBeforeUpdate,
37
+ onRedirectAfterUpdate
38
+ }
39
+ });
40
+
41
+ // move
42
+ const onRedirectBeforeMove = (0, _pubsub.createTopic)("wb.onRedirectBeforeMove");
43
+ const onRedirectAfterMove = (0, _pubsub.createTopic)("wb.onRedirectAfterMove");
44
+ const {
45
+ moveRedirectUseCase
46
+ } = (0, _redirects.getMoveRedirectUseCase)({
47
+ moveOperation: config.storageOperations.move,
48
+ getOperation: config.storageOperations.getById,
49
+ topics: {
50
+ onRedirectBeforeMove,
51
+ onRedirectAfterMove
52
+ }
53
+ });
54
+
55
+ // delete
56
+ const onRedirectBeforeDelete = (0, _pubsub.createTopic)("wb.onRedirectBeforeDelete");
57
+ const onRedirectAfterDelete = (0, _pubsub.createTopic)("wb.onRedirectAfterDelete");
58
+ const {
59
+ deleteRedirectUseCase
60
+ } = (0, _redirects.getDeleteRedirectUseCase)({
61
+ deleteOperation: config.storageOperations.delete,
62
+ getOperation: config.storageOperations.getById,
63
+ topics: {
64
+ onRedirectBeforeDelete,
65
+ onRedirectAfterDelete
66
+ }
67
+ });
68
+
69
+ // get by id
70
+ const {
71
+ getRedirectByIdUseCase
72
+ } = (0, _redirects.getGetRedirectByIdUseCase)({
73
+ getOperation: config.storageOperations.getById
74
+ });
75
+
76
+ // list
77
+ const {
78
+ listRedirectsUseCase
79
+ } = (0, _redirects.getListRedirectsUseCase)({
80
+ listOperation: config.storageOperations.list
81
+ });
82
+ return {
83
+ onRedirectBeforeCreate,
84
+ onRedirectAfterCreate,
85
+ onRedirectBeforeUpdate,
86
+ onRedirectAfterUpdate,
87
+ onRedirectBeforeMove,
88
+ onRedirectAfterMove,
89
+ onRedirectBeforeDelete,
90
+ onRedirectAfterDelete,
91
+ list: async params => {
92
+ return listRedirectsUseCase.execute(params);
93
+ },
94
+ getActiveRedirects: async () => {
95
+ return getActiveRedirectsUseCase.execute();
96
+ },
97
+ getById: async id => {
98
+ return getRedirectByIdUseCase.execute(id);
99
+ },
100
+ create: async data => {
101
+ return createRedirectUseCase.execute(data);
102
+ },
103
+ update: async (id, data) => {
104
+ return updateRedirectUseCase.execute(id, data);
105
+ },
106
+ move: async params => {
107
+ return moveRedirectUseCase.execute(params);
108
+ },
109
+ delete: async params => {
110
+ return deleteRedirectUseCase.execute(params);
111
+ }
112
+ };
113
+ };
114
+ exports.createRedirectsCrud = createRedirectsCrud;
115
+
116
+ //# sourceMappingURL=redirects.crud.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_pubsub","require","_redirects","_GetActiveRedirects","createRedirectsCrud","config","onRedirectBeforeCreate","createTopic","onRedirectAfterCreate","createRedirectUseCase","getCreateRedirectUseCase","createOperation","storageOperations","create","topics","getActiveRedirectsUseCase","getGetActiveRedirectsUseCase","listOperation","list","onRedirectBeforeUpdate","onRedirectAfterUpdate","updateRedirectUseCase","getUpdateRedirectUseCase","updateOperation","update","getOperation","getById","onRedirectBeforeMove","onRedirectAfterMove","moveRedirectUseCase","getMoveRedirectUseCase","moveOperation","move","onRedirectBeforeDelete","onRedirectAfterDelete","deleteRedirectUseCase","getDeleteRedirectUseCase","deleteOperation","delete","getRedirectByIdUseCase","getGetRedirectByIdUseCase","listRedirectsUseCase","getListRedirectsUseCase","params","execute","getActiveRedirects","id","data","exports"],"sources":["redirects.crud.ts"],"sourcesContent":["import { createTopic } from \"@webiny/pubsub\";\nimport {\n getCreateRedirectUseCase,\n getDeleteRedirectUseCase,\n getListRedirectsUseCase,\n getUpdateRedirectUseCase,\n getMoveRedirectUseCase,\n getGetRedirectByIdUseCase\n} from \"~/features/redirects\";\nimport type {\n OnRedirectAfterCreateTopicParams,\n OnRedirectAfterDeleteTopicParams,\n OnRedirectAfterMoveTopicParams,\n OnRedirectAfterUpdateTopicParams,\n OnRedirectBeforeCreateTopicParams,\n OnRedirectBeforeDeleteTopicParams,\n OnRedirectBeforeMoveTopicParams,\n OnRedirectBeforeUpdateTopicParams,\n UpdateWbRedirectData,\n WbRedirectCrud,\n WbRedirectsStorageOperations\n} from \"~/context/redirects/redirects.types\";\nimport type { WebsiteBuilderConfig } from \"~/context/types\";\nimport { getGetActiveRedirectsUseCase } from \"~/features/redirects/GetActiveRedirects\";\n\nexport const createRedirectsCrud = (\n config: WebsiteBuilderConfig<WbRedirectsStorageOperations>\n): WbRedirectCrud => {\n // create\n const onRedirectBeforeCreate = createTopic<OnRedirectBeforeCreateTopicParams>(\n \"wb.onRedirectBeforeCreate\"\n );\n const onRedirectAfterCreate = createTopic<OnRedirectAfterCreateTopicParams>(\n \"wb.onRedirectAfterCreate\"\n );\n\n const { createRedirectUseCase } = getCreateRedirectUseCase({\n createOperation: config.storageOperations.create,\n topics: {\n onRedirectBeforeCreate,\n onRedirectAfterCreate\n }\n });\n\n const getActiveRedirectsUseCase = getGetActiveRedirectsUseCase({\n listOperation: config.storageOperations.list\n });\n\n // update\n const onRedirectBeforeUpdate = createTopic<OnRedirectBeforeUpdateTopicParams>(\n \"wb.onRedirectBeforeUpdate\"\n );\n const onRedirectAfterUpdate = createTopic<OnRedirectAfterUpdateTopicParams>(\n \"wb.onRedirectAfterUpdate\"\n );\n\n const { updateRedirectUseCase } = getUpdateRedirectUseCase({\n updateOperation: config.storageOperations.update,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeUpdate,\n onRedirectAfterUpdate\n }\n });\n\n // move\n const onRedirectBeforeMove =\n createTopic<OnRedirectBeforeMoveTopicParams>(\"wb.onRedirectBeforeMove\");\n const onRedirectAfterMove =\n createTopic<OnRedirectAfterMoveTopicParams>(\"wb.onRedirectAfterMove\");\n\n const { moveRedirectUseCase } = getMoveRedirectUseCase({\n moveOperation: config.storageOperations.move,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeMove,\n onRedirectAfterMove\n }\n });\n\n // delete\n const onRedirectBeforeDelete = createTopic<OnRedirectBeforeDeleteTopicParams>(\n \"wb.onRedirectBeforeDelete\"\n );\n const onRedirectAfterDelete = createTopic<OnRedirectAfterDeleteTopicParams>(\n \"wb.onRedirectAfterDelete\"\n );\n\n const { deleteRedirectUseCase } = getDeleteRedirectUseCase({\n deleteOperation: config.storageOperations.delete,\n getOperation: config.storageOperations.getById,\n topics: {\n onRedirectBeforeDelete,\n onRedirectAfterDelete\n }\n });\n\n // get by id\n const { getRedirectByIdUseCase } = getGetRedirectByIdUseCase({\n getOperation: config.storageOperations.getById\n });\n\n // list\n const { listRedirectsUseCase } = getListRedirectsUseCase({\n listOperation: config.storageOperations.list\n });\n\n return {\n onRedirectBeforeCreate,\n onRedirectAfterCreate,\n onRedirectBeforeUpdate,\n onRedirectAfterUpdate,\n onRedirectBeforeMove,\n onRedirectAfterMove,\n onRedirectBeforeDelete,\n onRedirectAfterDelete,\n\n list: async params => {\n return listRedirectsUseCase.execute(params);\n },\n getActiveRedirects: async () => {\n return getActiveRedirectsUseCase.execute();\n },\n getById: async id => {\n return getRedirectByIdUseCase.execute(id);\n },\n create: async data => {\n return createRedirectUseCase.execute(data);\n },\n update: async (id: string, data: UpdateWbRedirectData) => {\n return updateRedirectUseCase.execute(id, data);\n },\n move: async params => {\n return moveRedirectUseCase.execute(params);\n },\n delete: async params => {\n return deleteRedirectUseCase.execute(params);\n }\n };\n};\n"],"mappings":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,UAAA,GAAAD,OAAA;AAsBA,IAAAE,mBAAA,GAAAF,OAAA;AAEO,MAAMG,mBAAmB,GAC5BC,MAA0D,IACzC;EACjB;EACA,MAAMC,sBAAsB,GAAG,IAAAC,mBAAW,EACtC,2BACJ,CAAC;EACD,MAAMC,qBAAqB,GAAG,IAAAD,mBAAW,EACrC,0BACJ,CAAC;EAED,MAAM;IAAEE;EAAsB,CAAC,GAAG,IAAAC,mCAAwB,EAAC;IACvDC,eAAe,EAAEN,MAAM,CAACO,iBAAiB,CAACC,MAAM;IAChDC,MAAM,EAAE;MACJR,sBAAsB;MACtBE;IACJ;EACJ,CAAC,CAAC;EAEF,MAAMO,yBAAyB,GAAG,IAAAC,gDAA4B,EAAC;IAC3DC,aAAa,EAAEZ,MAAM,CAACO,iBAAiB,CAACM;EAC5C,CAAC,CAAC;;EAEF;EACA,MAAMC,sBAAsB,GAAG,IAAAZ,mBAAW,EACtC,2BACJ,CAAC;EACD,MAAMa,qBAAqB,GAAG,IAAAb,mBAAW,EACrC,0BACJ,CAAC;EAED,MAAM;IAAEc;EAAsB,CAAC,GAAG,IAAAC,mCAAwB,EAAC;IACvDC,eAAe,EAAElB,MAAM,CAACO,iBAAiB,CAACY,MAAM;IAChDC,YAAY,EAAEpB,MAAM,CAACO,iBAAiB,CAACc,OAAO;IAC9CZ,MAAM,EAAE;MACJK,sBAAsB;MACtBC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMO,oBAAoB,GACtB,IAAApB,mBAAW,EAAkC,yBAAyB,CAAC;EAC3E,MAAMqB,mBAAmB,GACrB,IAAArB,mBAAW,EAAiC,wBAAwB,CAAC;EAEzE,MAAM;IAAEsB;EAAoB,CAAC,GAAG,IAAAC,iCAAsB,EAAC;IACnDC,aAAa,EAAE1B,MAAM,CAACO,iBAAiB,CAACoB,IAAI;IAC5CP,YAAY,EAAEpB,MAAM,CAACO,iBAAiB,CAACc,OAAO;IAC9CZ,MAAM,EAAE;MACJa,oBAAoB;MACpBC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMK,sBAAsB,GAAG,IAAA1B,mBAAW,EACtC,2BACJ,CAAC;EACD,MAAM2B,qBAAqB,GAAG,IAAA3B,mBAAW,EACrC,0BACJ,CAAC;EAED,MAAM;IAAE4B;EAAsB,CAAC,GAAG,IAAAC,mCAAwB,EAAC;IACvDC,eAAe,EAAEhC,MAAM,CAACO,iBAAiB,CAAC0B,MAAM;IAChDb,YAAY,EAAEpB,MAAM,CAACO,iBAAiB,CAACc,OAAO;IAC9CZ,MAAM,EAAE;MACJmB,sBAAsB;MACtBC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAM;IAAEK;EAAuB,CAAC,GAAG,IAAAC,oCAAyB,EAAC;IACzDf,YAAY,EAAEpB,MAAM,CAACO,iBAAiB,CAACc;EAC3C,CAAC,CAAC;;EAEF;EACA,MAAM;IAAEe;EAAqB,CAAC,GAAG,IAAAC,kCAAuB,EAAC;IACrDzB,aAAa,EAAEZ,MAAM,CAACO,iBAAiB,CAACM;EAC5C,CAAC,CAAC;EAEF,OAAO;IACHZ,sBAAsB;IACtBE,qBAAqB;IACrBW,sBAAsB;IACtBC,qBAAqB;IACrBO,oBAAoB;IACpBC,mBAAmB;IACnBK,sBAAsB;IACtBC,qBAAqB;IAErBhB,IAAI,EAAE,MAAMyB,MAAM,IAAI;MAClB,OAAOF,oBAAoB,CAACG,OAAO,CAACD,MAAM,CAAC;IAC/C,CAAC;IACDE,kBAAkB,EAAE,MAAAA,CAAA,KAAY;MAC5B,OAAO9B,yBAAyB,CAAC6B,OAAO,CAAC,CAAC;IAC9C,CAAC;IACDlB,OAAO,EAAE,MAAMoB,EAAE,IAAI;MACjB,OAAOP,sBAAsB,CAACK,OAAO,CAACE,EAAE,CAAC;IAC7C,CAAC;IACDjC,MAAM,EAAE,MAAMkC,IAAI,IAAI;MAClB,OAAOtC,qBAAqB,CAACmC,OAAO,CAACG,IAAI,CAAC;IAC9C,CAAC;IACDvB,MAAM,EAAE,MAAAA,CAAOsB,EAAU,EAAEC,IAA0B,KAAK;MACtD,OAAO1B,qBAAqB,CAACuB,OAAO,CAACE,EAAE,EAAEC,IAAI,CAAC;IAClD,CAAC;IACDf,IAAI,EAAE,MAAMW,MAAM,IAAI;MAClB,OAAOd,mBAAmB,CAACe,OAAO,CAACD,MAAM,CAAC;IAC9C,CAAC;IACDL,MAAM,EAAE,MAAMK,MAAM,IAAI;MACpB,OAAOR,qBAAqB,CAACS,OAAO,CAACD,MAAM,CAAC;IAChD;EACJ,CAAC;AACL,CAAC;AAACK,OAAA,CAAA5C,mBAAA,GAAAA,mBAAA","ignoreList":[]}
@@ -0,0 +1,147 @@
1
+ import type { WbIdentity, WbLocation } from "../types";
2
+ import type { CmsEntryListSort, CmsEntryListWhere } from "@webiny/api-headless-cms/types";
3
+ import type { Topic } from "@webiny/pubsub/types";
4
+ import type { ListWbRedirectsParams, WbListMeta } from "../../features/redirects/ListRedirects/IListRedirects";
5
+ export interface WbRedirect {
6
+ id: string;
7
+ wbyAco_location: WbLocation;
8
+ createdOn: string;
9
+ createdBy: WbIdentity;
10
+ savedOn: string;
11
+ savedBy: WbIdentity;
12
+ modifiedOn: string;
13
+ modifiedBy: WbIdentity;
14
+ tenant: string;
15
+ locale: string;
16
+ redirectFrom: string;
17
+ redirectTo: string;
18
+ redirectType: string;
19
+ isEnabled: boolean;
20
+ }
21
+ export type CreateWbRedirectData = Pick<WbRedirect, "redirectFrom" | "redirectTo" | "redirectType" | "isEnabled">;
22
+ export interface UpdateWbRedirectData {
23
+ location?: WbLocation;
24
+ redirectFrom?: string;
25
+ redirectTo?: string;
26
+ redirectType?: string;
27
+ isEnabled?: boolean;
28
+ }
29
+ export interface DeleteWbRedirectParams {
30
+ id: string;
31
+ }
32
+ export interface MoveWbRedirectParams {
33
+ id: string;
34
+ folderId: string;
35
+ }
36
+ export interface WbRedirectsStorageOperationsCreateParams {
37
+ data: CreateWbRedirectData;
38
+ }
39
+ export interface WbRedirectsStorageOperationsUpdateParams {
40
+ id: string;
41
+ data: UpdateWbRedirectData;
42
+ }
43
+ export interface WbRedirectsStorageOperationsDeleteParams {
44
+ id: string;
45
+ }
46
+ export type WbRedirectsStorageOperationsMoveParams = MoveWbRedirectParams;
47
+ export interface WbRedirectsStorageOperationsListParams {
48
+ where: CmsEntryListWhere;
49
+ sort: CmsEntryListSort;
50
+ limit: number;
51
+ after: string | null;
52
+ search?: string;
53
+ }
54
+ export type WbRedirectsStorageOperationsListResponse = [WbRedirect[], WbListMeta];
55
+ export interface OnRedirectBeforeCreateTopicParams {
56
+ input: CreateWbRedirectData;
57
+ }
58
+ export interface OnRedirectAfterCreateTopicParams {
59
+ redirect: WbRedirect;
60
+ }
61
+ export interface OnRedirectBeforeUpdateTopicParams {
62
+ original: WbRedirect;
63
+ input: Record<string, any>;
64
+ }
65
+ export interface OnRedirectAfterUpdateTopicParams {
66
+ original: WbRedirect;
67
+ redirect: WbRedirect;
68
+ input: Record<string, any>;
69
+ }
70
+ export interface OnRedirectBeforeMoveTopicParams {
71
+ redirect: WbRedirect;
72
+ folderId: string;
73
+ }
74
+ export interface OnRedirectAfterMoveTopicParams {
75
+ redirect: WbRedirect;
76
+ folderId: string;
77
+ }
78
+ export interface OnRedirectBeforeDeleteTopicParams {
79
+ redirect: WbRedirect;
80
+ }
81
+ export interface OnRedirectAfterDeleteTopicParams {
82
+ redirect: WbRedirect;
83
+ }
84
+ export interface WbRedirectsStorageOperations {
85
+ /**
86
+ * Get a single redirect by ID (can be draft or published).
87
+ */
88
+ getById: (id: string) => Promise<WbRedirect | null>;
89
+ /**
90
+ * Get a list of redirects filtered by given parameters.
91
+ */
92
+ list: (params: WbRedirectsStorageOperationsListParams) => Promise<WbRedirectsStorageOperationsListResponse>;
93
+ /**
94
+ * Insert the redirect data into the database.
95
+ */
96
+ create: (params: WbRedirectsStorageOperationsCreateParams) => Promise<WbRedirect>;
97
+ /**
98
+ * Update the redirect data in the database.
99
+ */
100
+ update: (params: WbRedirectsStorageOperationsUpdateParams) => Promise<WbRedirect>;
101
+ /**
102
+ * Move the redirect into a folder and store the information in the database.
103
+ */
104
+ move: (params: MoveWbRedirectParams) => Promise<void>;
105
+ /**
106
+ * Delete the redirect from the database.
107
+ */
108
+ delete: (params: WbRedirectsStorageOperationsDeleteParams) => Promise<void>;
109
+ }
110
+ export interface WbRedirectCrud {
111
+ /**
112
+ * Get a single redirect with given ID from the storage.
113
+ */
114
+ getById(id: string): Promise<WbRedirect | null>;
115
+ /**
116
+ * Get all active redirects.
117
+ */
118
+ getActiveRedirects(): Promise<WbRedirect[]>;
119
+ /**
120
+ * Get a list of redirects filtered by given parameters.
121
+ */
122
+ list(params: ListWbRedirectsParams): Promise<[WbRedirect[], WbListMeta]>;
123
+ /**
124
+ * Create a new redirect in the storage.
125
+ */
126
+ create(data: CreateWbRedirectData): Promise<WbRedirect>;
127
+ /**
128
+ * Update an existing redirect in the storage.
129
+ */
130
+ update(id: string, data: UpdateWbRedirectData): Promise<WbRedirect>;
131
+ /**
132
+ * Move a redirect into a folder
133
+ */
134
+ move(params: MoveWbRedirectParams): Promise<void>;
135
+ /**
136
+ * Delete a redirect from the storage.
137
+ */
138
+ delete(params: DeleteWbRedirectParams): Promise<void>;
139
+ onRedirectBeforeCreate: Topic<OnRedirectBeforeCreateTopicParams>;
140
+ onRedirectAfterCreate: Topic<OnRedirectAfterCreateTopicParams>;
141
+ onRedirectBeforeUpdate: Topic<OnRedirectBeforeUpdateTopicParams>;
142
+ onRedirectAfterUpdate: Topic<OnRedirectAfterUpdateTopicParams>;
143
+ onRedirectBeforeMove: Topic<OnRedirectBeforeMoveTopicParams>;
144
+ onRedirectAfterMove: Topic<OnRedirectAfterMoveTopicParams>;
145
+ onRedirectBeforeDelete: Topic<OnRedirectBeforeDeleteTopicParams>;
146
+ onRedirectAfterDelete: Topic<OnRedirectAfterDeleteTopicParams>;
147
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=redirects.types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["redirects.types.ts"],"sourcesContent":["import type { WbIdentity, WbLocation } from \"~/context/types\";\nimport type { CmsEntryListSort, CmsEntryListWhere } from \"@webiny/api-headless-cms/types\";\nimport type { Topic } from \"@webiny/pubsub/types\";\nimport type {\n ListWbRedirectsParams,\n WbListMeta\n} from \"~/features/redirects/ListRedirects/IListRedirects\";\n\nexport interface WbRedirect {\n id: string;\n wbyAco_location: WbLocation;\n createdOn: string;\n createdBy: WbIdentity;\n savedOn: string;\n savedBy: WbIdentity;\n modifiedOn: string;\n modifiedBy: WbIdentity;\n tenant: string;\n locale: string;\n\n redirectFrom: string;\n redirectTo: string;\n redirectType: string;\n isEnabled: boolean;\n}\n\nexport type CreateWbRedirectData = Pick<\n WbRedirect,\n \"redirectFrom\" | \"redirectTo\" | \"redirectType\" | \"isEnabled\"\n>;\n\nexport interface UpdateWbRedirectData {\n location?: WbLocation;\n redirectFrom?: string;\n redirectTo?: string;\n redirectType?: string;\n isEnabled?: boolean;\n}\n\nexport interface DeleteWbRedirectParams {\n id: string;\n}\n\nexport interface MoveWbRedirectParams {\n id: string;\n folderId: string;\n}\n\nexport interface WbRedirectsStorageOperationsCreateParams {\n data: CreateWbRedirectData;\n}\n\nexport interface WbRedirectsStorageOperationsUpdateParams {\n id: string;\n data: UpdateWbRedirectData;\n}\n\nexport interface WbRedirectsStorageOperationsDeleteParams {\n id: string;\n}\n\nexport type WbRedirectsStorageOperationsMoveParams = MoveWbRedirectParams;\n\nexport interface WbRedirectsStorageOperationsListParams {\n where: CmsEntryListWhere;\n sort: CmsEntryListSort;\n limit: number;\n after: string | null;\n search?: string;\n}\n\nexport type WbRedirectsStorageOperationsListResponse = [WbRedirect[], WbListMeta];\n\nexport interface OnRedirectBeforeCreateTopicParams {\n input: CreateWbRedirectData;\n}\n\nexport interface OnRedirectAfterCreateTopicParams {\n redirect: WbRedirect;\n}\n\nexport interface OnRedirectBeforeUpdateTopicParams {\n original: WbRedirect;\n input: Record<string, any>;\n}\n\nexport interface OnRedirectAfterUpdateTopicParams {\n original: WbRedirect;\n redirect: WbRedirect;\n input: Record<string, any>;\n}\n\nexport interface OnRedirectBeforeMoveTopicParams {\n redirect: WbRedirect;\n folderId: string;\n}\n\nexport interface OnRedirectAfterMoveTopicParams {\n redirect: WbRedirect;\n folderId: string;\n}\n\nexport interface OnRedirectBeforeDeleteTopicParams {\n redirect: WbRedirect;\n}\n\nexport interface OnRedirectAfterDeleteTopicParams {\n redirect: WbRedirect;\n}\n\nexport interface WbRedirectsStorageOperations {\n /**\n * Get a single redirect by ID (can be draft or published).\n */\n getById: (id: string) => Promise<WbRedirect | null>;\n /**\n * Get a list of redirects filtered by given parameters.\n */\n list: (\n params: WbRedirectsStorageOperationsListParams\n ) => Promise<WbRedirectsStorageOperationsListResponse>;\n /**\n * Insert the redirect data into the database.\n */\n create: (params: WbRedirectsStorageOperationsCreateParams) => Promise<WbRedirect>;\n /**\n * Update the redirect data in the database.\n */\n update: (params: WbRedirectsStorageOperationsUpdateParams) => Promise<WbRedirect>;\n /**\n * Move the redirect into a folder and store the information in the database.\n */\n move: (params: MoveWbRedirectParams) => Promise<void>;\n /**\n * Delete the redirect from the database.\n */\n delete: (params: WbRedirectsStorageOperationsDeleteParams) => Promise<void>;\n}\n\nexport interface WbRedirectCrud {\n /**\n * Get a single redirect with given ID from the storage.\n */\n getById(id: string): Promise<WbRedirect | null>;\n /**\n * Get all active redirects.\n */\n getActiveRedirects(): Promise<WbRedirect[]>;\n /**\n * Get a list of redirects filtered by given parameters.\n */\n list(params: ListWbRedirectsParams): Promise<[WbRedirect[], WbListMeta]>;\n /**\n * Create a new redirect in the storage.\n */\n create(data: CreateWbRedirectData): Promise<WbRedirect>;\n /**\n * Update an existing redirect in the storage.\n */\n update(id: string, data: UpdateWbRedirectData): Promise<WbRedirect>;\n /**\n * Move a redirect into a folder\n */\n move(params: MoveWbRedirectParams): Promise<void>;\n /**\n * Delete a redirect from the storage.\n */\n delete(params: DeleteWbRedirectParams): Promise<void>;\n\n onRedirectBeforeCreate: Topic<OnRedirectBeforeCreateTopicParams>;\n onRedirectAfterCreate: Topic<OnRedirectAfterCreateTopicParams>;\n onRedirectBeforeUpdate: Topic<OnRedirectBeforeUpdateTopicParams>;\n onRedirectAfterUpdate: Topic<OnRedirectAfterUpdateTopicParams>;\n onRedirectBeforeMove: Topic<OnRedirectBeforeMoveTopicParams>;\n onRedirectAfterMove: Topic<OnRedirectAfterMoveTopicParams>;\n onRedirectBeforeDelete: Topic<OnRedirectBeforeDeleteTopicParams>;\n onRedirectAfterDelete: Topic<OnRedirectAfterDeleteTopicParams>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,28 @@
1
+ import type { TenancyContext } from "@webiny/api-tenancy/types";
2
+ import type { Context as BaseContext } from "@webiny/handler/types";
3
+ import type { I18NContext } from "@webiny/api-i18n/types";
4
+ import type { SecurityContext } from "@webiny/api-security/types";
5
+ import { type GetPermissions, type SecurityIdentity } from "@webiny/api-security/types";
6
+ import type { AdminUsersContext } from "@webiny/api-admin-users/types";
7
+ import type { CmsContext } from "@webiny/api-headless-cms/types";
8
+ import { type CmsIdentity } from "@webiny/api-headless-cms/types";
9
+ import type { WbPageCrud } from "./pages/pages.types";
10
+ import type { WbRedirectCrud } from "./redirects/redirects.types";
11
+ export interface WbLocation {
12
+ folderId: string;
13
+ }
14
+ export type WbIdentity = CmsIdentity;
15
+ export interface WebsiteBuilderContextObject {
16
+ pages: WbPageCrud;
17
+ redirects: WbRedirectCrud;
18
+ }
19
+ export interface WebsiteBuilderContext extends BaseContext, I18NContext, TenancyContext, SecurityContext, AdminUsersContext, CmsContext {
20
+ websiteBuilder: WebsiteBuilderContextObject;
21
+ }
22
+ export interface WebsiteBuilderConfig<TStorageOperations> {
23
+ storageOperations: TStorageOperations;
24
+ getTenantId: () => string;
25
+ getLocaleCode: () => string;
26
+ getIdentity: () => SecurityIdentity;
27
+ getPermissions: GetPermissions;
28
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["types.ts"],"sourcesContent":["import type { TenancyContext } from \"@webiny/api-tenancy/types\";\nimport type { Context as BaseContext } from \"@webiny/handler/types\";\nimport type { I18NContext } from \"@webiny/api-i18n/types\";\nimport type { SecurityContext } from \"@webiny/api-security/types\";\nimport { type GetPermissions, type SecurityIdentity } from \"@webiny/api-security/types\";\nimport type { AdminUsersContext } from \"@webiny/api-admin-users/types\";\nimport type { CmsContext } from \"@webiny/api-headless-cms/types\";\nimport { type CmsIdentity } from \"@webiny/api-headless-cms/types\";\nimport type { WbPageCrud } from \"~/context/pages/pages.types\";\nimport type { WbRedirectCrud } from \"~/context/redirects/redirects.types\";\n\nexport interface WbLocation {\n folderId: string;\n}\n\nexport type WbIdentity = CmsIdentity;\n\nexport interface WebsiteBuilderContextObject {\n pages: WbPageCrud;\n redirects: WbRedirectCrud;\n}\n\nexport interface WebsiteBuilderContext\n extends BaseContext,\n I18NContext,\n TenancyContext,\n SecurityContext,\n AdminUsersContext,\n CmsContext {\n websiteBuilder: WebsiteBuilderContextObject;\n}\n\nexport interface WebsiteBuilderConfig<TStorageOperations> {\n storageOperations: TStorageOperations;\n getTenantId: () => string;\n getLocaleCode: () => string;\n getIdentity: () => SecurityIdentity;\n getPermissions: GetPermissions;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import type { ICreatePage } from "./ICreatePage";
2
+ import type { CreateWbPageData, WbPagesStorageOperations } from "../../../context/pages/pages.types";
3
+ export declare class CreatePage implements ICreatePage {
4
+ private readonly createOperation;
5
+ constructor(createOperation: WbPagesStorageOperations["create"]);
6
+ execute(data: CreateWbPageData): Promise<import("../../../context/pages/pages.types").WbPage>;
7
+ }
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CreatePage = void 0;
7
+ class CreatePage {
8
+ constructor(createOperation) {
9
+ this.createOperation = createOperation;
10
+ }
11
+ async execute(data) {
12
+ return await this.createOperation({
13
+ data
14
+ });
15
+ }
16
+ }
17
+ exports.CreatePage = CreatePage;
18
+
19
+ //# sourceMappingURL=CreatePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CreatePage","constructor","createOperation","execute","data","exports"],"sources":["CreatePage.ts"],"sourcesContent":["import type { ICreatePage } from \"./ICreatePage\";\nimport type { CreateWbPageData, WbPagesStorageOperations } from \"~/context/pages/pages.types\";\n\nexport class CreatePage implements ICreatePage {\n private readonly createOperation: WbPagesStorageOperations[\"create\"];\n\n constructor(createOperation: WbPagesStorageOperations[\"create\"]) {\n this.createOperation = createOperation;\n }\n\n async execute(data: CreateWbPageData) {\n return await this.createOperation({ data });\n }\n}\n"],"mappings":";;;;;;AAGO,MAAMA,UAAU,CAAwB;EAG3CC,WAAWA,CAACC,eAAmD,EAAE;IAC7D,IAAI,CAACA,eAAe,GAAGA,eAAe;EAC1C;EAEA,MAAMC,OAAOA,CAACC,IAAsB,EAAE;IAClC,OAAO,MAAM,IAAI,CAACF,eAAe,CAAC;MAAEE;IAAK,CAAC,CAAC;EAC/C;AACJ;AAACC,OAAA,CAAAL,UAAA,GAAAA,UAAA","ignoreList":[]}
@@ -0,0 +1,9 @@
1
+ import type { ICreatePage } from "./ICreatePage";
2
+ import type { CreatePageUseCasesTopics } from "./index";
3
+ import type { CreateWbPageData } from "../../../context/pages/pages.types";
4
+ export declare class CreatePageWithEvents implements ICreatePage {
5
+ private topics;
6
+ private readonly decoretee;
7
+ constructor(topics: CreatePageUseCasesTopics, decoretee: ICreatePage);
8
+ execute(data: CreateWbPageData): Promise<import("../../../context/pages/pages.types").WbPage>;
9
+ }
@@ -0,0 +1,25 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CreatePageWithEvents = void 0;
7
+ class CreatePageWithEvents {
8
+ constructor(topics, decoretee) {
9
+ this.topics = topics;
10
+ this.decoretee = decoretee;
11
+ }
12
+ async execute(data) {
13
+ await this.topics.onPageBeforeCreate.publish({
14
+ input: data
15
+ });
16
+ const page = await this.decoretee.execute(data);
17
+ await this.topics.onPageAfterCreate.publish({
18
+ page
19
+ });
20
+ return page;
21
+ }
22
+ }
23
+ exports.CreatePageWithEvents = CreatePageWithEvents;
24
+
25
+ //# sourceMappingURL=CreatePageWithEvents.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CreatePageWithEvents","constructor","topics","decoretee","execute","data","onPageBeforeCreate","publish","input","page","onPageAfterCreate","exports"],"sources":["CreatePageWithEvents.ts"],"sourcesContent":["import type { ICreatePage } from \"./ICreatePage\";\nimport type { CreatePageUseCasesTopics } from \"./index\";\nimport type { CreateWbPageData } from \"~/context/pages/pages.types\";\n\nexport class CreatePageWithEvents implements ICreatePage {\n private topics: CreatePageUseCasesTopics;\n private readonly decoretee: ICreatePage;\n\n constructor(topics: CreatePageUseCasesTopics, decoretee: ICreatePage) {\n this.topics = topics;\n this.decoretee = decoretee;\n }\n\n async execute(data: CreateWbPageData) {\n await this.topics.onPageBeforeCreate.publish({ input: data });\n const page = await this.decoretee.execute(data);\n await this.topics.onPageAfterCreate.publish({ page });\n return page;\n }\n}\n"],"mappings":";;;;;;AAIO,MAAMA,oBAAoB,CAAwB;EAIrDC,WAAWA,CAACC,MAAgC,EAAEC,SAAsB,EAAE;IAClE,IAAI,CAACD,MAAM,GAAGA,MAAM;IACpB,IAAI,CAACC,SAAS,GAAGA,SAAS;EAC9B;EAEA,MAAMC,OAAOA,CAACC,IAAsB,EAAE;IAClC,MAAM,IAAI,CAACH,MAAM,CAACI,kBAAkB,CAACC,OAAO,CAAC;MAAEC,KAAK,EAAEH;IAAK,CAAC,CAAC;IAC7D,MAAMI,IAAI,GAAG,MAAM,IAAI,CAACN,SAAS,CAACC,OAAO,CAACC,IAAI,CAAC;IAC/C,MAAM,IAAI,CAACH,MAAM,CAACQ,iBAAiB,CAACH,OAAO,CAAC;MAAEE;IAAK,CAAC,CAAC;IACrD,OAAOA,IAAI;EACf;AACJ;AAACE,OAAA,CAAAX,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -0,0 +1,4 @@
1
+ import type { CreateWbPageData, WbPage } from "../../../context/pages/pages.types";
2
+ export interface ICreatePage {
3
+ execute: (data: CreateWbPageData) => Promise<WbPage>;
4
+ }
@@ -0,0 +1,7 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+
7
+ //# sourceMappingURL=ICreatePage.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":[],"sources":["ICreatePage.ts"],"sourcesContent":["import type { CreateWbPageData, WbPage } from \"~/context/pages/pages.types\";\n\nexport interface ICreatePage {\n execute: (data: CreateWbPageData) => Promise<WbPage>;\n}\n"],"mappings":"","ignoreList":[]}
@@ -0,0 +1,15 @@
1
+ import type { Topic } from "@webiny/pubsub/types";
2
+ import { CreatePageWithEvents } from "./CreatePageWithEvents";
3
+ import type { OnPageAfterCreateTopicParams, OnPageBeforeCreateTopicParams, WbPagesStorageOperations } from "../../../context/pages/pages.types";
4
+ export interface CreatePageUseCasesTopics {
5
+ onPageBeforeCreate: Topic<OnPageBeforeCreateTopicParams>;
6
+ onPageAfterCreate: Topic<OnPageAfterCreateTopicParams>;
7
+ }
8
+ interface CreatePageUseCasesParams {
9
+ createOperation: WbPagesStorageOperations["create"];
10
+ topics: CreatePageUseCasesTopics;
11
+ }
12
+ export declare const getCreatePageUseCase: (params: CreatePageUseCasesParams) => {
13
+ createPageUseCase: CreatePageWithEvents;
14
+ };
15
+ export {};
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.getCreatePageUseCase = void 0;
7
+ var _CreatePage = require("./CreatePage");
8
+ var _CreatePageWithEvents = require("./CreatePageWithEvents");
9
+ const getCreatePageUseCase = params => {
10
+ const createPage = new _CreatePage.CreatePage(params.createOperation);
11
+ const createPageUseCase = new _CreatePageWithEvents.CreatePageWithEvents(params.topics, createPage);
12
+ return {
13
+ createPageUseCase
14
+ };
15
+ };
16
+ exports.getCreatePageUseCase = getCreatePageUseCase;
17
+
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_CreatePage","require","_CreatePageWithEvents","getCreatePageUseCase","params","createPage","CreatePage","createOperation","createPageUseCase","CreatePageWithEvents","topics","exports"],"sources":["index.ts"],"sourcesContent":["import type { Topic } from \"@webiny/pubsub/types\";\nimport { CreatePage } from \"./CreatePage\";\nimport { CreatePageWithEvents } from \"./CreatePageWithEvents\";\nimport type {\n OnPageAfterCreateTopicParams,\n OnPageBeforeCreateTopicParams,\n WbPagesStorageOperations\n} from \"~/context/pages/pages.types\";\n\nexport interface CreatePageUseCasesTopics {\n onPageBeforeCreate: Topic<OnPageBeforeCreateTopicParams>;\n onPageAfterCreate: Topic<OnPageAfterCreateTopicParams>;\n}\n\ninterface CreatePageUseCasesParams {\n createOperation: WbPagesStorageOperations[\"create\"];\n topics: CreatePageUseCasesTopics;\n}\n\nexport const getCreatePageUseCase = (params: CreatePageUseCasesParams) => {\n const createPage = new CreatePage(params.createOperation);\n const createPageUseCase = new CreatePageWithEvents(params.topics, createPage);\n\n return {\n createPageUseCase\n };\n};\n"],"mappings":";;;;;;AACA,IAAAA,WAAA,GAAAC,OAAA;AACA,IAAAC,qBAAA,GAAAD,OAAA;AAiBO,MAAME,oBAAoB,GAAIC,MAAgC,IAAK;EACtE,MAAMC,UAAU,GAAG,IAAIC,sBAAU,CAACF,MAAM,CAACG,eAAe,CAAC;EACzD,MAAMC,iBAAiB,GAAG,IAAIC,0CAAoB,CAACL,MAAM,CAACM,MAAM,EAAEL,UAAU,CAAC;EAE7E,OAAO;IACHG;EACJ,CAAC;AACL,CAAC;AAACG,OAAA,CAAAR,oBAAA,GAAAA,oBAAA","ignoreList":[]}
@@ -0,0 +1,7 @@
1
+ import type { ICreatePageRevisionFrom } from "./ICreatePageRevisionFrom";
2
+ import type { CreateWbPageRevisionFromParams, WbPage, WbPagesStorageOperations } from "../../../context/pages/pages.types";
3
+ export declare class CreatePageRevisionFrom implements ICreatePageRevisionFrom {
4
+ private readonly createRevisionFromOperation;
5
+ constructor(createRevisionFromOperation: WbPagesStorageOperations["createRevisionFrom"]);
6
+ execute(params: CreateWbPageRevisionFromParams): Promise<WbPage>;
7
+ }
@@ -0,0 +1,17 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.CreatePageRevisionFrom = void 0;
7
+ class CreatePageRevisionFrom {
8
+ constructor(createRevisionFromOperation) {
9
+ this.createRevisionFromOperation = createRevisionFromOperation;
10
+ }
11
+ async execute(params) {
12
+ return await this.createRevisionFromOperation(params);
13
+ }
14
+ }
15
+ exports.CreatePageRevisionFrom = CreatePageRevisionFrom;
16
+
17
+ //# sourceMappingURL=CreatePageRevisionFrom.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CreatePageRevisionFrom","constructor","createRevisionFromOperation","execute","params","exports"],"sources":["CreatePageRevisionFrom.ts"],"sourcesContent":["import type { ICreatePageRevisionFrom } from \"./ICreatePageRevisionFrom\";\nimport type {\n CreateWbPageRevisionFromParams,\n WbPage,\n WbPagesStorageOperations\n} from \"~/context/pages/pages.types\";\n\nexport class CreatePageRevisionFrom implements ICreatePageRevisionFrom {\n private readonly createRevisionFromOperation: WbPagesStorageOperations[\"createRevisionFrom\"];\n\n constructor(createRevisionFromOperation: WbPagesStorageOperations[\"createRevisionFrom\"]) {\n this.createRevisionFromOperation = createRevisionFromOperation;\n }\n\n async execute(params: CreateWbPageRevisionFromParams): Promise<WbPage> {\n return await this.createRevisionFromOperation(params);\n }\n}\n"],"mappings":";;;;;;AAOO,MAAMA,sBAAsB,CAAoC;EAGnEC,WAAWA,CAACC,2BAA2E,EAAE;IACrF,IAAI,CAACA,2BAA2B,GAAGA,2BAA2B;EAClE;EAEA,MAAMC,OAAOA,CAACC,MAAsC,EAAmB;IACnE,OAAO,MAAM,IAAI,CAACF,2BAA2B,CAACE,MAAM,CAAC;EACzD;AACJ;AAACC,OAAA,CAAAL,sBAAA,GAAAA,sBAAA","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import type { CreatePageRevisionFromUseCasesTopics } from "./index";
2
+ import type { CreateWbPageRevisionFromParams, WbPagesStorageOperations } from "../../../context/pages/pages.types";
3
+ import type { ICreatePageRevisionFrom } from "./ICreatePageRevisionFrom";
4
+ export declare class CreatePageRevisionFromWithEvents implements ICreatePageRevisionFrom {
5
+ private topics;
6
+ private readonly getOperation;
7
+ private readonly decoretee;
8
+ constructor(topics: CreatePageRevisionFromUseCasesTopics, getOperation: WbPagesStorageOperations["getById"], decoretee: ICreatePageRevisionFrom);
9
+ execute(params: CreateWbPageRevisionFromParams): Promise<import("../../../context/pages/pages.types").WbPage>;
10
+ }