@webiny/api-website-builder 6.0.0-alpha.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 (180) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +33 -0
  3. package/WebsiteBuilderContextSetup.d.ts +12 -0
  4. package/WebsiteBuilderContextSetup.js +91 -0
  5. package/WebsiteBuilderContextSetup.js.map +1 -0
  6. package/constants.d.ts +3 -0
  7. package/constants.js +11 -0
  8. package/constants.js.map +1 -0
  9. package/createWebsiteBuilder.d.ts +2 -0
  10. package/createWebsiteBuilder.js +16 -0
  11. package/createWebsiteBuilder.js.map +1 -0
  12. package/createWebsiteBuilderGraphQL.d.ts +4 -0
  13. package/createWebsiteBuilderGraphQL.js +124 -0
  14. package/createWebsiteBuilderGraphQL.js.map +1 -0
  15. package/index.d.ts +3 -0
  16. package/index.js +23 -0
  17. package/index.js.map +1 -0
  18. package/package.json +54 -0
  19. package/page/CmsPagesStorage.d.ts +23 -0
  20. package/page/CmsPagesStorage.js +106 -0
  21. package/page/CmsPagesStorage.js.map +1 -0
  22. package/page/page.crud.d.ts +3 -0
  23. package/page/page.crud.js +208 -0
  24. package/page/page.crud.js.map +1 -0
  25. package/page/page.gql.d.ts +10 -0
  26. package/page/page.gql.js +380 -0
  27. package/page/page.gql.js.map +1 -0
  28. package/page/page.model.d.ts +3 -0
  29. package/page/page.model.js +50 -0
  30. package/page/page.model.js.map +1 -0
  31. package/page/page.modelModifier.d.ts +23 -0
  32. package/page/page.modelModifier.js +56 -0
  33. package/page/page.modelModifier.js.map +1 -0
  34. package/page/page.types.d.ts +307 -0
  35. package/page/page.types.js +7 -0
  36. package/page/page.types.js.map +1 -0
  37. package/page/useCases/CreatePage/CreatePage.d.ts +7 -0
  38. package/page/useCases/CreatePage/CreatePage.js +19 -0
  39. package/page/useCases/CreatePage/CreatePage.js.map +1 -0
  40. package/page/useCases/CreatePage/CreatePageWithEvents.d.ts +9 -0
  41. package/page/useCases/CreatePage/CreatePageWithEvents.js +25 -0
  42. package/page/useCases/CreatePage/CreatePageWithEvents.js.map +1 -0
  43. package/page/useCases/CreatePage/ICreatePage.d.ts +4 -0
  44. package/page/useCases/CreatePage/ICreatePage.js +7 -0
  45. package/page/useCases/CreatePage/ICreatePage.js.map +1 -0
  46. package/page/useCases/CreatePage/index.d.ts +15 -0
  47. package/page/useCases/CreatePage/index.js +18 -0
  48. package/page/useCases/CreatePage/index.js.map +1 -0
  49. package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFrom.d.ts +7 -0
  50. package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFrom.js +17 -0
  51. package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFrom.js.map +1 -0
  52. package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.d.ts +10 -0
  53. package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js +32 -0
  54. package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js.map +1 -0
  55. package/page/useCases/CreatePageRevisionFrom/ICreatePageRevisionFrom.d.ts +4 -0
  56. package/page/useCases/CreatePageRevisionFrom/ICreatePageRevisionFrom.js +7 -0
  57. package/page/useCases/CreatePageRevisionFrom/ICreatePageRevisionFrom.js.map +1 -0
  58. package/page/useCases/CreatePageRevisionFrom/index.d.ts +16 -0
  59. package/page/useCases/CreatePageRevisionFrom/index.js +18 -0
  60. package/page/useCases/CreatePageRevisionFrom/index.js.map +1 -0
  61. package/page/useCases/DeletePage/DeletePage.d.ts +7 -0
  62. package/page/useCases/DeletePage/DeletePage.js +17 -0
  63. package/page/useCases/DeletePage/DeletePage.js.map +1 -0
  64. package/page/useCases/DeletePage/DeletePageWithEvents.d.ts +10 -0
  65. package/page/useCases/DeletePage/DeletePageWithEvents.js +30 -0
  66. package/page/useCases/DeletePage/DeletePageWithEvents.js.map +1 -0
  67. package/page/useCases/DeletePage/IDeletePage.d.ts +4 -0
  68. package/page/useCases/DeletePage/IDeletePage.js +7 -0
  69. package/page/useCases/DeletePage/IDeletePage.js.map +1 -0
  70. package/page/useCases/DeletePage/index.d.ts +16 -0
  71. package/page/useCases/DeletePage/index.js +18 -0
  72. package/page/useCases/DeletePage/index.js.map +1 -0
  73. package/page/useCases/DuplicatePage/DuplicatePage.d.ts +9 -0
  74. package/page/useCases/DuplicatePage/DuplicatePage.js +43 -0
  75. package/page/useCases/DuplicatePage/DuplicatePage.js.map +1 -0
  76. package/page/useCases/DuplicatePage/DuplicatePageWithEvents.d.ts +10 -0
  77. package/page/useCases/DuplicatePage/DuplicatePageWithEvents.js +36 -0
  78. package/page/useCases/DuplicatePage/DuplicatePageWithEvents.js.map +1 -0
  79. package/page/useCases/DuplicatePage/IDuplicatePage.d.ts +4 -0
  80. package/page/useCases/DuplicatePage/IDuplicatePage.js +7 -0
  81. package/page/useCases/DuplicatePage/IDuplicatePage.js.map +1 -0
  82. package/page/useCases/DuplicatePage/index.d.ts +16 -0
  83. package/page/useCases/DuplicatePage/index.js +18 -0
  84. package/page/useCases/DuplicatePage/index.js.map +1 -0
  85. package/page/useCases/GetPageById/GetPageById.d.ts +7 -0
  86. package/page/useCases/GetPageById/GetPageById.js +17 -0
  87. package/page/useCases/GetPageById/GetPageById.js.map +1 -0
  88. package/page/useCases/GetPageById/IGetPageById.d.ts +4 -0
  89. package/page/useCases/GetPageById/IGetPageById.js +7 -0
  90. package/page/useCases/GetPageById/IGetPageById.js.map +1 -0
  91. package/page/useCases/GetPageById/index.d.ts +9 -0
  92. package/page/useCases/GetPageById/index.js +16 -0
  93. package/page/useCases/GetPageById/index.js.map +1 -0
  94. package/page/useCases/GetPageByPath/GetPageByPath.d.ts +11 -0
  95. package/page/useCases/GetPageByPath/GetPageByPath.js +28 -0
  96. package/page/useCases/GetPageByPath/GetPageByPath.js.map +1 -0
  97. package/page/useCases/GetPageByPath/IGetPageByPath.d.ts +4 -0
  98. package/page/useCases/GetPageByPath/IGetPageByPath.js +7 -0
  99. package/page/useCases/GetPageByPath/IGetPageByPath.js.map +1 -0
  100. package/page/useCases/GetPageByPath/index.d.ts +9 -0
  101. package/page/useCases/GetPageByPath/index.js +16 -0
  102. package/page/useCases/GetPageByPath/index.js.map +1 -0
  103. package/page/useCases/GetPageRevisions/GetPageRevisions.d.ts +7 -0
  104. package/page/useCases/GetPageRevisions/GetPageRevisions.js +17 -0
  105. package/page/useCases/GetPageRevisions/GetPageRevisions.js.map +1 -0
  106. package/page/useCases/GetPageRevisions/IGetPageById.d.ts +4 -0
  107. package/page/useCases/GetPageRevisions/IGetPageById.js +7 -0
  108. package/page/useCases/GetPageRevisions/IGetPageById.js.map +1 -0
  109. package/page/useCases/GetPageRevisions/index.d.ts +9 -0
  110. package/page/useCases/GetPageRevisions/index.js +16 -0
  111. package/page/useCases/GetPageRevisions/index.js.map +1 -0
  112. package/page/useCases/ListPages/IListPages.d.ts +5 -0
  113. package/page/useCases/ListPages/IListPages.js +7 -0
  114. package/page/useCases/ListPages/IListPages.js.map +1 -0
  115. package/page/useCases/ListPages/ListPages.d.ts +8 -0
  116. package/page/useCases/ListPages/ListPages.js +17 -0
  117. package/page/useCases/ListPages/ListPages.js.map +1 -0
  118. package/page/useCases/ListPages/index.d.ts +9 -0
  119. package/page/useCases/ListPages/index.js +16 -0
  120. package/page/useCases/ListPages/index.js.map +1 -0
  121. package/page/useCases/MovePage/IMovePage.d.ts +4 -0
  122. package/page/useCases/MovePage/IMovePage.js +7 -0
  123. package/page/useCases/MovePage/IMovePage.js.map +1 -0
  124. package/page/useCases/MovePage/MovePage.d.ts +7 -0
  125. package/page/useCases/MovePage/MovePage.js +17 -0
  126. package/page/useCases/MovePage/MovePage.js.map +1 -0
  127. package/page/useCases/MovePage/MovePageWithEvents.d.ts +10 -0
  128. package/page/useCases/MovePage/MovePageWithEvents.js +36 -0
  129. package/page/useCases/MovePage/MovePageWithEvents.js.map +1 -0
  130. package/page/useCases/MovePage/index.d.ts +16 -0
  131. package/page/useCases/MovePage/index.js +18 -0
  132. package/page/useCases/MovePage/index.js.map +1 -0
  133. package/page/useCases/PublishPage/IPublishPage.d.ts +4 -0
  134. package/page/useCases/PublishPage/IPublishPage.js +7 -0
  135. package/page/useCases/PublishPage/IPublishPage.js.map +1 -0
  136. package/page/useCases/PublishPage/PublishPage.d.ts +7 -0
  137. package/page/useCases/PublishPage/PublishPage.js +17 -0
  138. package/page/useCases/PublishPage/PublishPage.js.map +1 -0
  139. package/page/useCases/PublishPage/PublishPageWithEvents.d.ts +10 -0
  140. package/page/useCases/PublishPage/PublishPageWithEvents.js +31 -0
  141. package/page/useCases/PublishPage/PublishPageWithEvents.js.map +1 -0
  142. package/page/useCases/PublishPage/index.d.ts +16 -0
  143. package/page/useCases/PublishPage/index.js +18 -0
  144. package/page/useCases/PublishPage/index.js.map +1 -0
  145. package/page/useCases/UnpublishPage/IUnpublishPage.d.ts +4 -0
  146. package/page/useCases/UnpublishPage/IUnpublishPage.js +7 -0
  147. package/page/useCases/UnpublishPage/IUnpublishPage.js.map +1 -0
  148. package/page/useCases/UnpublishPage/UnpublishPage.d.ts +7 -0
  149. package/page/useCases/UnpublishPage/UnpublishPage.js +17 -0
  150. package/page/useCases/UnpublishPage/UnpublishPage.js.map +1 -0
  151. package/page/useCases/UnpublishPage/UnpublishPageWithEvents.d.ts +10 -0
  152. package/page/useCases/UnpublishPage/UnpublishPageWithEvents.js +31 -0
  153. package/page/useCases/UnpublishPage/UnpublishPageWithEvents.js.map +1 -0
  154. package/page/useCases/UnpublishPage/index.d.ts +16 -0
  155. package/page/useCases/UnpublishPage/index.js +18 -0
  156. package/page/useCases/UnpublishPage/index.js.map +1 -0
  157. package/page/useCases/UpdatePage/IUpdatePage.d.ts +4 -0
  158. package/page/useCases/UpdatePage/IUpdatePage.js +7 -0
  159. package/page/useCases/UpdatePage/IUpdatePage.js.map +1 -0
  160. package/page/useCases/UpdatePage/UpdatePage.d.ts +7 -0
  161. package/page/useCases/UpdatePage/UpdatePage.js +20 -0
  162. package/page/useCases/UpdatePage/UpdatePage.js.map +1 -0
  163. package/page/useCases/UpdatePage/UpdatePageWithEvents.d.ts +10 -0
  164. package/page/useCases/UpdatePage/UpdatePageWithEvents.js +40 -0
  165. package/page/useCases/UpdatePage/UpdatePageWithEvents.js.map +1 -0
  166. package/page/useCases/UpdatePage/index.d.ts +16 -0
  167. package/page/useCases/UpdatePage/index.js +18 -0
  168. package/page/useCases/UpdatePage/index.js.map +1 -0
  169. package/page/useCases/index.d.ts +9 -0
  170. package/page/useCases/index.js +106 -0
  171. package/page/useCases/index.js.map +1 -0
  172. package/types.d.ts +33 -0
  173. package/types.js +7 -0
  174. package/types.js.map +1 -0
  175. package/utils/ensureAuthentication.d.ts +2 -0
  176. package/utils/ensureAuthentication.js +16 -0
  177. package/utils/ensureAuthentication.js.map +1 -0
  178. package/utils/resolve.d.ts +3 -0
  179. package/utils/resolve.js +26 -0
  180. package/utils/resolve.js.map +1 -0
@@ -0,0 +1,208 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createPagesCrud = void 0;
7
+ var _pubsub = require("@webiny/pubsub");
8
+ var _useCases = require("./useCases");
9
+ var _MovePage = require("./useCases/MovePage");
10
+ var _GetPageById = require("./useCases/GetPageById");
11
+ var _GetPageRevisions = require("./useCases/GetPageRevisions");
12
+ const createPagesCrud = config => {
13
+ // create
14
+ const onWebsiteBuilderPageBeforeCreate = (0, _pubsub.createTopic)("wb.onPageBeforeCreate");
15
+ const onWebsiteBuilderPageAfterCreate = (0, _pubsub.createTopic)("wb.onPageAfterCreate");
16
+ const {
17
+ createPageUseCase
18
+ } = (0, _useCases.getCreatePageUseCase)({
19
+ createOperation: config.storageOperations.pages.create,
20
+ topics: {
21
+ onWebsiteBuilderPageBeforeCreate,
22
+ onWebsiteBuilderPageAfterCreate
23
+ }
24
+ });
25
+
26
+ // update
27
+ const onWebsiteBuilderPageBeforeUpdate = (0, _pubsub.createTopic)("wb.onPageBeforeUpdate");
28
+ const onWebsiteBuilderPageAfterUpdate = (0, _pubsub.createTopic)("wb.onPageAfterUpdate");
29
+ const {
30
+ updatePageUseCase
31
+ } = (0, _useCases.getUpdatePagerUseCase)({
32
+ updateOperation: config.storageOperations.pages.update,
33
+ getOperation: config.storageOperations.pages.getById,
34
+ topics: {
35
+ onWebsiteBuilderPageBeforeUpdate,
36
+ onWebsiteBuilderPageAfterUpdate
37
+ }
38
+ });
39
+
40
+ // publish
41
+ const onWebsiteBuilderPageBeforePublish = (0, _pubsub.createTopic)("wb.onPageBeforePublish");
42
+ const onWebsiteBuilderPageAfterPublish = (0, _pubsub.createTopic)("wb.onPageAfterPublish");
43
+ const {
44
+ publishPageUseCase
45
+ } = (0, _useCases.getPublishPageUseCase)({
46
+ publishOperation: config.storageOperations.pages.publish,
47
+ getOperation: config.storageOperations.pages.getById,
48
+ topics: {
49
+ onWebsiteBuilderPageBeforePublish,
50
+ onWebsiteBuilderPageAfterPublish
51
+ }
52
+ });
53
+
54
+ // unpublish
55
+ const onWebsiteBuilderPageBeforeUnpublish = (0, _pubsub.createTopic)("wb.onPageBeforeUnpublish");
56
+ const onWebsiteBuilderPageAfterUnpublish = (0, _pubsub.createTopic)("wb.onPageAfterUnpublish");
57
+ const {
58
+ unpublishPageUseCase
59
+ } = (0, _useCases.getUnpublishPageUseCase)({
60
+ unpublishOperation: config.storageOperations.pages.unpublish,
61
+ getOperation: config.storageOperations.pages.getById,
62
+ topics: {
63
+ onWebsiteBuilderPageBeforeUnpublish,
64
+ onWebsiteBuilderPageAfterUnpublish
65
+ }
66
+ });
67
+
68
+ // duplicate
69
+ const onWebsiteBuilderPageBeforeDuplicate = (0, _pubsub.createTopic)("wb.onPageBeforeDuplicate");
70
+ const onWebsiteBuilderPageAfterDuplicate = (0, _pubsub.createTopic)("wb.onPageAfterDuplicate");
71
+ const {
72
+ duplicatePageUseCase
73
+ } = (0, _useCases.getDuplicatePageUseCase)({
74
+ createOperation: config.storageOperations.pages.create,
75
+ getOperation: config.storageOperations.pages.get,
76
+ topics: {
77
+ onWebsiteBuilderPageBeforeDuplicate,
78
+ onWebsiteBuilderPageAfterDuplicate
79
+ }
80
+ });
81
+
82
+ // move
83
+ const onWebsiteBuilderPageBeforeMove = (0, _pubsub.createTopic)("wb.onPageBeforeMove");
84
+ const onWebsiteBuilderPageAfterMove = (0, _pubsub.createTopic)("wb.onPageAfterMove");
85
+ const {
86
+ movePageUseCase
87
+ } = (0, _MovePage.getMovePageUseCase)({
88
+ moveOperation: config.storageOperations.pages.move,
89
+ getOperation: config.storageOperations.pages.get,
90
+ topics: {
91
+ onWebsiteBuilderPageBeforeMove,
92
+ onWebsiteBuilderPageAfterMove
93
+ }
94
+ });
95
+
96
+ // create page revision from
97
+ const onWebsiteBuilderPageBeforeCreateRevisionFrom = (0, _pubsub.createTopic)("wb.onPageBeforeCreateRevisionFrom");
98
+ const onWebsiteBuilderPageAfterCreateRevisionFrom = (0, _pubsub.createTopic)("wb.onPageAfterCreateRevisionFrom");
99
+ const {
100
+ createPageRevisionFromUseCase
101
+ } = (0, _useCases.getCreatePageRevisionFromUseCase)({
102
+ createRevisionFromOperation: config.storageOperations.pages.createRevisionFrom,
103
+ getOperation: config.storageOperations.pages.getById,
104
+ topics: {
105
+ onWebsiteBuilderPageBeforeCreateRevisionFrom,
106
+ onWebsiteBuilderPageAfterCreateRevisionFrom
107
+ }
108
+ });
109
+
110
+ // delete
111
+ const onWebsiteBuilderPageBeforeDelete = (0, _pubsub.createTopic)("wb.onPageBeforeDelete");
112
+ const onWebsiteBuilderPageAfterDelete = (0, _pubsub.createTopic)("wb.onPageAfterDelete");
113
+ const {
114
+ deletePageUseCase
115
+ } = (0, _useCases.getDeletePageUseCase)({
116
+ deleteOperation: config.storageOperations.pages.delete,
117
+ getOperation: config.storageOperations.pages.getById,
118
+ topics: {
119
+ onWebsiteBuilderPageBeforeDelete,
120
+ onWebsiteBuilderPageAfterDelete
121
+ }
122
+ });
123
+
124
+ // get by path
125
+ const {
126
+ getPageByPathUseCase
127
+ } = (0, _useCases.getGetPageByPathUseCase)({
128
+ getOperation: config.storageOperations.pages.get
129
+ });
130
+
131
+ // get by id
132
+ const {
133
+ getPageByIdUseCase
134
+ } = (0, _GetPageById.getGetPageByIdUseCase)({
135
+ getOperation: config.storageOperations.pages.getById
136
+ });
137
+
138
+ // get page revisions
139
+ const {
140
+ getPageRevisionsUseCase
141
+ } = (0, _GetPageRevisions.getGetPageRevisionsUseCase)({
142
+ getRevisions: config.storageOperations.pages.getRevisions
143
+ });
144
+
145
+ // list
146
+ const {
147
+ listPagesUseCase
148
+ } = (0, _useCases.getListPagesUseCase)({
149
+ listOperation: config.storageOperations.pages.list
150
+ });
151
+ return {
152
+ onWebsiteBuilderPageBeforeCreate,
153
+ onWebsiteBuilderPageAfterCreate,
154
+ onWebsiteBuilderPageBeforeUpdate,
155
+ onWebsiteBuilderPageAfterUpdate,
156
+ onWebsiteBuilderPageBeforePublish,
157
+ onWebsiteBuilderPageAfterPublish,
158
+ onWebsiteBuilderPageBeforeUnpublish,
159
+ onWebsiteBuilderPageAfterUnpublish,
160
+ onWebsiteBuilderPageBeforeDuplicate,
161
+ onWebsiteBuilderPageAfterDuplicate,
162
+ onWebsiteBuilderPageBeforeMove,
163
+ onWebsiteBuilderPageAfterMove,
164
+ onWebsiteBuilderPageBeforeCreateRevisionFrom,
165
+ onWebsiteBuilderPageAfterCreateRevisionFrom,
166
+ onWebsiteBuilderPageBeforeDelete,
167
+ onWebsiteBuilderPageAfterDelete,
168
+ list: async params => {
169
+ return listPagesUseCase.execute(params);
170
+ },
171
+ getById: async id => {
172
+ return getPageByIdUseCase.execute(id);
173
+ },
174
+ getByPath: async path => {
175
+ return getPageByPathUseCase.execute(path);
176
+ },
177
+ getPageRevisions: async pageId => {
178
+ return getPageRevisionsUseCase.execute(pageId);
179
+ },
180
+ create: async data => {
181
+ return createPageUseCase.execute(data);
182
+ },
183
+ update: async (id, data) => {
184
+ return updatePageUseCase.execute(id, data);
185
+ },
186
+ publish: async params => {
187
+ return publishPageUseCase.execute(params);
188
+ },
189
+ unpublish: async params => {
190
+ return unpublishPageUseCase.execute(params);
191
+ },
192
+ duplicate: async params => {
193
+ return duplicatePageUseCase.execute(params);
194
+ },
195
+ move: async params => {
196
+ return movePageUseCase.execute(params);
197
+ },
198
+ createRevisionFrom(params) {
199
+ return createPageRevisionFromUseCase.execute(params);
200
+ },
201
+ delete: async params => {
202
+ return deletePageUseCase.execute(params);
203
+ }
204
+ };
205
+ };
206
+ exports.createPagesCrud = createPagesCrud;
207
+
208
+ //# sourceMappingURL=page.crud.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["_pubsub","require","_useCases","_MovePage","_GetPageById","_GetPageRevisions","createPagesCrud","config","onWebsiteBuilderPageBeforeCreate","createTopic","onWebsiteBuilderPageAfterCreate","createPageUseCase","getCreatePageUseCase","createOperation","storageOperations","pages","create","topics","onWebsiteBuilderPageBeforeUpdate","onWebsiteBuilderPageAfterUpdate","updatePageUseCase","getUpdatePagerUseCase","updateOperation","update","getOperation","getById","onWebsiteBuilderPageBeforePublish","onWebsiteBuilderPageAfterPublish","publishPageUseCase","getPublishPageUseCase","publishOperation","publish","onWebsiteBuilderPageBeforeUnpublish","onWebsiteBuilderPageAfterUnpublish","unpublishPageUseCase","getUnpublishPageUseCase","unpublishOperation","unpublish","onWebsiteBuilderPageBeforeDuplicate","onWebsiteBuilderPageAfterDuplicate","duplicatePageUseCase","getDuplicatePageUseCase","get","onWebsiteBuilderPageBeforeMove","onWebsiteBuilderPageAfterMove","movePageUseCase","getMovePageUseCase","moveOperation","move","onWebsiteBuilderPageBeforeCreateRevisionFrom","onWebsiteBuilderPageAfterCreateRevisionFrom","createPageRevisionFromUseCase","getCreatePageRevisionFromUseCase","createRevisionFromOperation","createRevisionFrom","onWebsiteBuilderPageBeforeDelete","onWebsiteBuilderPageAfterDelete","deletePageUseCase","getDeletePageUseCase","deleteOperation","delete","getPageByPathUseCase","getGetPageByPathUseCase","getPageByIdUseCase","getGetPageByIdUseCase","getPageRevisionsUseCase","getGetPageRevisionsUseCase","getRevisions","listPagesUseCase","getListPagesUseCase","listOperation","list","params","execute","id","getByPath","path","getPageRevisions","pageId","data","duplicate","exports"],"sources":["page.crud.ts"],"sourcesContent":["import { createTopic } from \"@webiny/pubsub\";\nimport {\n getCreatePageRevisionFromUseCase,\n getCreatePageUseCase,\n getDeletePageUseCase,\n getDuplicatePageUseCase,\n getGetPageByPathUseCase,\n getListPagesUseCase,\n getPublishPageUseCase,\n getUnpublishPageUseCase,\n getUpdatePagerUseCase\n} from \"~/page/useCases\";\nimport type {\n OnWebsiteBuilderPageAfterCreateRevisionFromTopicParams,\n OnWebsiteBuilderPageAfterCreateTopicParams,\n OnWebsiteBuilderPageAfterDeleteTopicParams,\n OnWebsiteBuilderPageAfterDuplicateTopicParams,\n OnWebsiteBuilderPageAfterMoveTopicParams,\n OnWebsiteBuilderPageAfterPublishTopicParams,\n OnWebsiteBuilderPageAfterUnpublishTopicParams,\n OnWebsiteBuilderPageAfterUpdateTopicParams,\n OnWebsiteBuilderPageBeforeCreateRevisionFromTopicParams,\n OnWebsiteBuilderPageBeforeCreateTopicParams,\n OnWebsiteBuilderPageBeforeDeleteTopicParams,\n OnWebsiteBuilderPageBeforeDuplicateTopicParams,\n OnWebsiteBuilderPageBeforeMoveTopicParams,\n OnWebsiteBuilderPageBeforePublishTopicParams,\n OnWebsiteBuilderPageBeforeUnpublishTopicParams,\n OnWebsiteBuilderPageBeforeUpdateTopicParams,\n UpdateWbPageData,\n WbPageCrud\n} from \"~/page/page.types\";\nimport type { WebsiteBuilderConfig } from \"~/types\";\nimport { getMovePageUseCase } from \"~/page/useCases/MovePage\";\nimport { getGetPageByIdUseCase } from \"~/page/useCases/GetPageById\";\nimport { getGetPageRevisionsUseCase } from \"~/page/useCases/GetPageRevisions\";\n\nexport const createPagesCrud = (config: WebsiteBuilderConfig): WbPageCrud => {\n // create\n const onWebsiteBuilderPageBeforeCreate =\n createTopic<OnWebsiteBuilderPageBeforeCreateTopicParams>(\"wb.onPageBeforeCreate\");\n const onWebsiteBuilderPageAfterCreate =\n createTopic<OnWebsiteBuilderPageAfterCreateTopicParams>(\"wb.onPageAfterCreate\");\n\n const { createPageUseCase } = getCreatePageUseCase({\n createOperation: config.storageOperations.pages.create,\n topics: {\n onWebsiteBuilderPageBeforeCreate,\n onWebsiteBuilderPageAfterCreate\n }\n });\n\n // update\n const onWebsiteBuilderPageBeforeUpdate =\n createTopic<OnWebsiteBuilderPageBeforeUpdateTopicParams>(\"wb.onPageBeforeUpdate\");\n const onWebsiteBuilderPageAfterUpdate =\n createTopic<OnWebsiteBuilderPageAfterUpdateTopicParams>(\"wb.onPageAfterUpdate\");\n\n const { updatePageUseCase } = getUpdatePagerUseCase({\n updateOperation: config.storageOperations.pages.update,\n getOperation: config.storageOperations.pages.getById,\n topics: {\n onWebsiteBuilderPageBeforeUpdate,\n onWebsiteBuilderPageAfterUpdate\n }\n });\n\n // publish\n const onWebsiteBuilderPageBeforePublish =\n createTopic<OnWebsiteBuilderPageBeforePublishTopicParams>(\"wb.onPageBeforePublish\");\n const onWebsiteBuilderPageAfterPublish =\n createTopic<OnWebsiteBuilderPageAfterPublishTopicParams>(\"wb.onPageAfterPublish\");\n\n const { publishPageUseCase } = getPublishPageUseCase({\n publishOperation: config.storageOperations.pages.publish,\n getOperation: config.storageOperations.pages.getById,\n topics: {\n onWebsiteBuilderPageBeforePublish,\n onWebsiteBuilderPageAfterPublish\n }\n });\n\n // unpublish\n const onWebsiteBuilderPageBeforeUnpublish =\n createTopic<OnWebsiteBuilderPageBeforeUnpublishTopicParams>(\"wb.onPageBeforeUnpublish\");\n const onWebsiteBuilderPageAfterUnpublish =\n createTopic<OnWebsiteBuilderPageAfterUnpublishTopicParams>(\"wb.onPageAfterUnpublish\");\n\n const { unpublishPageUseCase } = getUnpublishPageUseCase({\n unpublishOperation: config.storageOperations.pages.unpublish,\n getOperation: config.storageOperations.pages.getById,\n topics: {\n onWebsiteBuilderPageBeforeUnpublish,\n onWebsiteBuilderPageAfterUnpublish\n }\n });\n\n // duplicate\n const onWebsiteBuilderPageBeforeDuplicate =\n createTopic<OnWebsiteBuilderPageBeforeDuplicateTopicParams>(\"wb.onPageBeforeDuplicate\");\n const onWebsiteBuilderPageAfterDuplicate =\n createTopic<OnWebsiteBuilderPageAfterDuplicateTopicParams>(\"wb.onPageAfterDuplicate\");\n\n const { duplicatePageUseCase } = getDuplicatePageUseCase({\n createOperation: config.storageOperations.pages.create,\n getOperation: config.storageOperations.pages.get,\n topics: {\n onWebsiteBuilderPageBeforeDuplicate,\n onWebsiteBuilderPageAfterDuplicate\n }\n });\n\n // move\n const onWebsiteBuilderPageBeforeMove =\n createTopic<OnWebsiteBuilderPageBeforeMoveTopicParams>(\"wb.onPageBeforeMove\");\n const onWebsiteBuilderPageAfterMove =\n createTopic<OnWebsiteBuilderPageAfterMoveTopicParams>(\"wb.onPageAfterMove\");\n\n const { movePageUseCase } = getMovePageUseCase({\n moveOperation: config.storageOperations.pages.move,\n getOperation: config.storageOperations.pages.get,\n topics: {\n onWebsiteBuilderPageBeforeMove,\n onWebsiteBuilderPageAfterMove\n }\n });\n\n // create page revision from\n const onWebsiteBuilderPageBeforeCreateRevisionFrom =\n createTopic<OnWebsiteBuilderPageBeforeCreateRevisionFromTopicParams>(\n \"wb.onPageBeforeCreateRevisionFrom\"\n );\n const onWebsiteBuilderPageAfterCreateRevisionFrom =\n createTopic<OnWebsiteBuilderPageAfterCreateRevisionFromTopicParams>(\n \"wb.onPageAfterCreateRevisionFrom\"\n );\n\n const { createPageRevisionFromUseCase } = getCreatePageRevisionFromUseCase({\n createRevisionFromOperation: config.storageOperations.pages.createRevisionFrom,\n getOperation: config.storageOperations.pages.getById,\n topics: {\n onWebsiteBuilderPageBeforeCreateRevisionFrom,\n onWebsiteBuilderPageAfterCreateRevisionFrom\n }\n });\n\n // delete\n const onWebsiteBuilderPageBeforeDelete =\n createTopic<OnWebsiteBuilderPageBeforeDeleteTopicParams>(\"wb.onPageBeforeDelete\");\n const onWebsiteBuilderPageAfterDelete =\n createTopic<OnWebsiteBuilderPageAfterDeleteTopicParams>(\"wb.onPageAfterDelete\");\n\n const { deletePageUseCase } = getDeletePageUseCase({\n deleteOperation: config.storageOperations.pages.delete,\n getOperation: config.storageOperations.pages.getById,\n topics: {\n onWebsiteBuilderPageBeforeDelete,\n onWebsiteBuilderPageAfterDelete\n }\n });\n\n // get by path\n const { getPageByPathUseCase } = getGetPageByPathUseCase({\n getOperation: config.storageOperations.pages.get\n });\n\n // get by id\n const { getPageByIdUseCase } = getGetPageByIdUseCase({\n getOperation: config.storageOperations.pages.getById\n });\n\n // get page revisions\n const { getPageRevisionsUseCase } = getGetPageRevisionsUseCase({\n getRevisions: config.storageOperations.pages.getRevisions\n });\n\n // list\n const { listPagesUseCase } = getListPagesUseCase({\n listOperation: config.storageOperations.pages.list\n });\n\n return {\n onWebsiteBuilderPageBeforeCreate,\n onWebsiteBuilderPageAfterCreate,\n onWebsiteBuilderPageBeforeUpdate,\n onWebsiteBuilderPageAfterUpdate,\n onWebsiteBuilderPageBeforePublish,\n onWebsiteBuilderPageAfterPublish,\n onWebsiteBuilderPageBeforeUnpublish,\n onWebsiteBuilderPageAfterUnpublish,\n onWebsiteBuilderPageBeforeDuplicate,\n onWebsiteBuilderPageAfterDuplicate,\n onWebsiteBuilderPageBeforeMove,\n onWebsiteBuilderPageAfterMove,\n onWebsiteBuilderPageBeforeCreateRevisionFrom,\n onWebsiteBuilderPageAfterCreateRevisionFrom,\n onWebsiteBuilderPageBeforeDelete,\n onWebsiteBuilderPageAfterDelete,\n\n list: async params => {\n return listPagesUseCase.execute(params);\n },\n getById: async id => {\n return getPageByIdUseCase.execute(id);\n },\n getByPath: async path => {\n return getPageByPathUseCase.execute(path);\n },\n getPageRevisions: async (pageId: string) => {\n return getPageRevisionsUseCase.execute(pageId);\n },\n create: async data => {\n return createPageUseCase.execute(data);\n },\n update: async (id: string, data: UpdateWbPageData) => {\n return updatePageUseCase.execute(id, data);\n },\n publish: async params => {\n return publishPageUseCase.execute(params);\n },\n unpublish: async params => {\n return unpublishPageUseCase.execute(params);\n },\n duplicate: async params => {\n return duplicatePageUseCase.execute(params);\n },\n move: async params => {\n return movePageUseCase.execute(params);\n },\n createRevisionFrom(params) {\n return createPageRevisionFromUseCase.execute(params);\n },\n delete: async params => {\n return deletePageUseCase.execute(params);\n }\n };\n};\n"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,10 @@
1
+ import { GraphQLSchemaPlugin } from "@webiny/handler-graphql";
2
+ import type { CmsFieldTypePlugins, CmsModel } from "@webiny/api-headless-cms/types";
3
+ import type { WebsiteBuilderContext } from "../types";
4
+ export interface CreatePageTypeDefsParams {
5
+ model: CmsModel;
6
+ models: CmsModel[];
7
+ plugins: CmsFieldTypePlugins;
8
+ }
9
+ export declare const createPageTypeDefs: (params: CreatePageTypeDefsParams) => string;
10
+ export declare const createPagesSchema: (params: CreatePageTypeDefsParams) => GraphQLSchemaPlugin<WebsiteBuilderContext>;
@@ -0,0 +1,380 @@
1
+ "use strict";
2
+
3
+ Object.defineProperty(exports, "__esModule", {
4
+ value: true
5
+ });
6
+ exports.createPagesSchema = exports.createPageTypeDefs = void 0;
7
+ var _renderFields = require("@webiny/api-headless-cms/utils/renderFields");
8
+ var _renderInputFields = require("@webiny/api-headless-cms/utils/renderInputFields");
9
+ var _renderListFilterFields = require("@webiny/api-headless-cms/utils/renderListFilterFields");
10
+ var _renderSortEnum = require("@webiny/api-headless-cms/utils/renderSortEnum");
11
+ var _apiAdminSettings = require("@webiny/api-admin-settings");
12
+ var _handlerGraphql = require("@webiny/handler-graphql");
13
+ var _ensureAuthentication = require("../utils/ensureAuthentication");
14
+ var _resolve = require("../utils/resolve");
15
+ var _page = require("./page.model");
16
+ var _constants = require("@webiny/api-headless-cms/constants");
17
+ var _constants2 = require("../constants");
18
+ const removeFieldRequiredValidation = field => {
19
+ if (field.validation) {
20
+ field.validation = field.validation.filter(validation => validation.name !== "required");
21
+ }
22
+ if (field.listValidation) {
23
+ field.listValidation = field.listValidation.filter(v => v.name !== "required");
24
+ }
25
+ return field;
26
+ };
27
+ const createUpdateFields = fields => {
28
+ return fields.reduce((collection, field) => {
29
+ collection.push(removeFieldRequiredValidation({
30
+ ...field
31
+ }));
32
+ return collection;
33
+ }, []);
34
+ };
35
+ const createPageTypeDefs = params => {
36
+ const {
37
+ model,
38
+ models,
39
+ plugins: fieldTypePlugins
40
+ } = params;
41
+ const {
42
+ fields
43
+ } = model;
44
+ const fieldTypes = (0, _renderFields.renderFields)({
45
+ models,
46
+ model,
47
+ fields,
48
+ type: "manage",
49
+ fieldTypePlugins
50
+ });
51
+ const inputCreateFields = (0, _renderInputFields.renderInputFields)({
52
+ models,
53
+ model,
54
+ fields,
55
+ fieldTypePlugins
56
+ });
57
+ const inputUpdateFields = (0, _renderInputFields.renderInputFields)({
58
+ models,
59
+ model,
60
+ fields: createUpdateFields(fields),
61
+ fieldTypePlugins
62
+ });
63
+ const listFilterFieldsRender = (0, _renderListFilterFields.renderListFilterFields)({
64
+ model,
65
+ fields: model.fields,
66
+ type: "manage",
67
+ fieldTypePlugins
68
+ });
69
+ const onByMetaGqlFields = _constants.ENTRY_META_FIELDS.map(field => {
70
+ const fieldType = (0, _constants.isDateTimeEntryMetaField)(field) ? "DateTime" : "WbIdentity";
71
+ return `${field}: ${fieldType}`;
72
+ }).join("\n");
73
+ const sortEnumRender = (0, _renderSortEnum.renderSortEnum)({
74
+ model,
75
+ fields: model.fields,
76
+ fieldTypePlugins
77
+ });
78
+ return /* GraphQL */`
79
+ ${fieldTypes.map(f => f.typeDefs).join("\n")}
80
+
81
+ type WbPage {
82
+ id: ID!
83
+ pageId: String!
84
+ wbyAco_location: WbLocation
85
+ status: String!
86
+ version: Number!
87
+ locked: Boolean!
88
+ ${onByMetaGqlFields}
89
+ ${fieldTypes.map(f => f.fields).join("\n")}
90
+ }
91
+
92
+ ${inputCreateFields.map(f => f.typeDefs).join("\n")}
93
+
94
+ input WbPageCreateInput {
95
+ wbyAco_location: WbLocationInput
96
+ ${inputCreateFields.map(f => f.fields).join("\n")}
97
+ }
98
+
99
+ input WbPageUpdateInput {
100
+ ${inputUpdateFields.map(f => f.fields).join("\n")}
101
+ }
102
+
103
+ input WbPagesListWhereInput {
104
+ wbyAco_location: WbLocationWhereInput
105
+ latest: Boolean
106
+ published: Boolean
107
+ ${listFilterFieldsRender}
108
+ AND: [WbPagesListWhereInput!]
109
+ OR: [WbPagesListWhereInput!]
110
+ }
111
+
112
+ type WbSettings {
113
+ previewDomain: String!
114
+ }
115
+
116
+ type WbPageResponse {
117
+ data: WbPage
118
+ error: WbError
119
+ }
120
+
121
+ type WbSettingsResponse {
122
+ data: WbSettings
123
+ error: WbError
124
+ }
125
+
126
+ type WbIntegrationsResponse {
127
+ data: JSON!
128
+ error: WbError
129
+ }
130
+
131
+ input WbSettingsInput {
132
+ previewDomain: String!
133
+ }
134
+
135
+ type WbPagesListResponse {
136
+ data: [WbPage]
137
+ error: WbError
138
+ meta: WbMeta
139
+ }
140
+
141
+ type WbPageModelResponse {
142
+ data: JSON
143
+ error: WbError
144
+ }
145
+
146
+ enum WbPageListSorter {
147
+ ${sortEnumRender}
148
+ }
149
+
150
+ type WbPageRevision {
151
+ id: ID!
152
+ pageId: ID!
153
+ version: Int!
154
+ title: String!
155
+ status: String!
156
+ locked: Boolean!
157
+ savedOn: DateTime!
158
+ }
159
+
160
+ type WbPageRevisionsResponse {
161
+ data: [WbPageRevision!]
162
+ error: WbError
163
+ }
164
+
165
+ extend type WbQuery {
166
+ getPageModel: WbPageModelResponse
167
+ getPageByPath(path: String!): WbPageResponse
168
+ getPageById(id: ID!): WbPageResponse
169
+ getPageRevisions(pageId: ID!): WbPageRevisionsResponse
170
+ listPages(
171
+ where: WbPagesListWhereInput
172
+ limit: Int
173
+ after: String
174
+ sort: [WbPageListSorter]
175
+ search: String
176
+ ): WbPagesListResponse
177
+ getSettings: WbSettingsResponse
178
+ getIntegrations: WbIntegrationsResponse
179
+ }
180
+
181
+ extend type WbMutation {
182
+ createPage(data: WbPageCreateInput!): WbPageResponse
183
+ updatePage(id: ID!, data: WbPageUpdateInput!): WbPageResponse
184
+ publishPage(id: ID!): WbPageResponse
185
+ unpublishPage(id: ID!): WbPageResponse
186
+ duplicatePage(id: ID!): WbPageResponse
187
+ movePage(id: ID!, folderId: ID!): WbBooleanResponse
188
+ createPageRevisionFrom(id: ID!): WbPageResponse
189
+ deletePage(id: ID!): WbBooleanResponse
190
+ updateSettings(data: WbSettingsInput!): BooleanResponse
191
+ updateIntegrations(data: JSON!): BooleanResponse
192
+ }
193
+ `;
194
+ };
195
+ exports.createPageTypeDefs = createPageTypeDefs;
196
+ const createPagesSchema = params => {
197
+ const pageGraphQL = new _handlerGraphql.GraphQLSchemaPlugin({
198
+ typeDefs: createPageTypeDefs(params),
199
+ resolvers: {
200
+ WbQuery: {
201
+ getPageModel: async (_, __, context) => {
202
+ return (0, _resolve.resolve)(() => {
203
+ (0, _ensureAuthentication.ensureAuthentication)(context);
204
+ return context.cms.getModel(_page.PAGE_MODEL_ID);
205
+ });
206
+ },
207
+ getPageByPath: async (_, {
208
+ path
209
+ }, context) => {
210
+ return (0, _resolve.resolve)(async () => {
211
+ (0, _ensureAuthentication.ensureAuthentication)(context);
212
+ const page = await context.websiteBuilder.page.getByPath(path);
213
+ if (!page) {
214
+ throw new _handlerGraphql.NotFoundError(`Page ${path} was not found!`);
215
+ }
216
+ return {
217
+ id: page.id,
218
+ properties: page.properties,
219
+ bindings: page.bindings,
220
+ elements: page.elements
221
+ };
222
+ });
223
+ },
224
+ getPageById: async (_, {
225
+ id
226
+ }, context) => {
227
+ return (0, _resolve.resolve)(() => {
228
+ (0, _ensureAuthentication.ensureAuthentication)(context);
229
+ return context.websiteBuilder.page.getById(id);
230
+ });
231
+ },
232
+ getPageRevisions: async (_, {
233
+ pageId
234
+ }, context) => {
235
+ return (0, _resolve.resolve)(async () => {
236
+ (0, _ensureAuthentication.ensureAuthentication)(context);
237
+ const revisions = await context.websiteBuilder.page.getPageRevisions(pageId);
238
+ return revisions.map(page => {
239
+ return {
240
+ id: page.id,
241
+ pageId: page.pageId,
242
+ version: page.version,
243
+ title: page.properties.title,
244
+ status: page.status,
245
+ locked: page.locked,
246
+ savedOn: page.savedOn
247
+ };
248
+ });
249
+ });
250
+ },
251
+ listPages: async (_, args, context) => {
252
+ try {
253
+ (0, _ensureAuthentication.ensureAuthentication)(context);
254
+ const [entries, meta] = await context.websiteBuilder.page.list(args);
255
+ return new _handlerGraphql.ListResponse(entries, meta);
256
+ } catch (e) {
257
+ return new _handlerGraphql.ErrorResponse(e);
258
+ }
259
+ },
260
+ getSettings: async (_, args, context) => {
261
+ (0, _ensureAuthentication.ensureAuthentication)(context);
262
+ const getSettings = _apiAdminSettings.GetSettings.create(context);
263
+ const settings = await getSettings.execute(_constants2.WEBSITE_BUILDER_SETTINGS);
264
+ const data = settings.getData();
265
+ return new _handlerGraphql.Response({
266
+ previewDomain: data.previewDomain ?? ""
267
+ });
268
+ },
269
+ getIntegrations: async (_, args, context) => {
270
+ (0, _ensureAuthentication.ensureAuthentication)(context);
271
+ const getSettings = _apiAdminSettings.GetSettings.create(context);
272
+ const settings = await getSettings.execute(_constants2.WEBSITE_BUILDER_INTEGRATIONS);
273
+ return new _handlerGraphql.Response(settings.getData());
274
+ }
275
+ },
276
+ WbMutation: {
277
+ createPage: async (_, {
278
+ data
279
+ }, context) => {
280
+ return (0, _resolve.resolve)(() => {
281
+ (0, _ensureAuthentication.ensureAuthentication)(context);
282
+ return context.websiteBuilder.page.create(data);
283
+ });
284
+ },
285
+ updatePage: async (_, {
286
+ id,
287
+ data
288
+ }, context) => {
289
+ return (0, _resolve.resolve)(() => {
290
+ (0, _ensureAuthentication.ensureAuthentication)(context);
291
+ return context.websiteBuilder.page.update(id, data);
292
+ });
293
+ },
294
+ duplicatePage: async (_, {
295
+ id
296
+ }, context) => {
297
+ return (0, _resolve.resolve)(() => {
298
+ (0, _ensureAuthentication.ensureAuthentication)(context);
299
+ return context.websiteBuilder.page.duplicate({
300
+ id
301
+ });
302
+ });
303
+ },
304
+ publishPage: async (_, {
305
+ id
306
+ }, context) => {
307
+ return (0, _resolve.resolve)(() => {
308
+ (0, _ensureAuthentication.ensureAuthentication)(context);
309
+ return context.websiteBuilder.page.publish({
310
+ id
311
+ });
312
+ });
313
+ },
314
+ unpublishPage: async (_, {
315
+ id
316
+ }, context) => {
317
+ return (0, _resolve.resolve)(() => {
318
+ (0, _ensureAuthentication.ensureAuthentication)(context);
319
+ return context.websiteBuilder.page.unpublish({
320
+ id
321
+ });
322
+ });
323
+ },
324
+ movePage: async (_, {
325
+ id,
326
+ folderId
327
+ }, context) => {
328
+ (0, _ensureAuthentication.ensureAuthentication)(context);
329
+ await context.websiteBuilder.page.move({
330
+ id,
331
+ folderId
332
+ });
333
+ return new _handlerGraphql.Response(true);
334
+ },
335
+ createPageRevisionFrom: async (_, {
336
+ id
337
+ }, context) => {
338
+ return (0, _resolve.resolve)(() => {
339
+ (0, _ensureAuthentication.ensureAuthentication)(context);
340
+ return context.websiteBuilder.page.createRevisionFrom({
341
+ id
342
+ });
343
+ });
344
+ },
345
+ deletePage: async (_, {
346
+ id
347
+ }, context) => {
348
+ (0, _ensureAuthentication.ensureAuthentication)(context);
349
+ await context.websiteBuilder.page.delete({
350
+ id
351
+ });
352
+ return new _handlerGraphql.Response(true);
353
+ },
354
+ updateSettings: async (_, args, context) => {
355
+ (0, _ensureAuthentication.ensureAuthentication)(context);
356
+ const saveSettings = _apiAdminSettings.SaveSettings.create(context);
357
+ await saveSettings.execute({
358
+ name: _constants2.WEBSITE_BUILDER_SETTINGS,
359
+ settings: args.data
360
+ });
361
+ return new _handlerGraphql.Response(true);
362
+ },
363
+ updateIntegrations: async (_, args, context) => {
364
+ (0, _ensureAuthentication.ensureAuthentication)(context);
365
+ const saveSettings = _apiAdminSettings.SaveSettings.create(context);
366
+ await saveSettings.execute({
367
+ name: _constants2.WEBSITE_BUILDER_INTEGRATIONS,
368
+ settings: args.data
369
+ });
370
+ return new _handlerGraphql.Response(true);
371
+ }
372
+ }
373
+ }
374
+ });
375
+ pageGraphQL.name = "wb.graphql.pages";
376
+ return pageGraphQL;
377
+ };
378
+ exports.createPagesSchema = createPagesSchema;
379
+
380
+ //# sourceMappingURL=page.gql.js.map