@raketa-cloud/admin 0.0.15 → 0.0.17

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 (170) hide show
  1. package/package.json +1 -1
  2. package/src/Adapter.js +4 -4
  3. package/src/HonoAdapter.js +13 -19
  4. package/src/cloud/Articles.js +9 -5
  5. package/src/cloud/EventChanges.js +15 -0
  6. package/src/cloud/EventRevisions.js +149 -0
  7. package/src/cloud/Events.js +139 -0
  8. package/src/cloud/Pages.js +9 -5
  9. package/src/cloud/documents/common.js +10 -0
  10. package/src/cloud/documents/eventsDocuments.js +254 -0
  11. package/src/handlers/article_revisions/ArticleRevisionsHandler.js +4 -4
  12. package/src/handlers/article_revisions/CodeHandler.js +2 -2
  13. package/src/handlers/article_revisions/GeneralHandler.js +2 -2
  14. package/src/handlers/article_revisions/LocksHandler.js +2 -2
  15. package/src/handlers/article_revisions/MetaHandler.js +2 -2
  16. package/src/handlers/article_revisions/PublishesHandler.js +2 -2
  17. package/src/handlers/article_revisions/RevertsHandler.js +2 -2
  18. package/src/handlers/article_revisions/TagHandler.js +2 -2
  19. package/src/handlers/article_revisions/UnlocksHandler.js +2 -2
  20. package/src/handlers/article_revisions/VisualHandler.js +2 -2
  21. package/src/handlers/articles/ArticlesHandler.js +20 -16
  22. package/src/handlers/articles/ClonesHandler.js +5 -3
  23. package/src/handlers/articles/DeletesHandler.js +5 -5
  24. package/src/handlers/articles/TranslationsHandler.js +25 -22
  25. package/src/handlers/articles/URLsHandler.js +6 -6
  26. package/src/handlers/event_revisions/CodeHandler.js +86 -0
  27. package/src/handlers/event_revisions/EventRevisionsHandler.js +47 -0
  28. package/src/handlers/event_revisions/GeneralHandler.js +94 -0
  29. package/src/handlers/event_revisions/LocksHandler.js +51 -0
  30. package/src/handlers/event_revisions/MetaHandler.js +86 -0
  31. package/src/handlers/event_revisions/PublishesHandler.js +84 -0
  32. package/src/handlers/event_revisions/RevertsHandler.js +26 -0
  33. package/src/handlers/event_revisions/TagHandler.js +85 -0
  34. package/src/handlers/event_revisions/UnlocksHandler.js +22 -0
  35. package/src/handlers/event_revisions/VisualHandler.js +80 -0
  36. package/src/handlers/event_revisions/WidgetHandler.js +41 -0
  37. package/src/handlers/events/ClonesHandler.js +19 -0
  38. package/src/handlers/events/DeletesHandler.js +68 -0
  39. package/src/handlers/events/EventsHandler.js +125 -0
  40. package/src/handlers/events/TranslationsHandler.js +107 -0
  41. package/src/handlers/events/URLsHandler.js +71 -0
  42. package/src/handlers/page_revisions/CodeHandler.js +2 -2
  43. package/src/handlers/page_revisions/GeneralHandler.js +2 -2
  44. package/src/handlers/page_revisions/LocksHandler.js +2 -2
  45. package/src/handlers/page_revisions/MetaHandler.js +2 -2
  46. package/src/handlers/page_revisions/PageRevisionsHandler.js +4 -4
  47. package/src/handlers/page_revisions/PublishesHandler.js +2 -2
  48. package/src/handlers/page_revisions/RevertsHandler.js +2 -2
  49. package/src/handlers/page_revisions/TagHandler.js +2 -2
  50. package/src/handlers/page_revisions/UnlocksHandler.js +2 -2
  51. package/src/handlers/page_revisions/VisualHandler.js +2 -2
  52. package/src/handlers/pages/ClonesHandler.js +5 -3
  53. package/src/handlers/pages/DeletesHandler.js +5 -5
  54. package/src/handlers/pages/PagesHandler.js +21 -16
  55. package/src/handlers/pages/TranslationsHandler.js +24 -22
  56. package/src/handlers/pages/URLsHandler.js +6 -6
  57. package/src/index.js +24 -2
  58. package/src/routeArticlesModule.js +142 -0
  59. package/src/routeCollection.js +2 -2
  60. package/src/routeEventsModule.js +142 -0
  61. package/src/routeMember.js +2 -2
  62. package/src/routeNestedCollection.js +8 -2
  63. package/src/routeNestedMember.js +8 -2
  64. package/src/routePagesModule.js +155 -0
  65. package/src/routeStandard.js +6 -4
  66. package/src/setupCloud.js +12 -0
  67. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/create.test.js +84 -0
  68. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/destroy.test.js +59 -0
  69. package/src/tests/handlers/article_revisions/CodesHandler.test/edit_form.test.js +56 -0
  70. package/src/tests/handlers/article_revisions/CodesHandler.test/update.test.js +148 -0
  71. package/src/tests/handlers/article_revisions/GeneralHandler.test/edit_form.test.js +65 -0
  72. package/src/tests/handlers/article_revisions/GeneralHandler.test/update.test.js +159 -0
  73. package/src/tests/handlers/article_revisions/MetaHandler.test/edit_form.test.js +57 -0
  74. package/src/tests/handlers/article_revisions/MetaHandler.test/update.test.js +152 -0
  75. package/src/tests/handlers/article_revisions/PublishesHandler.test/create.test.js +142 -0
  76. package/src/tests/handlers/article_revisions/PublishesHandler.test/create_form.test.js +47 -0
  77. package/src/tests/handlers/article_revisions/RevertsHandler.test/create.test.js +89 -0
  78. package/src/tests/handlers/article_revisions/TagHandler.test/edit_form.test.js +69 -0
  79. package/src/tests/handlers/article_revisions/TagHandler.test/update.test.js +152 -0
  80. package/src/tests/handlers/article_revisions/VisualHandler.test.test/edit_form.test.js +55 -0
  81. package/src/tests/handlers/article_revisions/VisualHandler.test.test/update.test.js +140 -0
  82. package/src/tests/handlers/article_revisions/WidgetHandler.test/show.test.js +46 -0
  83. package/src/tests/handlers/article_revisions/WidgetHandler.test/update.test.js +103 -0
  84. package/src/tests/handlers/articles/ArticlesHandler.test/create.test.js +11 -5
  85. package/src/tests/handlers/articles/ArticlesHandler.test/create_form.test.js +5 -2
  86. package/src/tests/handlers/articles/ArticlesHandler.test/index.test.js +9 -2
  87. package/src/tests/handlers/articles/ArticlesHandler.test/show.test.js +9 -3
  88. package/src/tests/handlers/articles/{ConesHandler.test → ClonesHandler.test}/create.test.js +8 -2
  89. package/src/tests/handlers/articles/DeletesHandler.test/create.test.js +12 -3
  90. package/src/tests/handlers/articles/DeletesHandler.test/create_form.test.js +8 -2
  91. package/src/tests/handlers/articles/URLsHandler.test/create.test.js +18 -6
  92. package/src/tests/handlers/articles/URLsHandler.test/create_form.test.js +8 -2
  93. package/src/tests/handlers/event_revisions/CodesHandler.test/edit_form.test.js +56 -0
  94. package/src/tests/handlers/event_revisions/CodesHandler.test/update.test.js +152 -0
  95. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/create.test.js +84 -0
  96. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/destroy.test.js +59 -0
  97. package/src/tests/handlers/event_revisions/GeneralHandler.test/edit_form.test.js +69 -0
  98. package/src/tests/handlers/event_revisions/GeneralHandler.test/update.test.js +167 -0
  99. package/src/tests/handlers/event_revisions/MetaHandler.test/edit_form.test.js +57 -0
  100. package/src/tests/handlers/event_revisions/MetaHandler.test/update.test.js +156 -0
  101. package/src/tests/handlers/event_revisions/PublishesHandler.test/create.test.js +142 -0
  102. package/src/tests/handlers/event_revisions/PublishesHandler.test/create_form.test.js +47 -0
  103. package/src/tests/handlers/event_revisions/RevertsHandler.test/create.test.js +89 -0
  104. package/src/tests/handlers/event_revisions/TagHandler.test/edit_form.test.js +69 -0
  105. package/src/tests/handlers/event_revisions/TagHandler.test/update.test.js +156 -0
  106. package/src/tests/handlers/event_revisions/VisualHandler.test.test/edit_form.test.js +55 -0
  107. package/src/tests/handlers/event_revisions/VisualHandler.test.test/update.test.js +144 -0
  108. package/src/tests/handlers/event_revisions/WidgetHandler.test/show.test.js +46 -0
  109. package/src/tests/handlers/event_revisions/WidgetHandler.test/update.test.js +103 -0
  110. package/src/tests/handlers/events/ClonesHandler.test/create.test.js +60 -0
  111. package/src/tests/handlers/events/DeletesHandler.test/create.test.js +119 -0
  112. package/src/tests/handlers/events/DeletesHandler.test/create_form.test.js +60 -0
  113. package/src/tests/handlers/events/EventsHandler.test/create.test.js +158 -0
  114. package/src/tests/handlers/events/EventsHandler.test/create_form.test.js +44 -0
  115. package/src/tests/handlers/events/EventsHandler.test/index.test.js +52 -0
  116. package/src/tests/handlers/events/EventsHandler.test/show.test.js +111 -0
  117. package/src/tests/handlers/events/URLsHandler.test/create.test.js +167 -0
  118. package/src/tests/handlers/events/URLsHandler.test/create_form.test.js +57 -0
  119. package/src/tests/handlers/page_revisions/CodesHandler.test/update.test.js +12 -3
  120. package/src/tests/handlers/page_revisions/GeneralHandler.test/update.test.js +12 -3
  121. package/src/tests/handlers/page_revisions/MetaHandler.test/update.test.js +12 -3
  122. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/create.test.js +12 -3
  123. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/destroy.test.js +8 -2
  124. package/src/tests/handlers/page_revisions/PublishesHandler.test/create.test.js +8 -2
  125. package/src/tests/handlers/page_revisions/RevertsHandler.test/create.test.js +12 -3
  126. package/src/tests/handlers/page_revisions/TagHandler.test/update.test.js +8 -2
  127. package/src/tests/handlers/page_revisions/VisualHandler.test.test/update.test.js +12 -3
  128. package/src/tests/handlers/pages/ConesHandler.test/create.test.js +8 -2
  129. package/src/tests/handlers/pages/DeletesHandler.test/create.test.js +12 -3
  130. package/src/tests/handlers/pages/DeletesHandler.test/create_form.test.js +8 -2
  131. package/src/tests/handlers/pages/PagesHandler.test/create.test.js +11 -5
  132. package/src/tests/handlers/pages/PagesHandler.test/create_form.test.js +1 -1
  133. package/src/tests/handlers/pages/PagesHandler.test/index.test.js +5 -2
  134. package/src/tests/handlers/pages/PagesHandler.test/show.test.js +9 -3
  135. package/src/tests/handlers/pages/URLsHandler.test/create.test.js +16 -4
  136. package/src/tests/handlers/pages/URLsHandler.test/create_form.test.js +8 -2
  137. package/src/tests/routeCollection.test.js +118 -105
  138. package/src/tests/routeMember.test.js +60 -54
  139. package/src/tests/routeNestedCollection.test.js +132 -126
  140. package/src/tests/routeNestedMember.test.js +60 -54
  141. package/src/views/articles/_form.ejs +17 -17
  142. package/src/views/articles/show.ejs +9 -9
  143. package/src/views/articles/translations/_form.ejs +3 -3
  144. package/src/views/articles/translations/create_form.ejs +7 -9
  145. package/src/views/event_revisions/_nav.ejs +40 -0
  146. package/src/views/event_revisions/codes/edit_form.ejs +39 -0
  147. package/src/views/event_revisions/general/edit_form.ejs +72 -0
  148. package/src/views/event_revisions/locks/create_form.ejs +35 -0
  149. package/src/views/event_revisions/meta/edit_form.ejs +41 -0
  150. package/src/views/event_revisions/publishes/_form.ejs +57 -0
  151. package/src/views/event_revisions/publishes/create_form.ejs +10 -0
  152. package/src/views/event_revisions/tags/edit_form.ejs +64 -0
  153. package/src/views/event_revisions/visuals/edit_form.ejs +42 -0
  154. package/src/views/events/_form.ejs +88 -0
  155. package/src/views/events/create_form.ejs +9 -0
  156. package/src/views/events/deletes/create_form.ejs +55 -0
  157. package/src/views/events/edit_form.ejs +3 -0
  158. package/src/views/events/index.ejs +161 -0
  159. package/src/views/events/show.ejs +281 -0
  160. package/src/views/events/translations/_form.ejs +79 -0
  161. package/src/views/events/translations/create_form.ejs +10 -0
  162. package/src/views/events/urls/create_form.ejs +31 -0
  163. package/src/views/pages/_form.ejs +16 -16
  164. package/src/views/pages/create_form.ejs +1 -1
  165. package/src/views/pages/show.ejs +9 -9
  166. package/src/views/pages/translations/_form.ejs +3 -3
  167. package/src/views/pages/translations/create_form.ejs +7 -9
  168. package/test/factory.js +42 -3
  169. package/src/routeArticles.js +0 -65
  170. package/src/routePages.js +0 -55
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@raketa-cloud/admin",
3
- "version": "0.0.15",
3
+ "version": "0.0.17",
4
4
  "main": "src/index.js",
5
5
  "scripts": {
6
6
  "dev": "npx tailwindcss -i ./src/styles/application.css -o ../../apps/admin/static/application.css --watch",
package/src/Adapter.js CHANGED
@@ -93,19 +93,19 @@ export default class Adapter {
93
93
  this.router = router;
94
94
  }
95
95
 
96
- routeCollection(_resource, _mapping) {
96
+ routeCollection(_resource, _mapping, _handlerOpts) {
97
97
  throw new Error("Implement in an adapter");
98
98
  }
99
99
 
100
- routeNestedCollection(_resource, _mapping) {
100
+ routeNestedCollection(_resource, _mapping, _handlerOpts) {
101
101
  throw new Error("Implement in an adapter");
102
102
  }
103
103
 
104
- routeMember(_resource, _mapping) {
104
+ routeMember(_resource, _mapping, _handlerOpts) {
105
105
  throw new Error("Implement in an adapter");
106
106
  }
107
107
 
108
- routeNestedMember(_resource, _mapping) {
108
+ routeNestedMember(_resource, _mapping, _handlerOpts) {
109
109
  throw new Error("Implement in an adapter");
110
110
  }
111
111
 
@@ -72,16 +72,10 @@ export default class HonoAdapter extends Adapter {
72
72
  });
73
73
  }
74
74
 
75
- async createAction([
76
- verb,
77
- path,
78
- resource,
79
- views,
80
- action,
81
- handler,
82
- before_filter,
83
- after_filter,
84
- ]) {
75
+ async createAction(
76
+ [verb, path, resource, views, action, handler, before_filter, after_filter],
77
+ handlerOpts
78
+ ) {
85
79
  const method = this.getMethod(verb);
86
80
 
87
81
  Object.keys(this.globalConfig.i18n.locales).forEach((currentLocale) => {
@@ -153,7 +147,7 @@ export default class HonoAdapter extends Adapter {
153
147
  redirect,
154
148
  json,
155
149
  assigns: actionAssigns = {},
156
- } = (await handler(ctx)) || {};
150
+ } = (await handler(ctx, handlerOpts)) || {};
157
151
  assigns.actionAssigns = actionAssigns;
158
152
 
159
153
  this.applyHeaders(headers, routerCtx);
@@ -200,20 +194,20 @@ export default class HonoAdapter extends Adapter {
200
194
  });
201
195
  }
202
196
 
203
- routeCollection(mapping) {
204
- mapping.forEach((handlerMap) => this.createAction(handlerMap));
197
+ routeCollection(mapping, handlerOpts) {
198
+ mapping.forEach((handlerMap) => this.createAction(handlerMap, handlerOpts));
205
199
  }
206
200
 
207
- routeNestedCollection(mapping) {
208
- mapping.forEach((handlerMap) => this.createAction(handlerMap));
201
+ routeNestedCollection(mapping, handlerOpts) {
202
+ mapping.forEach((handlerMap) => this.createAction(handlerMap, handlerOpts));
209
203
  }
210
204
 
211
- routeMember(mapping) {
212
- mapping.forEach((handlerMap) => this.createAction(handlerMap));
205
+ routeMember(mapping, handlerOpts) {
206
+ mapping.forEach((handlerMap) => this.createAction(handlerMap, handlerOpts));
213
207
  }
214
208
 
215
- routeNestedMember(mapping) {
216
- mapping.forEach((handlerMap) => this.createAction(handlerMap));
209
+ routeNestedMember(mapping, handlerOpts) {
210
+ mapping.forEach((handlerMap) => this.createAction(handlerMap, handlerOpts));
217
211
  }
218
212
 
219
213
  getMethod(verb) {
@@ -41,11 +41,15 @@ export default class Articles extends RaketaClient {
41
41
  return item;
42
42
  }
43
43
 
44
- async list(query, locale) {
45
- const { articles: items } = await this.query(
46
- ArticlesDocument,
47
- this.buildListInput(query, locale)
48
- );
44
+ async list(query, locale, articleTypeSlug) {
45
+ const vars = this.buildListInput(query, locale);
46
+
47
+ const { articles: items } = await this.query(ArticlesDocument, {
48
+ input: {
49
+ ...vars.input,
50
+ filters: { ...vars.input.filters, articleTypeSlug },
51
+ },
52
+ });
49
53
 
50
54
  return items;
51
55
  }
@@ -0,0 +1,15 @@
1
+ import RaketaClient from "./RaketaClient";
2
+ import { EventChangesDocument } from "./documents/eventsDocuments";
3
+
4
+ export default class EventChanges extends RaketaClient {
5
+ async all(eventId, locale) {
6
+ const { eventChanges: items } = await this.query(EventChangesDocument, {
7
+ input: {
8
+ id: eventId,
9
+ locale,
10
+ },
11
+ });
12
+
13
+ return items;
14
+ }
15
+ }
@@ -0,0 +1,149 @@
1
+ import RaketaClient from "./RaketaClient";
2
+ import {
3
+ DeleteEventDocument,
4
+ LockEventRevisionDocument,
5
+ MergeEventRevisionDocument,
6
+ EventRevisionDocument,
7
+ EventRevisionsDocument,
8
+ StartEventRevisionDocument,
9
+ UnlockEventRevisionDocument,
10
+ UpdateEventDocument,
11
+ UpdateEventWidgetsDocument,
12
+ ReopenEventChangeDocument,
13
+ } from "./documents/eventsDocuments";
14
+
15
+ export default class EventRevisions extends RaketaClient {
16
+ async all(eventId, locale) {
17
+ const { eventRevisions: items } = await this.query(EventRevisionsDocument, {
18
+ input: {
19
+ id: eventId,
20
+ locale,
21
+ },
22
+ });
23
+
24
+ return items;
25
+ }
26
+
27
+ async find(id, locale) {
28
+ const { eventRevision } = await this.query(EventRevisionDocument, {
29
+ input: {
30
+ id,
31
+ locale,
32
+ },
33
+ });
34
+
35
+ return eventRevision;
36
+ }
37
+
38
+ async publish(id, locale, params, eventParams) {
39
+ const {
40
+ mergeEventRevision: { event, errors },
41
+ } = await this.query(MergeEventRevisionDocument, {
42
+ input: {
43
+ id,
44
+ locale,
45
+ ...params,
46
+ event: { ...eventParams },
47
+ },
48
+ });
49
+
50
+ return { event, errors };
51
+ }
52
+
53
+ async create(eventId, locale) {
54
+ const {
55
+ startEventRevision: { revision, errors, eventErrors },
56
+ } = await this.query(StartEventRevisionDocument, {
57
+ input: {
58
+ id: eventId,
59
+ locale,
60
+ title: "New revision",
61
+ description: "",
62
+ },
63
+ });
64
+
65
+ return { revision, errors, eventErrors };
66
+ }
67
+
68
+ async update(id, locale, params) {
69
+ const {
70
+ updateEvent: { errors, event },
71
+ } = await this.query(UpdateEventDocument, {
72
+ input: {
73
+ id,
74
+ locale,
75
+ event: params,
76
+ },
77
+ });
78
+
79
+ return { event, errors };
80
+ }
81
+
82
+ async updateWidgets(id, locale, widgets) {
83
+ const {
84
+ updateEventWidgets: { errors, event },
85
+ } = await this.query(UpdateEventWidgetsDocument, {
86
+ input: {
87
+ id,
88
+ locale,
89
+ widgets: JSON.stringify(widgets),
90
+ },
91
+ });
92
+
93
+ return { event, errors };
94
+ }
95
+
96
+ async delete(revisionId, locale) {
97
+ const {
98
+ deleteEvent: { event, errors },
99
+ } = await this.query(DeleteEventDocument, {
100
+ input: {
101
+ id: revisionId,
102
+ locale,
103
+ },
104
+ });
105
+
106
+ return { revision: event, errors };
107
+ }
108
+
109
+ async lock(revisionId, locale, message) {
110
+ const {
111
+ lockEventRevision: { revision, errors },
112
+ } = await this.query(LockEventRevisionDocument, {
113
+ input: {
114
+ revisionId,
115
+ message,
116
+ locale,
117
+ },
118
+ });
119
+
120
+ return { revision, errors };
121
+ }
122
+
123
+ async unlock(revisionId, locale) {
124
+ const {
125
+ unlockEventRevision: { revision, errors },
126
+ } = await this.query(UnlockEventRevisionDocument, {
127
+ input: {
128
+ revisionId,
129
+ locale,
130
+ },
131
+ });
132
+
133
+ return { revision, errors };
134
+ }
135
+
136
+ async revert(eventId, version, locale) {
137
+ const {
138
+ reopenEventChange: { revision, errors, eventErrors },
139
+ } = await this.query(ReopenEventChangeDocument, {
140
+ input: {
141
+ eventId,
142
+ locale,
143
+ version,
144
+ },
145
+ });
146
+
147
+ return { revision, errors, eventErrors };
148
+ }
149
+ }
@@ -0,0 +1,139 @@
1
+ import RaketaClient from "./RaketaClient";
2
+ import {
3
+ CreateEventDocument,
4
+ EventByIdDocument,
5
+ EventsDocument,
6
+ CloneEventDocument,
7
+ DeleteEventDocument,
8
+ TranslateEventDocument,
9
+ ChangeEventSlugDocument,
10
+ } from "./documents/eventsDocuments";
11
+ import { toDateTimeInput } from "../utils";
12
+
13
+ export default class Events extends RaketaClient {
14
+ defaults() {
15
+ return {
16
+ visibility: "private",
17
+ layout: "default",
18
+ publish_at: toDateTimeInput(new Date()),
19
+ starts_at: toDateTimeInput(new Date()),
20
+ ends_at: toDateTimeInput(new Date()),
21
+ tags: [],
22
+ categories: [],
23
+ };
24
+ }
25
+
26
+ visibilityOptions() {
27
+ return [
28
+ ["private", "Private"],
29
+ ["public", "Public"],
30
+ ["unlisted", "Unlisted"],
31
+ ["protected", "Password protected"],
32
+ ];
33
+ }
34
+
35
+ async find(id, locale) {
36
+ const { event: item } = await this.query(EventByIdDocument, {
37
+ input: {
38
+ id,
39
+ locale,
40
+ },
41
+ });
42
+
43
+ return item;
44
+ }
45
+
46
+ async list(query, locale, eventTypeSlug) {
47
+ const vars = this.buildListInput(query, locale);
48
+
49
+ const { events: items } = await this.query(EventsDocument, {
50
+ input: {
51
+ ...vars.input,
52
+ filters: { ...vars.input.filters, eventTypeSlug },
53
+ },
54
+ });
55
+
56
+ return items;
57
+ }
58
+
59
+ async create(params, locale, eventTypeSlug) {
60
+ params.widgets = JSON.stringify(params.widgets);
61
+ params.settings = JSON.stringify(params.settings);
62
+
63
+ const {
64
+ createEvent: { errors, event },
65
+ } = await this.query(CreateEventDocument, {
66
+ input: {
67
+ locale,
68
+ event: params,
69
+ eventTypeSlug,
70
+ },
71
+ });
72
+
73
+ return { event, errors };
74
+ }
75
+
76
+ async clone(id, locale) {
77
+ const {
78
+ cloneEvent: { errors, event },
79
+ } = await this.query(CloneEventDocument, {
80
+ input: { id: id, locale: locale },
81
+ });
82
+
83
+ return { event, errors };
84
+ }
85
+
86
+ async delete(id, locale, redirect) {
87
+ const input = {
88
+ id,
89
+ locale,
90
+ };
91
+
92
+ if (redirect) {
93
+ input.redirect = redirect;
94
+ }
95
+
96
+ const {
97
+ deleteEvent: { errors, event },
98
+ } = await this.query(DeleteEventDocument, { input });
99
+
100
+ return { event, errors };
101
+ }
102
+
103
+ async translate(id, locale, params) {
104
+ params.widgets = JSON.stringify(params.widgets);
105
+ params.settings = JSON.stringify(params.settings);
106
+
107
+ const {
108
+ translateEvent: { errors, event },
109
+ } = await this.query(TranslateEventDocument, {
110
+ input: {
111
+ locale,
112
+ sourceEventId: id,
113
+ event: params,
114
+ },
115
+ });
116
+
117
+ return { event, errors };
118
+ }
119
+
120
+ async updateSlug(id, slug, locale, redirect) {
121
+ const input = {
122
+ id,
123
+ slug,
124
+ locale,
125
+ };
126
+
127
+ if (redirect) {
128
+ input.redirect = redirect;
129
+ }
130
+
131
+ const {
132
+ changeEventSlug: { errors, event },
133
+ } = await this.query(ChangeEventSlugDocument, {
134
+ input,
135
+ });
136
+
137
+ return { event, errors };
138
+ }
139
+ }
@@ -39,11 +39,15 @@ export default class Pages extends RaketaClient {
39
39
  return item;
40
40
  }
41
41
 
42
- async list(query, locale) {
43
- const { pages: items } = await this.query(
44
- PagesDocument,
45
- this.buildListInput(query, locale)
46
- );
42
+ async list(query, locale, pageTypeSlug) {
43
+ const vars = this.buildListInput(query, locale);
44
+
45
+ const { pages: items } = await this.query(PagesDocument, {
46
+ input: {
47
+ ...vars.input,
48
+ filters: { ...vars.input.filters, pageTypeSlug },
49
+ },
50
+ });
47
51
 
48
52
  return items;
49
53
  }
@@ -20,6 +20,16 @@ export function articleTypeFragment() {
20
20
  `;
21
21
  }
22
22
 
23
+ export function eventTypeFragment() {
24
+ return gql`
25
+ {
26
+ id
27
+ slug
28
+ title
29
+ }
30
+ `;
31
+ }
32
+
23
33
  export function tagFragment() {
24
34
  return gql`
25
35
  {
@@ -0,0 +1,254 @@
1
+ import { gql } from "graphql-request";
2
+ import {
3
+ categoryFragment,
4
+ errorsFragment,
5
+ eventTypeFragment,
6
+ paginationFragment,
7
+ revisionMetaFragment,
8
+ tagFragment,
9
+ } from "./common";
10
+
11
+ function eventFragment() {
12
+ return gql`
13
+ {
14
+ id
15
+ slug
16
+ title
17
+ widgets
18
+ settings
19
+ visibility
20
+ publishAt
21
+ startsAt
22
+ endsAt
23
+ originalId
24
+ translations
25
+ revisionsCount
26
+ tags ${tagFragment()}
27
+ eventType ${eventTypeFragment()}
28
+ categories ${categoryFragment()}
29
+ }
30
+ `;
31
+ }
32
+
33
+ function eventRevisionFragment() {
34
+ return gql`
35
+ {
36
+ id
37
+ slug
38
+ title
39
+ widgets
40
+ settings
41
+ visibility
42
+ publishAt
43
+ startsAt
44
+ endsAt
45
+ originalId
46
+ insertedAt
47
+ tags ${tagFragment()}
48
+ eventType ${eventTypeFragment()}
49
+ meta ${revisionMetaFragment()}
50
+ categories ${categoryFragment()}
51
+ }
52
+ `;
53
+ }
54
+
55
+ const EventByIdDocument = gql`
56
+ query EventByID($input: IdInput!) {
57
+ event(input: $input) ${eventFragment()}
58
+ }
59
+ `;
60
+
61
+ const EventChangesDocument = gql`
62
+ query EventChanges($input: IdInput!) {
63
+ eventChanges(input: $input) {
64
+ list {
65
+ version
66
+ title
67
+ description
68
+ operator
69
+ operatorMeta
70
+ source
71
+ insertedAt
72
+ }
73
+ }
74
+ }
75
+ `;
76
+
77
+ const EventsDocument = gql`
78
+ query Events($input: EventsInput!) {
79
+ events(input: $input) {
80
+ list ${eventFragment()}
81
+ pagination ${paginationFragment()}
82
+ }
83
+ }
84
+ `;
85
+
86
+ const CreateEventDocument = gql`
87
+ mutation CreateEvent($input: CreateEventInput!) {
88
+ createEvent(input: $input) {
89
+ event ${eventFragment()}
90
+ errors ${errorsFragment()}
91
+ }
92
+ }
93
+ `;
94
+
95
+ const UpdateEventDocument = gql`
96
+ mutation UpdateEvent($input: UpdateEventInput!) {
97
+ updateEvent(input: $input) {
98
+ event ${eventFragment()}
99
+ errors ${errorsFragment()}
100
+ }
101
+ }
102
+ `;
103
+
104
+ const UpdateEventWidgetsDocument = gql`
105
+ mutation updateEventWidgets($input: UpdateEventWidgetsInput!) {
106
+ updateEventWidgets(input: $input) {
107
+ event ${eventFragment()}
108
+ errors ${errorsFragment()}
109
+ }
110
+ }
111
+ `;
112
+
113
+ const CloneEventDocument = gql`
114
+ mutation CloneEvent($input: IdInput!) {
115
+ cloneEvent(input: $input) {
116
+ event ${eventFragment()}
117
+ errors ${errorsFragment()}
118
+ }
119
+ }
120
+ `;
121
+
122
+ const DeleteEventDocument = gql`
123
+ mutation DeleteEvent($input: EventDeleteInput!) {
124
+ deleteEvent(input: $input) {
125
+ event ${eventFragment()}
126
+ errors ${errorsFragment()}
127
+ }
128
+ }
129
+ `;
130
+
131
+ const EventAndSiteDocument = gql`
132
+ query EventAndSite($input: SlugInput!) {
133
+ eventAndSite(input: $input) {
134
+ id
135
+ slug
136
+ title
137
+ widgets
138
+ settings
139
+ visibility
140
+ publishAt
141
+ startsAt
142
+ endsAt
143
+ originalId
144
+ translations
145
+ tags ${tagFragment()}
146
+ eventType ${eventTypeFragment()}
147
+ categories ${categoryFragment()}
148
+ websiteSettings
149
+ }
150
+ }
151
+ `;
152
+
153
+ const TranslateEventDocument = gql`
154
+ mutation TranslateEvent($input: TranslateEventInput!) {
155
+ translateEvent(input: $input) {
156
+ event ${eventFragment()}
157
+ errors ${errorsFragment()}
158
+ }
159
+ }
160
+ `;
161
+
162
+ const EventRevisionsDocument = gql`
163
+ query EventRevisions($input: IdInput!) {
164
+ eventRevisions(input: $input) {
165
+ list ${eventRevisionFragment()}
166
+ }
167
+ }
168
+ `;
169
+
170
+ const EventRevisionDocument = gql`
171
+ query EventRevision($input: IdInput!) {
172
+ eventRevision(input: $input) ${eventRevisionFragment()}
173
+ }
174
+ `;
175
+
176
+ const StartEventRevisionDocument = gql`
177
+ mutation StartEventRevision($input: StartEventRevisionInput!) {
178
+ startEventRevision(input: $input) {
179
+ revision ${eventRevisionFragment()}
180
+ errors ${errorsFragment()}
181
+ eventErrors ${errorsFragment()}
182
+ }
183
+ }
184
+ `;
185
+
186
+ const MergeEventRevisionDocument = gql`
187
+ mutation MergeEventRevision($input: MergeEventRevisionInput!) {
188
+ mergeEventRevision(input: $input) {
189
+ event ${eventFragment()}
190
+ errors ${errorsFragment()}
191
+ }
192
+ }
193
+ `;
194
+
195
+ const ChangeEventSlugDocument = gql`
196
+ mutation ($input: ChangeEventSlugInput!) {
197
+ changeEventSlug(input: $input) {
198
+ event ${eventFragment()}
199
+ errors ${errorsFragment()}
200
+ }
201
+ }
202
+ `;
203
+
204
+ const ReopenEventChangeDocument = gql`
205
+ mutation($input: ReopenEventChangeInput!)
206
+ {
207
+ reopenEventChange(input: $input) {
208
+ revision ${eventRevisionFragment()}
209
+ errors ${errorsFragment()}
210
+ eventErrors ${errorsFragment()}
211
+ }
212
+ }
213
+ `;
214
+
215
+ const LockEventRevisionDocument = gql`
216
+ mutation LockEventRevision($input: LockEventRevisionInput!) {
217
+ lockEventRevision(input: $input) {
218
+ revision ${eventRevisionFragment()}
219
+ errors ${errorsFragment()}
220
+ eventErrors ${errorsFragment()}
221
+ }
222
+ }
223
+ `;
224
+
225
+ const UnlockEventRevisionDocument = gql`
226
+ mutation UnlockEventRevision($input: UnlockEventRevisionInput!) {
227
+ unlockEventRevision(input: $input) {
228
+ revision ${eventRevisionFragment()}
229
+ errors ${errorsFragment()}
230
+ eventErrors ${errorsFragment()}
231
+ }
232
+ }
233
+ `;
234
+
235
+ export {
236
+ EventByIdDocument,
237
+ EventsDocument,
238
+ CreateEventDocument,
239
+ UpdateEventDocument,
240
+ UpdateEventWidgetsDocument,
241
+ CloneEventDocument,
242
+ DeleteEventDocument,
243
+ EventAndSiteDocument,
244
+ TranslateEventDocument,
245
+ EventRevisionDocument,
246
+ EventRevisionsDocument,
247
+ StartEventRevisionDocument,
248
+ MergeEventRevisionDocument,
249
+ EventChangesDocument,
250
+ ChangeEventSlugDocument,
251
+ ReopenEventChangeDocument,
252
+ LockEventRevisionDocument,
253
+ UnlockEventRevisionDocument,
254
+ };