@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
@@ -32,64 +32,67 @@ describe("routeNestedCollection", () => {
32
32
  test("Valid handler mapping is passed to router", () => {
33
33
  routeNestedCollection(honoAdapter, "orders", "line_items", OrdersHandler);
34
34
 
35
- expect(adapterSpy).toHaveBeenCalledWith([
35
+ expect(adapterSpy).toHaveBeenCalledWith(
36
36
  [
37
- "GET",
38
- "/orders/:parent_id/line_items",
39
- "line_items",
40
- "orders/line_items",
41
- "index",
42
- OrdersHandler.index,
37
+ [
38
+ "GET",
39
+ "/orders/:parent_id/line_items",
40
+ "line_items",
41
+ "orders/line_items",
42
+ "index",
43
+ OrdersHandler.index,
44
+ ],
45
+ [
46
+ "GET",
47
+ "/orders/:parent_id/line_items/new",
48
+ "line_items",
49
+ "orders/line_items",
50
+ "create_form",
51
+ OrdersHandler.create_form,
52
+ ],
53
+ [
54
+ "GET",
55
+ "/line_items/:id",
56
+ "line_items",
57
+ "orders/line_items",
58
+ "show",
59
+ OrdersHandler.show,
60
+ ],
61
+ [
62
+ "GET",
63
+ "/line_items/:id/edit",
64
+ "line_items",
65
+ "orders/line_items",
66
+ "edit_form",
67
+ OrdersHandler.edit_form,
68
+ ],
69
+ [
70
+ "POST",
71
+ "/orders/:parent_id/line_items",
72
+ "line_items",
73
+ "orders/line_items",
74
+ "create_form",
75
+ OrdersHandler.create,
76
+ ],
77
+ [
78
+ "PUT",
79
+ "/line_items/:id",
80
+ "line_items",
81
+ "orders/line_items",
82
+ "update",
83
+ OrdersHandler.update,
84
+ ],
85
+ [
86
+ "DELETE",
87
+ "/line_items/:id",
88
+ "line_items",
89
+ "orders/line_items",
90
+ "destroy",
91
+ OrdersHandler.destroy,
92
+ ],
43
93
  ],
44
- [
45
- "GET",
46
- "/orders/:parent_id/line_items/new",
47
- "line_items",
48
- "orders/line_items",
49
- "create_form",
50
- OrdersHandler.create_form,
51
- ],
52
- [
53
- "GET",
54
- "/line_items/:id",
55
- "line_items",
56
- "orders/line_items",
57
- "show",
58
- OrdersHandler.show,
59
- ],
60
- [
61
- "GET",
62
- "/line_items/:id/edit",
63
- "line_items",
64
- "orders/line_items",
65
- "edit_form",
66
- OrdersHandler.edit_form,
67
- ],
68
- [
69
- "POST",
70
- "/orders/:parent_id/line_items",
71
- "line_items",
72
- "orders/line_items",
73
- "create_form",
74
- OrdersHandler.create,
75
- ],
76
- [
77
- "PUT",
78
- "/line_items/:id",
79
- "line_items",
80
- "orders/line_items",
81
- "update",
82
- OrdersHandler.update,
83
- ],
84
- [
85
- "DELETE",
86
- "/line_items/:id",
87
- "line_items",
88
- "orders/line_items",
89
- "destroy",
90
- OrdersHandler.destroy,
91
- ],
92
- ]);
94
+ {}
95
+ );
93
96
  });
94
97
 
95
98
  test("Valid handler mapping is passed to router with filters", () => {
@@ -100,77 +103,80 @@ describe("routeNestedCollection", () => {
100
103
  OrdersHandlerWithFilters
101
104
  );
102
105
 
103
- expect(adapterSpy).toHaveBeenCalledWith([
106
+ expect(adapterSpy).toHaveBeenCalledWith(
104
107
  [
105
- "GET",
106
- "/orders/:parent_id/line_items",
107
- "line_items",
108
- "orders/line_items",
109
- "index",
110
- OrdersHandlerWithFilters.index,
111
- OrdersHandlerWithFilters.before_filter,
112
- OrdersHandlerWithFilters.after_filter,
108
+ [
109
+ "GET",
110
+ "/orders/:parent_id/line_items",
111
+ "line_items",
112
+ "orders/line_items",
113
+ "index",
114
+ OrdersHandlerWithFilters.index,
115
+ OrdersHandlerWithFilters.before_filter,
116
+ OrdersHandlerWithFilters.after_filter,
117
+ ],
118
+ [
119
+ "GET",
120
+ "/orders/:parent_id/line_items/new",
121
+ "line_items",
122
+ "orders/line_items",
123
+ "create_form",
124
+ OrdersHandlerWithFilters.create_form,
125
+ OrdersHandlerWithFilters.before_filter,
126
+ OrdersHandlerWithFilters.after_filter,
127
+ ],
128
+ [
129
+ "GET",
130
+ "/line_items/:id",
131
+ "line_items",
132
+ "orders/line_items",
133
+ "show",
134
+ OrdersHandlerWithFilters.show,
135
+ OrdersHandlerWithFilters.before_filter,
136
+ OrdersHandlerWithFilters.after_filter,
137
+ ],
138
+ [
139
+ "GET",
140
+ "/line_items/:id/edit",
141
+ "line_items",
142
+ "orders/line_items",
143
+ "edit_form",
144
+ OrdersHandlerWithFilters.edit_form,
145
+ OrdersHandlerWithFilters.before_filter,
146
+ OrdersHandlerWithFilters.after_filter,
147
+ ],
148
+ [
149
+ "POST",
150
+ "/orders/:parent_id/line_items",
151
+ "line_items",
152
+ "orders/line_items",
153
+ "create_form",
154
+ OrdersHandlerWithFilters.create,
155
+ OrdersHandlerWithFilters.before_filter,
156
+ OrdersHandlerWithFilters.after_filter,
157
+ ],
158
+ [
159
+ "PUT",
160
+ "/line_items/:id",
161
+ "line_items",
162
+ "orders/line_items",
163
+ "update",
164
+ OrdersHandlerWithFilters.update,
165
+ OrdersHandlerWithFilters.before_filter,
166
+ OrdersHandlerWithFilters.after_filter,
167
+ ],
168
+ [
169
+ "DELETE",
170
+ "/line_items/:id",
171
+ "line_items",
172
+ "orders/line_items",
173
+ "destroy",
174
+ OrdersHandlerWithFilters.destroy,
175
+ OrdersHandlerWithFilters.before_filter,
176
+ OrdersHandlerWithFilters.after_filter,
177
+ ],
113
178
  ],
114
- [
115
- "GET",
116
- "/orders/:parent_id/line_items/new",
117
- "line_items",
118
- "orders/line_items",
119
- "create_form",
120
- OrdersHandlerWithFilters.create_form,
121
- OrdersHandlerWithFilters.before_filter,
122
- OrdersHandlerWithFilters.after_filter,
123
- ],
124
- [
125
- "GET",
126
- "/line_items/:id",
127
- "line_items",
128
- "orders/line_items",
129
- "show",
130
- OrdersHandlerWithFilters.show,
131
- OrdersHandlerWithFilters.before_filter,
132
- OrdersHandlerWithFilters.after_filter,
133
- ],
134
- [
135
- "GET",
136
- "/line_items/:id/edit",
137
- "line_items",
138
- "orders/line_items",
139
- "edit_form",
140
- OrdersHandlerWithFilters.edit_form,
141
- OrdersHandlerWithFilters.before_filter,
142
- OrdersHandlerWithFilters.after_filter,
143
- ],
144
- [
145
- "POST",
146
- "/orders/:parent_id/line_items",
147
- "line_items",
148
- "orders/line_items",
149
- "create_form",
150
- OrdersHandlerWithFilters.create,
151
- OrdersHandlerWithFilters.before_filter,
152
- OrdersHandlerWithFilters.after_filter,
153
- ],
154
- [
155
- "PUT",
156
- "/line_items/:id",
157
- "line_items",
158
- "orders/line_items",
159
- "update",
160
- OrdersHandlerWithFilters.update,
161
- OrdersHandlerWithFilters.before_filter,
162
- OrdersHandlerWithFilters.after_filter,
163
- ],
164
- [
165
- "DELETE",
166
- "/line_items/:id",
167
- "line_items",
168
- "orders/line_items",
169
- "destroy",
170
- OrdersHandlerWithFilters.destroy,
171
- OrdersHandlerWithFilters.before_filter,
172
- OrdersHandlerWithFilters.after_filter,
173
- ],
174
- ]);
179
+ {}
180
+ );
175
181
  });
176
182
  });
@@ -24,32 +24,35 @@ describe("routeNestedMember", () => {
24
24
  test("Valid handler mapping is passed to router", () => {
25
25
  routeNestedMember(honoAdapter, "artist", "bio", ArtistHandWithFilters);
26
26
 
27
- expect(adapterSpy).toHaveBeenCalledWith([
27
+ expect(adapterSpy).toHaveBeenCalledWith(
28
28
  [
29
- "GET",
30
- "/artist/:parent_id/bio",
31
- "bio",
32
- "artist/bio",
33
- "show",
34
- ArtistHandWithFilters.show,
29
+ [
30
+ "GET",
31
+ "/artist/:parent_id/bio",
32
+ "bio",
33
+ "artist/bio",
34
+ "show",
35
+ ArtistHandWithFilters.show,
36
+ ],
37
+ [
38
+ "GET",
39
+ "/artist/:parent_id/bio/edit",
40
+ "bio",
41
+ "artist/bio",
42
+ "edit_form",
43
+ ArtistHandWithFilters.edit_form,
44
+ ],
45
+ [
46
+ "POST",
47
+ "/artist/:parent_id/bio",
48
+ "bio",
49
+ "artist/bio",
50
+ "edit_form",
51
+ ArtistHandWithFilters.update,
52
+ ],
35
53
  ],
36
- [
37
- "GET",
38
- "/artist/:parent_id/bio/edit",
39
- "bio",
40
- "artist/bio",
41
- "edit_form",
42
- ArtistHandWithFilters.edit_form,
43
- ],
44
- [
45
- "POST",
46
- "/artist/:parent_id/bio",
47
- "bio",
48
- "artist/bio",
49
- "edit_form",
50
- ArtistHandWithFilters.update,
51
- ],
52
- ]);
54
+ {}
55
+ );
53
56
  });
54
57
 
55
58
  test("Valid handler mapping is passed to router with filters", () => {
@@ -60,37 +63,40 @@ describe("routeNestedMember", () => {
60
63
  ArtistHandWithFiltersWithFilters
61
64
  );
62
65
 
63
- expect(adapterSpy).toHaveBeenCalledWith([
66
+ expect(adapterSpy).toHaveBeenCalledWith(
64
67
  [
65
- "GET",
66
- "/artist/:parent_id/bio",
67
- "bio",
68
- "artist/bio",
69
- "show",
70
- ArtistHandWithFiltersWithFilters.show,
71
- ArtistHandWithFiltersWithFilters.before_filter,
72
- ArtistHandWithFiltersWithFilters.after_filter,
68
+ [
69
+ "GET",
70
+ "/artist/:parent_id/bio",
71
+ "bio",
72
+ "artist/bio",
73
+ "show",
74
+ ArtistHandWithFiltersWithFilters.show,
75
+ ArtistHandWithFiltersWithFilters.before_filter,
76
+ ArtistHandWithFiltersWithFilters.after_filter,
77
+ ],
78
+ [
79
+ "GET",
80
+ "/artist/:parent_id/bio/edit",
81
+ "bio",
82
+ "artist/bio",
83
+ "edit_form",
84
+ ArtistHandWithFiltersWithFilters.edit_form,
85
+ ArtistHandWithFiltersWithFilters.before_filter,
86
+ ArtistHandWithFiltersWithFilters.after_filter,
87
+ ],
88
+ [
89
+ "POST",
90
+ "/artist/:parent_id/bio",
91
+ "bio",
92
+ "artist/bio",
93
+ "edit_form",
94
+ ArtistHandWithFiltersWithFilters.update,
95
+ ArtistHandWithFiltersWithFilters.before_filter,
96
+ ArtistHandWithFiltersWithFilters.after_filter,
97
+ ],
73
98
  ],
74
- [
75
- "GET",
76
- "/artist/:parent_id/bio/edit",
77
- "bio",
78
- "artist/bio",
79
- "edit_form",
80
- ArtistHandWithFiltersWithFilters.edit_form,
81
- ArtistHandWithFiltersWithFilters.before_filter,
82
- ArtistHandWithFiltersWithFilters.after_filter,
83
- ],
84
- [
85
- "POST",
86
- "/artist/:parent_id/bio",
87
- "bio",
88
- "artist/bio",
89
- "edit_form",
90
- ArtistHandWithFiltersWithFilters.update,
91
- ArtistHandWithFiltersWithFilters.before_filter,
92
- ArtistHandWithFiltersWithFilters.after_filter,
93
- ],
94
- ]);
99
+ {}
100
+ );
95
101
  });
96
102
  });
@@ -1,29 +1,29 @@
1
- <% form_for({ article }, errors, (f) => { %>
2
- <form action="<%= article?.id ? `/${_context.locale}/articles/${article.id}` : `/${_context.locale}/articles` %>" method="post" class="form">
3
- <%- f.field('article.title', { required: true }) %>
4
- <%- f.field('article.slug', { label: "URL", required: true }) %>
5
- <%- f.field('article.publish_at', { required: true, type: 'datetime-local' }) %>
1
+ <% form_for({ resource }, errors, (f) => { %>
2
+ <form action="<%= resource?.id ? `/${_context.locale}/articles/${resource.id}` : `/${_context.locale}/articles` %>" method="post" class="form">
3
+ <%- f.field('resource.title', { required: true }) %>
4
+ <%- f.field('resource.slug', { label: "URL", required: true }) %>
5
+ <%- f.field('resource.publish_at', { required: true, type: 'datetime-local' }) %>
6
6
 
7
- <%- f.field('article.visibility', { as: 'select', required: true, options: visibilityOptions }) %>
7
+ <%- f.field('resource.visibility', { as: 'select', required: true, options: visibilityOptions }) %>
8
8
 
9
- <%- f.field('article.username', { required: true }) %>
10
- <%- f.field('article.password', { required: true }) %>
9
+ <%- f.field('resource.username', { required: true }) %>
10
+ <%- f.field('resource.password', { required: true }) %>
11
11
 
12
- <%- f.field('article.layout', { as: 'select', required: true, options: [
12
+ <%- f.field('resource.layout', { as: 'select', required: true, options: [
13
13
  ["default", "Default"],
14
14
  ["landing", "Landing page"],
15
15
  ["headless", "Headless"],
16
16
  ] }) %>
17
17
 
18
- <%- f.field('article.meta_title', { required: true }) %>
19
- <%- f.field('article.meta_description', { as: "textarea", required: true }) %>
18
+ <%- f.field('resource.meta_title', { required: true }) %>
19
+ <%- f.field('resource.meta_description', { as: "textarea", required: true }) %>
20
20
 
21
21
  <raketa-image-picker
22
- name="article[meta_image]"
23
- value="<%= JSON.stringify(article.meta_image) %>"
22
+ name="resource[meta_image]"
23
+ value="<%= JSON.stringify(resource.meta_image) %>"
24
24
  ></raketa-image-picker>
25
25
 
26
- <%- f.field('article.tags', { as: 'checkbox_group', required: true, options: tags.map(tag => [tag.id, tag.name]) }) %>
26
+ <%- f.field('resource.tags', { as: 'checkbox_group', required: true, options: tags.map(tag => [tag.id, tag.name]) }) %>
27
27
 
28
28
  <div class="form-actions">
29
29
  <div class="btn-toolbar">
@@ -32,8 +32,8 @@
32
32
  <a href="<%= `/${_context.locale}/articles` %>" class="btn-secondary">Back to list</a>
33
33
  </div>
34
34
 
35
- <% if (article?.id) {%>
36
- <button hx-delete="<%= `/${_context.locale}/articles/${article.id}` %>" hx-confirm="Are you sure?" class="btn-danger has-icon">
35
+ <% if (resource?.id) {%>
36
+ <button hx-delete="<%= `/${_context.locale}/articles/${resource.id}` %>" hx-confirm="Are you sure?" class="btn-danger has-icon">
37
37
  <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-4">
38
38
  <path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
39
39
  </svg>
@@ -78,7 +78,7 @@
78
78
 
79
79
  onVisibilityChange({
80
80
  target: {
81
- value: '<%= article.visibility %>'
81
+ value: '<%= resource.visibility %>'
82
82
  }
83
83
  })
84
84
 
@@ -1,18 +1,18 @@
1
1
  <div class="page-wrapper">
2
2
  <div class="page-title">
3
3
  <div class="flex items-center gap-4">
4
- <h1 class="heading-1"><%= article.title %></h1>
4
+ <h1 class="heading-1"><%= resource.title %></h1>
5
5
  <div class="flex flex-wrap items-center gap-1">
6
6
  <% Object.keys(_context.locales).forEach(key => { %>
7
7
  <% const { name, _code, flag} = _context.locales[key] %>
8
8
  <% if (key === _context.locale) { %>
9
9
  <img title="<%= name %>" src="<%= flag %>" alt="<%= name %>" class="size-6 rounded-full border dark:border-neutral-700" />
10
- <% } else if (article.translations[key]) { %>
11
- <a href="<%= `/${key}/articles/${article.translations[key].id}` %>">
10
+ <% } else if (resource.translations[key]) { %>
11
+ <a href="<%= `/${key}/articles/${resource.translations[key].id}` %>">
12
12
  <img title="<%= name %>" src="<%= flag %>" alt="<%= name %>" class="size-6 rounded-full border dark:border-neutral-700" />
13
13
  </a>
14
14
  <% } else { %>
15
- <a href="<%= `/${_context.locale}/articles/${article.id}/translations/new?target_locale=${key}` %>">
15
+ <a href="<%= `/${_context.locale}/articles/${resource.id}/translations/new?target_locale=${key}` %>">
16
16
  <img title="<%= name %>" src="<%= flag %>" alt="<%= name %>" class="<%= [" transition-all ease-in-out duration-300 size-6 rounded-full border hover:opacity-100 dark:border-neutral-700", key === _context.locale ? "opacity-100" : "opacity-10"].join(" ") %>" />
17
17
  </a>
18
18
  <% } %>
@@ -21,13 +21,13 @@
21
21
  </div>
22
22
 
23
23
  <div class="actions-toolbar">
24
- <form method="POST" action="<%= `/${_context.locale}/articles/${article.id}/article_revisions` %>" class="inline-block">
24
+ <form method="POST" action="<%= `/${_context.locale}/articles/${resource.id}/article_revisions` %>" class="inline-block">
25
25
  <button type="submit" class="btn-primary">
26
26
  Start revision
27
27
  </button>
28
28
  </form>
29
29
 
30
- <a href="<%= `/${_context.locale}/articles/${article.id}/urls/new` %>" class="btn-text has-icon">
30
+ <a href="<%= `/${_context.locale}/articles/${resource.id}/urls/new` %>" class="btn-text has-icon">
31
31
  <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-4">
32
32
  <path stroke-linecap="round" stroke-linejoin="round" d="M13.19 8.688a4.5 4.5 0 0 1 1.242 7.244l-4.5 4.5a4.5 4.5 0 0 1-6.364-6.364l1.757-1.757m13.35-.622 1.757-1.757a4.5 4.5 0 0 0-6.364-6.364l-4.5 4.5a4.5 4.5 0 0 0 1.242 7.244" />
33
33
  </svg>
@@ -35,7 +35,7 @@
35
35
  Change URL
36
36
  </a>
37
37
 
38
- <form action="<%= `/${_context.locale}/articles/${article.id}/clones` %>" method="post" class="inline-block">
38
+ <form action="<%= `/${_context.locale}/articles/${resource.id}/clones` %>" method="post" class="inline-block">
39
39
  <button type="submit" class="btn-text has-icon">
40
40
  <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-4">
41
41
  <path stroke-linecap="round" stroke-linejoin="round" d="M15.75 17.25v3.375c0 .621-.504 1.125-1.125 1.125h-9.75a1.125 1.125 0 0 1-1.125-1.125V7.875c0-.621.504-1.125 1.125-1.125H6.75a9.06 9.06 0 0 1 1.5.124m7.5 10.376h3.375c.621 0 1.125-.504 1.125-1.125V11.25c0-4.46-3.243-8.161-7.5-8.876a9.06 9.06 0 0 0-1.5-.124H9.375c-.621 0-1.125.504-1.125 1.125v3.5m7.5 10.375H9.375a1.125 1.125 0 0 1-1.125-1.125v-9.25m12 6.625v-1.875a3.375 3.375 0 0 0-3.375-3.375h-1.5a1.125 1.125 0 0 1-1.125-1.125v-1.5a3.375 3.375 0 0 0-3.375-3.375H9.75" />
@@ -45,7 +45,7 @@
45
45
  </button>
46
46
  </form>
47
47
 
48
- <a href="<%= `/${_context.locale}/articles/${article.id}/deletes/new` %>" class="btn-danger has-icon">
48
+ <a href="<%= `/${_context.locale}/articles/${resource.id}/deletes/new` %>" class="btn-danger has-icon">
49
49
  <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-4">
50
50
  <path stroke-linecap="round" stroke-linejoin="round" d="m14.74 9-.346 9m-4.788 0L9.26 9m9.968-3.21c.342.052.682.107 1.022.166m-1.022-.165L18.16 19.673a2.25 2.25 0 0 1-2.244 2.077H8.084a2.25 2.25 0 0 1-2.244-2.077L4.772 5.79m14.456 0a48.108 48.108 0 0 0-3.478-.397m-12 .562c.34-.059.68-.114 1.022-.165m0 0a48.11 48.11 0 0 1 3.478-.397m7.5 0v-.916c0-1.18-.91-2.164-2.09-2.201a51.964 51.964 0 0 0-3.32 0c-1.18.037-2.09 1.022-2.09 2.201v.916m7.5 0a48.667 48.667 0 0 0-7.5 0" />
51
51
  </svg>
@@ -251,7 +251,7 @@
251
251
  <td>
252
252
  <div class="actions-toolbar justify-end">
253
253
  <% if (maxVersion !== change.version) { %>
254
- <form method="POST" action="<%= `/${_context.locale}/articles/${article.id}/article_changes/reverts` %>" class="inline-block">
254
+ <form method="POST" action="<%= `/${_context.locale}/articles/${resource.id}/article_changes/reverts` %>" class="inline-block">
255
255
  <input type="hidden" name="version" value=<%= change.version %>>
256
256
  <button type="submit" class="btn-text has-icon">
257
257
  <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-4">
@@ -1,5 +1,5 @@
1
1
  <% form_for({ translation }, errors, (f) => { %>
2
- <form action="<%= `/${_context.locale}/articles/${article.id}/translations` %>" method="post" class="form">
2
+ <form action="<%= `/${_context.locale}/articles/${resource.id}/translations` %>" method="post" class="form">
3
3
  <input type="hidden" name="target_locale" value="<%= targetLocale %>" />
4
4
 
5
5
  <%- f.field('translation.title', { required: true }) %>
@@ -30,7 +30,7 @@
30
30
  <div class="btn-toolbar">
31
31
  <%- f.submit('Save record', { class: 'btn-primary' }) %>
32
32
 
33
- <a href="<%= `/${_context.locale}/articles/${article.id}` %>" class="btn-secondary">Cancel</a>
33
+ <a href="<%= `/${_context.locale}/articles/${resource.id}` %>" class="btn-secondary">Cancel</a>
34
34
  </div>
35
35
  </div>
36
36
  </form>
@@ -69,7 +69,7 @@
69
69
 
70
70
  onVisibilityChange({
71
71
  target: {
72
- value: '<%= article.visibility %>'
72
+ value: '<%= resource.visibility %>'
73
73
  }
74
74
  })
75
75
 
@@ -1,11 +1,9 @@
1
- <div class="w-full">
2
- <div class="flex items-center justify-between mt-6 mb-4">
3
- <div class="flex items-center gap-2">
4
- <h1 class="heading-1">Create page translation</h1>
5
- </div>
1
+ <div class="page-wrapper">
2
+ <div class="page-title">
3
+ <h1 class="heading-1">Create article translation</h1>
6
4
  </div>
7
- </div>
8
5
 
9
- <div class="grid gap-4 md:grid-cols-3">
10
- <%- include('_form.ejs') %>
11
- </div>
6
+ <div class="grid gap-4 md:grid-cols-3">
7
+ <%- include('_form.ejs') %>
8
+ </div>
9
+ </div>
@@ -0,0 +1,40 @@
1
+ <%
2
+ const activeClass = "relative top-0.5 px-4 border-b-2 border-raketa-primary pb-4";
3
+ const inactiveClass = "relative top-0.5 px-4 border-b-2 border-transparent pb-4";
4
+ %>
5
+
6
+ <div class="flex w-full pb-4">
7
+ <div class="flex items-center justify-between mb-4">
8
+ <div class="flex items-center border-b-2">
9
+ <div class=" <%= active === 'general' ? activeClass : inactiveClass %>">
10
+ <a href="<%= `/${_context.locale}/event_revisions/${settings.id}/general/edit` %>" class="text-raketa-primary font-semibold">
11
+ General
12
+ </a>
13
+ </div>
14
+
15
+ <div class="<%= active === 'visuals' ? activeClass : inactiveClass %>">
16
+ <a href="<%= `/${_context.locale}/event_revisions/${settings.id}/visuals/edit` %>" class="text-raketa-primary font-semibold">
17
+ Visuals
18
+ </a>
19
+ </div>
20
+
21
+ <div class="<%= active === 'codes' ? activeClass : inactiveClass %>">
22
+ <a href="<%= `/${_context.locale}/event_revisions/${settings.id}/codes/edit` %>" class="text-raketa-primary font-semibold">
23
+ Code customizations
24
+ </a>
25
+ </div>
26
+
27
+ <div class="<%= active === 'meta' ? activeClass : inactiveClass %>">
28
+ <a href="<%= `/${_context.locale}/event_revisions/${settings.id}/meta/edit` %>" class="text-raketa-primary font-semibold">
29
+ Open graph & meta tags
30
+ </a>
31
+ </div>
32
+
33
+ <div class="<%= active === 'tags' ? activeClass : inactiveClass %>">
34
+ <a href="<%= `/${_context.locale}/event_revisions/${settings.id}/tags/edit` %>" class="text-raketa-primary font-semibold">
35
+ Content tags
36
+ </a>
37
+ </div>
38
+ </div>
39
+ </div>
40
+ </div>
@@ -0,0 +1,39 @@
1
+ <div class="page-wrapper">
2
+ <div class="page-title">
3
+ <h1 class="heading-1">Edit revision / Code customizations</h1>
4
+ </div>
5
+
6
+ <%- include('../_nav.ejs', { settings: code_settings, active: 'codes' }) %>
7
+
8
+ <div class="grid gap-4 md:grid-cols-3">
9
+ <div>
10
+ <% form_for({ code_settings }, errors, (f) => { %>
11
+ <form action="<%= `/${_context.locale}/event_revisions/${code_settings.id}/codes` %>" method="POST" class="form">
12
+ <%- f.field('code_settings.scripts', { as: 'textarea', }) %>
13
+ <%- f.field('code_settings.structured_data', { label: 'Structured data (JSON)', as: 'textarea', hint: 'Click here for a structured data verification tool' }) %>
14
+
15
+ <div class="form-actions">
16
+ <div class="btn-toolbar">
17
+ <%- f.submit('Save changes', { class: 'btn-primary' }) %>
18
+ <a href="<%= `/${_context.locale}/events/${code_settings.originalId}` %>" class="btn-secondary">Back</a>
19
+ </div>
20
+ </div>
21
+ </form>
22
+ <% }) %>
23
+ </div>
24
+
25
+ <div>
26
+ <div class="help">
27
+ <div class="mb-2 flex items-center gap-1">
28
+ <svg xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 24 24" stroke-width="1.5" stroke="currentColor" class="size-4">
29
+ <path stroke-linecap="round" stroke-linejoin="round" d="m11.25 11.25.041-.02a.75.75 0 0 1 1.063.852l-.708 2.836a.75.75 0 0 0 1.063.853l.041-.021M21 12a9 9 0 1 1-18 0 9 9 0 0 1 18 0Zm-9-3.75h.008v.008H12V8.25Z" />
30
+ </svg>
31
+
32
+ <h3 class="heading-3">Contextual help</h3>
33
+ </div>
34
+
35
+ <p>Lorem ipsum dolor sit amet consectetur adipisicing elit. Tempore nostrum fugit sint sunt distinctio ut cum, corrupti ad error, quo labore minima. Reprehenderit quasi maxime repudiandae voluptatum commodi saepe molestiae?</p>
36
+ </div>
37
+ </div>
38
+ </div>
39
+ </div>