@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.
- package/LICENSE +21 -0
- package/README.md +33 -0
- package/WebsiteBuilderContextSetup.d.ts +12 -0
- package/WebsiteBuilderContextSetup.js +91 -0
- package/WebsiteBuilderContextSetup.js.map +1 -0
- package/constants.d.ts +3 -0
- package/constants.js +11 -0
- package/constants.js.map +1 -0
- package/createWebsiteBuilder.d.ts +2 -0
- package/createWebsiteBuilder.js +16 -0
- package/createWebsiteBuilder.js.map +1 -0
- package/createWebsiteBuilderGraphQL.d.ts +4 -0
- package/createWebsiteBuilderGraphQL.js +124 -0
- package/createWebsiteBuilderGraphQL.js.map +1 -0
- package/index.d.ts +3 -0
- package/index.js +23 -0
- package/index.js.map +1 -0
- package/package.json +54 -0
- package/page/CmsPagesStorage.d.ts +23 -0
- package/page/CmsPagesStorage.js +106 -0
- package/page/CmsPagesStorage.js.map +1 -0
- package/page/page.crud.d.ts +3 -0
- package/page/page.crud.js +208 -0
- package/page/page.crud.js.map +1 -0
- package/page/page.gql.d.ts +10 -0
- package/page/page.gql.js +380 -0
- package/page/page.gql.js.map +1 -0
- package/page/page.model.d.ts +3 -0
- package/page/page.model.js +50 -0
- package/page/page.model.js.map +1 -0
- package/page/page.modelModifier.d.ts +23 -0
- package/page/page.modelModifier.js +56 -0
- package/page/page.modelModifier.js.map +1 -0
- package/page/page.types.d.ts +307 -0
- package/page/page.types.js +7 -0
- package/page/page.types.js.map +1 -0
- package/page/useCases/CreatePage/CreatePage.d.ts +7 -0
- package/page/useCases/CreatePage/CreatePage.js +19 -0
- package/page/useCases/CreatePage/CreatePage.js.map +1 -0
- package/page/useCases/CreatePage/CreatePageWithEvents.d.ts +9 -0
- package/page/useCases/CreatePage/CreatePageWithEvents.js +25 -0
- package/page/useCases/CreatePage/CreatePageWithEvents.js.map +1 -0
- package/page/useCases/CreatePage/ICreatePage.d.ts +4 -0
- package/page/useCases/CreatePage/ICreatePage.js +7 -0
- package/page/useCases/CreatePage/ICreatePage.js.map +1 -0
- package/page/useCases/CreatePage/index.d.ts +15 -0
- package/page/useCases/CreatePage/index.js +18 -0
- package/page/useCases/CreatePage/index.js.map +1 -0
- package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFrom.d.ts +7 -0
- package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFrom.js +17 -0
- package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFrom.js.map +1 -0
- package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.d.ts +10 -0
- package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js +32 -0
- package/page/useCases/CreatePageRevisionFrom/CreatePageRevisionFromWithEvents.js.map +1 -0
- package/page/useCases/CreatePageRevisionFrom/ICreatePageRevisionFrom.d.ts +4 -0
- package/page/useCases/CreatePageRevisionFrom/ICreatePageRevisionFrom.js +7 -0
- package/page/useCases/CreatePageRevisionFrom/ICreatePageRevisionFrom.js.map +1 -0
- package/page/useCases/CreatePageRevisionFrom/index.d.ts +16 -0
- package/page/useCases/CreatePageRevisionFrom/index.js +18 -0
- package/page/useCases/CreatePageRevisionFrom/index.js.map +1 -0
- package/page/useCases/DeletePage/DeletePage.d.ts +7 -0
- package/page/useCases/DeletePage/DeletePage.js +17 -0
- package/page/useCases/DeletePage/DeletePage.js.map +1 -0
- package/page/useCases/DeletePage/DeletePageWithEvents.d.ts +10 -0
- package/page/useCases/DeletePage/DeletePageWithEvents.js +30 -0
- package/page/useCases/DeletePage/DeletePageWithEvents.js.map +1 -0
- package/page/useCases/DeletePage/IDeletePage.d.ts +4 -0
- package/page/useCases/DeletePage/IDeletePage.js +7 -0
- package/page/useCases/DeletePage/IDeletePage.js.map +1 -0
- package/page/useCases/DeletePage/index.d.ts +16 -0
- package/page/useCases/DeletePage/index.js +18 -0
- package/page/useCases/DeletePage/index.js.map +1 -0
- package/page/useCases/DuplicatePage/DuplicatePage.d.ts +9 -0
- package/page/useCases/DuplicatePage/DuplicatePage.js +43 -0
- package/page/useCases/DuplicatePage/DuplicatePage.js.map +1 -0
- package/page/useCases/DuplicatePage/DuplicatePageWithEvents.d.ts +10 -0
- package/page/useCases/DuplicatePage/DuplicatePageWithEvents.js +36 -0
- package/page/useCases/DuplicatePage/DuplicatePageWithEvents.js.map +1 -0
- package/page/useCases/DuplicatePage/IDuplicatePage.d.ts +4 -0
- package/page/useCases/DuplicatePage/IDuplicatePage.js +7 -0
- package/page/useCases/DuplicatePage/IDuplicatePage.js.map +1 -0
- package/page/useCases/DuplicatePage/index.d.ts +16 -0
- package/page/useCases/DuplicatePage/index.js +18 -0
- package/page/useCases/DuplicatePage/index.js.map +1 -0
- package/page/useCases/GetPageById/GetPageById.d.ts +7 -0
- package/page/useCases/GetPageById/GetPageById.js +17 -0
- package/page/useCases/GetPageById/GetPageById.js.map +1 -0
- package/page/useCases/GetPageById/IGetPageById.d.ts +4 -0
- package/page/useCases/GetPageById/IGetPageById.js +7 -0
- package/page/useCases/GetPageById/IGetPageById.js.map +1 -0
- package/page/useCases/GetPageById/index.d.ts +9 -0
- package/page/useCases/GetPageById/index.js +16 -0
- package/page/useCases/GetPageById/index.js.map +1 -0
- package/page/useCases/GetPageByPath/GetPageByPath.d.ts +11 -0
- package/page/useCases/GetPageByPath/GetPageByPath.js +28 -0
- package/page/useCases/GetPageByPath/GetPageByPath.js.map +1 -0
- package/page/useCases/GetPageByPath/IGetPageByPath.d.ts +4 -0
- package/page/useCases/GetPageByPath/IGetPageByPath.js +7 -0
- package/page/useCases/GetPageByPath/IGetPageByPath.js.map +1 -0
- package/page/useCases/GetPageByPath/index.d.ts +9 -0
- package/page/useCases/GetPageByPath/index.js +16 -0
- package/page/useCases/GetPageByPath/index.js.map +1 -0
- package/page/useCases/GetPageRevisions/GetPageRevisions.d.ts +7 -0
- package/page/useCases/GetPageRevisions/GetPageRevisions.js +17 -0
- package/page/useCases/GetPageRevisions/GetPageRevisions.js.map +1 -0
- package/page/useCases/GetPageRevisions/IGetPageById.d.ts +4 -0
- package/page/useCases/GetPageRevisions/IGetPageById.js +7 -0
- package/page/useCases/GetPageRevisions/IGetPageById.js.map +1 -0
- package/page/useCases/GetPageRevisions/index.d.ts +9 -0
- package/page/useCases/GetPageRevisions/index.js +16 -0
- package/page/useCases/GetPageRevisions/index.js.map +1 -0
- package/page/useCases/ListPages/IListPages.d.ts +5 -0
- package/page/useCases/ListPages/IListPages.js +7 -0
- package/page/useCases/ListPages/IListPages.js.map +1 -0
- package/page/useCases/ListPages/ListPages.d.ts +8 -0
- package/page/useCases/ListPages/ListPages.js +17 -0
- package/page/useCases/ListPages/ListPages.js.map +1 -0
- package/page/useCases/ListPages/index.d.ts +9 -0
- package/page/useCases/ListPages/index.js +16 -0
- package/page/useCases/ListPages/index.js.map +1 -0
- package/page/useCases/MovePage/IMovePage.d.ts +4 -0
- package/page/useCases/MovePage/IMovePage.js +7 -0
- package/page/useCases/MovePage/IMovePage.js.map +1 -0
- package/page/useCases/MovePage/MovePage.d.ts +7 -0
- package/page/useCases/MovePage/MovePage.js +17 -0
- package/page/useCases/MovePage/MovePage.js.map +1 -0
- package/page/useCases/MovePage/MovePageWithEvents.d.ts +10 -0
- package/page/useCases/MovePage/MovePageWithEvents.js +36 -0
- package/page/useCases/MovePage/MovePageWithEvents.js.map +1 -0
- package/page/useCases/MovePage/index.d.ts +16 -0
- package/page/useCases/MovePage/index.js +18 -0
- package/page/useCases/MovePage/index.js.map +1 -0
- package/page/useCases/PublishPage/IPublishPage.d.ts +4 -0
- package/page/useCases/PublishPage/IPublishPage.js +7 -0
- package/page/useCases/PublishPage/IPublishPage.js.map +1 -0
- package/page/useCases/PublishPage/PublishPage.d.ts +7 -0
- package/page/useCases/PublishPage/PublishPage.js +17 -0
- package/page/useCases/PublishPage/PublishPage.js.map +1 -0
- package/page/useCases/PublishPage/PublishPageWithEvents.d.ts +10 -0
- package/page/useCases/PublishPage/PublishPageWithEvents.js +31 -0
- package/page/useCases/PublishPage/PublishPageWithEvents.js.map +1 -0
- package/page/useCases/PublishPage/index.d.ts +16 -0
- package/page/useCases/PublishPage/index.js +18 -0
- package/page/useCases/PublishPage/index.js.map +1 -0
- package/page/useCases/UnpublishPage/IUnpublishPage.d.ts +4 -0
- package/page/useCases/UnpublishPage/IUnpublishPage.js +7 -0
- package/page/useCases/UnpublishPage/IUnpublishPage.js.map +1 -0
- package/page/useCases/UnpublishPage/UnpublishPage.d.ts +7 -0
- package/page/useCases/UnpublishPage/UnpublishPage.js +17 -0
- package/page/useCases/UnpublishPage/UnpublishPage.js.map +1 -0
- package/page/useCases/UnpublishPage/UnpublishPageWithEvents.d.ts +10 -0
- package/page/useCases/UnpublishPage/UnpublishPageWithEvents.js +31 -0
- package/page/useCases/UnpublishPage/UnpublishPageWithEvents.js.map +1 -0
- package/page/useCases/UnpublishPage/index.d.ts +16 -0
- package/page/useCases/UnpublishPage/index.js +18 -0
- package/page/useCases/UnpublishPage/index.js.map +1 -0
- package/page/useCases/UpdatePage/IUpdatePage.d.ts +4 -0
- package/page/useCases/UpdatePage/IUpdatePage.js +7 -0
- package/page/useCases/UpdatePage/IUpdatePage.js.map +1 -0
- package/page/useCases/UpdatePage/UpdatePage.d.ts +7 -0
- package/page/useCases/UpdatePage/UpdatePage.js +20 -0
- package/page/useCases/UpdatePage/UpdatePage.js.map +1 -0
- package/page/useCases/UpdatePage/UpdatePageWithEvents.d.ts +10 -0
- package/page/useCases/UpdatePage/UpdatePageWithEvents.js +40 -0
- package/page/useCases/UpdatePage/UpdatePageWithEvents.js.map +1 -0
- package/page/useCases/UpdatePage/index.d.ts +16 -0
- package/page/useCases/UpdatePage/index.js +18 -0
- package/page/useCases/UpdatePage/index.js.map +1 -0
- package/page/useCases/index.d.ts +9 -0
- package/page/useCases/index.js +106 -0
- package/page/useCases/index.js.map +1 -0
- package/types.d.ts +33 -0
- package/types.js +7 -0
- package/types.js.map +1 -0
- package/utils/ensureAuthentication.d.ts +2 -0
- package/utils/ensureAuthentication.js +16 -0
- package/utils/ensureAuthentication.js.map +1 -0
- package/utils/resolve.d.ts +3 -0
- package/utils/resolve.js +26 -0
- 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":";;;;;;AAAA,IAAAA,OAAA,GAAAC,OAAA;AACA,IAAAC,SAAA,GAAAD,OAAA;AAgCA,IAAAE,SAAA,GAAAF,OAAA;AACA,IAAAG,YAAA,GAAAH,OAAA;AACA,IAAAI,iBAAA,GAAAJ,OAAA;AAEO,MAAMK,eAAe,GAAIC,MAA4B,IAAiB;EACzE;EACA,MAAMC,gCAAgC,GAClC,IAAAC,mBAAW,EAA8C,uBAAuB,CAAC;EACrF,MAAMC,+BAA+B,GACjC,IAAAD,mBAAW,EAA6C,sBAAsB,CAAC;EAEnF,MAAM;IAAEE;EAAkB,CAAC,GAAG,IAAAC,8BAAoB,EAAC;IAC/CC,eAAe,EAAEN,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACC,MAAM;IACtDC,MAAM,EAAE;MACJT,gCAAgC;MAChCE;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMQ,gCAAgC,GAClC,IAAAT,mBAAW,EAA8C,uBAAuB,CAAC;EACrF,MAAMU,+BAA+B,GACjC,IAAAV,mBAAW,EAA6C,sBAAsB,CAAC;EAEnF,MAAM;IAAEW;EAAkB,CAAC,GAAG,IAAAC,+BAAqB,EAAC;IAChDC,eAAe,EAAEf,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACQ,MAAM;IACtDC,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACU,OAAO;IACpDR,MAAM,EAAE;MACJC,gCAAgC;MAChCC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMO,iCAAiC,GACnC,IAAAjB,mBAAW,EAA+C,wBAAwB,CAAC;EACvF,MAAMkB,gCAAgC,GAClC,IAAAlB,mBAAW,EAA8C,uBAAuB,CAAC;EAErF,MAAM;IAAEmB;EAAmB,CAAC,GAAG,IAAAC,+BAAqB,EAAC;IACjDC,gBAAgB,EAAEvB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACgB,OAAO;IACxDP,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACU,OAAO;IACpDR,MAAM,EAAE;MACJS,iCAAiC;MACjCC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMK,mCAAmC,GACrC,IAAAvB,mBAAW,EAAiD,0BAA0B,CAAC;EAC3F,MAAMwB,kCAAkC,GACpC,IAAAxB,mBAAW,EAAgD,yBAAyB,CAAC;EAEzF,MAAM;IAAEyB;EAAqB,CAAC,GAAG,IAAAC,iCAAuB,EAAC;IACrDC,kBAAkB,EAAE7B,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACsB,SAAS;IAC5Db,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACU,OAAO;IACpDR,MAAM,EAAE;MACJe,mCAAmC;MACnCC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMK,mCAAmC,GACrC,IAAA7B,mBAAW,EAAiD,0BAA0B,CAAC;EAC3F,MAAM8B,kCAAkC,GACpC,IAAA9B,mBAAW,EAAgD,yBAAyB,CAAC;EAEzF,MAAM;IAAE+B;EAAqB,CAAC,GAAG,IAAAC,iCAAuB,EAAC;IACrD5B,eAAe,EAAEN,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACC,MAAM;IACtDQ,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAAC2B,GAAG;IAChDzB,MAAM,EAAE;MACJqB,mCAAmC;MACnCC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMI,8BAA8B,GAChC,IAAAlC,mBAAW,EAA4C,qBAAqB,CAAC;EACjF,MAAMmC,6BAA6B,GAC/B,IAAAnC,mBAAW,EAA2C,oBAAoB,CAAC;EAE/E,MAAM;IAAEoC;EAAgB,CAAC,GAAG,IAAAC,4BAAkB,EAAC;IAC3CC,aAAa,EAAExC,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACiC,IAAI;IAClDxB,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAAC2B,GAAG;IAChDzB,MAAM,EAAE;MACJ0B,8BAA8B;MAC9BC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMK,4CAA4C,GAC9C,IAAAxC,mBAAW,EACP,mCACJ,CAAC;EACL,MAAMyC,2CAA2C,GAC7C,IAAAzC,mBAAW,EACP,kCACJ,CAAC;EAEL,MAAM;IAAE0C;EAA8B,CAAC,GAAG,IAAAC,0CAAgC,EAAC;IACvEC,2BAA2B,EAAE9C,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACuC,kBAAkB;IAC9E9B,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACU,OAAO;IACpDR,MAAM,EAAE;MACJgC,4CAA4C;MAC5CC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAMK,gCAAgC,GAClC,IAAA9C,mBAAW,EAA8C,uBAAuB,CAAC;EACrF,MAAM+C,+BAA+B,GACjC,IAAA/C,mBAAW,EAA6C,sBAAsB,CAAC;EAEnF,MAAM;IAAEgD;EAAkB,CAAC,GAAG,IAAAC,8BAAoB,EAAC;IAC/CC,eAAe,EAAEpD,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAAC6C,MAAM;IACtDpC,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACU,OAAO;IACpDR,MAAM,EAAE;MACJsC,gCAAgC;MAChCC;IACJ;EACJ,CAAC,CAAC;;EAEF;EACA,MAAM;IAAEK;EAAqB,CAAC,GAAG,IAAAC,iCAAuB,EAAC;IACrDtC,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAAC2B;EACjD,CAAC,CAAC;;EAEF;EACA,MAAM;IAAEqB;EAAmB,CAAC,GAAG,IAAAC,kCAAqB,EAAC;IACjDxC,YAAY,EAAEjB,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACU;EACjD,CAAC,CAAC;;EAEF;EACA,MAAM;IAAEwC;EAAwB,CAAC,GAAG,IAAAC,4CAA0B,EAAC;IAC3DC,YAAY,EAAE5D,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACoD;EACjD,CAAC,CAAC;;EAEF;EACA,MAAM;IAAEC;EAAiB,CAAC,GAAG,IAAAC,6BAAmB,EAAC;IAC7CC,aAAa,EAAE/D,MAAM,CAACO,iBAAiB,CAACC,KAAK,CAACwD;EAClD,CAAC,CAAC;EAEF,OAAO;IACH/D,gCAAgC;IAChCE,+BAA+B;IAC/BQ,gCAAgC;IAChCC,+BAA+B;IAC/BO,iCAAiC;IACjCC,gCAAgC;IAChCK,mCAAmC;IACnCC,kCAAkC;IAClCK,mCAAmC;IACnCC,kCAAkC;IAClCI,8BAA8B;IAC9BC,6BAA6B;IAC7BK,4CAA4C;IAC5CC,2CAA2C;IAC3CK,gCAAgC;IAChCC,+BAA+B;IAE/Be,IAAI,EAAE,MAAMC,MAAM,IAAI;MAClB,OAAOJ,gBAAgB,CAACK,OAAO,CAACD,MAAM,CAAC;IAC3C,CAAC;IACD/C,OAAO,EAAE,MAAMiD,EAAE,IAAI;MACjB,OAAOX,kBAAkB,CAACU,OAAO,CAACC,EAAE,CAAC;IACzC,CAAC;IACDC,SAAS,EAAE,MAAMC,IAAI,IAAI;MACrB,OAAOf,oBAAoB,CAACY,OAAO,CAACG,IAAI,CAAC;IAC7C,CAAC;IACDC,gBAAgB,EAAE,MAAOC,MAAc,IAAK;MACxC,OAAOb,uBAAuB,CAACQ,OAAO,CAACK,MAAM,CAAC;IAClD,CAAC;IACD9D,MAAM,EAAE,MAAM+D,IAAI,IAAI;MAClB,OAAOpE,iBAAiB,CAAC8D,OAAO,CAACM,IAAI,CAAC;IAC1C,CAAC;IACDxD,MAAM,EAAE,MAAAA,CAAOmD,EAAU,EAAEK,IAAsB,KAAK;MAClD,OAAO3D,iBAAiB,CAACqD,OAAO,CAACC,EAAE,EAAEK,IAAI,CAAC;IAC9C,CAAC;IACDhD,OAAO,EAAE,MAAMyC,MAAM,IAAI;MACrB,OAAO5C,kBAAkB,CAAC6C,OAAO,CAACD,MAAM,CAAC;IAC7C,CAAC;IACDnC,SAAS,EAAE,MAAMmC,MAAM,IAAI;MACvB,OAAOtC,oBAAoB,CAACuC,OAAO,CAACD,MAAM,CAAC;IAC/C,CAAC;IACDQ,SAAS,EAAE,MAAMR,MAAM,IAAI;MACvB,OAAOhC,oBAAoB,CAACiC,OAAO,CAACD,MAAM,CAAC;IAC/C,CAAC;IACDxB,IAAI,EAAE,MAAMwB,MAAM,IAAI;MAClB,OAAO3B,eAAe,CAAC4B,OAAO,CAACD,MAAM,CAAC;IAC1C,CAAC;IACDlB,kBAAkBA,CAACkB,MAAM,EAAE;MACvB,OAAOrB,6BAA6B,CAACsB,OAAO,CAACD,MAAM,CAAC;IACxD,CAAC;IACDZ,MAAM,EAAE,MAAMY,MAAM,IAAI;MACpB,OAAOf,iBAAiB,CAACgB,OAAO,CAACD,MAAM,CAAC;IAC5C;EACJ,CAAC;AACL,CAAC;AAACS,OAAA,CAAA3E,eAAA,GAAAA,eAAA","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>;
|
package/page/page.gql.js
ADDED
|
@@ -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
|