@raketa-cloud/admin 0.0.30 → 0.0.33

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 (173) hide show
  1. package/package.json +1 -1
  2. package/src/Adapter.js +3 -6
  3. package/src/HonoAdapter.js +3 -3
  4. package/src/Logger.js +21 -0
  5. package/src/cloud/ArticleRevisions.js +30 -1
  6. package/src/cloud/Articles.js +22 -9
  7. package/src/cloud/EventRevisions.js +40 -1
  8. package/src/cloud/Events.js +32 -11
  9. package/src/cloud/PageRevisions.js +20 -1
  10. package/src/cloud/Pages.js +13 -7
  11. package/src/cloud/RaketaClient.js +76 -0
  12. package/src/handlers/article_revisions/CodeHandler.js +18 -34
  13. package/src/handlers/article_revisions/GeneralHandler.js +19 -38
  14. package/src/handlers/article_revisions/LocksHandler.js +11 -6
  15. package/src/handlers/article_revisions/MetaHandler.js +18 -34
  16. package/src/handlers/article_revisions/TagHandler.js +23 -29
  17. package/src/handlers/article_revisions/UnlocksHandler.js +1 -1
  18. package/src/handlers/article_revisions/VisualHandler.js +18 -28
  19. package/src/handlers/articles/ArticlesHandler.js +11 -25
  20. package/src/handlers/articles/DeletesHandler.js +4 -4
  21. package/src/handlers/articles/TranslationsHandler.js +30 -56
  22. package/src/handlers/articles/URLsHandler.js +7 -7
  23. package/src/handlers/event_revisions/CodeHandler.js +22 -36
  24. package/src/handlers/event_revisions/GeneralHandler.js +22 -42
  25. package/src/handlers/event_revisions/LocksHandler.js +7 -6
  26. package/src/handlers/event_revisions/MetaHandler.js +22 -36
  27. package/src/handlers/event_revisions/TagHandler.js +25 -29
  28. package/src/handlers/event_revisions/VisualHandler.js +22 -30
  29. package/src/handlers/events/DeletesHandler.js +4 -4
  30. package/src/handlers/events/EventsHandler.js +13 -27
  31. package/src/handlers/events/TranslationsHandler.js +35 -58
  32. package/src/handlers/events/URLsHandler.js +7 -7
  33. package/src/handlers/page_revisions/CodeHandler.js +8 -34
  34. package/src/handlers/page_revisions/GeneralHandler.js +10 -37
  35. package/src/handlers/page_revisions/LocksHandler.js +11 -6
  36. package/src/handlers/page_revisions/MetaHandler.js +8 -34
  37. package/src/handlers/page_revisions/TagHandler.js +16 -27
  38. package/src/handlers/page_revisions/VisualHandler.js +8 -28
  39. package/src/handlers/pages/DeletesHandler.js +4 -4
  40. package/src/handlers/pages/PagesHandler.js +7 -24
  41. package/src/handlers/pages/TranslationsHandler.js +23 -45
  42. package/src/handlers/pages/URLsHandler.js +7 -7
  43. package/src/helpers/FormBuilder.js +1 -2
  44. package/src/helpers/Inflector.js +6 -0
  45. package/src/index.js +2 -0
  46. package/src/styles/application.css +7 -7
  47. package/src/tests/handlers/RedirectsHandler.test/create.test.js +1 -1
  48. package/src/tests/handlers/RedirectsHandler.test/create_form.test.js +1 -1
  49. package/src/tests/handlers/RedirectsHandler.test/destroy.test.js +1 -1
  50. package/src/tests/handlers/RedirectsHandler.test/edit_form.test.js +1 -1
  51. package/src/tests/handlers/RedirectsHandler.test/index.test.js +1 -1
  52. package/src/tests/handlers/RedirectsHandler.test/show.test.js +1 -1
  53. package/src/tests/handlers/RedirectsHandler.test/update.test.js +1 -1
  54. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/create.test.js +1 -1
  55. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/destroy.test.js +1 -1
  56. package/src/tests/handlers/article_revisions/CodesHandler.test/edit_form.test.js +7 -7
  57. package/src/tests/handlers/article_revisions/CodesHandler.test/update.test.js +37 -19
  58. package/src/tests/handlers/article_revisions/GeneralHandler.test/edit_form.test.js +5 -11
  59. package/src/tests/handlers/article_revisions/GeneralHandler.test/update.test.js +36 -28
  60. package/src/tests/handlers/article_revisions/MetaHandler.test/edit_form.test.js +7 -8
  61. package/src/tests/handlers/article_revisions/MetaHandler.test/update.test.js +41 -25
  62. package/src/tests/handlers/article_revisions/PublishesHandler.test/create.test.js +2 -2
  63. package/src/tests/handlers/article_revisions/PublishesHandler.test/create_form.test.js +2 -2
  64. package/src/tests/handlers/article_revisions/RevertsHandler.test/create.test.js +1 -1
  65. package/src/tests/handlers/article_revisions/TagHandler.test/edit_form.test.js +10 -7
  66. package/src/tests/handlers/article_revisions/TagHandler.test/update.test.js +20 -14
  67. package/src/tests/handlers/article_revisions/VisualHandler.test.test/edit_form.test.js +7 -6
  68. package/src/tests/handlers/article_revisions/VisualHandler.test.test/update.test.js +30 -19
  69. package/src/tests/handlers/article_revisions/WidgetHandler.test/show.test.js +2 -2
  70. package/src/tests/handlers/article_revisions/WidgetHandler.test/update.test.js +2 -2
  71. package/src/tests/handlers/articles/ArticlesHandler.test/create.test.js +53 -29
  72. package/src/tests/handlers/articles/ArticlesHandler.test/create_form.test.js +3 -3
  73. package/src/tests/handlers/articles/ArticlesHandler.test/index.test.js +2 -2
  74. package/src/tests/handlers/articles/ArticlesHandler.test/show.test.js +3 -3
  75. package/src/tests/handlers/articles/ClonesHandler.test/create.test.js +1 -1
  76. package/src/tests/handlers/articles/DeletesHandler.test/create.test.js +4 -4
  77. package/src/tests/handlers/articles/DeletesHandler.test/create_form.test.js +2 -2
  78. package/src/tests/handlers/articles/URLsHandler.test/create.test.js +6 -6
  79. package/src/tests/handlers/articles/URLsHandler.test/create_form.test.js +2 -2
  80. package/src/tests/handlers/event_revisions/CodesHandler.test/edit_form.test.js +11 -7
  81. package/src/tests/handlers/event_revisions/CodesHandler.test/update.test.js +43 -19
  82. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/create.test.js +1 -1
  83. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/destroy.test.js +1 -1
  84. package/src/tests/handlers/event_revisions/GeneralHandler.test/edit_form.test.js +7 -13
  85. package/src/tests/handlers/event_revisions/GeneralHandler.test/update.test.js +42 -32
  86. package/src/tests/handlers/event_revisions/MetaHandler.test/edit_form.test.js +11 -8
  87. package/src/tests/handlers/event_revisions/MetaHandler.test/update.test.js +47 -25
  88. package/src/tests/handlers/event_revisions/PublishesHandler.test/create.test.js +2 -2
  89. package/src/tests/handlers/event_revisions/PublishesHandler.test/create_form.test.js +2 -2
  90. package/src/tests/handlers/event_revisions/RevertsHandler.test/create.test.js +1 -1
  91. package/src/tests/handlers/event_revisions/TagHandler.test/edit_form.test.js +14 -7
  92. package/src/tests/handlers/event_revisions/TagHandler.test/update.test.js +26 -14
  93. package/src/tests/handlers/event_revisions/VisualHandler.test.test/edit_form.test.js +11 -6
  94. package/src/tests/handlers/event_revisions/VisualHandler.test.test/update.test.js +36 -19
  95. package/src/tests/handlers/event_revisions/WidgetHandler.test/show.test.js +2 -2
  96. package/src/tests/handlers/event_revisions/WidgetHandler.test/update.test.js +2 -2
  97. package/src/tests/handlers/events/ClonesHandler.test/create.test.js +1 -1
  98. package/src/tests/handlers/events/DeletesHandler.test/create.test.js +4 -4
  99. package/src/tests/handlers/events/DeletesHandler.test/create_form.test.js +2 -2
  100. package/src/tests/handlers/events/EventsHandler.test/create.test.js +53 -37
  101. package/src/tests/handlers/events/EventsHandler.test/create_form.test.js +3 -3
  102. package/src/tests/handlers/events/EventsHandler.test/index.test.js +2 -2
  103. package/src/tests/handlers/events/EventsHandler.test/show.test.js +3 -3
  104. package/src/tests/handlers/events/URLsHandler.test/create.test.js +6 -6
  105. package/src/tests/handlers/events/URLsHandler.test/create_form.test.js +2 -2
  106. package/src/tests/handlers/page_revisions/CodesHandler.test/edit_form.test.js +10 -8
  107. package/src/tests/handlers/page_revisions/CodesHandler.test/update.test.js +30 -17
  108. package/src/tests/handlers/page_revisions/GeneralHandler.test/edit_form.test.js +3 -11
  109. package/src/tests/handlers/page_revisions/GeneralHandler.test/update.test.js +38 -22
  110. package/src/tests/handlers/page_revisions/MetaHandler.test/edit_form.test.js +2 -8
  111. package/src/tests/handlers/page_revisions/MetaHandler.test/update.test.js +37 -23
  112. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/create.test.js +1 -1
  113. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/destroy.test.js +1 -1
  114. package/src/tests/handlers/page_revisions/PublishesHandler.test/create.test.js +2 -2
  115. package/src/tests/handlers/page_revisions/PublishesHandler.test/create_form.test.js +2 -2
  116. package/src/tests/handlers/page_revisions/RevertsHandler.test/create.test.js +1 -1
  117. package/src/tests/handlers/page_revisions/TagHandler.test/edit_form.test.js +3 -7
  118. package/src/tests/handlers/page_revisions/TagHandler.test/update.test.js +11 -12
  119. package/src/tests/handlers/page_revisions/VisualHandler.test.test/edit_form.test.js +10 -7
  120. package/src/tests/handlers/page_revisions/VisualHandler.test.test/update.test.js +23 -17
  121. package/src/tests/handlers/page_revisions/WidgetHandler.test/show.test.js +2 -2
  122. package/src/tests/handlers/page_revisions/WidgetHandler.test/update.test.js +2 -2
  123. package/src/tests/handlers/pages/ConesHandler.test/create.test.js +1 -1
  124. package/src/tests/handlers/pages/DeletesHandler.test/create.test.js +4 -4
  125. package/src/tests/handlers/pages/DeletesHandler.test/create_form.test.js +2 -2
  126. package/src/tests/handlers/pages/PagesHandler.test/create.test.js +50 -27
  127. package/src/tests/handlers/pages/PagesHandler.test/create_form.test.js +3 -3
  128. package/src/tests/handlers/pages/PagesHandler.test/index.test.js +2 -2
  129. package/src/tests/handlers/pages/PagesHandler.test/show.test.js +3 -3
  130. package/src/tests/handlers/pages/URLsHandler.test/create.test.js +6 -6
  131. package/src/tests/handlers/pages/URLsHandler.test/create_form.test.js +2 -2
  132. package/src/utils.js +12 -0
  133. package/src/views/_shared/_credentials_input.ejs +31 -0
  134. package/src/views/_shared/_layout_input.ejs +5 -0
  135. package/src/views/article_revisions/_nav.ejs +5 -5
  136. package/src/views/article_revisions/codes/edit_form.ejs +17 -6
  137. package/src/views/article_revisions/general/edit_form.ejs +10 -36
  138. package/src/views/article_revisions/locks/create_form.ejs +4 -4
  139. package/src/views/article_revisions/meta/edit_form.ejs +7 -7
  140. package/src/views/article_revisions/tags/edit_form.ejs +5 -5
  141. package/src/views/article_revisions/visuals/edit_form.ejs +5 -9
  142. package/src/views/articles/_form.ejs +6 -37
  143. package/src/views/articles/deletes/create_form.ejs +9 -9
  144. package/src/views/articles/index.ejs +1 -1
  145. package/src/views/articles/translations/_form.ejs +14 -46
  146. package/src/views/articles/urls/create_form.ejs +5 -5
  147. package/src/views/event_revisions/_nav.ejs +5 -5
  148. package/src/views/event_revisions/codes/edit_form.ejs +17 -6
  149. package/src/views/event_revisions/general/edit_form.ejs +12 -38
  150. package/src/views/event_revisions/locks/create_form.ejs +4 -4
  151. package/src/views/event_revisions/meta/edit_form.ejs +7 -7
  152. package/src/views/event_revisions/tags/edit_form.ejs +5 -5
  153. package/src/views/event_revisions/visuals/edit_form.ejs +5 -9
  154. package/src/views/events/_form.ejs +8 -39
  155. package/src/views/events/deletes/create_form.ejs +9 -9
  156. package/src/views/events/index.ejs +1 -1
  157. package/src/views/events/translations/_form.ejs +16 -47
  158. package/src/views/events/urls/create_form.ejs +5 -5
  159. package/src/views/layouts/application.ejs +57 -35
  160. package/src/views/page_revisions/_nav.ejs +5 -5
  161. package/src/views/page_revisions/codes/edit_form.ejs +17 -6
  162. package/src/views/page_revisions/general/edit_form.ejs +8 -35
  163. package/src/views/page_revisions/locks/create_form.ejs +4 -4
  164. package/src/views/page_revisions/meta/edit_form.ejs +7 -7
  165. package/src/views/page_revisions/publishes/_form.ejs +9 -9
  166. package/src/views/page_revisions/tags/edit_form.ejs +5 -5
  167. package/src/views/page_revisions/visuals/edit_form.ejs +5 -9
  168. package/src/views/pages/_form.ejs +5 -36
  169. package/src/views/pages/deletes/create_form.ejs +9 -9
  170. package/src/views/pages/index.ejs +1 -1
  171. package/src/views/pages/translations/_form.ejs +13 -45
  172. package/src/views/pages/urls/create_form.ejs +5 -5
  173. package/tailwind.config.js +1 -0
@@ -7,12 +7,12 @@ import Factory from "../../../support/factory";
7
7
  function buildCtx(revision, updateSettings) {
8
8
  return {
9
9
  client: {
10
- eventRevisions: new EventRevisions({}, "token"),
11
- tags: new Tags({}, "token"),
10
+ eventRevisions: new EventRevisions(() => ({}), "token"),
11
+ tags: new Tags(() => ({}), "token"),
12
12
  },
13
13
  params: { parent_id: revision.id },
14
14
  resourceParams: {
15
- tag_settings: updateSettings,
15
+ resource: updateSettings,
16
16
  },
17
17
  locale: "en",
18
18
  resourceConfig: {
@@ -28,7 +28,12 @@ describe("Event revision tags settings", () => {
28
28
  Factory.build("tag", { id: 42 }),
29
29
  Factory.build("tag", { id: 69 }),
30
30
  ];
31
- const revision = Factory.build("event_revision", { tags: [tags[0]] });
31
+ const revision = Factory.build("event_revision", {
32
+ tags: [tags[0]],
33
+ publishAt: "2024-10-10T07:00:00Z",
34
+ startsAt: "2024-10-10T07:05:00Z",
35
+ endsAt: "2024-10-10T07:15:00Z",
36
+ });
32
37
 
33
38
  const updateSettings = {
34
39
  tags: [tags.map((t) => t.id)],
@@ -57,10 +62,10 @@ describe("Event revision tags settings", () => {
57
62
  publishAt: revision.publishAt,
58
63
  startsAt: revision.startsAt,
59
64
  endsAt: revision.endsAt,
60
- widgets: JSON.stringify(revision.widgets),
65
+ widgets: revision.widgets,
61
66
  tags: updateSettings.tags,
62
67
  categories: revision.categories.map((c) => c.id),
63
- settings: JSON.stringify(revision.settings),
68
+ settings: revision.settings,
64
69
  });
65
70
 
66
71
  expect(result).toEqual({
@@ -73,7 +78,12 @@ describe("Event revision tags settings", () => {
73
78
  Factory.build("tag", { id: 42 }),
74
79
  Factory.build("tag", { id: 69 }),
75
80
  ];
76
- const revision = Factory.build("event_revision", { tags: [tags[0]] });
81
+ const revision = Factory.build("event_revision", {
82
+ tags: [tags[0]],
83
+ publishAt: "2024-10-10T07:00:00Z",
84
+ startsAt: "2024-10-10T07:05:00Z",
85
+ endsAt: "2024-10-10T07:15:00Z",
86
+ });
77
87
 
78
88
  const updateSettings = {
79
89
  tags: [tags.map((t) => t.id)],
@@ -108,22 +118,24 @@ describe("Event revision tags settings", () => {
108
118
  publishAt: revision.publishAt,
109
119
  startsAt: revision.startsAt,
110
120
  endsAt: revision.endsAt,
111
- widgets: JSON.stringify(revision.widgets),
121
+ widgets: revision.widgets,
112
122
  tags: updateSettings.tags,
113
123
  categories: revision.categories.map((c) => c.id),
114
- settings: JSON.stringify(revision.settings),
124
+ settings: revision.settings,
115
125
  });
116
126
  expect(mockTags).toHaveBeenCalledWith("en");
117
127
 
118
128
  expect(result).toEqual({
119
129
  assigns: {
120
- tag_settings: {
121
- ...updateSettings,
122
- id: revision.id,
123
- originalId: revision.originalId,
130
+ resource: {
131
+ ...revision,
132
+ publishAt: "2024-10-10T07:00:00",
133
+ startsAt: "2024-10-10T07:05:00",
134
+ endsAt: "2024-10-10T07:15:00",
135
+ tags: updateSettings.tags,
124
136
  },
125
137
  errors: {
126
- tag_settings: { generalError: "some error" },
138
+ resource: { generalError: "some error" },
127
139
  },
128
140
  tags: tags,
129
141
  _translations: [],
@@ -6,7 +6,7 @@ import Factory from "../../../support/factory";
6
6
  function buildCtx(revision) {
7
7
  return {
8
8
  client: {
9
- eventRevisions: new EventRevisions({}, "token"),
9
+ eventRevisions: new EventRevisions(() => ({}), "token"),
10
10
  },
11
11
  params: { parent_id: revision.id },
12
12
  locale: "en",
@@ -15,7 +15,11 @@ function buildCtx(revision) {
15
15
 
16
16
  describe("Event revision visuals settings", () => {
17
17
  test("edit_form when a revision exists", async () => {
18
- const revision = Factory.build("event_revision");
18
+ const revision = Factory.build("event_revision", {
19
+ publishAt: "2024-10-10T21:00:00Z",
20
+ startsAt: "2024-10-10T21:05:00Z",
21
+ endsAt: "2024-10-10T21:10:00Z",
22
+ });
19
23
  const ctx = buildCtx(revision);
20
24
 
21
25
  const mockFind = jest
@@ -28,10 +32,11 @@ describe("Event revision visuals settings", () => {
28
32
 
29
33
  expect(result).toEqual({
30
34
  assigns: {
31
- visual_settings: {
32
- id: revision.id,
33
- originalId: revision.originalId,
34
- layout: revision.settings.layout,
35
+ resource: {
36
+ ...revision,
37
+ publishAt: "2024-10-10T21:00:00",
38
+ startsAt: "2024-10-10T21:05:00",
39
+ endsAt: "2024-10-10T21:10:00",
35
40
  },
36
41
  errors: {},
37
42
  _translations: [],
@@ -6,11 +6,11 @@ import Factory from "../../../support/factory";
6
6
  function buildCtx(revision, updateSettings) {
7
7
  return {
8
8
  client: {
9
- eventRevisions: new EventRevisions({}, "token"),
9
+ eventRevisions: new EventRevisions(() => ({}), "token"),
10
10
  },
11
11
  params: { parent_id: revision.id },
12
12
  resourceParams: {
13
- visual_settings: updateSettings,
13
+ resource: updateSettings,
14
14
  },
15
15
  locale: "en",
16
16
  resourceConfig: {
@@ -22,10 +22,16 @@ function buildCtx(revision, updateSettings) {
22
22
 
23
23
  describe("Event revision visuals settings", () => {
24
24
  test("update successful", async () => {
25
- const revision = Factory.build("event_revision");
25
+ const revision = Factory.build("event_revision", {
26
+ publishAt: "2024-10-10T07:00:00Z",
27
+ startsAt: "2024-10-10T07:05:00Z",
28
+ endsAt: "2024-10-10T07:10:00Z",
29
+ });
26
30
 
27
31
  const updateSettings = {
28
- layout: "bla",
32
+ settings: {
33
+ layout: "bla",
34
+ },
29
35
  };
30
36
 
31
37
  const ctx = buildCtx(revision, updateSettings);
@@ -51,13 +57,13 @@ describe("Event revision visuals settings", () => {
51
57
  publishAt: revision.publishAt,
52
58
  startsAt: revision.startsAt,
53
59
  endsAt: revision.endsAt,
54
- widgets: JSON.stringify(revision.widgets),
60
+ widgets: revision.widgets,
55
61
  tags: revision.tags.map((t) => t.id),
56
62
  categories: revision.categories.map((c) => c.id),
57
- settings: JSON.stringify({
63
+ settings: {
58
64
  ...revision.settings,
59
- layout: updateSettings.layout,
60
- }),
65
+ layout: updateSettings.settings.layout,
66
+ },
61
67
  });
62
68
 
63
69
  expect(result).toEqual({
@@ -66,10 +72,16 @@ describe("Event revision visuals settings", () => {
66
72
  });
67
73
 
68
74
  test("update failed", async () => {
69
- const revision = Factory.build("event_revision");
75
+ const revision = Factory.build("event_revision", {
76
+ publishAt: "2024-10-10T07:00:00Z",
77
+ startsAt: "2024-10-10T07:05:00Z",
78
+ endsAt: "2024-10-10T07:10:00Z",
79
+ });
70
80
 
71
81
  const updateSettings = {
72
- layout: "bla",
82
+ settings: {
83
+ layout: "bla",
84
+ },
73
85
  };
74
86
 
75
87
  const ctx = buildCtx(revision, updateSettings);
@@ -95,24 +107,29 @@ describe("Event revision visuals settings", () => {
95
107
  publishAt: revision.publishAt,
96
108
  startsAt: revision.startsAt,
97
109
  endsAt: revision.endsAt,
98
- widgets: JSON.stringify(revision.widgets),
110
+ widgets: revision.widgets,
99
111
  tags: revision.tags.map((t) => t.id),
100
112
  categories: revision.categories.map((c) => c.id),
101
- settings: JSON.stringify({
113
+ settings: {
102
114
  ...revision.settings,
103
- layout: updateSettings.layout,
104
- }),
115
+ layout: updateSettings.settings.layout,
116
+ },
105
117
  });
106
118
 
107
119
  expect(result).toEqual({
108
120
  assigns: {
109
- visual_settings: {
110
- ...updateSettings,
111
- id: revision.id,
112
- originalId: revision.originalId,
121
+ resource: {
122
+ ...revision,
123
+ publishAt: "2024-10-10T07:00:00",
124
+ startsAt: "2024-10-10T07:05:00",
125
+ endsAt: "2024-10-10T07:10:00",
126
+ settings: {
127
+ ...revision.settings,
128
+ layout: updateSettings.settings.layout,
129
+ },
113
130
  },
114
131
  errors: {
115
- visual_settings: { generalError: "some error" },
132
+ resource: { generalError: "some error" },
116
133
  },
117
134
  _translations: [],
118
135
  },
@@ -7,8 +7,8 @@ import Factory from "../../../support/factory";
7
7
  function buildCtx(revision) {
8
8
  return {
9
9
  client: {
10
- eventRevisions: new EventRevisions({}, "token"),
11
- settings: new Settings({}, "token"),
10
+ eventRevisions: new EventRevisions(() => ({}), "token"),
11
+ settings: new Settings(() => ({}), "token"),
12
12
  },
13
13
  params: { parent_id: revision.id },
14
14
  locale: "en",
@@ -7,8 +7,8 @@ import Factory from "../../../support/factory";
7
7
  function buildCtx(revision, newWidgets) {
8
8
  return {
9
9
  client: {
10
- eventRevisions: new EventRevisions({}, "token"),
11
- settings: new Settings({}, "token"),
10
+ eventRevisions: new EventRevisions(() => ({}), "token"),
11
+ settings: new Settings(() => ({}), "token"),
12
12
  },
13
13
  params: { parent_id: revision.id },
14
14
  resourceParams: {
@@ -5,7 +5,7 @@ import Factory from "../../../support/factory";
5
5
  function buildCtx(event) {
6
6
  return {
7
7
  client: {
8
- events: new Events({}, "token"),
8
+ events: new Events(() => ({}), "token"),
9
9
  },
10
10
  params: { parent_id: event.id },
11
11
  locale: "en",
@@ -6,11 +6,11 @@ import { remoteConfig } from "../../../support/handlersHelper";
6
6
  function buildCtx(event, updateSettings) {
7
7
  return {
8
8
  client: {
9
- events: new Events({}, "token"),
9
+ events: new Events(() => ({}), "token"),
10
10
  },
11
11
  params: { parent_id: event.id },
12
12
  resourceParams: {
13
- deleteAction: updateSettings,
13
+ resource: updateSettings,
14
14
  },
15
15
  locale: "en",
16
16
  remoteConfig: remoteConfig(),
@@ -90,9 +90,9 @@ describe("Event delete", () => {
90
90
 
91
91
  expect(result).toEqual({
92
92
  assigns: {
93
- deleteAction: { ...updateSettings, id: event.id },
93
+ resource: { ...updateSettings, id: event.id },
94
94
  errors: {
95
- deleteAction: { redirect: "url: has already been taken" },
95
+ resource: { redirect: "url: has already been taken" },
96
96
  },
97
97
  _translations: [],
98
98
  },
@@ -6,7 +6,7 @@ import { remoteConfig } from "../../../support/handlersHelper";
6
6
  function buildCtx(event) {
7
7
  return {
8
8
  client: {
9
- events: new Events({}, "token"),
9
+ events: new Events(() => ({}), "token"),
10
10
  },
11
11
  params: { parent_id: event.id },
12
12
  locale: "en",
@@ -33,7 +33,7 @@ describe("Event delete", () => {
33
33
 
34
34
  expect(result).toEqual({
35
35
  assigns: {
36
- deleteAction: {
36
+ resource: {
37
37
  id: event.id,
38
38
  redirect: "",
39
39
  },
@@ -8,8 +8,8 @@ describe("Events Handler", () => {
8
8
  function buildCtx(params) {
9
9
  return {
10
10
  client: {
11
- events: new Events({}, "token"),
12
- tags: new Tags({}, "token"),
11
+ events: new Events(() => ({}), "token"),
12
+ tags: new Tags(() => ({}), "token"),
13
13
  },
14
14
  resourceParams: {
15
15
  resource: params,
@@ -28,15 +28,21 @@ describe("Events Handler", () => {
28
28
  title: "event title",
29
29
  slug: "url",
30
30
  visibility: "public",
31
- publish_at: "2024-10-10T06:40",
32
- starts_at: "2024-10-10T06:50",
33
- ends_at: "2024-10-10T06:59",
34
- layout: "default",
35
- meta_title: "Meta title",
36
- meta_description: "Meta description",
37
- meta_image: JSON.stringify({ id: 42 }),
38
- username: "admin",
39
- password: "admin123!@#",
31
+ publishAt: "2024-10-10T06:40",
32
+ startsAt: "2024-10-10T06:50",
33
+ endsAt: "2024-10-10T06:59",
34
+ settings: {
35
+ layout: "default",
36
+ meta: {
37
+ title: "Meta title",
38
+ description: "Meta description",
39
+ image: JSON.stringify({ id: 42 }),
40
+ },
41
+ credentials: {
42
+ user: "admin",
43
+ password: "admin123!@#",
44
+ },
45
+ },
40
46
  tags: [tag.id],
41
47
  };
42
48
 
@@ -57,15 +63,10 @@ describe("Events Handler", () => {
57
63
  startsAt: "2024-10-10T06:50:00Z",
58
64
  endsAt: "2024-10-10T06:59:00Z",
59
65
  settings: {
60
- layout: params.layout,
66
+ ...params.settings,
61
67
  meta: {
62
- title: params.meta_title,
63
- description: params.meta_description,
64
- image: JSON.parse(params.meta_image || "{}"),
65
- },
66
- credentials: {
67
- user: params.username,
68
- password: params.password,
68
+ ...params.settings.meta,
69
+ image: { id: 42 },
69
70
  },
70
71
  },
71
72
  widgets: [],
@@ -86,16 +87,22 @@ describe("Events Handler", () => {
86
87
  const params = {
87
88
  title: "event title",
88
89
  slug: "",
89
- publish_at: "2024-10-10T06:40",
90
- starts_at: "2024-10-10T06:50",
91
- ends_at: "2024-10-10T06:59",
90
+ publishAt: "2024-10-10T06:40",
91
+ startsAt: "2024-10-10T06:50",
92
+ endsAt: "2024-10-10T06:59",
92
93
  visibility: "public",
93
- layout: "default",
94
- meta_title: "Meta title",
95
- meta_description: "Meta description",
96
- meta_image: JSON.stringify({ id: 42 }),
97
- username: "admin",
98
- password: "admin123!@#",
94
+ settings: {
95
+ layout: "default",
96
+ meta: {
97
+ title: "Meta title",
98
+ description: "Meta description",
99
+ image: JSON.stringify({ id: 42 }),
100
+ },
101
+ credentials: {
102
+ user: "admin",
103
+ password: "admin123!@#",
104
+ },
105
+ },
99
106
  tags: [tag.id],
100
107
  };
101
108
 
@@ -124,15 +131,10 @@ describe("Events Handler", () => {
124
131
  startsAt: "2024-10-10T06:50:00Z",
125
132
  endsAt: "2024-10-10T06:59:00Z",
126
133
  settings: {
127
- layout: params.layout,
134
+ ...params.settings,
128
135
  meta: {
129
- title: params.meta_title,
130
- description: params.meta_description,
131
- image: JSON.parse(params.meta_image || "{}"),
132
- },
133
- credentials: {
134
- user: params.username,
135
- password: params.password,
136
+ ...params.settings.meta,
137
+ image: { id: 42 },
136
138
  },
137
139
  },
138
140
  widgets: [],
@@ -145,7 +147,21 @@ describe("Events Handler", () => {
145
147
 
146
148
  expect(result).toEqual({
147
149
  assigns: {
148
- resource: { ...params, meta_image: JSON.parse(params.meta_image) },
150
+ resource: {
151
+ ...params,
152
+ publishAt: "2024-10-10T06:40:00",
153
+ startsAt: "2024-10-10T06:50:00",
154
+ endsAt: "2024-10-10T06:59:00",
155
+ settings: {
156
+ ...params.settings,
157
+ meta: {
158
+ ...params.settings.meta,
159
+ image: { id: 42 },
160
+ },
161
+ },
162
+ widgets: [],
163
+ categories: [],
164
+ },
149
165
  tags: [tag],
150
166
  errors: { resource: { slug: "cannot be blank" } },
151
167
  visibilityOptions: ctx.client.events.visibilityOptions(),
@@ -8,8 +8,8 @@ describe("Events Handler", () => {
8
8
  function buildCtx() {
9
9
  return {
10
10
  client: {
11
- events: new Events({}, "token"),
12
- tags: new Tags({}, "token"),
11
+ events: new Events(() => ({}), "token"),
12
+ tags: new Tags(() => ({}), "token"),
13
13
  },
14
14
  query: { foo: "bar" },
15
15
  locale: "en",
@@ -34,7 +34,7 @@ describe("Events Handler", () => {
34
34
 
35
35
  expect(result).toEqual({
36
36
  assigns: {
37
- resource: { ...ctx.client.events.defaults(), meta_image: {} },
37
+ resource: { ...ctx.client.events.defaults() },
38
38
  tags: tags,
39
39
  errors: {},
40
40
  visibilityOptions: ctx.client.events.visibilityOptions(),
@@ -8,8 +8,8 @@ describe("Events Handler", () => {
8
8
  function buildCtx() {
9
9
  return {
10
10
  client: {
11
- events: new Events({}, "token"),
12
- tags: new Tags({}, "token"),
11
+ events: new Events(() => ({}), "token"),
12
+ tags: new Tags(() => ({}), "token"),
13
13
  },
14
14
  query: { foo: "bar" },
15
15
  locale: "en",
@@ -9,9 +9,9 @@ describe("Events Handler", () => {
9
9
  function buildCtx(event) {
10
10
  return {
11
11
  client: {
12
- events: new Events({}, "token"),
13
- eventChanges: new EventChanges({}, "token"),
14
- eventRevisions: new EventRevisions({}, "token"),
12
+ events: new Events(() => ({}), "token"),
13
+ eventChanges: new EventChanges(() => ({}), "token"),
14
+ eventRevisions: new EventRevisions(() => ({}), "token"),
15
15
  },
16
16
  params: { id: event.id },
17
17
  locale: "en",
@@ -6,11 +6,11 @@ import { remoteConfig } from "../../../support/handlersHelper";
6
6
  function buildCtx(event, updateSettings) {
7
7
  return {
8
8
  client: {
9
- events: new Events({}, "token"),
9
+ events: new Events(() => ({}), "token"),
10
10
  },
11
11
  params: { parent_id: event.id },
12
12
  resourceParams: {
13
- change: updateSettings,
13
+ resource: updateSettings,
14
14
  },
15
15
  locale: "en",
16
16
  remoteConfig: remoteConfig(),
@@ -88,8 +88,8 @@ describe("Event change url", () => {
88
88
 
89
89
  expect(result).toEqual({
90
90
  assigns: {
91
- change: { ...updateSettings, id: event.id },
92
- errors: { change: { slug: "has already been taken" } },
91
+ resource: { ...updateSettings, id: event.id },
92
+ errors: { resource: { slug: "has already been taken" } },
93
93
  _translations: [],
94
94
  },
95
95
  });
@@ -137,8 +137,8 @@ describe("Event change url", () => {
137
137
 
138
138
  expect(result).toEqual({
139
139
  assigns: {
140
- change: { ...updateSettings, id: event.id },
141
- errors: { change: { redirect: "url: has already been taken" } },
140
+ resource: { ...updateSettings, id: event.id },
141
+ errors: { resource: { redirect: "url: has already been taken" } },
142
142
  _translations: [],
143
143
  },
144
144
  });
@@ -5,7 +5,7 @@ import Factory from "../../../support/factory";
5
5
  function buildCtx(event) {
6
6
  return {
7
7
  client: {
8
- events: new Events({}, "token"),
8
+ events: new Events(() => ({}), "token"),
9
9
  },
10
10
  params: { parent_id: event.id },
11
11
  locale: "en",
@@ -31,7 +31,7 @@ describe("Event change url", () => {
31
31
 
32
32
  expect(result).toEqual({
33
33
  assigns: {
34
- change: { slug: event.slug, id: event.id, redirect: null },
34
+ resource: { slug: event.slug, id: event.id, redirect: null },
35
35
  errors: {},
36
36
  _translations: [],
37
37
  },
@@ -6,7 +6,7 @@ import Factory from "../../../support/factory";
6
6
  function buildCtx(revision) {
7
7
  return {
8
8
  client: {
9
- pageRevisions: new PageRevisions({}, "token"),
9
+ pageRevisions: new PageRevisions(() => ({}), "token"),
10
10
  },
11
11
  params: { parent_id: revision.id },
12
12
  locale: "en",
@@ -15,7 +15,14 @@ function buildCtx(revision) {
15
15
 
16
16
  describe("Page revision code settings", () => {
17
17
  test("edit_form when a revision exists", async () => {
18
- const revision = Factory.build("page_revision");
18
+ const revision = Factory.build("page_revision", {
19
+ settings: {
20
+ codes: {
21
+ structured_data: {},
22
+ scripts: [],
23
+ },
24
+ },
25
+ });
19
26
  const ctx = buildCtx(revision);
20
27
 
21
28
  const mockFind = jest
@@ -28,12 +35,7 @@ describe("Page revision code settings", () => {
28
35
 
29
36
  expect(result).toEqual({
30
37
  assigns: {
31
- code_settings: {
32
- id: revision.id,
33
- originalId: revision.originalId,
34
- scripts: JSON.stringify([]),
35
- structured_data: JSON.stringify({}),
36
- },
38
+ resource: revision,
37
39
  errors: {},
38
40
  _translations: [],
39
41
  },