@webiny/app-website-builder 6.1.0 → 6.2.0-beta.0

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 (769) hide show
  1. package/BaseEditor/config/EditorConfig.d.ts +6 -4
  2. package/BaseEditor/config/Elements.d.ts +2 -1
  3. package/BaseEditor/config/Elements.js +10 -6
  4. package/BaseEditor/config/Elements.js.map +1 -1
  5. package/BaseEditor/config/TopBar/Layout.d.ts +1 -0
  6. package/BaseEditor/config/TopBar/Layout.js +15 -2
  7. package/BaseEditor/config/TopBar/Layout.js.map +1 -1
  8. package/BaseEditor/config/TopBar/TopBar.d.ts +2 -1
  9. package/BaseEditor/config/TopBar/TopBar.js +3 -2
  10. package/BaseEditor/config/TopBar/TopBar.js.map +1 -1
  11. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/Border.d.ts +4 -0
  12. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/Border.js +22 -0
  13. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/Border.js.map +1 -0
  14. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderColor.d.ts +8 -0
  15. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderColor.js +51 -0
  16. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderColor.js.map +1 -0
  17. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderRadius.d.ts +8 -0
  18. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderRadius.js +138 -0
  19. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderRadius.js.map +1 -0
  20. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderStyle.d.ts +8 -0
  21. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderStyle.js +60 -0
  22. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderStyle.js.map +1 -0
  23. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderWidth.d.ts +8 -0
  24. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderWidth.js +138 -0
  25. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/BorderWidth.js.map +1 -0
  26. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/LinkedEditing.d.ts +7 -0
  27. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/LinkedEditing.js +28 -0
  28. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border/LinkedEditing.js.map +1 -0
  29. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border.d.ts +6 -0
  30. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border.js +20 -0
  31. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/Groups/Border.js.map +1 -0
  32. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/StyleProperties.js +3 -0
  33. package/BaseEditor/defaultConfig/Sidebar/StyleSettings/StyleProperties.js.map +1 -1
  34. package/Extension.js +51 -1
  35. package/Extension.js.map +1 -1
  36. package/ecommerce/EcommerceIntegration.d.ts +8 -3
  37. package/ecommerce/EcommerceIntegration.js +33 -14
  38. package/ecommerce/EcommerceIntegration.js.map +1 -1
  39. package/ecommerce/components/ResourcePage.d.ts +24 -3
  40. package/ecommerce/components/ResourcePage.js +66 -73
  41. package/ecommerce/components/ResourcePage.js.map +1 -1
  42. package/exports/admin/website-builder.d.ts +3 -0
  43. package/exports/admin/website-builder.js +3 -0
  44. package/exports/admin/website-builder.js.map +1 -1
  45. package/features/ecommerce/apis/EcommerceApiProvider.d.ts +2 -2
  46. package/features/ecommerce/apis/EcommerceApiProvider.js +2 -0
  47. package/features/ecommerce/apis/EcommerceApiProvider.js.map +1 -1
  48. package/features/ecommerce/apis/index.d.ts +2 -0
  49. package/features/ecommerce/apis/index.js +1 -0
  50. package/features/ecommerce/apis/index.js.map +1 -1
  51. package/features/index.d.ts +2 -2
  52. package/features/index.js +1 -2
  53. package/features/index.js.map +1 -1
  54. package/features/pages/createPage/CreatePage.test.js +11 -2
  55. package/features/pages/createPage/CreatePage.test.js.map +1 -1
  56. package/features/pages/createPage/CreatePageGateway.d.ts +13 -0
  57. package/features/pages/createPage/CreatePageGateway.js +45 -0
  58. package/features/pages/createPage/CreatePageGateway.js.map +1 -0
  59. package/features/pages/createPage/CreatePageRepository.d.ts +9 -5
  60. package/features/pages/createPage/CreatePageRepository.js +8 -2
  61. package/features/pages/createPage/CreatePageRepository.js.map +1 -1
  62. package/features/pages/createPage/CreatePageUseCase.d.ts +9 -6
  63. package/features/pages/createPage/CreatePageUseCase.js +7 -2
  64. package/features/pages/createPage/CreatePageUseCase.js.map +1 -1
  65. package/features/pages/createPage/CreatePageUseCaseWithLoading.d.ts +10 -6
  66. package/features/pages/createPage/CreatePageUseCaseWithLoading.js +10 -4
  67. package/features/pages/createPage/CreatePageUseCaseWithLoading.js.map +1 -1
  68. package/features/pages/createPage/abstractions.d.ts +34 -0
  69. package/features/pages/createPage/abstractions.js +6 -0
  70. package/features/pages/createPage/abstractions.js.map +1 -0
  71. package/features/pages/createPage/feature.d.ts +3 -0
  72. package/features/pages/createPage/feature.js +22 -0
  73. package/features/pages/createPage/feature.js.map +1 -0
  74. package/features/pages/createPage/index.d.ts +2 -1
  75. package/features/pages/createPage/index.js +1 -1
  76. package/features/pages/createPage/index.js.map +1 -1
  77. package/features/pages/createPageRevisionFrom/CreatePageRevisionFrom.test.js +17 -3
  78. package/features/pages/createPageRevisionFrom/CreatePageRevisionFrom.test.js.map +1 -1
  79. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromGateway.d.ts +12 -0
  80. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromGateway.js +43 -0
  81. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromGateway.js.map +1 -0
  82. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromRepository.d.ts +9 -5
  83. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromRepository.js +8 -2
  84. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromRepository.js.map +1 -1
  85. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromUseCase.d.ts +9 -6
  86. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromUseCase.js +7 -2
  87. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromUseCase.js.map +1 -1
  88. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromUseCaseWithLoading.d.ts +10 -7
  89. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromUseCaseWithLoading.js +10 -4
  90. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromUseCaseWithLoading.js.map +1 -1
  91. package/features/pages/createPageRevisionFrom/abstractions.d.ts +27 -0
  92. package/features/pages/createPageRevisionFrom/abstractions.js +6 -0
  93. package/features/pages/createPageRevisionFrom/abstractions.js.map +1 -0
  94. package/features/pages/createPageRevisionFrom/feature.d.ts +3 -0
  95. package/features/pages/createPageRevisionFrom/feature.js +22 -0
  96. package/features/pages/createPageRevisionFrom/feature.js.map +1 -0
  97. package/features/pages/createPageRevisionFrom/index.d.ts +2 -1
  98. package/features/pages/createPageRevisionFrom/index.js +1 -1
  99. package/features/pages/createPageRevisionFrom/index.js.map +1 -1
  100. package/features/pages/deletePage/DeletePage.test.js +13 -2
  101. package/features/pages/deletePage/DeletePage.test.js.map +1 -1
  102. package/features/pages/deletePage/DeletePageGateway.d.ts +11 -0
  103. package/features/pages/deletePage/DeletePageGateway.js +40 -0
  104. package/features/pages/deletePage/DeletePageGateway.js.map +1 -0
  105. package/features/pages/deletePage/DeletePageRepository.d.ts +9 -7
  106. package/features/pages/deletePage/DeletePageRepository.js +7 -1
  107. package/features/pages/deletePage/DeletePageRepository.js.map +1 -1
  108. package/features/pages/deletePage/DeletePageUseCase.d.ts +8 -5
  109. package/features/pages/deletePage/DeletePageUseCase.js +7 -2
  110. package/features/pages/deletePage/DeletePageUseCase.js.map +1 -1
  111. package/features/pages/deletePage/DeletePageUseCaseWithLoading.d.ts +10 -7
  112. package/features/pages/deletePage/DeletePageUseCaseWithLoading.js +10 -4
  113. package/features/pages/deletePage/DeletePageUseCaseWithLoading.js.map +1 -1
  114. package/features/pages/deletePage/abstractions.d.ts +27 -0
  115. package/features/pages/deletePage/abstractions.js +25 -0
  116. package/features/pages/deletePage/abstractions.js.map +1 -0
  117. package/features/pages/deletePage/feature.d.ts +3 -0
  118. package/features/pages/deletePage/feature.js +22 -0
  119. package/features/pages/deletePage/feature.js.map +1 -0
  120. package/features/pages/deletePage/index.d.ts +2 -1
  121. package/features/pages/deletePage/index.js +1 -1
  122. package/features/pages/deletePage/index.js.map +1 -1
  123. package/features/pages/duplicatePage/DuplicatePage.test.js +13 -2
  124. package/features/pages/duplicatePage/DuplicatePage.test.js.map +1 -1
  125. package/features/pages/duplicatePage/DuplicatePageGateway.d.ts +12 -0
  126. package/features/pages/duplicatePage/DuplicatePageGateway.js +43 -0
  127. package/features/pages/duplicatePage/DuplicatePageGateway.js.map +1 -0
  128. package/features/pages/duplicatePage/DuplicatePageRepository.d.ts +9 -6
  129. package/features/pages/duplicatePage/DuplicatePageRepository.js +8 -2
  130. package/features/pages/duplicatePage/DuplicatePageRepository.js.map +1 -1
  131. package/features/pages/duplicatePage/DuplicatePageUseCase.d.ts +8 -5
  132. package/features/pages/duplicatePage/DuplicatePageUseCase.js +7 -2
  133. package/features/pages/duplicatePage/DuplicatePageUseCase.js.map +1 -1
  134. package/features/pages/duplicatePage/DuplicatePageUseCaseWithLoading.d.ts +10 -7
  135. package/features/pages/duplicatePage/DuplicatePageUseCaseWithLoading.js +10 -4
  136. package/features/pages/duplicatePage/DuplicatePageUseCaseWithLoading.js.map +1 -1
  137. package/features/pages/duplicatePage/abstractions.d.ts +27 -0
  138. package/features/pages/duplicatePage/abstractions.js +6 -0
  139. package/features/pages/duplicatePage/abstractions.js.map +1 -0
  140. package/features/pages/duplicatePage/feature.d.ts +3 -0
  141. package/features/pages/duplicatePage/feature.js +22 -0
  142. package/features/pages/duplicatePage/feature.js.map +1 -0
  143. package/features/pages/duplicatePage/index.d.ts +2 -1
  144. package/features/pages/duplicatePage/index.js +1 -1
  145. package/features/pages/duplicatePage/index.js.map +1 -1
  146. package/features/pages/getPage/GetPage.test.js +27 -8
  147. package/features/pages/getPage/GetPage.test.js.map +1 -1
  148. package/features/pages/getPage/GetPageGateway.d.ts +14 -0
  149. package/features/pages/getPage/GetPageGateway.js +54 -0
  150. package/features/pages/getPage/GetPageGateway.js.map +1 -0
  151. package/features/pages/getPage/GetPageRepository.d.ts +9 -5
  152. package/features/pages/getPage/GetPageRepository.js +8 -2
  153. package/features/pages/getPage/GetPageRepository.js.map +1 -1
  154. package/features/pages/getPage/GetPageUseCase.d.ts +8 -5
  155. package/features/pages/getPage/GetPageUseCase.js +6 -1
  156. package/features/pages/getPage/GetPageUseCase.js.map +1 -1
  157. package/features/pages/getPage/GetPageUseCaseWithLoading.d.ts +10 -6
  158. package/features/pages/getPage/GetPageUseCaseWithLoading.js +10 -4
  159. package/features/pages/getPage/GetPageUseCaseWithLoading.js.map +1 -1
  160. package/features/pages/getPage/abstractions.d.ts +27 -0
  161. package/features/pages/getPage/abstractions.js +17 -0
  162. package/features/pages/getPage/abstractions.js.map +1 -1
  163. package/features/pages/getPage/feature.d.ts +3 -0
  164. package/features/pages/getPage/feature.js +22 -0
  165. package/features/pages/getPage/feature.js.map +1 -0
  166. package/features/pages/getPage/index.d.ts +4 -1
  167. package/features/pages/getPage/index.js +2 -1
  168. package/features/pages/getPage/index.js.map +1 -1
  169. package/features/pages/getPageRevisions/GetPageRevisionsGateway.d.ts +12 -0
  170. package/features/pages/getPageRevisions/{GetPageRevisionsGqlGateway.js → GetPageRevisionsGateway.js} +15 -19
  171. package/features/pages/getPageRevisions/GetPageRevisionsGateway.js.map +1 -0
  172. package/features/pages/getPageRevisions/GetPageRevisionsRepository.d.ts +9 -5
  173. package/features/pages/getPageRevisions/GetPageRevisionsRepository.js +8 -2
  174. package/features/pages/getPageRevisions/GetPageRevisionsRepository.js.map +1 -1
  175. package/features/pages/getPageRevisions/GetPageRevisionsUseCase.d.ts +8 -5
  176. package/features/pages/getPageRevisions/GetPageRevisionsUseCase.js +6 -1
  177. package/features/pages/getPageRevisions/GetPageRevisionsUseCase.js.map +1 -1
  178. package/features/pages/getPageRevisions/GetPageRevisionsUseCaseWithLoading.d.ts +10 -6
  179. package/features/pages/getPageRevisions/GetPageRevisionsUseCaseWithLoading.js +10 -4
  180. package/features/pages/getPageRevisions/GetPageRevisionsUseCaseWithLoading.js.map +1 -1
  181. package/features/pages/getPageRevisions/abstractions.d.ts +27 -0
  182. package/features/pages/getPageRevisions/abstractions.js +6 -0
  183. package/features/pages/getPageRevisions/abstractions.js.map +1 -0
  184. package/features/pages/getPageRevisions/feature.d.ts +4 -0
  185. package/features/pages/getPageRevisions/feature.js +24 -0
  186. package/features/pages/getPageRevisions/feature.js.map +1 -0
  187. package/features/pages/getPageRevisions/index.d.ts +2 -1
  188. package/features/pages/getPageRevisions/index.js +1 -1
  189. package/features/pages/getPageRevisions/index.js.map +1 -1
  190. package/features/pages/index.d.ts +15 -0
  191. package/features/pages/index.js +15 -0
  192. package/features/pages/index.js.map +1 -1
  193. package/features/pages/loadPages/FilterPagesUseCase.d.ts +8 -5
  194. package/features/pages/loadPages/FilterPagesUseCase.js +6 -3
  195. package/features/pages/loadPages/FilterPagesUseCase.js.map +1 -1
  196. package/features/pages/loadPages/ListPagesGateway.d.ts +18 -0
  197. package/features/pages/loadPages/ListPagesGateway.js +67 -0
  198. package/features/pages/loadPages/ListPagesGateway.js.map +1 -0
  199. package/features/pages/loadPages/ListPagesRepository.d.ts +9 -9
  200. package/features/pages/loadPages/ListPagesRepository.js +10 -4
  201. package/features/pages/loadPages/ListPagesRepository.js.map +1 -1
  202. package/features/pages/loadPages/LoadMorePagesUseCase.d.ts +7 -4
  203. package/features/pages/loadPages/LoadMorePagesUseCase.js +6 -1
  204. package/features/pages/loadPages/LoadMorePagesUseCase.js.map +1 -1
  205. package/features/pages/loadPages/LoadPagesUseCase.d.ts +8 -5
  206. package/features/pages/loadPages/LoadPagesUseCase.js +8 -4
  207. package/features/pages/loadPages/LoadPagesUseCase.js.map +1 -1
  208. package/features/pages/loadPages/SearchPagesUseCase.d.ts +8 -5
  209. package/features/pages/loadPages/SearchPagesUseCase.js +6 -1
  210. package/features/pages/loadPages/SearchPagesUseCase.js.map +1 -1
  211. package/features/pages/loadPages/SortPagesUseCase.d.ts +8 -5
  212. package/features/pages/loadPages/SortPagesUseCase.js +6 -1
  213. package/features/pages/loadPages/SortPagesUseCase.js.map +1 -1
  214. package/features/pages/loadPages/abstractions.d.ts +90 -0
  215. package/features/pages/loadPages/abstractions.js +31 -0
  216. package/features/pages/loadPages/abstractions.js.map +1 -1
  217. package/features/pages/loadPages/feature.d.ts +7 -0
  218. package/features/pages/loadPages/feature.js +32 -0
  219. package/features/pages/loadPages/feature.js.map +1 -0
  220. package/features/pages/loadPages/index.d.ts +4 -5
  221. package/features/pages/loadPages/index.js +2 -5
  222. package/features/pages/loadPages/index.js.map +1 -1
  223. package/features/pages/movePage/MovePage.test.js +11 -2
  224. package/features/pages/movePage/MovePage.test.js.map +1 -1
  225. package/features/pages/movePage/MovePageGateway.d.ts +11 -0
  226. package/features/pages/movePage/MovePageGateway.js +40 -0
  227. package/features/pages/movePage/MovePageGateway.js.map +1 -0
  228. package/features/pages/movePage/MovePageRepository.d.ts +8 -5
  229. package/features/pages/movePage/MovePageRepository.js +8 -2
  230. package/features/pages/movePage/MovePageRepository.js.map +1 -1
  231. package/features/pages/movePage/MovePageUseCase.d.ts +8 -5
  232. package/features/pages/movePage/MovePageUseCase.js +6 -1
  233. package/features/pages/movePage/MovePageUseCase.js.map +1 -1
  234. package/features/pages/movePage/MovePageUseCaseWithLoading.d.ts +10 -7
  235. package/features/pages/movePage/MovePageUseCaseWithLoading.js +10 -4
  236. package/features/pages/movePage/MovePageUseCaseWithLoading.js.map +1 -1
  237. package/features/pages/movePage/abstractions.d.ts +26 -0
  238. package/features/pages/movePage/abstractions.js +25 -0
  239. package/features/pages/movePage/abstractions.js.map +1 -0
  240. package/features/pages/movePage/feature.d.ts +3 -0
  241. package/features/pages/movePage/feature.js +22 -0
  242. package/features/pages/movePage/feature.js.map +1 -0
  243. package/features/pages/movePage/index.d.ts +2 -1
  244. package/features/pages/movePage/index.js +1 -1
  245. package/features/pages/movePage/index.js.map +1 -1
  246. package/features/pages/publishPage/PublishPage.test.js +20 -4
  247. package/features/pages/publishPage/PublishPage.test.js.map +1 -1
  248. package/features/pages/publishPage/PublishPageGateway.d.ts +12 -0
  249. package/features/pages/publishPage/PublishPageGateway.js +43 -0
  250. package/features/pages/publishPage/PublishPageGateway.js.map +1 -0
  251. package/features/pages/publishPage/PublishPageRepository.d.ts +9 -5
  252. package/features/pages/publishPage/PublishPageRepository.js +9 -3
  253. package/features/pages/publishPage/PublishPageRepository.js.map +1 -1
  254. package/features/pages/publishPage/PublishPageUseCase.d.ts +8 -5
  255. package/features/pages/publishPage/PublishPageUseCase.js +7 -2
  256. package/features/pages/publishPage/PublishPageUseCase.js.map +1 -1
  257. package/features/pages/publishPage/PublishPageUseCaseWithLoading.d.ts +10 -7
  258. package/features/pages/publishPage/PublishPageUseCaseWithLoading.js +10 -4
  259. package/features/pages/publishPage/PublishPageUseCaseWithLoading.js.map +1 -1
  260. package/features/pages/publishPage/abstractions.d.ts +27 -0
  261. package/features/pages/publishPage/abstractions.js +6 -0
  262. package/features/pages/publishPage/abstractions.js.map +1 -0
  263. package/features/pages/publishPage/feature.d.ts +3 -0
  264. package/features/pages/publishPage/feature.js +22 -0
  265. package/features/pages/publishPage/feature.js.map +1 -0
  266. package/features/pages/publishPage/index.d.ts +2 -1
  267. package/features/pages/publishPage/index.js +1 -1
  268. package/features/pages/publishPage/index.js.map +1 -1
  269. package/features/pages/selectPages/SelectPagesUseCase.d.ts +9 -5
  270. package/features/pages/selectPages/SelectPagesUseCase.js +7 -1
  271. package/features/pages/selectPages/SelectPagesUseCase.js.map +1 -1
  272. package/features/pages/selectPages/abstractions.d.ts +7 -0
  273. package/features/pages/selectPages/abstractions.js +9 -0
  274. package/features/pages/selectPages/abstractions.js.map +1 -0
  275. package/features/pages/selectPages/feature.d.ts +3 -0
  276. package/features/pages/selectPages/feature.js +16 -0
  277. package/features/pages/selectPages/feature.js.map +1 -0
  278. package/features/pages/selectPages/index.d.ts +1 -4
  279. package/features/pages/selectPages/index.js +1 -3
  280. package/features/pages/selectPages/index.js.map +1 -1
  281. package/features/pages/selectPages/useSelectPages.d.ts +1 -3
  282. package/features/pages/selectPages/useSelectPages.js +2 -11
  283. package/features/pages/selectPages/useSelectPages.js.map +1 -1
  284. package/features/pages/shared/abstractions.d.ts +53 -0
  285. package/features/pages/shared/abstractions.js +23 -0
  286. package/features/pages/shared/abstractions.js.map +1 -0
  287. package/features/pages/shared/feature.d.ts +1 -0
  288. package/features/pages/shared/feature.js +61 -0
  289. package/features/pages/shared/feature.js.map +1 -0
  290. package/features/pages/shared/index.d.ts +3 -0
  291. package/features/pages/shared/index.js +5 -0
  292. package/features/pages/shared/index.js.map +1 -0
  293. package/features/pages/shared/pageGraphQLFields.d.ts +2 -0
  294. package/features/pages/shared/pageGraphQLFields.js +22 -0
  295. package/features/pages/shared/pageGraphQLFields.js.map +1 -0
  296. package/features/pages/translatePage/TranslatePageGateway.d.ts +11 -0
  297. package/features/pages/translatePage/TranslatePageGateway.js +46 -0
  298. package/features/pages/translatePage/TranslatePageGateway.js.map +1 -0
  299. package/features/pages/translatePage/TranslatePageRepository.d.ts +10 -0
  300. package/features/pages/translatePage/TranslatePageRepository.js +19 -0
  301. package/features/pages/translatePage/TranslatePageRepository.js.map +1 -0
  302. package/features/pages/translatePage/TranslatePageUseCase.d.ts +10 -0
  303. package/features/pages/translatePage/TranslatePageUseCase.js +19 -0
  304. package/features/pages/translatePage/TranslatePageUseCase.js.map +1 -0
  305. package/features/pages/translatePage/abstractions.d.ts +44 -0
  306. package/features/pages/translatePage/abstractions.js +25 -0
  307. package/features/pages/translatePage/abstractions.js.map +1 -0
  308. package/features/pages/translatePage/feature.d.ts +3 -0
  309. package/features/pages/translatePage/feature.js +20 -0
  310. package/features/pages/translatePage/feature.js.map +1 -0
  311. package/features/pages/translatePage/index.d.ts +2 -0
  312. package/features/pages/translatePage/index.js +3 -0
  313. package/features/pages/translatePage/index.js.map +1 -0
  314. package/features/pages/unpublishPage/UnpublishPage.test.js +24 -6
  315. package/features/pages/unpublishPage/UnpublishPage.test.js.map +1 -1
  316. package/features/pages/unpublishPage/UnpublishPageGateway.d.ts +12 -0
  317. package/features/pages/unpublishPage/UnpublishPageGateway.js +43 -0
  318. package/features/pages/unpublishPage/UnpublishPageGateway.js.map +1 -0
  319. package/features/pages/unpublishPage/UnpublishPageRepository.d.ts +11 -7
  320. package/features/pages/unpublishPage/UnpublishPageRepository.js +9 -3
  321. package/features/pages/unpublishPage/UnpublishPageRepository.js.map +1 -1
  322. package/features/pages/unpublishPage/UnpublishPageUseCase.d.ts +8 -5
  323. package/features/pages/unpublishPage/UnpublishPageUseCase.js +7 -2
  324. package/features/pages/unpublishPage/UnpublishPageUseCase.js.map +1 -1
  325. package/features/pages/unpublishPage/UnpublishPageUseCaseWithLoading.d.ts +10 -6
  326. package/features/pages/unpublishPage/UnpublishPageUseCaseWithLoading.js +10 -4
  327. package/features/pages/unpublishPage/UnpublishPageUseCaseWithLoading.js.map +1 -1
  328. package/features/pages/unpublishPage/abstractions.d.ts +27 -0
  329. package/features/pages/unpublishPage/abstractions.js +6 -0
  330. package/features/pages/unpublishPage/abstractions.js.map +1 -0
  331. package/features/pages/unpublishPage/feature.d.ts +3 -0
  332. package/features/pages/unpublishPage/feature.js +22 -0
  333. package/features/pages/unpublishPage/feature.js.map +1 -0
  334. package/features/pages/unpublishPage/index.d.ts +2 -1
  335. package/features/pages/unpublishPage/index.js +1 -1
  336. package/features/pages/unpublishPage/index.js.map +1 -1
  337. package/features/pages/updatePage/UpdatePage.test.js +65 -5
  338. package/features/pages/updatePage/UpdatePage.test.js.map +1 -1
  339. package/features/pages/updatePage/UpdatePageGateway.d.ts +13 -0
  340. package/features/pages/updatePage/UpdatePageGateway.js +58 -0
  341. package/features/pages/updatePage/UpdatePageGateway.js.map +1 -0
  342. package/features/pages/updatePage/UpdatePageRepository.d.ts +10 -6
  343. package/features/pages/updatePage/UpdatePageRepository.js +9 -3
  344. package/features/pages/updatePage/UpdatePageRepository.js.map +1 -1
  345. package/features/pages/updatePage/UpdatePageUseCase.d.ts +8 -6
  346. package/features/pages/updatePage/UpdatePageUseCase.js +7 -2
  347. package/features/pages/updatePage/UpdatePageUseCase.js.map +1 -1
  348. package/features/pages/updatePage/UpdatePageUseCaseWithLoading.d.ts +10 -7
  349. package/features/pages/updatePage/UpdatePageUseCaseWithLoading.js +10 -4
  350. package/features/pages/updatePage/UpdatePageUseCaseWithLoading.js.map +1 -1
  351. package/features/pages/updatePage/abstractions.d.ts +33 -0
  352. package/features/pages/updatePage/abstractions.js +6 -0
  353. package/features/pages/updatePage/abstractions.js.map +1 -0
  354. package/features/pages/updatePage/feature.d.ts +3 -0
  355. package/features/pages/updatePage/feature.js +22 -0
  356. package/features/pages/updatePage/feature.js.map +1 -0
  357. package/features/pages/updatePage/index.d.ts +2 -1
  358. package/features/pages/updatePage/index.js +1 -1
  359. package/features/pages/updatePage/index.js.map +1 -1
  360. package/features/permissions/abstractions.d.ts +17 -0
  361. package/features/permissions/abstractions.js +5 -0
  362. package/features/permissions/abstractions.js.map +1 -0
  363. package/features/permissions/feature.d.ts +14 -0
  364. package/features/permissions/feature.js +6 -0
  365. package/features/permissions/feature.js.map +1 -0
  366. package/modules/pages/PageEditor/DefaultPageEditorConfig.js +4 -0
  367. package/modules/pages/PageEditor/DefaultPageEditorConfig.js.map +1 -1
  368. package/modules/pages/PageEditor/PageEditorConfig.d.ts +6 -4
  369. package/modules/pages/PageEditor/TopBar/SettingsButton.js +1 -1
  370. package/modules/pages/PageEditor/TopBar/SettingsButton.js.map +1 -1
  371. package/modules/pages/PageEditor/TopBar/Title.js +10 -4
  372. package/modules/pages/PageEditor/TopBar/Title.js.map +1 -1
  373. package/modules/pages/PagesList/components/Main/Main.js +12 -8
  374. package/modules/pages/PagesList/components/Main/Main.js.map +1 -1
  375. package/modules/pages/PagesList/components/Table/Cells/CellActions.js +3 -0
  376. package/modules/pages/PagesList/components/Table/Cells/CellActions.js.map +1 -1
  377. package/modules/pages/PagesList/components/Table/Cells/CellName.js +4 -0
  378. package/modules/pages/PagesList/components/Table/Cells/CellName.js.map +1 -1
  379. package/modules/pages/PagesListConfig.js +17 -15
  380. package/modules/pages/PagesListConfig.js.map +1 -1
  381. package/modules/pages/configs/list/PageListConfig.d.ts +0 -2
  382. package/modules/pages/configs/list/PageListConfig.js +2 -5
  383. package/modules/pages/configs/list/PageListConfig.js.map +1 -1
  384. package/modules/redirects/RedirectsListConfig.js +2 -1
  385. package/modules/redirects/RedirectsListConfig.js.map +1 -1
  386. package/package.json +35 -33
  387. package/presentation/components/LanguageCodeTag.d.ts +6 -0
  388. package/presentation/components/LanguageCodeTag.js +20 -0
  389. package/presentation/components/LanguageCodeTag.js.map +1 -0
  390. package/presentation/components/LanguageSelector.d.ts +8 -0
  391. package/presentation/components/LanguageSelector.js +27 -0
  392. package/presentation/components/LanguageSelector.js.map +1 -0
  393. package/presentation/navigation/NextjsConfig/NextjsConfigGateway.d.ts +2 -2
  394. package/presentation/navigation/NextjsConfig/NextjsConfigGateway.js +2 -2
  395. package/presentation/navigation/NextjsConfig/NextjsConfigGateway.js.map +1 -1
  396. package/presentation/pages/CreatePage/AddLanguageModifier.d.ts +24 -0
  397. package/presentation/pages/CreatePage/AddLanguageModifier.js +117 -0
  398. package/presentation/pages/CreatePage/AddLanguageModifier.js.map +1 -0
  399. package/presentation/pages/CreatePage/CreatePage.test.d.ts +1 -0
  400. package/presentation/pages/CreatePage/CreatePage.test.js +321 -0
  401. package/presentation/pages/CreatePage/CreatePage.test.js.map +1 -0
  402. package/presentation/pages/CreatePage/CreatePageConfig.d.ts +2 -0
  403. package/presentation/pages/CreatePage/CreatePageConfig.js +11 -0
  404. package/presentation/pages/CreatePage/CreatePageConfig.js.map +1 -0
  405. package/presentation/pages/CreatePage/CreatePageDialog.d.ts +6 -0
  406. package/presentation/pages/CreatePage/CreatePageDialog.js +72 -0
  407. package/presentation/pages/CreatePage/CreatePageDialog.js.map +1 -0
  408. package/presentation/pages/CreatePage/CreatePagePresenter.d.ts +23 -0
  409. package/presentation/pages/CreatePage/CreatePagePresenter.js +134 -0
  410. package/presentation/pages/CreatePage/CreatePagePresenter.js.map +1 -0
  411. package/presentation/pages/CreatePage/PageTypeProvider.d.ts +34 -0
  412. package/presentation/pages/CreatePage/PageTypeProvider.js +48 -0
  413. package/presentation/pages/CreatePage/PageTypeProvider.js.map +1 -0
  414. package/presentation/pages/CreatePage/StaticPageType.d.ts +9 -0
  415. package/presentation/pages/CreatePage/StaticPageType.js +11 -0
  416. package/presentation/pages/CreatePage/StaticPageType.js.map +1 -0
  417. package/presentation/pages/CreatePage/WithLanguageSelector.d.ts +7 -0
  418. package/presentation/pages/CreatePage/WithLanguageSelector.js +55 -0
  419. package/presentation/pages/CreatePage/WithLanguageSelector.js.map +1 -0
  420. package/presentation/pages/CreatePage/abstractions.d.ts +51 -0
  421. package/presentation/pages/CreatePage/abstractions.js +27 -0
  422. package/presentation/pages/CreatePage/abstractions.js.map +1 -0
  423. package/presentation/pages/CreatePage/createPageSchema.d.ts +4 -0
  424. package/presentation/pages/CreatePage/createPageSchema.js +6 -0
  425. package/presentation/pages/CreatePage/createPageSchema.js.map +1 -0
  426. package/presentation/pages/CreatePage/feature.d.ts +3 -0
  427. package/presentation/pages/CreatePage/feature.js +28 -0
  428. package/presentation/pages/CreatePage/feature.js.map +1 -0
  429. package/presentation/pages/CreatePage/index.d.ts +6 -0
  430. package/presentation/pages/CreatePage/index.js +7 -0
  431. package/presentation/pages/CreatePage/index.js.map +1 -0
  432. package/presentation/pages/TranslatePage/TranslatePageAction.d.ts +2 -0
  433. package/presentation/pages/TranslatePage/TranslatePageAction.js +29 -0
  434. package/presentation/pages/TranslatePage/TranslatePageAction.js.map +1 -0
  435. package/presentation/pages/TranslatePage/TranslatePageConfig.d.ts +2 -0
  436. package/presentation/pages/TranslatePage/TranslatePageConfig.js +23 -0
  437. package/presentation/pages/TranslatePage/TranslatePageConfig.js.map +1 -0
  438. package/presentation/pages/TranslatePage/TranslatePageDialog.d.ts +3 -0
  439. package/presentation/pages/TranslatePage/TranslatePageDialog.js +86 -0
  440. package/presentation/pages/TranslatePage/TranslatePageDialog.js.map +1 -0
  441. package/presentation/pages/TranslatePage/translatePageSchema.d.ts +6 -0
  442. package/presentation/pages/TranslatePage/translatePageSchema.js +8 -0
  443. package/presentation/pages/TranslatePage/translatePageSchema.js.map +1 -0
  444. package/presentation/pages/hooks/useCreatePage.d.ts +4 -0
  445. package/presentation/pages/hooks/useCreatePage.js +16 -0
  446. package/presentation/pages/hooks/useCreatePage.js.map +1 -0
  447. package/{features/pages/createPageRevisionFrom → presentation/pages/hooks}/useCreatePageRevisionFrom.d.ts +1 -1
  448. package/presentation/pages/hooks/useCreatePageRevisionFrom.js +16 -0
  449. package/presentation/pages/hooks/useCreatePageRevisionFrom.js.map +1 -0
  450. package/{features/pages/deletePage → presentation/pages/hooks}/useDeletePage.d.ts +1 -1
  451. package/presentation/pages/hooks/useDeletePage.js +16 -0
  452. package/presentation/pages/hooks/useDeletePage.js.map +1 -0
  453. package/{features/pages/duplicatePage → presentation/pages/hooks}/useDuplicatePage.d.ts +1 -1
  454. package/presentation/pages/hooks/useDuplicatePage.js +16 -0
  455. package/presentation/pages/hooks/useDuplicatePage.js.map +1 -0
  456. package/{features/pages/loadPages → presentation/pages/hooks}/useFilterPages.js +7 -6
  457. package/presentation/pages/hooks/useFilterPages.js.map +1 -0
  458. package/{features/pages/getPage → presentation/pages/hooks}/useGetPage.d.ts +1 -1
  459. package/presentation/pages/hooks/useGetPage.js +16 -0
  460. package/presentation/pages/hooks/useGetPage.js.map +1 -0
  461. package/presentation/pages/hooks/useGetPageRevisions.d.ts +5 -0
  462. package/presentation/pages/hooks/useGetPageRevisions.js +18 -0
  463. package/presentation/pages/hooks/useGetPageRevisions.js.map +1 -0
  464. package/presentation/pages/hooks/useLoadMorePages.js +16 -0
  465. package/presentation/pages/hooks/useLoadMorePages.js.map +1 -0
  466. package/{features/pages/loadPages → presentation/pages/hooks}/useLoadPages.d.ts +1 -1
  467. package/presentation/pages/hooks/useLoadPages.js +16 -0
  468. package/presentation/pages/hooks/useLoadPages.js.map +1 -0
  469. package/{features/pages/movePage → presentation/pages/hooks}/useMovePage.d.ts +1 -1
  470. package/presentation/pages/hooks/useMovePage.js +16 -0
  471. package/presentation/pages/hooks/useMovePage.js.map +1 -0
  472. package/{features/pages/publishPage → presentation/pages/hooks}/usePublishPage.d.ts +1 -1
  473. package/presentation/pages/hooks/usePublishPage.js +16 -0
  474. package/presentation/pages/hooks/usePublishPage.js.map +1 -0
  475. package/{features/pages/loadPages → presentation/pages/hooks}/useSearchPages.js +7 -6
  476. package/presentation/pages/hooks/useSearchPages.js.map +1 -0
  477. package/presentation/pages/hooks/useSelectPages.d.ts +3 -0
  478. package/presentation/pages/hooks/useSelectPages.js +16 -0
  479. package/presentation/pages/hooks/useSelectPages.js.map +1 -0
  480. package/{features/pages/loadPages → presentation/pages/hooks}/useSortPages.js +7 -7
  481. package/presentation/pages/hooks/useSortPages.js.map +1 -0
  482. package/presentation/pages/hooks/useTranslatePage.d.ts +4 -0
  483. package/presentation/pages/hooks/useTranslatePage.js +16 -0
  484. package/presentation/pages/hooks/useTranslatePage.js.map +1 -0
  485. package/{features/pages/unpublishPage → presentation/pages/hooks}/useUnpublishPage.d.ts +1 -1
  486. package/presentation/pages/hooks/useUnpublishPage.js +16 -0
  487. package/presentation/pages/hooks/useUnpublishPage.js.map +1 -0
  488. package/{features/pages/updatePage → presentation/pages/hooks}/useUpdatePage.d.ts +1 -1
  489. package/presentation/pages/hooks/useUpdatePage.js +16 -0
  490. package/presentation/pages/hooks/useUpdatePage.js.map +1 -0
  491. package/presentation/security/HasPermission.js +3 -3
  492. package/presentation/security/HasPermission.js.map +1 -1
  493. package/presentation/security/usePermissions.js +3 -3
  494. package/presentation/security/usePermissions.js.map +1 -1
  495. package/shared/PagePath.d.ts +32 -0
  496. package/shared/PagePath.js +87 -0
  497. package/shared/PagePath.js.map +1 -0
  498. package/shared/PagePath.test.d.ts +1 -0
  499. package/shared/PagePath.test.js +81 -0
  500. package/shared/PagePath.test.js.map +1 -0
  501. package/features/pageTypes/PageType.d.ts +0 -6
  502. package/features/pageTypes/PageType.js +0 -3
  503. package/features/pageTypes/PageType.js.map +0 -1
  504. package/features/pageTypes/pageTypesCache.d.ts +0 -3
  505. package/features/pageTypes/pageTypesCache.js +0 -4
  506. package/features/pageTypes/pageTypesCache.js.map +0 -1
  507. package/features/pageTypes/useGetPageType.d.ts +0 -3
  508. package/features/pageTypes/useGetPageType.js +0 -15
  509. package/features/pageTypes/useGetPageType.js.map +0 -1
  510. package/features/pageTypes/usePageTypes.d.ts +0 -6
  511. package/features/pageTypes/usePageTypes.js +0 -27
  512. package/features/pageTypes/usePageTypes.js.map +0 -1
  513. package/features/pages/createPage/CreatePage.d.ts +0 -5
  514. package/features/pages/createPage/CreatePage.js +0 -15
  515. package/features/pages/createPage/CreatePage.js.map +0 -1
  516. package/features/pages/createPage/CreatePageGqlGateway.d.ts +0 -23
  517. package/features/pages/createPage/CreatePageGqlGateway.js +0 -48
  518. package/features/pages/createPage/CreatePageGqlGateway.js.map +0 -1
  519. package/features/pages/createPage/ICreatePageGateway.d.ts +0 -5
  520. package/features/pages/createPage/ICreatePageGateway.js +0 -3
  521. package/features/pages/createPage/ICreatePageGateway.js.map +0 -1
  522. package/features/pages/createPage/ICreatePageRepository.d.ts +0 -4
  523. package/features/pages/createPage/ICreatePageRepository.js +0 -3
  524. package/features/pages/createPage/ICreatePageRepository.js.map +0 -1
  525. package/features/pages/createPage/ICreatePageUseCase.d.ts +0 -13
  526. package/features/pages/createPage/ICreatePageUseCase.js +0 -3
  527. package/features/pages/createPage/ICreatePageUseCase.js.map +0 -1
  528. package/features/pages/createPage/useCreatePage.d.ts +0 -4
  529. package/features/pages/createPage/useCreatePage.js +0 -19
  530. package/features/pages/createPage/useCreatePage.js.map +0 -1
  531. package/features/pages/createPageRevisionFrom/CreatePageRevisionFrom.d.ts +0 -5
  532. package/features/pages/createPageRevisionFrom/CreatePageRevisionFrom.js +0 -15
  533. package/features/pages/createPageRevisionFrom/CreatePageRevisionFrom.js.map +0 -1
  534. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromGqlGateway.d.ts +0 -22
  535. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromGqlGateway.js +0 -46
  536. package/features/pages/createPageRevisionFrom/CreatePageRevisionFromGqlGateway.js.map +0 -1
  537. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromGateway.d.ts +0 -4
  538. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromGateway.js +0 -3
  539. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromGateway.js.map +0 -1
  540. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromRepository.d.ts +0 -4
  541. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromRepository.js +0 -3
  542. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromRepository.js.map +0 -1
  543. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromUseCase.d.ts +0 -7
  544. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromUseCase.js +0 -3
  545. package/features/pages/createPageRevisionFrom/ICreatePageRevisionFromUseCase.js.map +0 -1
  546. package/features/pages/createPageRevisionFrom/PageGatewayDto.d.ts +0 -19
  547. package/features/pages/createPageRevisionFrom/PageGatewayDto.js +0 -3
  548. package/features/pages/createPageRevisionFrom/PageGatewayDto.js.map +0 -1
  549. package/features/pages/createPageRevisionFrom/useCreatePageRevisionFrom.js +0 -19
  550. package/features/pages/createPageRevisionFrom/useCreatePageRevisionFrom.js.map +0 -1
  551. package/features/pages/deletePage/DeletePage.d.ts +0 -5
  552. package/features/pages/deletePage/DeletePage.js +0 -16
  553. package/features/pages/deletePage/DeletePage.js.map +0 -1
  554. package/features/pages/deletePage/DeletePageGqlGateway.d.ts +0 -21
  555. package/features/pages/deletePage/DeletePageGqlGateway.js +0 -44
  556. package/features/pages/deletePage/DeletePageGqlGateway.js.map +0 -1
  557. package/features/pages/deletePage/IDeletePageGateway.d.ts +0 -3
  558. package/features/pages/deletePage/IDeletePageGateway.js +0 -3
  559. package/features/pages/deletePage/IDeletePageGateway.js.map +0 -1
  560. package/features/pages/deletePage/IDeletePageRepository.d.ts +0 -4
  561. package/features/pages/deletePage/IDeletePageRepository.js +0 -3
  562. package/features/pages/deletePage/IDeletePageRepository.js.map +0 -1
  563. package/features/pages/deletePage/IDeletePageUseCase.d.ts +0 -7
  564. package/features/pages/deletePage/IDeletePageUseCase.js +0 -3
  565. package/features/pages/deletePage/IDeletePageUseCase.js.map +0 -1
  566. package/features/pages/deletePage/useDeletePage.js +0 -17
  567. package/features/pages/deletePage/useDeletePage.js.map +0 -1
  568. package/features/pages/duplicatePage/DuplicatePage.d.ts +0 -5
  569. package/features/pages/duplicatePage/DuplicatePage.js +0 -16
  570. package/features/pages/duplicatePage/DuplicatePage.js.map +0 -1
  571. package/features/pages/duplicatePage/DuplicatePageGqlGateway.d.ts +0 -22
  572. package/features/pages/duplicatePage/DuplicatePageGqlGateway.js +0 -46
  573. package/features/pages/duplicatePage/DuplicatePageGqlGateway.js.map +0 -1
  574. package/features/pages/duplicatePage/IDuplicatePageGateway.d.ts +0 -4
  575. package/features/pages/duplicatePage/IDuplicatePageGateway.js +0 -3
  576. package/features/pages/duplicatePage/IDuplicatePageGateway.js.map +0 -1
  577. package/features/pages/duplicatePage/IDuplicatePageRepository.d.ts +0 -4
  578. package/features/pages/duplicatePage/IDuplicatePageRepository.js +0 -3
  579. package/features/pages/duplicatePage/IDuplicatePageRepository.js.map +0 -1
  580. package/features/pages/duplicatePage/IDuplicatePageUseCase.d.ts +0 -6
  581. package/features/pages/duplicatePage/IDuplicatePageUseCase.js +0 -3
  582. package/features/pages/duplicatePage/IDuplicatePageUseCase.js.map +0 -1
  583. package/features/pages/duplicatePage/PageGatewayDto.d.ts +0 -19
  584. package/features/pages/duplicatePage/PageGatewayDto.js +0 -3
  585. package/features/pages/duplicatePage/PageGatewayDto.js.map +0 -1
  586. package/features/pages/duplicatePage/useDuplicatePage.js +0 -19
  587. package/features/pages/duplicatePage/useDuplicatePage.js.map +0 -1
  588. package/features/pages/getPage/GetPage.d.ts +0 -10
  589. package/features/pages/getPage/GetPage.js +0 -19
  590. package/features/pages/getPage/GetPage.js.map +0 -1
  591. package/features/pages/getPage/GetPageGqlGateway.d.ts +0 -22
  592. package/features/pages/getPage/GetPageGqlGateway.js +0 -50
  593. package/features/pages/getPage/GetPageGqlGateway.js.map +0 -1
  594. package/features/pages/getPage/IGetPageGateway.d.ts +0 -4
  595. package/features/pages/getPage/IGetPageGateway.js +0 -3
  596. package/features/pages/getPage/IGetPageGateway.js.map +0 -1
  597. package/features/pages/getPage/IGetPageRepository.d.ts +0 -4
  598. package/features/pages/getPage/IGetPageRepository.js +0 -3
  599. package/features/pages/getPage/IGetPageRepository.js.map +0 -1
  600. package/features/pages/getPage/IGetPageUseCase.d.ts +0 -7
  601. package/features/pages/getPage/IGetPageUseCase.js +0 -3
  602. package/features/pages/getPage/IGetPageUseCase.js.map +0 -1
  603. package/features/pages/getPage/useGetPage.js +0 -13
  604. package/features/pages/getPage/useGetPage.js.map +0 -1
  605. package/features/pages/getPage/useGetPageGatewayInstance.d.ts +0 -2
  606. package/features/pages/getPage/useGetPageGatewayInstance.js +0 -23
  607. package/features/pages/getPage/useGetPageGatewayInstance.js.map +0 -1
  608. package/features/pages/getPageRevisions/GetPageRevisions.d.ts +0 -11
  609. package/features/pages/getPageRevisions/GetPageRevisions.js +0 -20
  610. package/features/pages/getPageRevisions/GetPageRevisions.js.map +0 -1
  611. package/features/pages/getPageRevisions/GetPageRevisionsGqlGateway.d.ts +0 -24
  612. package/features/pages/getPageRevisions/GetPageRevisionsGqlGateway.js.map +0 -1
  613. package/features/pages/getPageRevisions/IGetPageRevisionsGateway.d.ts +0 -4
  614. package/features/pages/getPageRevisions/IGetPageRevisionsGateway.js +0 -3
  615. package/features/pages/getPageRevisions/IGetPageRevisionsGateway.js.map +0 -1
  616. package/features/pages/getPageRevisions/IGetPageRevisionsRepository.d.ts +0 -4
  617. package/features/pages/getPageRevisions/IGetPageRevisionsRepository.js +0 -3
  618. package/features/pages/getPageRevisions/IGetPageRevisionsRepository.js.map +0 -1
  619. package/features/pages/getPageRevisions/IGetPageRevisionsUseCase.d.ts +0 -7
  620. package/features/pages/getPageRevisions/IGetPageRevisionsUseCase.js +0 -3
  621. package/features/pages/getPageRevisions/IGetPageRevisionsUseCase.js.map +0 -1
  622. package/features/pages/getPageRevisions/useGetPageRevisions.d.ts +0 -5
  623. package/features/pages/getPageRevisions/useGetPageRevisions.js +0 -20
  624. package/features/pages/getPageRevisions/useGetPageRevisions.js.map +0 -1
  625. package/features/pages/loadPages/FilterPages.d.ts +0 -5
  626. package/features/pages/loadPages/FilterPages.js +0 -10
  627. package/features/pages/loadPages/FilterPages.js.map +0 -1
  628. package/features/pages/loadPages/IFilterPagesUseCase.d.ts +0 -7
  629. package/features/pages/loadPages/IFilterPagesUseCase.js +0 -3
  630. package/features/pages/loadPages/IFilterPagesUseCase.js.map +0 -1
  631. package/features/pages/loadPages/IListPagesGateway.d.ts +0 -16
  632. package/features/pages/loadPages/IListPagesGateway.js +0 -3
  633. package/features/pages/loadPages/IListPagesGateway.js.map +0 -1
  634. package/features/pages/loadPages/IListPagesRepository.d.ts +0 -12
  635. package/features/pages/loadPages/IListPagesRepository.js +0 -3
  636. package/features/pages/loadPages/IListPagesRepository.js.map +0 -1
  637. package/features/pages/loadPages/ILoadMorePagesUseCase.d.ts +0 -3
  638. package/features/pages/loadPages/ILoadMorePagesUseCase.js +0 -3
  639. package/features/pages/loadPages/ILoadMorePagesUseCase.js.map +0 -1
  640. package/features/pages/loadPages/ILoadPagesUseCase.d.ts +0 -7
  641. package/features/pages/loadPages/ILoadPagesUseCase.js +0 -3
  642. package/features/pages/loadPages/ILoadPagesUseCase.js.map +0 -1
  643. package/features/pages/loadPages/ISearchPagesUseCase.d.ts +0 -7
  644. package/features/pages/loadPages/ISearchPagesUseCase.js +0 -3
  645. package/features/pages/loadPages/ISearchPagesUseCase.js.map +0 -1
  646. package/features/pages/loadPages/ISortPagesUseCase.d.ts +0 -7
  647. package/features/pages/loadPages/ISortPagesUseCase.js +0 -3
  648. package/features/pages/loadPages/ISortPagesUseCase.js.map +0 -1
  649. package/features/pages/loadPages/ListPagesGqlGateway.d.ts +0 -40
  650. package/features/pages/loadPages/ListPagesGqlGateway.js +0 -71
  651. package/features/pages/loadPages/ListPagesGqlGateway.js.map +0 -1
  652. package/features/pages/loadPages/ListPagesRepositoryFactory.d.ts +0 -6
  653. package/features/pages/loadPages/ListPagesRepositoryFactory.js +0 -25
  654. package/features/pages/loadPages/ListPagesRepositoryFactory.js.map +0 -1
  655. package/features/pages/loadPages/LoadMorePages.d.ts +0 -5
  656. package/features/pages/loadPages/LoadMorePages.js +0 -10
  657. package/features/pages/loadPages/LoadMorePages.js.map +0 -1
  658. package/features/pages/loadPages/LoadPages.d.ts +0 -5
  659. package/features/pages/loadPages/LoadPages.js +0 -10
  660. package/features/pages/loadPages/LoadPages.js.map +0 -1
  661. package/features/pages/loadPages/SearchPages.d.ts +0 -5
  662. package/features/pages/loadPages/SearchPages.js +0 -10
  663. package/features/pages/loadPages/SearchPages.js.map +0 -1
  664. package/features/pages/loadPages/SortPages.d.ts +0 -5
  665. package/features/pages/loadPages/SortPages.js +0 -10
  666. package/features/pages/loadPages/SortPages.js.map +0 -1
  667. package/features/pages/loadPages/useFilterPages.js.map +0 -1
  668. package/features/pages/loadPages/useListPagesGateway.d.ts +0 -2
  669. package/features/pages/loadPages/useListPagesGateway.js +0 -18
  670. package/features/pages/loadPages/useListPagesGateway.js.map +0 -1
  671. package/features/pages/loadPages/useLoadMorePages.js +0 -15
  672. package/features/pages/loadPages/useLoadMorePages.js.map +0 -1
  673. package/features/pages/loadPages/useLoadPages.js +0 -15
  674. package/features/pages/loadPages/useLoadPages.js.map +0 -1
  675. package/features/pages/loadPages/useSearchPages.js.map +0 -1
  676. package/features/pages/loadPages/useSortPages.js.map +0 -1
  677. package/features/pages/movePage/IMovePageGateway.d.ts +0 -3
  678. package/features/pages/movePage/IMovePageGateway.js +0 -3
  679. package/features/pages/movePage/IMovePageGateway.js.map +0 -1
  680. package/features/pages/movePage/IMovePageRepository.d.ts +0 -3
  681. package/features/pages/movePage/IMovePageRepository.js +0 -3
  682. package/features/pages/movePage/IMovePageRepository.js.map +0 -1
  683. package/features/pages/movePage/IMovePageUseCase.d.ts +0 -7
  684. package/features/pages/movePage/IMovePageUseCase.js +0 -3
  685. package/features/pages/movePage/IMovePageUseCase.js.map +0 -1
  686. package/features/pages/movePage/MovePage.d.ts +0 -5
  687. package/features/pages/movePage/MovePage.js +0 -15
  688. package/features/pages/movePage/MovePage.js.map +0 -1
  689. package/features/pages/movePage/MovePageGqlGateway.d.ts +0 -21
  690. package/features/pages/movePage/MovePageGqlGateway.js +0 -44
  691. package/features/pages/movePage/MovePageGqlGateway.js.map +0 -1
  692. package/features/pages/movePage/useMovePage.js +0 -17
  693. package/features/pages/movePage/useMovePage.js.map +0 -1
  694. package/features/pages/publishPage/IPublishPageGateway.d.ts +0 -4
  695. package/features/pages/publishPage/IPublishPageGateway.js +0 -3
  696. package/features/pages/publishPage/IPublishPageGateway.js.map +0 -1
  697. package/features/pages/publishPage/IPublishPageRepository.d.ts +0 -4
  698. package/features/pages/publishPage/IPublishPageRepository.js +0 -3
  699. package/features/pages/publishPage/IPublishPageRepository.js.map +0 -1
  700. package/features/pages/publishPage/IPublishPageUseCase.d.ts +0 -6
  701. package/features/pages/publishPage/IPublishPageUseCase.js +0 -3
  702. package/features/pages/publishPage/IPublishPageUseCase.js.map +0 -1
  703. package/features/pages/publishPage/PageGatewayDto.d.ts +0 -19
  704. package/features/pages/publishPage/PageGatewayDto.js +0 -3
  705. package/features/pages/publishPage/PageGatewayDto.js.map +0 -1
  706. package/features/pages/publishPage/PublishPage.d.ts +0 -5
  707. package/features/pages/publishPage/PublishPage.js +0 -15
  708. package/features/pages/publishPage/PublishPage.js.map +0 -1
  709. package/features/pages/publishPage/PublishPageGqlGateway.d.ts +0 -22
  710. package/features/pages/publishPage/PublishPageGqlGateway.js +0 -46
  711. package/features/pages/publishPage/PublishPageGqlGateway.js.map +0 -1
  712. package/features/pages/publishPage/usePublishPage.js +0 -19
  713. package/features/pages/publishPage/usePublishPage.js.map +0 -1
  714. package/features/pages/selectPages/ISelectPagesUseCases.d.ts +0 -3
  715. package/features/pages/selectPages/ISelectPagesUseCases.js +0 -3
  716. package/features/pages/selectPages/ISelectPagesUseCases.js.map +0 -1
  717. package/features/pages/selectPages/SelectPages.d.ts +0 -4
  718. package/features/pages/selectPages/SelectPages.js +0 -10
  719. package/features/pages/selectPages/SelectPages.js.map +0 -1
  720. package/features/pages/unpublishPage/IUnpublishPageGateway.d.ts +0 -4
  721. package/features/pages/unpublishPage/IUnpublishPageGateway.js +0 -3
  722. package/features/pages/unpublishPage/IUnpublishPageGateway.js.map +0 -1
  723. package/features/pages/unpublishPage/IUnpublishPageRepository.d.ts +0 -4
  724. package/features/pages/unpublishPage/IUnpublishPageRepository.js +0 -3
  725. package/features/pages/unpublishPage/IUnpublishPageRepository.js.map +0 -1
  726. package/features/pages/unpublishPage/IUnpublishPageUseCase.d.ts +0 -6
  727. package/features/pages/unpublishPage/IUnpublishPageUseCase.js +0 -3
  728. package/features/pages/unpublishPage/IUnpublishPageUseCase.js.map +0 -1
  729. package/features/pages/unpublishPage/PageGatewayDto.d.ts +0 -19
  730. package/features/pages/unpublishPage/PageGatewayDto.js +0 -3
  731. package/features/pages/unpublishPage/PageGatewayDto.js.map +0 -1
  732. package/features/pages/unpublishPage/UnpublishPage.d.ts +0 -5
  733. package/features/pages/unpublishPage/UnpublishPage.js +0 -15
  734. package/features/pages/unpublishPage/UnpublishPage.js.map +0 -1
  735. package/features/pages/unpublishPage/UnpublishPageGqlGateway.d.ts +0 -22
  736. package/features/pages/unpublishPage/UnpublishPageGqlGateway.js +0 -46
  737. package/features/pages/unpublishPage/UnpublishPageGqlGateway.js.map +0 -1
  738. package/features/pages/unpublishPage/useUnpublishPage.js +0 -19
  739. package/features/pages/unpublishPage/useUnpublishPage.js.map +0 -1
  740. package/features/pages/updatePage/IUpdatePageGateway.d.ts +0 -5
  741. package/features/pages/updatePage/IUpdatePageGateway.js +0 -3
  742. package/features/pages/updatePage/IUpdatePageGateway.js.map +0 -1
  743. package/features/pages/updatePage/IUpdatePageRepository.d.ts +0 -4
  744. package/features/pages/updatePage/IUpdatePageRepository.js +0 -3
  745. package/features/pages/updatePage/IUpdatePageRepository.js.map +0 -1
  746. package/features/pages/updatePage/IUpdatePageUseCase.d.ts +0 -11
  747. package/features/pages/updatePage/IUpdatePageUseCase.js +0 -3
  748. package/features/pages/updatePage/IUpdatePageUseCase.js.map +0 -1
  749. package/features/pages/updatePage/UpdatePage.d.ts +0 -5
  750. package/features/pages/updatePage/UpdatePage.js +0 -15
  751. package/features/pages/updatePage/UpdatePage.js.map +0 -1
  752. package/features/pages/updatePage/UpdatePageGqlGateway.d.ts +0 -24
  753. package/features/pages/updatePage/UpdatePageGqlGateway.js +0 -61
  754. package/features/pages/updatePage/UpdatePageGqlGateway.js.map +0 -1
  755. package/features/pages/updatePage/useUpdatePage.js +0 -19
  756. package/features/pages/updatePage/useUpdatePage.js.map +0 -1
  757. package/modules/pages/PagesList/components/Main/CreatePage/CreatePage.d.ts +0 -3
  758. package/modules/pages/PagesList/components/Main/CreatePage/CreatePage.js +0 -103
  759. package/modules/pages/PagesList/components/Main/CreatePage/CreatePage.js.map +0 -1
  760. package/modules/pages/PagesList/components/Main/CreatePage/StaticPageForm.d.ts +0 -2
  761. package/modules/pages/PagesList/components/Main/CreatePage/StaticPageForm.js +0 -40
  762. package/modules/pages/PagesList/components/Main/CreatePage/StaticPageForm.js.map +0 -1
  763. package/modules/pages/configs/list/PageType.d.ts +0 -11
  764. package/modules/pages/configs/list/PageType.js +0 -22
  765. package/modules/pages/configs/list/PageType.js.map +0 -1
  766. /package/{features/pages/loadPages → presentation/pages/hooks}/useFilterPages.d.ts +0 -0
  767. /package/{features/pages/loadPages → presentation/pages/hooks}/useLoadMorePages.d.ts +0 -0
  768. /package/{features/pages/loadPages → presentation/pages/hooks}/useSearchPages.d.ts +0 -0
  769. /package/{features/pages/loadPages → presentation/pages/hooks}/useSortPages.d.ts +0 -0
@@ -1,82 +1,75 @@
1
- import React, { useEffect, useMemo } from "react";
2
- import { Grid, Input, Skeleton } from "@webiny/admin-ui";
3
- import { UnsetOnUnmount, useBind } from "@webiny/form";
4
- import { validation } from "@webiny/validation";
5
- import { createResourcePicker } from "../createResourcePicker.js";
6
- import { adaptInputToBind } from "./adaptInputToBind.js";
1
+ import React from "react";
2
+ import { observer } from "mobx-react-lite";
3
+ import { Skeleton } from "@webiny/admin-ui";
4
+ import { ResourcesPickerButton } from "./ResourcesPicker.js";
7
5
  import { toTitleCaseLabel } from "./toTitleCaseLabel.js";
8
6
  import { useEcommerceApi } from "../../features/index.js";
9
- export const ResourcePage = props => {
10
- const {
11
- api
12
- } = useEcommerceApi(props.apiName);
13
- const ResourcePicker = useMemo(() => {
7
+
8
+ // ---------------------------------------------------------------------------
9
+ // ResourcePicker field renderer
10
+ // ---------------------------------------------------------------------------
11
+
12
+ export function createResourcePickerRenderer(config) {
13
+ return observer(function ResourcePickerField({
14
+ field
15
+ }) {
16
+ const {
17
+ api
18
+ } = useEcommerceApi(config.pluginName);
14
19
  if (!api) {
15
- return () => null;
20
+ return /*#__PURE__*/React.createElement(Skeleton, null);
16
21
  }
17
- const ElementInput = createResourcePicker(props.apiName, api, props.resourceType);
18
- return adaptInputToBind(ElementInput);
19
- }, [api]);
20
- const resourceIdBind = useBind({
21
- name: "metadata.resourceId",
22
- validators: [validation.create("required")]
23
- });
24
- const resourceTypeBind = useBind({
25
- name: "metadata.resourceType",
26
- defaultValue: props.resourceType
27
- });
28
- const titleBind = useBind({
29
- name: "properties.title",
30
- validators: [validation.create("required")]
31
- });
32
- const pathBind = useBind({
33
- name: "properties.path",
34
- validators: [validation.create("required")]
22
+ return /*#__PURE__*/React.createElement("div", {
23
+ className: "border-sm rounded-md border-neutral-muted p-sm"
24
+ }, /*#__PURE__*/React.createElement(ResourcesPickerButton, {
25
+ api: api,
26
+ resourceName: config.resourceType,
27
+ pluginName: config.pluginName,
28
+ value: field.value,
29
+ onChange: value => field.onChange(value)
30
+ }));
35
31
  });
36
- useEffect(() => {
37
- if (!api || !resourceIdBind) {
32
+ }
33
+
34
+ // ---------------------------------------------------------------------------
35
+ // EcommerceResourcePageType — IPageType implementation
36
+ // ---------------------------------------------------------------------------
37
+
38
+ export class EcommerceResourcePageType {
39
+ constructor(config, provider) {
40
+ this.config = config;
41
+ this.provider = provider;
42
+ this.name = config.name;
43
+ this.label = config.label;
44
+ }
45
+ modifyForm(form) {
46
+ form.fields(fields => ({
47
+ resourceId: fields.text().label(toTitleCaseLabel(this.config.resourceType)).required().renderer("resource-picker").afterChange((value, f) => {
48
+ if (!value) {
49
+ return;
50
+ }
51
+ void this.onResourceSelected(String(value), f);
52
+ })
53
+ }));
54
+ form.field("title").setDisabled(true);
55
+ form.field("path").setDisabled(true);
56
+ form.layout(layout => [layout.row("resourceId").before("title")]);
57
+ }
58
+ mapFromForm(data, input) {
59
+ input.metadata = input.metadata ?? {};
60
+ input.metadata.resourceId = data.resourceId;
61
+ }
62
+ async onResourceSelected(resourceId, form) {
63
+ const api = await this.provider.getApi(this.config.apiName);
64
+ if (!api) {
38
65
  return;
39
66
  }
40
- if (resourceIdBind.value) {
41
- api[props.resourceType].findById(resourceIdBind.value).then(resource => {
42
- titleBind.onChange(resource.title);
43
- pathBind.onChange(props.previewPath(resource));
44
- });
45
- }
46
- }, [resourceIdBind.value]);
47
- const onResourceChange = resource => {
48
- resourceIdBind.onChange(resource);
49
- };
50
- return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(UnsetOnUnmount, {
51
- name: "metadata.resourceType"
52
- }, /*#__PURE__*/React.createElement(Input, Object.assign({}, resourceTypeBind, {
53
- className: "hidden"
54
- }))), /*#__PURE__*/React.createElement(Grid.Column, {
55
- span: 12
56
- }, /*#__PURE__*/React.createElement("div", {
57
- className: "border-sm rounded-md border-neutral-muted p-sm"
58
- }, api ? /*#__PURE__*/React.createElement(UnsetOnUnmount, {
59
- name: "metadata.resourceId"
60
- }, /*#__PURE__*/React.createElement(ResourcePicker, Object.assign({}, resourceIdBind, {
61
- label: toTitleCaseLabel(props.resourceType),
62
- onChange: onResourceChange
63
- }))) : /*#__PURE__*/React.createElement(Skeleton, null))), /*#__PURE__*/React.createElement(Grid.Column, {
64
- span: 12
65
- }, /*#__PURE__*/React.createElement(UnsetOnUnmount, {
66
- name: "properties.title"
67
- }, /*#__PURE__*/React.createElement(Input, Object.assign({
68
- label: "Title"
69
- }, titleBind, {
70
- disabled: !resourceIdBind.value
71
- })))), /*#__PURE__*/React.createElement(Grid.Column, {
72
- span: 12
73
- }, /*#__PURE__*/React.createElement(UnsetOnUnmount, {
74
- name: "properties.path"
75
- }, /*#__PURE__*/React.createElement(Input, Object.assign({
76
- label: "Path"
77
- }, pathBind, {
78
- disabled: !resourceIdBind.value
79
- })))));
80
- };
67
+ const resource = await api[this.config.resourceType].findById(resourceId);
68
+ form.field("title").setValue(resource.title);
69
+ form.field("title").setDisabled(false);
70
+ form.field("path").setValue(this.config.previewPath(resource));
71
+ form.field("path").setDisabled(false);
72
+ }
73
+ }
81
74
 
82
75
  //# sourceMappingURL=ResourcePage.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","useEffect","useMemo","Grid","Input","Skeleton","UnsetOnUnmount","useBind","validation","createResourcePicker","adaptInputToBind","toTitleCaseLabel","useEcommerceApi","ResourcePage","props","api","apiName","ResourcePicker","ElementInput","resourceType","resourceIdBind","name","validators","create","resourceTypeBind","defaultValue","titleBind","pathBind","value","findById","then","resource","onChange","title","previewPath","onResourceChange","createElement","Fragment","Object","assign","className","Column","span","label","disabled"],"sources":["ResourcePage.tsx"],"sourcesContent":["import React, { useEffect, useMemo } from \"react\";\nimport { Grid, Input, Skeleton } from \"@webiny/admin-ui\";\nimport { UnsetOnUnmount, useBind } from \"@webiny/form\";\nimport { validation } from \"@webiny/validation\";\nimport { createResourcePicker } from \"~/ecommerce/createResourcePicker.js\";\nimport { adaptInputToBind } from \"./adaptInputToBind.js\";\nimport type { Resource } from \"../types.js\";\nimport { toTitleCaseLabel } from \"~/ecommerce/components/toTitleCaseLabel.js\";\nimport { useEcommerceApi } from \"~/features/index.js\";\n\nexport interface ResourcePageProps {\n apiName: string;\n name: string;\n label: string;\n resourceType: string;\n previewPath: (resource: Resource) => string;\n}\n\nexport const ResourcePage = (props: ResourcePageProps) => {\n const { api } = useEcommerceApi(props.apiName);\n\n const ResourcePicker = useMemo(() => {\n if (!api) {\n return () => null;\n }\n\n const ElementInput = createResourcePicker(props.apiName, api, props.resourceType);\n return adaptInputToBind(ElementInput);\n }, [api]);\n\n const resourceIdBind = useBind({\n name: \"metadata.resourceId\",\n validators: [validation.create(\"required\")]\n });\n\n const resourceTypeBind = useBind({\n name: \"metadata.resourceType\",\n defaultValue: props.resourceType\n });\n\n const titleBind = useBind({\n name: \"properties.title\",\n validators: [validation.create(\"required\")]\n });\n\n const pathBind = useBind({\n name: \"properties.path\",\n validators: [validation.create(\"required\")]\n });\n\n useEffect(() => {\n if (!api || !resourceIdBind) {\n return;\n }\n\n if (resourceIdBind.value) {\n api[props.resourceType].findById(resourceIdBind.value).then(resource => {\n titleBind.onChange(resource.title);\n pathBind.onChange(props.previewPath(resource));\n });\n }\n }, [resourceIdBind.value]);\n\n const onResourceChange = (resource: Resource) => {\n resourceIdBind.onChange(resource);\n };\n\n return (\n <>\n <UnsetOnUnmount name={\"metadata.resourceType\"}>\n <Input {...resourceTypeBind} className={\"hidden\"} />\n </UnsetOnUnmount>\n <Grid.Column span={12}>\n <div className={\"border-sm rounded-md border-neutral-muted p-sm\"}>\n {api ? (\n <UnsetOnUnmount name={\"metadata.resourceId\"}>\n <ResourcePicker\n {...resourceIdBind}\n label={toTitleCaseLabel(props.resourceType)}\n onChange={onResourceChange}\n />\n </UnsetOnUnmount>\n ) : (\n <Skeleton />\n )}\n </div>\n </Grid.Column>\n <Grid.Column span={12}>\n <UnsetOnUnmount name={\"properties.title\"}>\n <Input label={\"Title\"} {...titleBind} disabled={!resourceIdBind.value} />\n </UnsetOnUnmount>\n </Grid.Column>\n <Grid.Column span={12}>\n <UnsetOnUnmount name={\"properties.path\"}>\n <Input label={\"Path\"} {...pathBind} disabled={!resourceIdBind.value} />\n </UnsetOnUnmount>\n </Grid.Column>\n </>\n );\n};\n"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","observer","Skeleton","ResourcesPickerButton","toTitleCaseLabel","useEcommerceApi","createResourcePickerRenderer","config","ResourcePickerField","field","api","pluginName","createElement","className","resourceName","resourceType","value","onChange","EcommerceResourcePageType","constructor","provider","name","label","modifyForm","form","fields","resourceId","text","required","renderer","afterChange","f","onResourceSelected","String","setDisabled","layout","row","before","mapFromForm","data","input","metadata","getApi","apiName","resource","findById","setValue","title","previewPath"],"sources":["ResourcePage.tsx"],"sourcesContent":["import React from \"react\";\nimport { observer } from \"mobx-react-lite\";\nimport { Skeleton } from \"@webiny/admin-ui\";\nimport type { IFormModel, IFieldVM } from \"@webiny/app-admin\";\nimport type { IPageType } from \"~/presentation/pages/CreatePage/abstractions.js\";\nimport type { CreatePageParams } from \"~/features/pages/createPage/abstractions.js\";\nimport type { IEcommerceApiProvider } from \"~/features/index.js\";\nimport type { Resource } from \"../types.js\";\nimport { ResourcesPickerButton } from \"./ResourcesPicker.js\";\nimport { toTitleCaseLabel } from \"./toTitleCaseLabel.js\";\nimport { useEcommerceApi } from \"~/features/index.js\";\n\n// ---------------------------------------------------------------------------\n// ResourcePicker field renderer\n// ---------------------------------------------------------------------------\n\ninterface ResourcePickerRendererConfig {\n pluginName: string;\n resourceType: string;\n}\n\nexport function createResourcePickerRenderer(config: ResourcePickerRendererConfig) {\n return observer(function ResourcePickerField({ field }: { field: IFieldVM }) {\n const { api } = useEcommerceApi(config.pluginName);\n\n if (!api) {\n return <Skeleton />;\n }\n\n return (\n <div className={\"border-sm rounded-md border-neutral-muted p-sm\"}>\n <ResourcesPickerButton\n api={api}\n resourceName={config.resourceType}\n pluginName={config.pluginName}\n value={field.value as string}\n onChange={value => field.onChange(value)}\n />\n </div>\n );\n });\n}\n\n// ---------------------------------------------------------------------------\n// EcommerceResourcePageType — IPageType implementation\n// ---------------------------------------------------------------------------\n\nexport interface EcommerceResourcePageTypeConfig {\n name: string;\n label: string;\n resourceType: string;\n previewPath: (resource: Resource) => string;\n apiName: string;\n}\n\nexport class EcommerceResourcePageType implements IPageType {\n readonly name: string;\n readonly label: string;\n\n constructor(\n private config: EcommerceResourcePageTypeConfig,\n private provider: IEcommerceApiProvider\n ) {\n this.name = config.name;\n this.label = config.label;\n }\n\n modifyForm(form: IFormModel): void {\n form.fields(fields => ({\n resourceId: fields\n .text()\n .label(toTitleCaseLabel(this.config.resourceType))\n .required()\n .renderer(\"resource-picker\")\n .afterChange((value, f) => {\n if (!value) {\n return;\n }\n void this.onResourceSelected(String(value), f);\n })\n }));\n\n form.field(\"title\").setDisabled(true);\n form.field(\"path\").setDisabled(true);\n\n form.layout(layout => [layout.row(\"resourceId\").before(\"title\")]);\n }\n\n mapFromForm(data: Record<string, unknown>, input: CreatePageParams): void {\n input.metadata = input.metadata ?? {};\n input.metadata.resourceId = data.resourceId;\n }\n\n private async onResourceSelected(resourceId: string, form: IFormModel): Promise<void> {\n const api = await this.provider.getApi(this.config.apiName);\n if (!api) {\n return;\n }\n\n const resource = await api[this.config.resourceType].findById(resourceId);\n form.field(\"title\").setValue(resource.title);\n form.field(\"title\").setDisabled(false);\n form.field(\"path\").setValue(this.config.previewPath(resource));\n form.field(\"path\").setDisabled(false);\n }\n}\n"],"mappings":"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","ignoreList":[]}
@@ -1,3 +1,6 @@
1
+ export { PageType } from "../../presentation/pages/CreatePage/abstractions.js";
2
+ export { PageTypeProvider } from "../../presentation/pages/CreatePage/abstractions.js";
3
+ export { HasPermission } from "../../presentation/security/HasPermission.js";
1
4
  export { Routes } from "../../routes.js";
2
5
  export { EcommerceIntegration } from "../../ecommerce/index.js";
3
6
  export { pagePathFromTitle } from "../../index.js";
@@ -1,3 +1,6 @@
1
+ export { PageType } from "../../presentation/pages/CreatePage/abstractions.js";
2
+ export { PageTypeProvider } from "../../presentation/pages/CreatePage/abstractions.js";
3
+ export { HasPermission } from "../../presentation/security/HasPermission.js";
1
4
  export { Routes } from "../../routes.js";
2
5
  export { EcommerceIntegration } from "../../ecommerce/index.js";
3
6
  export { pagePathFromTitle } from "../../index.js";
@@ -1 +1 @@
1
- {"version":3,"names":["Routes","EcommerceIntegration","pagePathFromTitle","usePermissions"],"sources":["website-builder.ts"],"sourcesContent":["export { Routes } from \"~/routes.js\";\nexport { EcommerceIntegration } from \"~/ecommerce/index.js\";\nexport { pagePathFromTitle } from \"~/index.js\";\nexport { usePermissions } from \"~/presentation/security/usePermissions.js\";\n"],"mappings":"AAAA,SAASA,MAAM;AACf,SAASC,oBAAoB;AAC7B,SAASC,iBAAiB;AAC1B,SAASC,cAAc","ignoreList":[]}
1
+ {"version":3,"names":["PageType","PageTypeProvider","HasPermission","Routes","EcommerceIntegration","pagePathFromTitle","usePermissions"],"sources":["website-builder.ts"],"sourcesContent":["export { PageType } from \"~/presentation/pages/CreatePage/abstractions.js\";\nexport { PageTypeProvider } from \"~/presentation/pages/CreatePage/abstractions.js\";\nexport { HasPermission } from \"~/presentation/security/HasPermission.js\";\nexport { Routes } from \"~/routes.js\";\nexport { EcommerceIntegration } from \"~/ecommerce/index.js\";\nexport { pagePathFromTitle } from \"~/index.js\";\nexport { usePermissions } from \"~/presentation/security/usePermissions.js\";\n"],"mappings":"AAAA,SAASA,QAAQ;AACjB,SAASC,gBAAgB;AACzB,SAASC,aAAa;AACtB,SAASC,MAAM;AACf,SAASC,oBAAoB;AAC7B,SAASC,iBAAiB;AAC1B,SAASC,cAAc","ignoreList":[]}
@@ -1,12 +1,13 @@
1
1
  import type { IEcommerceApi } from "../../../ecommerce/index.js";
2
2
  import type { EcommerceApiManifest } from "./EcommerceApiManifest.js";
3
3
  import type { IEcommerceSettings } from "../../../features/ecommerce/settings/types.js";
4
- interface IEcommerceApiProvider {
4
+ export interface IEcommerceApiProvider {
5
5
  addApiManifest(manifest: EcommerceApiManifest): void;
6
6
  getApiManifest(name: string): EcommerceApiManifest | undefined;
7
7
  getApiManifests(): EcommerceApiManifest[];
8
8
  getApi(name: string): Promise<IEcommerceApi | undefined>;
9
9
  }
10
+ export declare const EcommerceApiProviderAbstraction: import("@webiny/di").Abstraction<IEcommerceApiProvider>;
10
11
  export interface IEcommerceSettingsLoader {
11
12
  (name: string): Promise<IEcommerceSettings | undefined>;
12
13
  }
@@ -19,4 +20,3 @@ export declare class EcommerceApiProvider implements IEcommerceApiProvider {
19
20
  getApiManifest(name: string): EcommerceApiManifest | undefined;
20
21
  addApiManifest(manifest: EcommerceApiManifest): void;
21
22
  }
22
- export {};
@@ -1,3 +1,5 @@
1
+ import { createAbstraction } from "@webiny/feature/admin";
2
+ export const EcommerceApiProviderAbstraction = createAbstraction("EcommerceApiProvider");
1
3
  export class EcommerceApiProvider {
2
4
  constructor(settingsLoader) {
3
5
  this.settingsLoader = settingsLoader;
@@ -1 +1 @@
1
- {"version":3,"names":["EcommerceApiProvider","constructor","settingsLoader","apiManifests","Map","getApi","name","apiManifest","get","undefined","settings","Error","getApiManifests","Array","from","values","getApiManifest","addApiManifest","manifest","set","getName"],"sources":["EcommerceApiProvider.ts"],"sourcesContent":["import type { IEcommerceApi } from \"~/ecommerce/index.js\";\nimport type { EcommerceApiManifest } from \"./EcommerceApiManifest.js\";\nimport type { IEcommerceSettings } from \"~/features/ecommerce/settings/types.js\";\n\ninterface IEcommerceApiProvider {\n addApiManifest(manifest: EcommerceApiManifest): void;\n getApiManifest(name: string): EcommerceApiManifest | undefined;\n getApiManifests(): EcommerceApiManifest[];\n getApi(name: string): Promise<IEcommerceApi | undefined>;\n}\n\nexport interface IEcommerceSettingsLoader {\n (name: string): Promise<IEcommerceSettings | undefined>;\n}\n\nexport class EcommerceApiProvider implements IEcommerceApiProvider {\n private apiManifests: Map<string, EcommerceApiManifest>;\n private readonly settingsLoader: IEcommerceSettingsLoader;\n\n constructor(settingsLoader: IEcommerceSettingsLoader) {\n this.settingsLoader = settingsLoader;\n this.apiManifests = new Map<string, EcommerceApiManifest>();\n }\n\n async getApi(name: string): Promise<IEcommerceApi | undefined> {\n const apiManifest = this.apiManifests.get(name);\n if (!apiManifest) {\n return undefined;\n }\n\n const settings = await this.settingsLoader(name);\n if (!settings) {\n throw new Error(`${name} is not configured!`);\n }\n\n return await apiManifest.getApi(settings);\n }\n\n getApiManifests() {\n return Array.from(this.apiManifests.values());\n }\n\n public getApiManifest(name: string): EcommerceApiManifest | undefined {\n const apiManifest = this.apiManifests.get(name);\n if (!apiManifest) {\n return undefined;\n }\n\n return apiManifest;\n }\n\n public addApiManifest(manifest: EcommerceApiManifest): void {\n this.apiManifests.set(manifest.getName(), manifest);\n }\n}\n"],"mappings":"AAeA,OAAO,MAAMA,oBAAoB,CAAkC;EAI/DC,WAAWA,CAACC,cAAwC,EAAE;IAClD,IAAI,CAACA,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,YAAY,GAAG,IAAIC,GAAG,CAA+B,CAAC;EAC/D;EAEA,MAAMC,MAAMA,CAACC,IAAY,EAAsC;IAC3D,MAAMC,WAAW,GAAG,IAAI,CAACJ,YAAY,CAACK,GAAG,CAACF,IAAI,CAAC;IAC/C,IAAI,CAACC,WAAW,EAAE;MACd,OAAOE,SAAS;IACpB;IAEA,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACR,cAAc,CAACI,IAAI,CAAC;IAChD,IAAI,CAACI,QAAQ,EAAE;MACX,MAAM,IAAIC,KAAK,CAAC,GAAGL,IAAI,qBAAqB,CAAC;IACjD;IAEA,OAAO,MAAMC,WAAW,CAACF,MAAM,CAACK,QAAQ,CAAC;EAC7C;EAEAE,eAAeA,CAAA,EAAG;IACd,OAAOC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACX,YAAY,CAACY,MAAM,CAAC,CAAC,CAAC;EACjD;EAEOC,cAAcA,CAACV,IAAY,EAAoC;IAClE,MAAMC,WAAW,GAAG,IAAI,CAACJ,YAAY,CAACK,GAAG,CAACF,IAAI,CAAC;IAC/C,IAAI,CAACC,WAAW,EAAE;MACd,OAAOE,SAAS;IACpB;IAEA,OAAOF,WAAW;EACtB;EAEOU,cAAcA,CAACC,QAA8B,EAAQ;IACxD,IAAI,CAACf,YAAY,CAACgB,GAAG,CAACD,QAAQ,CAACE,OAAO,CAAC,CAAC,EAAEF,QAAQ,CAAC;EACvD;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["createAbstraction","EcommerceApiProviderAbstraction","EcommerceApiProvider","constructor","settingsLoader","apiManifests","Map","getApi","name","apiManifest","get","undefined","settings","Error","getApiManifests","Array","from","values","getApiManifest","addApiManifest","manifest","set","getName"],"sources":["EcommerceApiProvider.ts"],"sourcesContent":["import { createAbstraction } from \"@webiny/feature/admin\";\nimport type { IEcommerceApi } from \"~/ecommerce/index.js\";\nimport type { EcommerceApiManifest } from \"./EcommerceApiManifest.js\";\nimport type { IEcommerceSettings } from \"~/features/ecommerce/settings/types.js\";\n\nexport interface IEcommerceApiProvider {\n addApiManifest(manifest: EcommerceApiManifest): void;\n getApiManifest(name: string): EcommerceApiManifest | undefined;\n getApiManifests(): EcommerceApiManifest[];\n getApi(name: string): Promise<IEcommerceApi | undefined>;\n}\n\nexport const EcommerceApiProviderAbstraction =\n createAbstraction<IEcommerceApiProvider>(\"EcommerceApiProvider\");\n\nexport interface IEcommerceSettingsLoader {\n (name: string): Promise<IEcommerceSettings | undefined>;\n}\n\nexport class EcommerceApiProvider implements IEcommerceApiProvider {\n private apiManifests: Map<string, EcommerceApiManifest>;\n private readonly settingsLoader: IEcommerceSettingsLoader;\n\n constructor(settingsLoader: IEcommerceSettingsLoader) {\n this.settingsLoader = settingsLoader;\n this.apiManifests = new Map<string, EcommerceApiManifest>();\n }\n\n async getApi(name: string): Promise<IEcommerceApi | undefined> {\n const apiManifest = this.apiManifests.get(name);\n if (!apiManifest) {\n return undefined;\n }\n\n const settings = await this.settingsLoader(name);\n if (!settings) {\n throw new Error(`${name} is not configured!`);\n }\n\n return await apiManifest.getApi(settings);\n }\n\n getApiManifests() {\n return Array.from(this.apiManifests.values());\n }\n\n public getApiManifest(name: string): EcommerceApiManifest | undefined {\n const apiManifest = this.apiManifests.get(name);\n if (!apiManifest) {\n return undefined;\n }\n\n return apiManifest;\n }\n\n public addApiManifest(manifest: EcommerceApiManifest): void {\n this.apiManifests.set(manifest.getName(), manifest);\n }\n}\n"],"mappings":"AAAA,SAASA,iBAAiB,QAAQ,uBAAuB;AAYzD,OAAO,MAAMC,+BAA+B,GACxCD,iBAAiB,CAAwB,sBAAsB,CAAC;AAMpE,OAAO,MAAME,oBAAoB,CAAkC;EAI/DC,WAAWA,CAACC,cAAwC,EAAE;IAClD,IAAI,CAACA,cAAc,GAAGA,cAAc;IACpC,IAAI,CAACC,YAAY,GAAG,IAAIC,GAAG,CAA+B,CAAC;EAC/D;EAEA,MAAMC,MAAMA,CAACC,IAAY,EAAsC;IAC3D,MAAMC,WAAW,GAAG,IAAI,CAACJ,YAAY,CAACK,GAAG,CAACF,IAAI,CAAC;IAC/C,IAAI,CAACC,WAAW,EAAE;MACd,OAAOE,SAAS;IACpB;IAEA,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACR,cAAc,CAACI,IAAI,CAAC;IAChD,IAAI,CAACI,QAAQ,EAAE;MACX,MAAM,IAAIC,KAAK,CAAC,GAAGL,IAAI,qBAAqB,CAAC;IACjD;IAEA,OAAO,MAAMC,WAAW,CAACF,MAAM,CAACK,QAAQ,CAAC;EAC7C;EAEAE,eAAeA,CAAA,EAAG;IACd,OAAOC,KAAK,CAACC,IAAI,CAAC,IAAI,CAACX,YAAY,CAACY,MAAM,CAAC,CAAC,CAAC;EACjD;EAEOC,cAAcA,CAACV,IAAY,EAAoC;IAClE,MAAMC,WAAW,GAAG,IAAI,CAACJ,YAAY,CAACK,GAAG,CAACF,IAAI,CAAC;IAC/C,IAAI,CAACC,WAAW,EAAE;MACd,OAAOE,SAAS;IACpB;IAEA,OAAOF,WAAW;EACtB;EAEOU,cAAcA,CAACC,QAA8B,EAAQ;IACxD,IAAI,CAACf,YAAY,CAACgB,GAAG,CAACD,QAAQ,CAACE,OAAO,CAAC,CAAC,EAAEF,QAAQ,CAAC;EACvD;AACJ","ignoreList":[]}
@@ -1,2 +1,4 @@
1
1
  export * from "./useEcommerceApiProvider.js";
2
2
  export * from "./useEcommerceApi.js";
3
+ export { EcommerceApiProviderAbstraction } from "./EcommerceApiProvider.js";
4
+ export type { IEcommerceApiProvider } from "./EcommerceApiProvider.js";
@@ -1,4 +1,5 @@
1
1
  export * from "./useEcommerceApiProvider.js";
2
2
  export * from "./useEcommerceApi.js";
3
+ export { EcommerceApiProviderAbstraction } from "./EcommerceApiProvider.js";
3
4
 
4
5
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":[],"sources":["index.ts"],"sourcesContent":["export * from \"./useEcommerceApiProvider.js\";\nexport * from \"./useEcommerceApi.js\";\n"],"mappings":"AAAA;AACA","ignoreList":[]}
1
+ {"version":3,"names":["EcommerceApiProviderAbstraction"],"sources":["index.ts"],"sourcesContent":["export * from \"./useEcommerceApiProvider.js\";\nexport * from \"./useEcommerceApi.js\";\nexport { EcommerceApiProviderAbstraction } from \"./EcommerceApiProvider.js\";\nexport type { IEcommerceApiProvider } from \"./EcommerceApiProvider.js\";\n"],"mappings":"AAAA;AACA;AACA,SAASA,+BAA+B","ignoreList":[]}
@@ -4,6 +4,6 @@ export * from "./ecommerce/settings/getSettings/useGetEcommerceSettings.js";
4
4
  export * from "./ecommerce/settings/updateSettings/useUpdateEcommerceSettings.js";
5
5
  export * from "./ecommerce/apis/useEcommerceApi.js";
6
6
  export * from "./ecommerce/apis/useEcommerceApiProvider.js";
7
- export * from "./pageTypes/usePageTypes.js";
8
- export * from "./pageTypes/useGetPageType.js";
9
7
  export { EcommerceApiManifest } from "./ecommerce/apis/EcommerceApiManifest.js";
8
+ export { EcommerceApiProviderAbstraction } from "./ecommerce/apis/EcommerceApiProvider.js";
9
+ export type { IEcommerceApiProvider } from "./ecommerce/apis/EcommerceApiProvider.js";
package/features/index.js CHANGED
@@ -4,8 +4,7 @@ export * from "./ecommerce/settings/getSettings/useGetEcommerceSettings.js";
4
4
  export * from "./ecommerce/settings/updateSettings/useUpdateEcommerceSettings.js";
5
5
  export * from "./ecommerce/apis/useEcommerceApi.js";
6
6
  export * from "./ecommerce/apis/useEcommerceApiProvider.js";
7
- export * from "./pageTypes/usePageTypes.js";
8
- export * from "./pageTypes/useGetPageType.js";
9
7
  export { EcommerceApiManifest } from "./ecommerce/apis/EcommerceApiManifest.js";
8
+ export { EcommerceApiProviderAbstraction } from "./ecommerce/apis/EcommerceApiProvider.js";
10
9
 
11
10
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["EcommerceApiManifest"],"sources":["index.ts"],"sourcesContent":["export * from \"./settings/getSettings/useGetWebsiteBuilderSettings.js\";\nexport * from \"./settings/updateSettings/useUpdateWebsiteBuilderSettings.js\";\nexport * from \"./ecommerce/settings/getSettings/useGetEcommerceSettings.js\";\nexport * from \"./ecommerce/settings/updateSettings/useUpdateEcommerceSettings.js\";\nexport * from \"./ecommerce/apis/useEcommerceApi.js\";\nexport * from \"./ecommerce/apis/useEcommerceApiProvider.js\";\nexport * from \"./pageTypes/usePageTypes.js\";\nexport * from \"./pageTypes/useGetPageType.js\";\nexport { EcommerceApiManifest } from \"./ecommerce/apis/EcommerceApiManifest.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,oBAAoB","ignoreList":[]}
1
+ {"version":3,"names":["EcommerceApiManifest","EcommerceApiProviderAbstraction"],"sources":["index.ts"],"sourcesContent":["export * from \"./settings/getSettings/useGetWebsiteBuilderSettings.js\";\nexport * from \"./settings/updateSettings/useUpdateWebsiteBuilderSettings.js\";\nexport * from \"./ecommerce/settings/getSettings/useGetEcommerceSettings.js\";\nexport * from \"./ecommerce/settings/updateSettings/useUpdateEcommerceSettings.js\";\nexport * from \"./ecommerce/apis/useEcommerceApi.js\";\nexport * from \"./ecommerce/apis/useEcommerceApiProvider.js\";\nexport { EcommerceApiManifest } from \"./ecommerce/apis/EcommerceApiManifest.js\";\nexport { EcommerceApiProviderAbstraction } from \"./ecommerce/apis/EcommerceApiProvider.js\";\nexport type { IEcommerceApiProvider } from \"./ecommerce/apis/EcommerceApiProvider.js\";\n"],"mappings":"AAAA;AACA;AACA;AACA;AACA;AACA;AACA,SAASA,oBAAoB;AAC7B,SAASC,+BAA+B","ignoreList":[]}
@@ -1,6 +1,10 @@
1
1
  import { describe, it, expect, vi, beforeEach } from "vitest";
2
- import { CreatePage } from "./CreatePage.js";
2
+ import { Container } from "@webiny/di";
3
3
  import { pageListCache } from "../../../domain/Page/index.js";
4
+ import { CreatePageUseCase as UseCaseAbstraction, CreatePageGateway as GatewayAbstraction } from "./abstractions.js";
5
+ import { CreatePageUseCase } from "./CreatePageUseCase.js";
6
+ import { CreatePageRepository } from "./CreatePageRepository.js";
7
+ import { PageListCache } from "../shared/abstractions.js";
4
8
  describe("CreatePage", () => {
5
9
  const gateway = {
6
10
  execute: vi.fn().mockResolvedValue({
@@ -28,7 +32,12 @@ describe("CreatePage", () => {
28
32
  pageCache.clear();
29
33
  });
30
34
  it("should be able to create a new page", async () => {
31
- const createPage = CreatePage.getInstance(gateway);
35
+ const container = new Container();
36
+ container.registerInstance(PageListCache, pageCache);
37
+ container.registerInstance(GatewayAbstraction, gateway);
38
+ container.register(CreatePageRepository).inSingletonScope();
39
+ container.register(CreatePageUseCase);
40
+ const createPage = container.resolve(UseCaseAbstraction);
32
41
  expect(pageCache.hasItems()).toBeFalse();
33
42
  await createPage.execute({
34
43
  location: {
@@ -1 +1 @@
1
- {"version":3,"names":["describe","it","expect","vi","beforeEach","CreatePage","pageListCache","gateway","execute","fn","mockResolvedValue","id","entryId","location","folderId","properties","title","metadata","data","elements","element1","bindings","pageCache","clear","createPage","getInstance","hasItems","toBeFalse","toHaveBeenCalledTimes","toBeTrue","item","getItem","page","toBeDefined","toEqual"],"sources":["CreatePage.test.ts"],"sourcesContent":["import { describe, it, expect, vi, beforeEach } from \"vitest\";\nimport { CreatePage } from \"~/features/pages/createPage/CreatePage.js\";\nimport { pageListCache } from \"~/domain/Page/index.js\";\n\ndescribe(\"CreatePage\", () => {\n const gateway = {\n execute: vi.fn().mockResolvedValue({\n id: \"page-1#0001\",\n entryId: \"page-1\",\n location: {\n folderId: \"folder-1\"\n },\n properties: {\n title: \"Page 1\"\n },\n metadata: {\n data: \"data-1\"\n },\n elements: {\n element1: \"element\"\n },\n bindings: {\n data: \"any-data\"\n }\n })\n };\n const pageCache = pageListCache;\n\n beforeEach(() => {\n pageCache.clear();\n });\n\n it(\"should be able to create a new page\", async () => {\n const createPage = CreatePage.getInstance(gateway);\n\n expect(pageCache.hasItems()).toBeFalse();\n\n await createPage.execute({\n location: {\n folderId: \"folder-1\"\n }\n });\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n expect(pageCache.hasItems()).toBeTrue();\n\n const item = pageCache.getItem(page => page.entryId === \"page-1\");\n\n expect(item).toBeDefined();\n expect(item?.id).toEqual(\"page-1#0001\");\n expect(item?.entryId).toEqual(\"page-1\");\n expect(item?.location).toEqual({\n folderId: \"folder-1\"\n });\n expect(item?.properties).toEqual({\n title: \"Page 1\"\n });\n expect(item?.metadata).toEqual({\n data: \"data-1\"\n });\n expect(item?.elements).toEqual({\n element1: \"element\"\n });\n expect(item?.bindings).toEqual({\n data: \"any-data\"\n });\n });\n});\n"],"mappings":"AAAA,SAASA,QAAQ,EAAEC,EAAE,EAAEC,MAAM,EAAEC,EAAE,EAAEC,UAAU,QAAQ,QAAQ;AAC7D,SAASC,UAAU;AACnB,SAASC,aAAa;AAEtBN,QAAQ,CAAC,YAAY,EAAE,MAAM;EACzB,MAAMO,OAAO,GAAG;IACZC,OAAO,EAAEL,EAAE,CAACM,EAAE,CAAC,CAAC,CAACC,iBAAiB,CAAC;MAC/BC,EAAE,EAAE,aAAa;MACjBC,OAAO,EAAE,QAAQ;MACjBC,QAAQ,EAAE;QACNC,QAAQ,EAAE;MACd,CAAC;MACDC,UAAU,EAAE;QACRC,KAAK,EAAE;MACX,CAAC;MACDC,QAAQ,EAAE;QACNC,IAAI,EAAE;MACV,CAAC;MACDC,QAAQ,EAAE;QACNC,QAAQ,EAAE;MACd,CAAC;MACDC,QAAQ,EAAE;QACNH,IAAI,EAAE;MACV;IACJ,CAAC;EACL,CAAC;EACD,MAAMI,SAAS,GAAGhB,aAAa;EAE/BF,UAAU,CAAC,MAAM;IACbkB,SAAS,CAACC,KAAK,CAAC,CAAC;EACrB,CAAC,CAAC;EAEFtB,EAAE,CAAC,qCAAqC,EAAE,YAAY;IAClD,MAAMuB,UAAU,GAAGnB,UAAU,CAACoB,WAAW,CAAClB,OAAO,CAAC;IAElDL,MAAM,CAACoB,SAAS,CAACI,QAAQ,CAAC,CAAC,CAAC,CAACC,SAAS,CAAC,CAAC;IAExC,MAAMH,UAAU,CAAChB,OAAO,CAAC;MACrBK,QAAQ,EAAE;QACNC,QAAQ,EAAE;MACd;IACJ,CAAC,CAAC;IAEFZ,MAAM,CAACK,OAAO,CAACC,OAAO,CAAC,CAACoB,qBAAqB,CAAC,CAAC,CAAC;IAChD1B,MAAM,CAACoB,SAAS,CAACI,QAAQ,CAAC,CAAC,CAAC,CAACG,QAAQ,CAAC,CAAC;IAEvC,MAAMC,IAAI,GAAGR,SAAS,CAACS,OAAO,CAACC,IAAI,IAAIA,IAAI,CAACpB,OAAO,KAAK,QAAQ,CAAC;IAEjEV,MAAM,CAAC4B,IAAI,CAAC,CAACG,WAAW,CAAC,CAAC;IAC1B/B,MAAM,CAAC4B,IAAI,EAAEnB,EAAE,CAAC,CAACuB,OAAO,CAAC,aAAa,CAAC;IACvChC,MAAM,CAAC4B,IAAI,EAAElB,OAAO,CAAC,CAACsB,OAAO,CAAC,QAAQ,CAAC;IACvChC,MAAM,CAAC4B,IAAI,EAAEjB,QAAQ,CAAC,CAACqB,OAAO,CAAC;MAC3BpB,QAAQ,EAAE;IACd,CAAC,CAAC;IACFZ,MAAM,CAAC4B,IAAI,EAAEf,UAAU,CAAC,CAACmB,OAAO,CAAC;MAC7BlB,KAAK,EAAE;IACX,CAAC,CAAC;IACFd,MAAM,CAAC4B,IAAI,EAAEb,QAAQ,CAAC,CAACiB,OAAO,CAAC;MAC3BhB,IAAI,EAAE;IACV,CAAC,CAAC;IACFhB,MAAM,CAAC4B,IAAI,EAAEX,QAAQ,CAAC,CAACe,OAAO,CAAC;MAC3Bd,QAAQ,EAAE;IACd,CAAC,CAAC;IACFlB,MAAM,CAAC4B,IAAI,EAAET,QAAQ,CAAC,CAACa,OAAO,CAAC;MAC3BhB,IAAI,EAAE;IACV,CAAC,CAAC;EACN,CAAC,CAAC;AACN,CAAC,CAAC","ignoreList":[]}
1
+ {"version":3,"names":["describe","it","expect","vi","beforeEach","Container","pageListCache","CreatePageUseCase","UseCaseAbstraction","CreatePageGateway","GatewayAbstraction","CreatePageRepository","PageListCache","gateway","execute","fn","mockResolvedValue","id","entryId","location","folderId","properties","title","metadata","data","elements","element1","bindings","pageCache","clear","container","registerInstance","register","inSingletonScope","createPage","resolve","hasItems","toBeFalse","toHaveBeenCalledTimes","toBeTrue","item","getItem","page","toBeDefined","toEqual"],"sources":["CreatePage.test.ts"],"sourcesContent":["import { describe, it, expect, vi, beforeEach } from \"vitest\";\nimport { Container } from \"@webiny/di\";\nimport { pageListCache } from \"~/domain/Page/index.js\";\nimport {\n CreatePageUseCase as UseCaseAbstraction,\n CreatePageGateway as GatewayAbstraction\n} from \"./abstractions.js\";\nimport { CreatePageUseCase } from \"./CreatePageUseCase.js\";\nimport { CreatePageRepository } from \"./CreatePageRepository.js\";\nimport { PageListCache } from \"~/features/pages/shared/abstractions.js\";\n\ndescribe(\"CreatePage\", () => {\n const gateway = {\n execute: vi.fn().mockResolvedValue({\n id: \"page-1#0001\",\n entryId: \"page-1\",\n location: {\n folderId: \"folder-1\"\n },\n properties: {\n title: \"Page 1\"\n },\n metadata: {\n data: \"data-1\"\n },\n elements: {\n element1: \"element\"\n },\n bindings: {\n data: \"any-data\"\n }\n })\n };\n const pageCache = pageListCache;\n\n beforeEach(() => {\n pageCache.clear();\n });\n\n it(\"should be able to create a new page\", async () => {\n const container = new Container();\n container.registerInstance(PageListCache, pageCache);\n container.registerInstance(GatewayAbstraction, gateway);\n container.register(CreatePageRepository).inSingletonScope();\n container.register(CreatePageUseCase);\n\n const createPage = container.resolve(UseCaseAbstraction);\n\n expect(pageCache.hasItems()).toBeFalse();\n\n await createPage.execute({\n location: {\n folderId: \"folder-1\"\n }\n });\n\n expect(gateway.execute).toHaveBeenCalledTimes(1);\n expect(pageCache.hasItems()).toBeTrue();\n\n const item = pageCache.getItem(page => page.entryId === \"page-1\");\n\n expect(item).toBeDefined();\n expect(item?.id).toEqual(\"page-1#0001\");\n expect(item?.entryId).toEqual(\"page-1\");\n expect(item?.location).toEqual({\n folderId: \"folder-1\"\n });\n expect(item?.properties).toEqual({\n title: \"Page 1\"\n });\n expect(item?.metadata).toEqual({\n data: \"data-1\"\n });\n expect(item?.elements).toEqual({\n element1: \"element\"\n });\n expect(item?.bindings).toEqual({\n data: \"any-data\"\n });\n });\n});\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ import { CreatePageGateway as GatewayAbstraction } from "./abstractions.js";
2
+ import type { PageDto } from "./PageDto.js";
3
+ import type { PageGqlDto } from "./PageGqlDto.js";
4
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient";
5
+ declare class CreatePageGatewayImpl implements GatewayAbstraction.Interface {
6
+ private client;
7
+ constructor(client: MainGraphQLClient.Interface);
8
+ execute(page: PageDto): Promise<PageGqlDto>;
9
+ }
10
+ export declare const CreatePageGateway: typeof CreatePageGatewayImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").ICreatePageGateway>;
12
+ };
13
+ export {};
@@ -0,0 +1,45 @@
1
+ import { CreatePageGateway as GatewayAbstraction } from "./abstractions.js";
2
+ import { MainGraphQLClient } from "@webiny/app/features/mainGraphQLClient";
3
+ import { getPageGraphQLFields } from "../shared/pageGraphQLFields.js";
4
+ const CREATE_PAGE = /* GraphQL */`
5
+ mutation CreatePage($data: WbPageCreateInput!) {
6
+ websiteBuilder {
7
+ createPage(data: $data) {
8
+ data {
9
+ ${getPageGraphQLFields(["properties", "metadata", "bindings", "elements", "extensions"]).join("\n")}
10
+ }
11
+ error {
12
+ code
13
+ data
14
+ message
15
+ }
16
+ }
17
+ }
18
+ }
19
+ `;
20
+ class CreatePageGatewayImpl {
21
+ constructor(client) {
22
+ this.client = client;
23
+ }
24
+ async execute(page) {
25
+ const response = await this.client.execute({
26
+ query: CREATE_PAGE,
27
+ variables: {
28
+ data: {
29
+ ...page
30
+ }
31
+ }
32
+ });
33
+ const envelope = response.websiteBuilder.createPage;
34
+ if (envelope.error) {
35
+ throw new Error(envelope.error.message || "Could not create page.");
36
+ }
37
+ return envelope.data;
38
+ }
39
+ }
40
+ export const CreatePageGateway = GatewayAbstraction.createImplementation({
41
+ implementation: CreatePageGatewayImpl,
42
+ dependencies: [MainGraphQLClient]
43
+ });
44
+
45
+ //# sourceMappingURL=CreatePageGateway.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["CreatePageGateway","GatewayAbstraction","MainGraphQLClient","getPageGraphQLFields","CREATE_PAGE","join","CreatePageGatewayImpl","constructor","client","execute","page","response","query","variables","data","envelope","websiteBuilder","createPage","error","Error","message","createImplementation","implementation","dependencies"],"sources":["CreatePageGateway.ts"],"sourcesContent":["import { CreatePageGateway as GatewayAbstraction } from \"./abstractions.js\";\nimport type { PageDto } from \"./PageDto.js\";\nimport type { PageGqlDto } from \"./PageGqlDto.js\";\nimport { MainGraphQLClient } from \"@webiny/app/features/mainGraphQLClient\";\nimport { getPageGraphQLFields } from \"~/features/pages/shared/pageGraphQLFields.js\";\n\nconst CREATE_PAGE = /* GraphQL */ `\n mutation CreatePage($data: WbPageCreateInput!) {\n websiteBuilder {\n createPage(data: $data) {\n data {\n ${getPageGraphQLFields([\"properties\", \"metadata\", \"bindings\", \"elements\", \"extensions\"]).join(\"\\n\")}\n }\n error {\n code\n data\n message\n }\n }\n }\n }\n`;\n\ntype CreatePageResponse = {\n websiteBuilder: {\n createPage:\n | { data: PageGqlDto; error: null }\n | { data: null; error: { code: string; message: string; data: any } };\n };\n};\n\nclass CreatePageGatewayImpl implements GatewayAbstraction.Interface {\n constructor(private client: MainGraphQLClient.Interface) {}\n\n async execute(page: PageDto): Promise<PageGqlDto> {\n const response = await this.client.execute<CreatePageResponse>({\n query: CREATE_PAGE,\n variables: { data: { ...page } }\n });\n\n const envelope = response.websiteBuilder.createPage;\n if (envelope.error) {\n throw new Error(envelope.error.message || \"Could not create page.\");\n }\n\n return envelope.data;\n }\n}\n\nexport const CreatePageGateway = GatewayAbstraction.createImplementation({\n implementation: CreatePageGatewayImpl,\n dependencies: [MainGraphQLClient]\n});\n"],"mappings":"AAAA,SAASA,iBAAiB,IAAIC,kBAAkB;AAGhD,SAASC,iBAAiB,QAAQ,wCAAwC;AAC1E,SAASC,oBAAoB;AAE7B,MAAMC,WAAW,GAAG,aAAc;AAClC;AACA;AACA;AACA;AACA,sBAAsBD,oBAAoB,CAAC,CAAC,YAAY,EAAE,UAAU,EAAE,UAAU,EAAE,UAAU,EAAE,YAAY,CAAC,CAAC,CAACE,IAAI,CAAC,IAAI,CAAC;AACvH;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA,CAAC;AAUD,MAAMC,qBAAqB,CAAyC;EAChEC,WAAWA,CAASC,MAAmC,EAAE;IAAA,KAArCA,MAAmC,GAAnCA,MAAmC;EAAG;EAE1D,MAAMC,OAAOA,CAACC,IAAa,EAAuB;IAC9C,MAAMC,QAAQ,GAAG,MAAM,IAAI,CAACH,MAAM,CAACC,OAAO,CAAqB;MAC3DG,KAAK,EAAER,WAAW;MAClBS,SAAS,EAAE;QAAEC,IAAI,EAAE;UAAE,GAAGJ;QAAK;MAAE;IACnC,CAAC,CAAC;IAEF,MAAMK,QAAQ,GAAGJ,QAAQ,CAACK,cAAc,CAACC,UAAU;IACnD,IAAIF,QAAQ,CAACG,KAAK,EAAE;MAChB,MAAM,IAAIC,KAAK,CAACJ,QAAQ,CAACG,KAAK,CAACE,OAAO,IAAI,wBAAwB,CAAC;IACvE;IAEA,OAAOL,QAAQ,CAACD,IAAI;EACxB;AACJ;AAEA,OAAO,MAAMd,iBAAiB,GAAGC,kBAAkB,CAACoB,oBAAoB,CAAC;EACrEC,cAAc,EAAEhB,qBAAqB;EACrCiB,YAAY,EAAE,CAACrB,iBAAiB;AACpC,CAAC,CAAC","ignoreList":[]}
@@ -1,9 +1,13 @@
1
- import type { ICreatePageRepository } from "./ICreatePageRepository.js";
2
- import type { ICreatePageGateway } from "./ICreatePageGateway.js";
3
- import { type IListCache, Page } from "../../../domain/Page/index.js";
4
- export declare class CreatePageRepository implements ICreatePageRepository {
1
+ import { CreatePageRepository as RepositoryAbstraction, CreatePageGateway } from "./abstractions.js";
2
+ import { Page } from "../../../domain/Page/Page.js";
3
+ import { PageListCache } from "../../../features/pages/shared/abstractions.js";
4
+ declare class CreatePageRepositoryImpl implements RepositoryAbstraction.Interface {
5
5
  private cache;
6
6
  private gateway;
7
- constructor(cache: IListCache<Page>, gateway: ICreatePageGateway);
7
+ constructor(cache: PageListCache.Interface, gateway: CreatePageGateway.Interface);
8
8
  execute(page: Page): Promise<Page>;
9
9
  }
10
+ export declare const CreatePageRepository: typeof CreatePageRepositoryImpl & {
11
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").ICreatePageRepository>;
12
+ };
13
+ export {};
@@ -1,5 +1,7 @@
1
- import { Page } from "../../../domain/Page/index.js";
2
- export class CreatePageRepository {
1
+ import { CreatePageRepository as RepositoryAbstraction, CreatePageGateway } from "./abstractions.js";
2
+ import { Page } from "../../../domain/Page/Page.js";
3
+ import { PageListCache } from "../shared/abstractions.js";
4
+ class CreatePageRepositoryImpl {
3
5
  constructor(cache, gateway) {
4
6
  this.cache = cache;
5
7
  this.gateway = gateway;
@@ -19,5 +21,9 @@ export class CreatePageRepository {
19
21
  return newPage;
20
22
  }
21
23
  }
24
+ export const CreatePageRepository = RepositoryAbstraction.createImplementation({
25
+ implementation: CreatePageRepositoryImpl,
26
+ dependencies: [PageListCache, CreatePageGateway]
27
+ });
22
28
 
23
29
  //# sourceMappingURL=CreatePageRepository.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Page","CreatePageRepository","constructor","cache","gateway","execute","page","dto","location","properties","metadata","elements","bindings","extensions","result","newPage","create","addItems"],"sources":["CreatePageRepository.ts"],"sourcesContent":["import type { ICreatePageRepository } from \"./ICreatePageRepository.js\";\nimport type { ICreatePageGateway } from \"./ICreatePageGateway.js\";\nimport type { PageDto } from \"./PageDto.js\";\nimport { type IListCache, Page } from \"~/domain/Page/index.js\";\n\nexport class CreatePageRepository implements ICreatePageRepository {\n private cache: IListCache<Page>;\n private gateway: ICreatePageGateway;\n\n constructor(cache: IListCache<Page>, gateway: ICreatePageGateway) {\n this.cache = cache;\n this.gateway = gateway;\n }\n\n async execute(page: Page) {\n const dto: PageDto = {\n location: page.location,\n properties: page.properties,\n metadata: page.metadata,\n elements: page.elements,\n bindings: page.bindings,\n extensions: page.extensions\n };\n\n const result = await this.gateway.execute(dto);\n const newPage = Page.create(result);\n this.cache.addItems([newPage]);\n return newPage;\n }\n}\n"],"mappings":"AAGA,SAA0BA,IAAI;AAE9B,OAAO,MAAMC,oBAAoB,CAAkC;EAI/DC,WAAWA,CAACC,KAAuB,EAAEC,OAA2B,EAAE;IAC9D,IAAI,CAACD,KAAK,GAAGA,KAAK;IAClB,IAAI,CAACC,OAAO,GAAGA,OAAO;EAC1B;EAEA,MAAMC,OAAOA,CAACC,IAAU,EAAE;IACtB,MAAMC,GAAY,GAAG;MACjBC,QAAQ,EAAEF,IAAI,CAACE,QAAQ;MACvBC,UAAU,EAAEH,IAAI,CAACG,UAAU;MAC3BC,QAAQ,EAAEJ,IAAI,CAACI,QAAQ;MACvBC,QAAQ,EAAEL,IAAI,CAACK,QAAQ;MACvBC,QAAQ,EAAEN,IAAI,CAACM,QAAQ;MACvBC,UAAU,EAAEP,IAAI,CAACO;IACrB,CAAC;IAED,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACV,OAAO,CAACC,OAAO,CAACE,GAAG,CAAC;IAC9C,MAAMQ,OAAO,GAAGf,IAAI,CAACgB,MAAM,CAACF,MAAM,CAAC;IACnC,IAAI,CAACX,KAAK,CAACc,QAAQ,CAAC,CAACF,OAAO,CAAC,CAAC;IAC9B,OAAOA,OAAO;EAClB;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["CreatePageRepository","RepositoryAbstraction","CreatePageGateway","Page","PageListCache","CreatePageRepositoryImpl","constructor","cache","gateway","execute","page","dto","location","properties","metadata","elements","bindings","extensions","result","newPage","create","addItems","createImplementation","implementation","dependencies"],"sources":["CreatePageRepository.ts"],"sourcesContent":["import {\n CreatePageRepository as RepositoryAbstraction,\n CreatePageGateway\n} from \"./abstractions.js\";\nimport type { PageDto } from \"./PageDto.js\";\nimport { Page } from \"~/domain/Page/Page.js\";\nimport { PageListCache } from \"~/features/pages/shared/abstractions.js\";\n\nclass CreatePageRepositoryImpl implements RepositoryAbstraction.Interface {\n constructor(\n private cache: PageListCache.Interface,\n private gateway: CreatePageGateway.Interface\n ) {}\n\n async execute(page: Page) {\n const dto: PageDto = {\n location: page.location,\n properties: page.properties,\n metadata: page.metadata,\n elements: page.elements,\n bindings: page.bindings,\n extensions: page.extensions\n };\n\n const result = await this.gateway.execute(dto);\n const newPage = Page.create(result);\n this.cache.addItems([newPage]);\n return newPage;\n }\n}\n\nexport const CreatePageRepository = RepositoryAbstraction.createImplementation({\n implementation: CreatePageRepositoryImpl,\n dependencies: [PageListCache, CreatePageGateway]\n});\n"],"mappings":"AAAA,SACIA,oBAAoB,IAAIC,qBAAqB,EAC7CC,iBAAiB;AAGrB,SAASC,IAAI;AACb,SAASC,aAAa;AAEtB,MAAMC,wBAAwB,CAA4C;EACtEC,WAAWA,CACCC,KAA8B,EAC9BC,OAAoC,EAC9C;IAAA,KAFUD,KAA8B,GAA9BA,KAA8B;IAAA,KAC9BC,OAAoC,GAApCA,OAAoC;EAC7C;EAEH,MAAMC,OAAOA,CAACC,IAAU,EAAE;IACtB,MAAMC,GAAY,GAAG;MACjBC,QAAQ,EAAEF,IAAI,CAACE,QAAQ;MACvBC,UAAU,EAAEH,IAAI,CAACG,UAAU;MAC3BC,QAAQ,EAAEJ,IAAI,CAACI,QAAQ;MACvBC,QAAQ,EAAEL,IAAI,CAACK,QAAQ;MACvBC,QAAQ,EAAEN,IAAI,CAACM,QAAQ;MACvBC,UAAU,EAAEP,IAAI,CAACO;IACrB,CAAC;IAED,MAAMC,MAAM,GAAG,MAAM,IAAI,CAACV,OAAO,CAACC,OAAO,CAACE,GAAG,CAAC;IAC9C,MAAMQ,OAAO,GAAGhB,IAAI,CAACiB,MAAM,CAACF,MAAM,CAAC;IACnC,IAAI,CAACX,KAAK,CAACc,QAAQ,CAAC,CAACF,OAAO,CAAC,CAAC;IAC9B,OAAOA,OAAO;EAClB;AACJ;AAEA,OAAO,MAAMnB,oBAAoB,GAAGC,qBAAqB,CAACqB,oBAAoB,CAAC;EAC3EC,cAAc,EAAElB,wBAAwB;EACxCmB,YAAY,EAAE,CAACpB,aAAa,EAAEF,iBAAiB;AACnD,CAAC,CAAC","ignoreList":[]}
@@ -1,8 +1,11 @@
1
- import type { CreatePageParams, ICreatePageUseCase } from "./ICreatePageUseCase.js";
2
- import type { ICreatePageRepository } from "./ICreatePageRepository.js";
3
- import { Page } from "../../../domain/Page/index.js";
4
- export declare class CreatePageUseCase implements ICreatePageUseCase {
1
+ import { CreatePageUseCase as UseCaseAbstraction, CreatePageRepository } from "./abstractions.js";
2
+ import { Page } from "../../../domain/Page/Page.js";
3
+ declare class CreatePageUseCaseImpl implements UseCaseAbstraction.Interface {
5
4
  private repository;
6
- constructor(repository: ICreatePageRepository);
7
- execute(params: CreatePageParams): Promise<Page>;
5
+ constructor(repository: CreatePageRepository.Interface);
6
+ execute(params: UseCaseAbstraction.Params): Promise<Page>;
8
7
  }
8
+ export declare const CreatePageUseCase: typeof CreatePageUseCaseImpl & {
9
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").ICreatePageUseCase>;
10
+ };
11
+ export {};
@@ -1,5 +1,6 @@
1
- import { Page } from "../../../domain/Page/index.js";
2
- export class CreatePageUseCase {
1
+ import { CreatePageUseCase as UseCaseAbstraction, CreatePageRepository } from "./abstractions.js";
2
+ import { Page } from "../../../domain/Page/Page.js";
3
+ class CreatePageUseCaseImpl {
3
4
  constructor(repository) {
4
5
  this.repository = repository;
5
6
  }
@@ -16,5 +17,9 @@ export class CreatePageUseCase {
16
17
  }));
17
18
  }
18
19
  }
20
+ export const CreatePageUseCase = UseCaseAbstraction.createImplementation({
21
+ implementation: CreatePageUseCaseImpl,
22
+ dependencies: [CreatePageRepository]
23
+ });
19
24
 
20
25
  //# sourceMappingURL=CreatePageUseCase.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["Page","CreatePageUseCase","constructor","repository","execute","params","create","location","properties","metadata","elements","bindings","extensions","live","system"],"sources":["CreatePageUseCase.ts"],"sourcesContent":["import type { CreatePageParams, ICreatePageUseCase } from \"./ICreatePageUseCase.js\";\nimport type { ICreatePageRepository } from \"./ICreatePageRepository.js\";\nimport { Page } from \"~/domain/Page/index.js\";\n\nexport class CreatePageUseCase implements ICreatePageUseCase {\n private repository: ICreatePageRepository;\n\n constructor(repository: ICreatePageRepository) {\n this.repository = repository;\n }\n\n async execute(params: CreatePageParams) {\n return await this.repository.execute(\n Page.create({\n location: params.location,\n properties: params.properties,\n metadata: params.metadata,\n elements: params.elements,\n bindings: params.bindings,\n extensions: params.extensions,\n live: null,\n system: null\n })\n );\n }\n}\n"],"mappings":"AAEA,SAASA,IAAI;AAEb,OAAO,MAAMC,iBAAiB,CAA+B;EAGzDC,WAAWA,CAACC,UAAiC,EAAE;IAC3C,IAAI,CAACA,UAAU,GAAGA,UAAU;EAChC;EAEA,MAAMC,OAAOA,CAACC,MAAwB,EAAE;IACpC,OAAO,MAAM,IAAI,CAACF,UAAU,CAACC,OAAO,CAChCJ,IAAI,CAACM,MAAM,CAAC;MACRC,QAAQ,EAAEF,MAAM,CAACE,QAAQ;MACzBC,UAAU,EAAEH,MAAM,CAACG,UAAU;MAC7BC,QAAQ,EAAEJ,MAAM,CAACI,QAAQ;MACzBC,QAAQ,EAAEL,MAAM,CAACK,QAAQ;MACzBC,QAAQ,EAAEN,MAAM,CAACM,QAAQ;MACzBC,UAAU,EAAEP,MAAM,CAACO,UAAU;MAC7BC,IAAI,EAAE,IAAI;MACVC,MAAM,EAAE;IACZ,CAAC,CACL,CAAC;EACL;AACJ","ignoreList":[]}
1
+ {"version":3,"names":["CreatePageUseCase","UseCaseAbstraction","CreatePageRepository","Page","CreatePageUseCaseImpl","constructor","repository","execute","params","create","location","properties","metadata","elements","bindings","extensions","live","system","createImplementation","implementation","dependencies"],"sources":["CreatePageUseCase.ts"],"sourcesContent":["import { CreatePageUseCase as UseCaseAbstraction, CreatePageRepository } from \"./abstractions.js\";\nimport { Page } from \"~/domain/Page/Page.js\";\n\nclass CreatePageUseCaseImpl implements UseCaseAbstraction.Interface {\n constructor(private repository: CreatePageRepository.Interface) {}\n\n async execute(params: UseCaseAbstraction.Params) {\n return await this.repository.execute(\n Page.create({\n location: params.location,\n properties: params.properties,\n metadata: params.metadata,\n elements: params.elements,\n bindings: params.bindings,\n extensions: params.extensions,\n live: null,\n system: null\n })\n );\n }\n}\n\nexport const CreatePageUseCase = UseCaseAbstraction.createImplementation({\n implementation: CreatePageUseCaseImpl,\n dependencies: [CreatePageRepository]\n});\n"],"mappings":"AAAA,SAASA,iBAAiB,IAAIC,kBAAkB,EAAEC,oBAAoB;AACtE,SAASC,IAAI;AAEb,MAAMC,qBAAqB,CAAyC;EAChEC,WAAWA,CAASC,UAA0C,EAAE;IAAA,KAA5CA,UAA0C,GAA1CA,UAA0C;EAAG;EAEjE,MAAMC,OAAOA,CAACC,MAAiC,EAAE;IAC7C,OAAO,MAAM,IAAI,CAACF,UAAU,CAACC,OAAO,CAChCJ,IAAI,CAACM,MAAM,CAAC;MACRC,QAAQ,EAAEF,MAAM,CAACE,QAAQ;MACzBC,UAAU,EAAEH,MAAM,CAACG,UAAU;MAC7BC,QAAQ,EAAEJ,MAAM,CAACI,QAAQ;MACzBC,QAAQ,EAAEL,MAAM,CAACK,QAAQ;MACzBC,QAAQ,EAAEN,MAAM,CAACM,QAAQ;MACzBC,UAAU,EAAEP,MAAM,CAACO,UAAU;MAC7BC,IAAI,EAAE,IAAI;MACVC,MAAM,EAAE;IACZ,CAAC,CACL,CAAC;EACL;AACJ;AAEA,OAAO,MAAMjB,iBAAiB,GAAGC,kBAAkB,CAACiB,oBAAoB,CAAC;EACrEC,cAAc,EAAEf,qBAAqB;EACrCgB,YAAY,EAAE,CAAClB,oBAAoB;AACvC,CAAC,CAAC","ignoreList":[]}
@@ -1,8 +1,12 @@
1
- import type { ILoadingRepository } from "@webiny/app-utils";
2
- import type { CreatePageParams, ICreatePageUseCase } from "./ICreatePageUseCase.js";
3
- export declare class CreatePageUseCaseWithLoading implements ICreatePageUseCase {
1
+ import { CreatePageUseCase as UseCaseAbstraction } from "./abstractions.js";
2
+ import { WbPageLoadingRepository } from "../../../features/pages/shared/abstractions.js";
3
+ declare class CreatePageUseCaseWithLoadingImpl implements UseCaseAbstraction.Interface {
4
4
  private loadingRepository;
5
- private useCase;
6
- constructor(loadingRepository: ILoadingRepository, useCase: ICreatePageUseCase);
7
- execute(params: CreatePageParams): Promise<import("../../../domain/Page/Page.js").Page>;
5
+ private decoratee;
6
+ constructor(loadingRepository: WbPageLoadingRepository.Interface, decoratee: UseCaseAbstraction.Interface);
7
+ execute(params: UseCaseAbstraction.Params): Promise<import("../../../domain/Page/Page.js").Page>;
8
8
  }
9
+ export declare const CreatePageUseCaseWithLoading: typeof CreatePageUseCaseWithLoadingImpl & {
10
+ __abstraction: import("@webiny/di").Abstraction<import("./abstractions.js").ICreatePageUseCase>;
11
+ };
12
+ export {};