@raketa-cloud/admin 0.0.16 → 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 (134) 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/Events.js +9 -5
  6. package/src/cloud/Pages.js +9 -5
  7. package/src/handlers/article_revisions/ArticleRevisionsHandler.js +4 -4
  8. package/src/handlers/article_revisions/CodeHandler.js +2 -2
  9. package/src/handlers/article_revisions/GeneralHandler.js +2 -2
  10. package/src/handlers/article_revisions/LocksHandler.js +2 -2
  11. package/src/handlers/article_revisions/MetaHandler.js +2 -2
  12. package/src/handlers/article_revisions/PublishesHandler.js +2 -2
  13. package/src/handlers/article_revisions/RevertsHandler.js +2 -2
  14. package/src/handlers/article_revisions/TagHandler.js +2 -2
  15. package/src/handlers/article_revisions/UnlocksHandler.js +2 -2
  16. package/src/handlers/article_revisions/VisualHandler.js +2 -2
  17. package/src/handlers/articles/ArticlesHandler.js +20 -16
  18. package/src/handlers/articles/ClonesHandler.js +5 -3
  19. package/src/handlers/articles/DeletesHandler.js +5 -5
  20. package/src/handlers/articles/TranslationsHandler.js +25 -22
  21. package/src/handlers/articles/URLsHandler.js +6 -6
  22. package/src/handlers/event_revisions/CodeHandler.js +2 -2
  23. package/src/handlers/event_revisions/EventRevisionsHandler.js +4 -4
  24. package/src/handlers/event_revisions/GeneralHandler.js +3 -2
  25. package/src/handlers/event_revisions/LocksHandler.js +2 -2
  26. package/src/handlers/event_revisions/MetaHandler.js +2 -2
  27. package/src/handlers/event_revisions/PublishesHandler.js +2 -2
  28. package/src/handlers/event_revisions/RevertsHandler.js +2 -2
  29. package/src/handlers/event_revisions/TagHandler.js +2 -2
  30. package/src/handlers/event_revisions/UnlocksHandler.js +2 -2
  31. package/src/handlers/event_revisions/VisualHandler.js +2 -2
  32. package/src/handlers/events/ClonesHandler.js +5 -3
  33. package/src/handlers/events/DeletesHandler.js +5 -5
  34. package/src/handlers/events/EventsHandler.js +20 -16
  35. package/src/handlers/events/TranslationsHandler.js +31 -23
  36. package/src/handlers/events/URLsHandler.js +5 -5
  37. package/src/handlers/page_revisions/CodeHandler.js +2 -2
  38. package/src/handlers/page_revisions/GeneralHandler.js +2 -2
  39. package/src/handlers/page_revisions/LocksHandler.js +2 -2
  40. package/src/handlers/page_revisions/MetaHandler.js +2 -2
  41. package/src/handlers/page_revisions/PageRevisionsHandler.js +4 -4
  42. package/src/handlers/page_revisions/PublishesHandler.js +2 -2
  43. package/src/handlers/page_revisions/RevertsHandler.js +2 -2
  44. package/src/handlers/page_revisions/TagHandler.js +2 -2
  45. package/src/handlers/page_revisions/UnlocksHandler.js +2 -2
  46. package/src/handlers/page_revisions/VisualHandler.js +2 -2
  47. package/src/handlers/pages/ClonesHandler.js +5 -3
  48. package/src/handlers/pages/DeletesHandler.js +5 -5
  49. package/src/handlers/pages/PagesHandler.js +21 -16
  50. package/src/handlers/pages/TranslationsHandler.js +24 -22
  51. package/src/handlers/pages/URLsHandler.js +6 -6
  52. package/src/index.js +3 -3
  53. package/src/routeArticlesModule.js +142 -0
  54. package/src/routeCollection.js +2 -2
  55. package/src/routeEventsModule.js +142 -0
  56. package/src/routeMember.js +2 -2
  57. package/src/routeNestedCollection.js +8 -2
  58. package/src/routeNestedMember.js +8 -2
  59. package/src/routePagesModule.js +155 -0
  60. package/src/routeStandard.js +6 -6
  61. package/src/tests/handlers/article_revisions/{PageRevisionsHandler.test → ArticleRevisionsHandler.test}/create.test.js +12 -3
  62. package/src/tests/handlers/article_revisions/{PageRevisionsHandler.test → ArticleRevisionsHandler.test}/destroy.test.js +8 -2
  63. package/src/tests/handlers/article_revisions/CodesHandler.test/update.test.js +12 -3
  64. package/src/tests/handlers/article_revisions/GeneralHandler.test/update.test.js +12 -3
  65. package/src/tests/handlers/article_revisions/MetaHandler.test/update.test.js +12 -3
  66. package/src/tests/handlers/article_revisions/PublishesHandler.test/create.test.js +8 -2
  67. package/src/tests/handlers/article_revisions/RevertsHandler.test/create.test.js +12 -3
  68. package/src/tests/handlers/article_revisions/TagHandler.test/update.test.js +12 -3
  69. package/src/tests/handlers/article_revisions/VisualHandler.test.test/update.test.js +12 -3
  70. package/src/tests/handlers/articles/ArticlesHandler.test/create.test.js +11 -5
  71. package/src/tests/handlers/articles/ArticlesHandler.test/create_form.test.js +5 -2
  72. package/src/tests/handlers/articles/ArticlesHandler.test/index.test.js +9 -2
  73. package/src/tests/handlers/articles/ArticlesHandler.test/show.test.js +9 -3
  74. package/src/tests/handlers/articles/{ConesHandler.test → ClonesHandler.test}/create.test.js +8 -2
  75. package/src/tests/handlers/articles/DeletesHandler.test/create.test.js +12 -3
  76. package/src/tests/handlers/articles/DeletesHandler.test/create_form.test.js +8 -2
  77. package/src/tests/handlers/articles/URLsHandler.test/create.test.js +18 -6
  78. package/src/tests/handlers/articles/URLsHandler.test/create_form.test.js +8 -2
  79. package/src/tests/handlers/event_revisions/CodesHandler.test/update.test.js +12 -3
  80. package/src/tests/handlers/event_revisions/{PageRevisionsHandler.test → EventRevisionsHandler.test}/create.test.js +12 -3
  81. package/src/tests/handlers/event_revisions/{PageRevisionsHandler.test → EventRevisionsHandler.test}/destroy.test.js +8 -2
  82. package/src/tests/handlers/event_revisions/GeneralHandler.test/update.test.js +12 -3
  83. package/src/tests/handlers/event_revisions/MetaHandler.test/update.test.js +12 -3
  84. package/src/tests/handlers/event_revisions/PublishesHandler.test/create.test.js +8 -2
  85. package/src/tests/handlers/event_revisions/RevertsHandler.test/create.test.js +12 -3
  86. package/src/tests/handlers/event_revisions/TagHandler.test/update.test.js +12 -3
  87. package/src/tests/handlers/event_revisions/VisualHandler.test.test/update.test.js +12 -3
  88. package/src/tests/handlers/events/{ConesHandler.test → ClonesHandler.test}/create.test.js +8 -2
  89. package/src/tests/handlers/events/DeletesHandler.test/create.test.js +12 -3
  90. package/src/tests/handlers/events/DeletesHandler.test/create_form.test.js +8 -2
  91. package/src/tests/handlers/events/EventsHandler.test/create.test.js +11 -5
  92. package/src/tests/handlers/events/EventsHandler.test/create_form.test.js +5 -2
  93. package/src/tests/handlers/events/EventsHandler.test/index.test.js +5 -2
  94. package/src/tests/handlers/events/EventsHandler.test/show.test.js +9 -3
  95. package/src/tests/handlers/events/URLsHandler.test/create.test.js +18 -6
  96. package/src/tests/handlers/events/URLsHandler.test/create_form.test.js +8 -2
  97. package/src/tests/handlers/page_revisions/CodesHandler.test/update.test.js +12 -3
  98. package/src/tests/handlers/page_revisions/GeneralHandler.test/update.test.js +12 -3
  99. package/src/tests/handlers/page_revisions/MetaHandler.test/update.test.js +12 -3
  100. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/create.test.js +12 -3
  101. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/destroy.test.js +8 -2
  102. package/src/tests/handlers/page_revisions/PublishesHandler.test/create.test.js +8 -2
  103. package/src/tests/handlers/page_revisions/RevertsHandler.test/create.test.js +12 -3
  104. package/src/tests/handlers/page_revisions/TagHandler.test/update.test.js +8 -2
  105. package/src/tests/handlers/page_revisions/VisualHandler.test.test/update.test.js +12 -3
  106. package/src/tests/handlers/pages/ConesHandler.test/create.test.js +8 -2
  107. package/src/tests/handlers/pages/DeletesHandler.test/create.test.js +12 -3
  108. package/src/tests/handlers/pages/DeletesHandler.test/create_form.test.js +8 -2
  109. package/src/tests/handlers/pages/PagesHandler.test/create.test.js +11 -5
  110. package/src/tests/handlers/pages/PagesHandler.test/create_form.test.js +1 -1
  111. package/src/tests/handlers/pages/PagesHandler.test/index.test.js +5 -2
  112. package/src/tests/handlers/pages/PagesHandler.test/show.test.js +9 -3
  113. package/src/tests/handlers/pages/URLsHandler.test/create.test.js +16 -4
  114. package/src/tests/handlers/pages/URLsHandler.test/create_form.test.js +8 -2
  115. package/src/tests/routeCollection.test.js +118 -105
  116. package/src/tests/routeMember.test.js +60 -54
  117. package/src/tests/routeNestedCollection.test.js +132 -126
  118. package/src/tests/routeNestedMember.test.js +60 -54
  119. package/src/views/articles/_form.ejs +17 -17
  120. package/src/views/articles/show.ejs +9 -9
  121. package/src/views/articles/translations/_form.ejs +3 -3
  122. package/src/views/articles/translations/create_form.ejs +6 -8
  123. package/src/views/events/_form.ejs +19 -19
  124. package/src/views/events/show.ejs +9 -9
  125. package/src/views/events/translations/_form.ejs +3 -3
  126. package/src/views/events/translations/create_form.ejs +7 -8
  127. package/src/views/pages/_form.ejs +16 -16
  128. package/src/views/pages/create_form.ejs +1 -1
  129. package/src/views/pages/show.ejs +9 -9
  130. package/src/views/pages/translations/_form.ejs +3 -3
  131. package/src/views/pages/translations/create_form.ejs +7 -9
  132. package/src/routeArticles.js +0 -65
  133. package/src/routeEvents.js +0 -55
  134. package/src/routePages.js +0 -55
@@ -25,7 +25,7 @@ const edit_form = async (ctx) => {
25
25
  };
26
26
  };
27
27
 
28
- const update = async (ctx) => {
28
+ const update = async (ctx, opts) => {
29
29
  const { parent_id } = ctx.params;
30
30
 
31
31
  const revision = await ctx.client.eventRevisions.find(parent_id, ctx.locale);
@@ -76,7 +76,7 @@ const update = async (ctx) => {
76
76
  }
77
77
 
78
78
  return {
79
- redirect: `/${ctx.locale}/event_revisions/${revision.id}/codes/edit`,
79
+ redirect: `/${ctx.locale}/${opts.eventType}_revisions/${revision.id}/codes/edit`,
80
80
  };
81
81
  };
82
82
 
@@ -1,4 +1,4 @@
1
- const create = async (ctx) => {
1
+ const create = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
 
4
4
  const { errors, eventErrors } = await ctx.client.eventRevisions.create(
@@ -15,11 +15,11 @@ const create = async (ctx) => {
15
15
  }
16
16
 
17
17
  return {
18
- redirect: `/${ctx.locale}/events/${parent_id}`,
18
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}/${parent_id}`,
19
19
  };
20
20
  };
21
21
 
22
- const destroy = async (ctx) => {
22
+ const destroy = async (ctx, opts) => {
23
23
  const { id } = ctx.params;
24
24
 
25
25
  const { errors, revision } = await ctx.client.eventRevisions.delete(
@@ -35,7 +35,7 @@ const destroy = async (ctx) => {
35
35
 
36
36
  return {
37
37
  headers: {
38
- "HX-Redirect": `/${ctx.locale}/events/${revision.originalId}`,
38
+ "HX-Redirect": `/${ctx.locale}/${opts.eventTypePlural}/${revision.originalId}`,
39
39
  },
40
40
  json: {},
41
41
  };
@@ -1,4 +1,5 @@
1
1
  import { toDateTimeInput, toUTCISO8601String } from "../../utils";
2
+
2
3
  const edit_form = async (ctx) => {
3
4
  const { parent_id } = ctx.params;
4
5
 
@@ -31,7 +32,7 @@ const edit_form = async (ctx) => {
31
32
  };
32
33
  };
33
34
 
34
- const update = async (ctx) => {
35
+ const update = async (ctx, opts) => {
35
36
  const { parent_id } = ctx.params;
36
37
 
37
38
  const revision = await ctx.client.eventRevisions.find(parent_id, ctx.locale);
@@ -83,7 +84,7 @@ const update = async (ctx) => {
83
84
  }
84
85
 
85
86
  return {
86
- redirect: `/${ctx.locale}/event_revisions/${revision.id}/general/edit`,
87
+ redirect: `/${ctx.locale}/${opts.eventType}_revisions/${revision.id}/general/edit`,
87
88
  };
88
89
  };
89
90
 
@@ -17,7 +17,7 @@ const create_form = async (ctx) => {
17
17
  };
18
18
  };
19
19
 
20
- const create = async (ctx) => {
20
+ const create = async (ctx, opts) => {
21
21
  const { parent_id } = ctx.params;
22
22
  const { message } = ctx.resourceParams.lock_settings;
23
23
 
@@ -41,7 +41,7 @@ const create = async (ctx) => {
41
41
  }
42
42
 
43
43
  return {
44
- redirect: `/${ctx.locale}/events/${revision.originalId}`,
44
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}/${revision.originalId}`,
45
45
  };
46
46
  };
47
47
 
@@ -24,7 +24,7 @@ const edit_form = async (ctx) => {
24
24
  };
25
25
  };
26
26
 
27
- const update = async (ctx) => {
27
+ const update = async (ctx, opts) => {
28
28
  const { parent_id } = ctx.params;
29
29
 
30
30
  const revision = await ctx.client.eventRevisions.find(parent_id, ctx.locale);
@@ -76,7 +76,7 @@ const update = async (ctx) => {
76
76
  }
77
77
 
78
78
  return {
79
- redirect: `/${ctx.locale}/event_revisions/${revision.id}/meta/edit`,
79
+ redirect: `/${ctx.locale}/${opts.eventType}_revisions/${revision.id}/meta/edit`,
80
80
  };
81
81
  };
82
82
 
@@ -43,7 +43,7 @@ function publishEventParams(
43
43
  return { visibility };
44
44
  }
45
45
 
46
- const create = async (ctx) => {
46
+ const create = async (ctx, opts) => {
47
47
  const { parent_id } = ctx.params;
48
48
  const publishing = ctx.resourceParams.publishing;
49
49
 
@@ -74,7 +74,7 @@ const create = async (ctx) => {
74
74
  }
75
75
 
76
76
  return {
77
- redirect: `/${ctx.locale}/events/${revision.originalId}`,
77
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}/${revision.originalId}`,
78
78
  };
79
79
  };
80
80
 
@@ -1,4 +1,4 @@
1
- const create = async (ctx) => {
1
+ const create = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
  const { version } = ctx.resourceParams;
4
4
 
@@ -17,7 +17,7 @@ const create = async (ctx) => {
17
17
  }
18
18
 
19
19
  return {
20
- redirect: `/${ctx.locale}/events/${parent_id}`,
20
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}/${parent_id}`,
21
21
  };
22
22
  };
23
23
 
@@ -25,7 +25,7 @@ const edit_form = async (ctx) => {
25
25
  };
26
26
  };
27
27
 
28
- const update = async (ctx) => {
28
+ const update = async (ctx, opts) => {
29
29
  const { parent_id } = ctx.params;
30
30
 
31
31
  const revision = await ctx.client.eventRevisions.find(parent_id, ctx.locale);
@@ -75,7 +75,7 @@ const update = async (ctx) => {
75
75
  }
76
76
 
77
77
  return {
78
- redirect: `/${ctx.locale}/event_revisions/${revision.id}/tags/edit`,
78
+ redirect: `/${ctx.locale}/${opts.eventType}_revisions/${revision.id}/tags/edit`,
79
79
  };
80
80
  };
81
81
 
@@ -1,4 +1,4 @@
1
- const create = async (ctx) => {
1
+ const create = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
 
4
4
  const { revision, errors, eventErrors } =
@@ -13,7 +13,7 @@ const create = async (ctx) => {
13
13
  }
14
14
 
15
15
  return {
16
- redirect: `/${ctx.locale}/events/${revision.originalId}`,
16
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}/${revision.originalId}`,
17
17
  };
18
18
  };
19
19
 
@@ -22,7 +22,7 @@ const edit_form = async (ctx) => {
22
22
  };
23
23
  };
24
24
 
25
- const update = async (ctx) => {
25
+ const update = async (ctx, opts) => {
26
26
  const { parent_id } = ctx.params;
27
27
 
28
28
  const revision = await ctx.client.eventRevisions.find(parent_id, ctx.locale);
@@ -70,7 +70,7 @@ const update = async (ctx) => {
70
70
  }
71
71
 
72
72
  return {
73
- redirect: `/${ctx.locale}/event_revisions/${revision.id}/visuals/edit`,
73
+ redirect: `/${ctx.locale}/${opts.eventType}_revisions/${revision.id}/visuals/edit`,
74
74
  };
75
75
  };
76
76
 
@@ -1,14 +1,16 @@
1
- const create = async (ctx) => {
1
+ const create = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
 
4
4
  const { errors } = await ctx.client.events.clone(parent_id, ctx.locale);
5
5
 
6
6
  if (errors) {
7
- throw new Error(`Error cloning event: ${JSON.stringify(errors)}`);
7
+ throw new Error(
8
+ `Error cloning ${opts.eventType}: ${JSON.stringify(errors)}`
9
+ );
8
10
  }
9
11
 
10
12
  return {
11
- redirect: `/${ctx.locale}/events`,
13
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}`,
12
14
  };
13
15
  };
14
16
 
@@ -1,9 +1,9 @@
1
- const create_form = async (ctx) => {
1
+ const create_form = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
  const event = await ctx.client.events.find(parent_id, ctx.locale);
4
4
 
5
5
  if (!event) {
6
- throw new Error(`Missing event #${parent_id}`);
6
+ throw new Error(`Missing ${opts.eventType} #${parent_id}`);
7
7
  }
8
8
 
9
9
  return {
@@ -18,13 +18,13 @@ const create_form = async (ctx) => {
18
18
  };
19
19
  };
20
20
 
21
- const create = async (ctx) => {
21
+ const create = async (ctx, opts) => {
22
22
  const { parent_id } = ctx.params;
23
23
  const params = ctx.resourceParams.deleteAction;
24
24
  const event = await ctx.client.events.find(parent_id, ctx.locale);
25
25
 
26
26
  if (!event) {
27
- throw new Error(`Missing event #${parent_id}`);
27
+ throw new Error(`Missing ${opts.eventType} #${parent_id}`);
28
28
  }
29
29
 
30
30
  let redirect = null;
@@ -58,7 +58,7 @@ const create = async (ctx) => {
58
58
  }
59
59
 
60
60
  return {
61
- redirect: `/${ctx.locale}/events`,
61
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}`,
62
62
  };
63
63
  };
64
64
 
@@ -1,7 +1,11 @@
1
1
  import { toUTCISO8601String } from "../../utils";
2
2
 
3
- const index = async (ctx) => {
4
- const items = await ctx.client.events.list(ctx.query, ctx.locale);
3
+ const index = async (ctx, opts) => {
4
+ const items = await ctx.client.events.list(
5
+ ctx.query,
6
+ ctx.locale,
7
+ opts.eventType
8
+ );
5
9
  const tags = await ctx.client.tags.all(ctx.locale);
6
10
 
7
11
  return {
@@ -13,12 +17,12 @@ const index = async (ctx) => {
13
17
  };
14
18
  };
15
19
 
16
- const show = async (ctx) => {
20
+ const show = async (ctx, opts) => {
17
21
  const { id } = ctx.params;
18
- const event = await ctx.client.events.find(id, ctx.locale);
22
+ const resource = await ctx.client.events.find(id, ctx.locale);
19
23
 
20
- if (!event) {
21
- throw new Error(`Missing event #${id}`);
24
+ if (!resource) {
25
+ throw new Error(`Missing ${opts.eventType} #${id}`);
22
26
  }
23
27
 
24
28
  const revisions = await ctx.client.eventRevisions.all(id, ctx.locale);
@@ -26,17 +30,17 @@ const show = async (ctx) => {
26
30
 
27
31
  return {
28
32
  assigns: {
29
- event,
33
+ resource,
30
34
  revisions: revisions.list,
31
35
  changes: changes.list,
32
36
  _translations: Object.keys(ctx.locales)
33
37
  .map((locale) => {
34
- const translation = event.translations[locale];
38
+ const translation = resource.translations[locale];
35
39
 
36
40
  if (translation) {
37
41
  return {
38
42
  locale,
39
- path: `/${locale}/events/${translation.id}`,
43
+ path: `/${locale}/${opts.eventTypePlural}/${translation.id}`,
40
44
  };
41
45
  }
42
46
 
@@ -52,7 +56,7 @@ const create_form = async (ctx) => {
52
56
 
53
57
  return {
54
58
  assigns: {
55
- event: { ...ctx.client.events.defaults(), meta_image: {} },
59
+ resource: { ...ctx.client.events.defaults(), meta_image: {} },
56
60
  tags: tags.list,
57
61
  errors: {},
58
62
  visibilityOptions: ctx.client.events.visibilityOptions(),
@@ -61,8 +65,8 @@ const create_form = async (ctx) => {
61
65
  };
62
66
  };
63
67
 
64
- const create = async (ctx) => {
65
- const params = { ...ctx.resourceParams.event };
68
+ const create = async (ctx, opts) => {
69
+ const params = { ...ctx.resourceParams.resource };
66
70
 
67
71
  params.meta_image = JSON.parse(params.meta_image || "{}");
68
72
 
@@ -91,7 +95,7 @@ const create = async (ctx) => {
91
95
  categories: params.categories || [],
92
96
  },
93
97
  ctx.locale,
94
- "event"
98
+ opts.eventType
95
99
  );
96
100
 
97
101
  if (errors) {
@@ -99,9 +103,9 @@ const create = async (ctx) => {
99
103
 
100
104
  return {
101
105
  assigns: {
102
- event: params,
106
+ resource: params,
103
107
  tags: tags.list,
104
- errors: { event: ctx.client.events.formatErrors(errors) },
108
+ errors: { resource: ctx.client.events.formatErrors(errors) },
105
109
  visibilityOptions: ctx.client.events.visibilityOptions(),
106
110
  _translations: [],
107
111
  },
@@ -109,7 +113,7 @@ const create = async (ctx) => {
109
113
  }
110
114
 
111
115
  return {
112
- redirect: `/${ctx.locale}/events`,
116
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}`,
113
117
  };
114
118
  };
115
119
 
@@ -6,30 +6,35 @@ const create_form = async (ctx) => {
6
6
  const target_locate_tags = await ctx.client.tags.all(target_locale);
7
7
 
8
8
  const { parent_id } = ctx.params;
9
- const blueprint_event = await ctx.client.events.find(parent_id, ctx.locale);
9
+ const blueprint_resource = await ctx.client.events.find(
10
+ parent_id,
11
+ ctx.locale
12
+ );
10
13
 
11
14
  const translation = {
12
- title: blueprint_event.title,
13
- slug: blueprint_event.slug,
14
- visibility: blueprint_event.visibility,
15
- publish_at: toDateTimeInput(blueprint_event.publishAt),
16
- layout: blueprint_event.settings.layout,
17
- meta_title: blueprint_event.settings.meta.title,
18
- meta_description: blueprint_event.settings.meta.description,
19
- meta_image: blueprint_event.settings.meta?.image || {},
20
- username: blueprint_event.settings.credentials?.user,
21
- password: blueprint_event.settings.credentials?.password,
15
+ title: blueprint_resource.title,
16
+ slug: blueprint_resource.slug,
17
+ visibility: blueprint_resource.visibility,
18
+ publish_at: toDateTimeInput(blueprint_resource.publishAt),
19
+ starts_at: toDateTimeInput(blueprint_resource.startsAt),
20
+ ends_at: toDateTimeInput(blueprint_resource.endsAt),
21
+ layout: blueprint_resource.settings.layout,
22
+ meta_title: blueprint_resource.settings.meta.title,
23
+ meta_description: blueprint_resource.settings.meta.description,
24
+ meta_image: blueprint_resource.settings.meta?.image || {},
25
+ username: blueprint_resource.settings.credentials?.user,
26
+ password: blueprint_resource.settings.credentials?.password,
22
27
  tags: [],
23
- // categories: blueprint_event.categories, # TODO: this will be added later?
28
+ // categories: blueprint_resource.categories, # TODO: this will be added later?
24
29
  };
25
30
 
26
31
  return {
27
32
  assigns: {
28
- event: blueprint_event,
33
+ resource: blueprint_resource,
29
34
  translation: translation,
30
35
  targetLocale: target_locale,
31
36
  tags: target_locate_tags.list,
32
- blueprint_tags: blueprint_event.tags,
37
+ blueprint_tags: blueprint_resource.tags,
33
38
  errors: {},
34
39
  visibilityOptions: ctx.client.events.visibilityOptions(),
35
40
  _translations: [],
@@ -37,12 +42,15 @@ const create_form = async (ctx) => {
37
42
  };
38
43
  };
39
44
 
40
- const create = async (ctx) => {
45
+ const create = async (ctx, opts) => {
41
46
  const { parent_id } = ctx.params;
42
- const blueprint_event = await ctx.client.events.find(parent_id, ctx.locale);
47
+ const blueprint_resource = await ctx.client.events.find(
48
+ parent_id,
49
+ ctx.locale
50
+ );
43
51
 
44
52
  const { target_locale } = ctx.resourceParams;
45
- const translation = { ...ctx.translation };
53
+ const translation = { ...ctx.resourceParams.translation };
46
54
 
47
55
  translation.meta_image = JSON.parse(translation.meta_image || "{}");
48
56
 
@@ -55,9 +63,9 @@ const create = async (ctx) => {
55
63
  visibility: translation.visibility,
56
64
  publishAt: toUTCISO8601String(translation.publish_at),
57
65
  startsAt: toUTCISO8601String(translation.starts_at),
58
- endshAt: toUTCISO8601String(translation.ends_at),
66
+ endsAt: toUTCISO8601String(translation.ends_at),
59
67
  settings: {
60
- ...blueprint_event.settings,
68
+ ...blueprint_resource.settings,
61
69
  layout: translation.layout,
62
70
  meta: {
63
71
  title: translation.meta_title,
@@ -69,16 +77,16 @@ const create = async (ctx) => {
69
77
  password: translation.password || "",
70
78
  },
71
79
  },
72
- widgets: blueprint_event.widgets,
80
+ widgets: blueprint_resource.widgets,
73
81
  tags: translation.tags || [],
74
- categories: blueprint_event.categories.map((category) => category.id),
82
+ categories: blueprint_resource.categories.map((category) => category.id),
75
83
  }
76
84
  );
77
85
  if (errors) {
78
86
  const tags = await ctx.client.tags.all(target_locale);
79
87
  return {
80
88
  assigns: {
81
- event: blueprint_event,
89
+ resource: blueprint_resource,
82
90
  translation: translation,
83
91
  targetLocale: translation.target_locate,
84
92
  tags: tags.list,
@@ -89,7 +97,7 @@ const create = async (ctx) => {
89
97
  };
90
98
  }
91
99
  return {
92
- redirect: `/${ctx.locale}/events/${parent_id}`,
100
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}/${parent_id}`,
93
101
  };
94
102
  };
95
103
 
@@ -1,9 +1,9 @@
1
- const create_form = async (ctx) => {
1
+ const create_form = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
  const event = await ctx.client.events.find(parent_id, ctx.locale);
4
4
 
5
5
  if (!event) {
6
- throw new Error(`Cannot find event with id ${parent_id}`);
6
+ throw new Error(`Cannot find ${opts.eventType} with id ${parent_id}`);
7
7
  }
8
8
 
9
9
  return {
@@ -19,7 +19,7 @@ const create_form = async (ctx) => {
19
19
  };
20
20
  };
21
21
 
22
- const create = async (ctx) => {
22
+ const create = async (ctx, opts) => {
23
23
  const { parent_id } = ctx.params;
24
24
  const change = ctx.resourceParams.change;
25
25
 
@@ -37,7 +37,7 @@ const create = async (ctx) => {
37
37
  url: `/${event.slug}`,
38
38
  destination: change.slug,
39
39
  httpResponseCode: 301,
40
- note: "Created with changed URL for a event",
40
+ note: `Created with changed URL for a resource of type ${opts.eventType}`,
41
41
  };
42
42
  }
43
43
 
@@ -61,7 +61,7 @@ const create = async (ctx) => {
61
61
  }
62
62
 
63
63
  return {
64
- redirect: `/${ctx.locale}/events/${parent_id}`,
64
+ redirect: `/${ctx.locale}/${opts.eventTypePlural}/${parent_id}`,
65
65
  };
66
66
  };
67
67
 
@@ -25,7 +25,7 @@ const edit_form = async (ctx) => {
25
25
  };
26
26
  };
27
27
 
28
- const update = async (ctx) => {
28
+ const update = async (ctx, opts) => {
29
29
  const { parent_id } = ctx.params;
30
30
 
31
31
  const revision = await ctx.client.pageRevisions.find(parent_id, ctx.locale);
@@ -73,7 +73,7 @@ const update = async (ctx) => {
73
73
  }
74
74
 
75
75
  return {
76
- redirect: `/${ctx.locale}/page_revisions/${revision.id}/codes/edit`,
76
+ redirect: `/${ctx.locale}/${opts.pageType}_revisions/${revision.id}/codes/edit`,
77
77
  };
78
78
  };
79
79
 
@@ -27,7 +27,7 @@ const edit_form = async (ctx) => {
27
27
  };
28
28
  };
29
29
 
30
- const update = async (ctx) => {
30
+ const update = async (ctx, opts) => {
31
31
  const { parent_id } = ctx.params;
32
32
 
33
33
  const revision = await ctx.client.pageRevisions.find(parent_id, ctx.locale);
@@ -76,7 +76,7 @@ const update = async (ctx) => {
76
76
  }
77
77
 
78
78
  return {
79
- redirect: `/${ctx.locale}/page_revisions/${revision.id}/general/edit`,
79
+ redirect: `/${ctx.locale}/${opts.pageType}_revisions/${revision.id}/general/edit`,
80
80
  };
81
81
  };
82
82
 
@@ -17,7 +17,7 @@ const create_form = async (ctx) => {
17
17
  };
18
18
  };
19
19
 
20
- const create = async (ctx) => {
20
+ const create = async (ctx, opts) => {
21
21
  const { parent_id } = ctx.params;
22
22
  const { message } = ctx.resourceParams.lock_settings;
23
23
 
@@ -44,7 +44,7 @@ const create = async (ctx) => {
44
44
  }
45
45
 
46
46
  return {
47
- redirect: `/${ctx.locale}/pages/${revision.originalId}`,
47
+ redirect: `/${ctx.locale}/${opts.pageTypePlural}/${revision.originalId}`,
48
48
  };
49
49
  };
50
50
 
@@ -24,7 +24,7 @@ const edit_form = async (ctx) => {
24
24
  };
25
25
  };
26
26
 
27
- const update = async (ctx) => {
27
+ const update = async (ctx, opts) => {
28
28
  const { parent_id } = ctx.params;
29
29
 
30
30
  const revision = await ctx.client.pageRevisions.find(parent_id, ctx.locale);
@@ -73,7 +73,7 @@ const update = async (ctx) => {
73
73
  }
74
74
 
75
75
  return {
76
- redirect: `/${ctx.locale}/page_revisions/${revision.id}/meta/edit`,
76
+ redirect: `/${ctx.locale}/${opts.pageType}_revisions/${revision.id}/meta/edit`,
77
77
  };
78
78
  };
79
79
 
@@ -1,4 +1,4 @@
1
- const create = async (ctx) => {
1
+ const create = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
 
4
4
  const { errors, pageErrors } = await ctx.client.pageRevisions.create(
@@ -15,11 +15,11 @@ const create = async (ctx) => {
15
15
  }
16
16
 
17
17
  return {
18
- redirect: `/${ctx.locale}/pages/${parent_id}`,
18
+ redirect: `/${ctx.locale}/${opts.pageTypePlural}/${parent_id}`,
19
19
  };
20
20
  };
21
21
 
22
- const destroy = async (ctx) => {
22
+ const destroy = async (ctx, opts) => {
23
23
  const { id } = ctx.params;
24
24
 
25
25
  const { errors, revision } = await ctx.client.pageRevisions.delete(
@@ -35,7 +35,7 @@ const destroy = async (ctx) => {
35
35
 
36
36
  return {
37
37
  headers: {
38
- "HX-Redirect": `/${ctx.locale}/pages/${revision.originalId}`,
38
+ "HX-Redirect": `/${ctx.locale}/${opts.pageTypePlural}/${revision.originalId}`,
39
39
  },
40
40
  json: {},
41
41
  };
@@ -43,7 +43,7 @@ function publishPageParams(
43
43
  return { visibility };
44
44
  }
45
45
 
46
- const create = async (ctx) => {
46
+ const create = async (ctx, opts) => {
47
47
  const { parent_id } = ctx.params;
48
48
  const publishing = ctx.resourceParams.publishing;
49
49
 
@@ -74,7 +74,7 @@ const create = async (ctx) => {
74
74
  }
75
75
 
76
76
  return {
77
- redirect: `/${ctx.locale}/pages/${revision.originalId}`,
77
+ redirect: `/${ctx.locale}/${opts.pageTypePlural}/${revision.originalId}`,
78
78
  };
79
79
  };
80
80
 
@@ -1,4 +1,4 @@
1
- const create = async (ctx) => {
1
+ const create = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
  const { version } = ctx.resourceParams;
4
4
 
@@ -17,7 +17,7 @@ const create = async (ctx) => {
17
17
  }
18
18
 
19
19
  return {
20
- redirect: `/${ctx.locale}/pages/${parent_id}`,
20
+ redirect: `/${ctx.locale}/${opts.pageTypePlural}/${parent_id}`,
21
21
  };
22
22
  };
23
23
 
@@ -25,7 +25,7 @@ const edit_form = async (ctx) => {
25
25
  };
26
26
  };
27
27
 
28
- const update = async (ctx) => {
28
+ const update = async (ctx, opts) => {
29
29
  const { parent_id } = ctx.params;
30
30
 
31
31
  const revision = await ctx.client.pageRevisions.find(parent_id, ctx.locale);
@@ -70,7 +70,7 @@ const update = async (ctx) => {
70
70
  }
71
71
 
72
72
  return {
73
- redirect: `/${ctx.locale}/page_revisions/${revision.id}/tags/edit`,
73
+ redirect: `/${ctx.locale}/${opts.pageType}_revisions/${revision.id}/tags/edit`,
74
74
  };
75
75
  };
76
76
 
@@ -1,4 +1,4 @@
1
- const create = async (ctx) => {
1
+ const create = async (ctx, opts) => {
2
2
  const { parent_id } = ctx.params;
3
3
 
4
4
  const { revision, errors, pageErrors } =
@@ -13,7 +13,7 @@ const create = async (ctx) => {
13
13
  }
14
14
 
15
15
  return {
16
- redirect: `/${ctx.locale}/pages/${revision.originalId}`,
16
+ redirect: `/${ctx.locale}/${opts.pageTypePlural}/${revision.originalId}`,
17
17
  };
18
18
  };
19
19