@raketa-cloud/admin 0.0.100 → 0.0.102

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 (377) hide show
  1. package/dist/application.css +3804 -0
  2. package/package.json +6 -2
  3. package/babel.config.js +0 -6
  4. package/bin/tailwind +0 -2
  5. package/jest.config.js +0 -22
  6. package/src/Adapter.js +0 -265
  7. package/src/HonoAdapter.js +0 -269
  8. package/src/Logger.js +0 -21
  9. package/src/RaketaContext.js +0 -46
  10. package/src/buildResourcePath.js +0 -22
  11. package/src/cipher.js +0 -49
  12. package/src/cloud/ArticleChanges.js +0 -36
  13. package/src/cloud/ArticleRevisions.js +0 -239
  14. package/src/cloud/Articles.js +0 -194
  15. package/src/cloud/Categories.js +0 -97
  16. package/src/cloud/EventChanges.js +0 -36
  17. package/src/cloud/EventRevisions.js +0 -246
  18. package/src/cloud/Events.js +0 -204
  19. package/src/cloud/PageChanges.js +0 -36
  20. package/src/cloud/PageRevisions.js +0 -226
  21. package/src/cloud/Pages.js +0 -185
  22. package/src/cloud/RaketaClient.js +0 -223
  23. package/src/cloud/Redirects.js +0 -81
  24. package/src/cloud/Settings.js +0 -28
  25. package/src/cloud/Tags.js +0 -80
  26. package/src/cloud/documents/articlesDocuments.js +0 -343
  27. package/src/cloud/documents/categoryDocuments.js +0 -52
  28. package/src/cloud/documents/common.js +0 -133
  29. package/src/cloud/documents/eventsDocuments.js +0 -351
  30. package/src/cloud/documents/pagesDocuments.js +0 -339
  31. package/src/cloud/documents/redirectsDocuments.js +0 -82
  32. package/src/cloud/documents/settingsDocuments.js +0 -23
  33. package/src/cloud/documents/tagsDocuments.js +0 -63
  34. package/src/currentPath.cjs +0 -1
  35. package/src/handlers/DashboardsHandler.js +0 -9
  36. package/src/handlers/RedirectsHandler.js +0 -124
  37. package/src/handlers/TagsHandler.js +0 -113
  38. package/src/handlers/_shared/SettingsHandler.js +0 -36
  39. package/src/handlers/article_revisions/ArticleRevisionsHandler.js +0 -49
  40. package/src/handlers/article_revisions/CancelSchedulesHandler.js +0 -26
  41. package/src/handlers/article_revisions/CodeHandler.js +0 -74
  42. package/src/handlers/article_revisions/GeneralHandler.js +0 -76
  43. package/src/handlers/article_revisions/LocksHandler.js +0 -77
  44. package/src/handlers/article_revisions/MetaHandler.js +0 -74
  45. package/src/handlers/article_revisions/PublishesHandler.js +0 -120
  46. package/src/handlers/article_revisions/RevertsHandler.js +0 -28
  47. package/src/handlers/article_revisions/TagHandler.js +0 -82
  48. package/src/handlers/article_revisions/UnlocksHandler.js +0 -24
  49. package/src/handlers/article_revisions/VisualHandler.js +0 -74
  50. package/src/handlers/article_revisions/WidgetHandler.js +0 -47
  51. package/src/handlers/articles/ArticlesHandler.js +0 -109
  52. package/src/handlers/articles/ClonesHandler.js +0 -19
  53. package/src/handlers/articles/DeletesHandler.js +0 -72
  54. package/src/handlers/articles/HistoryHandler.js +0 -31
  55. package/src/handlers/articles/TranslationsHandler.js +0 -231
  56. package/src/handlers/articles/URLsHandler.js +0 -83
  57. package/src/handlers/categories/index.js +0 -122
  58. package/src/handlers/event_revisions/CancelSchedulesHandler.js +0 -26
  59. package/src/handlers/event_revisions/CodeHandler.js +0 -72
  60. package/src/handlers/event_revisions/EventRevisionsHandler.js +0 -47
  61. package/src/handlers/event_revisions/GeneralHandler.js +0 -74
  62. package/src/handlers/event_revisions/LocksHandler.js +0 -65
  63. package/src/handlers/event_revisions/MetaHandler.js +0 -72
  64. package/src/handlers/event_revisions/PublishesHandler.js +0 -112
  65. package/src/handlers/event_revisions/RevertsHandler.js +0 -26
  66. package/src/handlers/event_revisions/TagHandler.js +0 -79
  67. package/src/handlers/event_revisions/UnlocksHandler.js +0 -24
  68. package/src/handlers/event_revisions/VisualHandler.js +0 -72
  69. package/src/handlers/event_revisions/WidgetHandler.js +0 -41
  70. package/src/handlers/events/ClonesHandler.js +0 -19
  71. package/src/handlers/events/DeletesHandler.js +0 -72
  72. package/src/handlers/events/EventsHandler.js +0 -111
  73. package/src/handlers/events/HistoryHandler.js +0 -31
  74. package/src/handlers/events/TranslationsHandler.js +0 -233
  75. package/src/handlers/events/URLsHandler.js +0 -81
  76. package/src/handlers/page_revisions/CancelSchedulesHandler.js +0 -26
  77. package/src/handlers/page_revisions/CodeHandler.js +0 -57
  78. package/src/handlers/page_revisions/GeneralHandler.js +0 -59
  79. package/src/handlers/page_revisions/LocksHandler.js +0 -69
  80. package/src/handlers/page_revisions/MetaHandler.js +0 -57
  81. package/src/handlers/page_revisions/PageRevisionsHandler.js +0 -47
  82. package/src/handlers/page_revisions/PublishesHandler.js +0 -112
  83. package/src/handlers/page_revisions/RevertsHandler.js +0 -26
  84. package/src/handlers/page_revisions/TagHandler.js +0 -105
  85. package/src/handlers/page_revisions/UnlocksHandler.js +0 -22
  86. package/src/handlers/page_revisions/VisualHandler.js +0 -58
  87. package/src/handlers/page_revisions/WidgetHandler.js +0 -41
  88. package/src/handlers/pages/ClonesHandler.js +0 -19
  89. package/src/handlers/pages/DeletesHandler.js +0 -68
  90. package/src/handlers/pages/HistoryHandler.js +0 -31
  91. package/src/handlers/pages/PagesHandler.js +0 -104
  92. package/src/handlers/pages/TranslationsHandler.js +0 -233
  93. package/src/handlers/pages/URLsHandler.js +0 -77
  94. package/src/helpers/AuthHelper.js +0 -49
  95. package/src/helpers/FormBuilder.js +0 -438
  96. package/src/helpers/HTMLBuilder.js +0 -38
  97. package/src/helpers/Inflector.js +0 -9
  98. package/src/helpers/Pagination.js +0 -92
  99. package/src/helpers/SortButton.js +0 -102
  100. package/src/helpers/form_for.js +0 -8
  101. package/src/helpers/historyUtils.js +0 -133
  102. package/src/helpers/pagination_helper.js +0 -5
  103. package/src/helpers/sort_button.js +0 -5
  104. package/src/helpers/utils.js +0 -21
  105. package/src/routeArticlesModule.js +0 -151
  106. package/src/routeCategoriesModule.js +0 -16
  107. package/src/routeCollection.js +0 -90
  108. package/src/routeEventsModule.js +0 -166
  109. package/src/routeMember.js +0 -40
  110. package/src/routeNestedCollection.js +0 -96
  111. package/src/routeNestedMember.js +0 -46
  112. package/src/routePagesModule.js +0 -163
  113. package/src/routeSettings.js +0 -14
  114. package/src/routeStandard.js +0 -35
  115. package/src/setGlobalContext.js +0 -5
  116. package/src/setupAuthentication.js +0 -154
  117. package/src/setupCloud.js +0 -50
  118. package/src/styles/application.css +0 -561
  119. package/src/tests/Adapter.test.js +0 -39
  120. package/src/tests/HonoAdapter.test.js +0 -34
  121. package/src/tests/Logger.test.js +0 -33
  122. package/src/tests/handlers/DashboardsHandler.test/index.test.js +0 -17
  123. package/src/tests/handlers/RedirectsHandler.test/create.test.js +0 -83
  124. package/src/tests/handlers/RedirectsHandler.test/create_form.test.js +0 -27
  125. package/src/tests/handlers/RedirectsHandler.test/destroy.test.js +0 -53
  126. package/src/tests/handlers/RedirectsHandler.test/edit_form.test.js +0 -37
  127. package/src/tests/handlers/RedirectsHandler.test/index.test.js +0 -41
  128. package/src/tests/handlers/RedirectsHandler.test/show.test.js +0 -41
  129. package/src/tests/handlers/RedirectsHandler.test/update.test.js +0 -88
  130. package/src/tests/handlers/TagsHandler.test/create.test.js +0 -96
  131. package/src/tests/handlers/TagsHandler.test/create_form.test.js +0 -25
  132. package/src/tests/handlers/TagsHandler.test/destroy.test.js +0 -51
  133. package/src/tests/handlers/TagsHandler.test/edit_form.test.js +0 -60
  134. package/src/tests/handlers/TagsHandler.test/index.test.js +0 -37
  135. package/src/tests/handlers/TagsHandler.test/update.test.js +0 -105
  136. package/src/tests/handlers/_shared/SettingsHandler.test/edit_form.test.js +0 -36
  137. package/src/tests/handlers/_shared/SettingsHandler.test/update.test.js +0 -114
  138. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/create.test.js +0 -79
  139. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/destroy.test.js +0 -57
  140. package/src/tests/handlers/article_revisions/CancelScheduledHandler.test/create.test.js +0 -90
  141. package/src/tests/handlers/article_revisions/CodesHandler.test/edit_form.test.js +0 -56
  142. package/src/tests/handlers/article_revisions/CodesHandler.test/update.test.js +0 -161
  143. package/src/tests/handlers/article_revisions/GeneralHandler.test/edit_form.test.js +0 -59
  144. package/src/tests/handlers/article_revisions/GeneralHandler.test/update.test.js +0 -162
  145. package/src/tests/handlers/article_revisions/LocksHandler.test/create.test.js +0 -142
  146. package/src/tests/handlers/article_revisions/LocksHandler.test/create_form.test.js +0 -55
  147. package/src/tests/handlers/article_revisions/MetaHandler.test/edit_form.test.js +0 -56
  148. package/src/tests/handlers/article_revisions/MetaHandler.test/update.test.js +0 -163
  149. package/src/tests/handlers/article_revisions/PublishesHandler.test/create.test.js +0 -333
  150. package/src/tests/handlers/article_revisions/PublishesHandler.test/create_form.test.js +0 -48
  151. package/src/tests/handlers/article_revisions/RevertsHandler.test/create.test.js +0 -86
  152. package/src/tests/handlers/article_revisions/TagHandler.test/edit_form.test.js +0 -72
  153. package/src/tests/handlers/article_revisions/TagHandler.test/update.test.js +0 -153
  154. package/src/tests/handlers/article_revisions/UnlocksHandler.test/create.test.js +0 -84
  155. package/src/tests/handlers/article_revisions/VisualHandler.test.test/edit_form.test.js +0 -56
  156. package/src/tests/handlers/article_revisions/VisualHandler.test.test/update.test.js +0 -146
  157. package/src/tests/handlers/article_revisions/WidgetHandler.test/show.test.js +0 -46
  158. package/src/tests/handlers/article_revisions/WidgetHandler.test/update.test.js +0 -103
  159. package/src/tests/handlers/articles/ArticlesHandler.test/create.test.js +0 -172
  160. package/src/tests/handlers/articles/ArticlesHandler.test/create_form.test.js +0 -44
  161. package/src/tests/handlers/articles/ArticlesHandler.test/index.test.js +0 -57
  162. package/src/tests/handlers/articles/ArticlesHandler.test/show.test.js +0 -109
  163. package/src/tests/handlers/articles/ArticlesHistoryHandler.test/index.test.js +0 -87
  164. package/src/tests/handlers/articles/ClonesHandler.test/create.test.js +0 -57
  165. package/src/tests/handlers/articles/DeletesHandler.test/create.test.js +0 -115
  166. package/src/tests/handlers/articles/DeletesHandler.test/create_form.test.js +0 -60
  167. package/src/tests/handlers/articles/TranslationHandler.test/create.test.js +0 -297
  168. package/src/tests/handlers/articles/TranslationHandler.test/create_form.test.js +0 -71
  169. package/src/tests/handlers/articles/TranslationHandler.test/index.test.js +0 -91
  170. package/src/tests/handlers/articles/URLsHandler.test/create.test.js +0 -160
  171. package/src/tests/handlers/articles/URLsHandler.test/create_form.test.js +0 -55
  172. package/src/tests/handlers/categories/create.test.js +0 -94
  173. package/src/tests/handlers/categories/create_form.test.js +0 -26
  174. package/src/tests/handlers/categories/destroy.test.js +0 -57
  175. package/src/tests/handlers/categories/edit_form.test.js +0 -59
  176. package/src/tests/handlers/categories/index.test.js +0 -46
  177. package/src/tests/handlers/categories/update.test.js +0 -88
  178. package/src/tests/handlers/event_revisions/CancelScheduledHandler.test/create.test.js +0 -90
  179. package/src/tests/handlers/event_revisions/CodesHandler.test/edit_form.test.js +0 -60
  180. package/src/tests/handlers/event_revisions/CodesHandler.test/update.test.js +0 -171
  181. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/create.test.js +0 -79
  182. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/destroy.test.js +0 -57
  183. package/src/tests/handlers/event_revisions/GeneralHandler.test/edit_form.test.js +0 -63
  184. package/src/tests/handlers/event_revisions/GeneralHandler.test/update.test.js +0 -172
  185. package/src/tests/handlers/event_revisions/LocksHandler.test/create.test.js +0 -142
  186. package/src/tests/handlers/event_revisions/LocksHandler.test/create_form.test.js +0 -55
  187. package/src/tests/handlers/event_revisions/MetaHandler.test/edit_form.test.js +0 -60
  188. package/src/tests/handlers/event_revisions/MetaHandler.test/update.test.js +0 -173
  189. package/src/tests/handlers/event_revisions/PublishesHandler.test/create.test.js +0 -333
  190. package/src/tests/handlers/event_revisions/PublishesHandler.test/create_form.test.js +0 -48
  191. package/src/tests/handlers/event_revisions/RevertsHandler.test/create.test.js +0 -83
  192. package/src/tests/handlers/event_revisions/TagHandler.test/edit_form.test.js +0 -76
  193. package/src/tests/handlers/event_revisions/TagHandler.test/update.test.js +0 -163
  194. package/src/tests/handlers/event_revisions/UnlocksHandler.test/create.test.js +0 -84
  195. package/src/tests/handlers/event_revisions/VisualHandler.test.test/edit_form.test.js +0 -60
  196. package/src/tests/handlers/event_revisions/VisualHandler.test.test/update.test.js +0 -156
  197. package/src/tests/handlers/event_revisions/WidgetHandler.test/show.test.js +0 -46
  198. package/src/tests/handlers/event_revisions/WidgetHandler.test/update.test.js +0 -103
  199. package/src/tests/handlers/events/ClonesHandler.test/create.test.js +0 -57
  200. package/src/tests/handlers/events/DeletesHandler.test/create.test.js +0 -115
  201. package/src/tests/handlers/events/DeletesHandler.test/create_form.test.js +0 -60
  202. package/src/tests/handlers/events/EventsHandler.test/create.test.js +0 -172
  203. package/src/tests/handlers/events/EventsHandler.test/create_form.test.js +0 -45
  204. package/src/tests/handlers/events/EventsHandler.test/index.test.js +0 -53
  205. package/src/tests/handlers/events/EventsHandler.test/show.test.js +0 -109
  206. package/src/tests/handlers/events/EventsHistoryHandler.test/index.test.js +0 -87
  207. package/src/tests/handlers/events/TranslationHandler.test/create.test.js +0 -303
  208. package/src/tests/handlers/events/TranslationHandler.test/create_form.test.js +0 -71
  209. package/src/tests/handlers/events/TranslationHandler.test/index.test.js +0 -91
  210. package/src/tests/handlers/events/URLsHandler.test/create.test.js +0 -160
  211. package/src/tests/handlers/events/URLsHandler.test/create_form.test.js +0 -55
  212. package/src/tests/handlers/page_revisions/CancelScheduledHandler.test/create.test.js +0 -86
  213. package/src/tests/handlers/page_revisions/CodesHandler.test/edit_form.test.js +0 -58
  214. package/src/tests/handlers/page_revisions/CodesHandler.test/update.test.js +0 -154
  215. package/src/tests/handlers/page_revisions/GeneralHandler.test/edit_form.test.js +0 -54
  216. package/src/tests/handlers/page_revisions/GeneralHandler.test/update.test.js +0 -166
  217. package/src/tests/handlers/page_revisions/LocksHandler.test/create.test.js +0 -138
  218. package/src/tests/handlers/page_revisions/LocksHandler.test/create_form.test.js +0 -55
  219. package/src/tests/handlers/page_revisions/MetaHandler.test/edit_form.test.js +0 -51
  220. package/src/tests/handlers/page_revisions/MetaHandler.test/update.test.js +0 -159
  221. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/create.test.js +0 -71
  222. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/destroy.test.js +0 -57
  223. package/src/tests/handlers/page_revisions/PublishesHandler.test/create.test.js +0 -333
  224. package/src/tests/handlers/page_revisions/PublishesHandler.test/create_form.test.js +0 -48
  225. package/src/tests/handlers/page_revisions/RevertsHandler.test/create.test.js +0 -83
  226. package/src/tests/handlers/page_revisions/TagHandler.test/edit_form.test.js +0 -100
  227. package/src/tests/handlers/page_revisions/TagHandler.test/update.test.js +0 -180
  228. package/src/tests/handlers/page_revisions/UnlocksHandler.test/create.test.js +0 -80
  229. package/src/tests/handlers/page_revisions/VisualHandler.test.test/edit_form.test.js +0 -58
  230. package/src/tests/handlers/page_revisions/VisualHandler.test.test/update.test.js +0 -139
  231. package/src/tests/handlers/page_revisions/WidgetHandler.test/show.test.js +0 -46
  232. package/src/tests/handlers/page_revisions/WidgetHandler.test/update.test.js +0 -103
  233. package/src/tests/handlers/pages/ConesHandler.test/create.test.js +0 -57
  234. package/src/tests/handlers/pages/DeletesHandler.test/create.test.js +0 -115
  235. package/src/tests/handlers/pages/DeletesHandler.test/create_form.test.js +0 -60
  236. package/src/tests/handlers/pages/PagesHandler.test/create.test.js +0 -167
  237. package/src/tests/handlers/pages/PagesHandler.test/create_form.test.js +0 -41
  238. package/src/tests/handlers/pages/PagesHandler.test/index.test.js +0 -53
  239. package/src/tests/handlers/pages/PagesHandler.test/show.test.js +0 -107
  240. package/src/tests/handlers/pages/PagesHistoryHandler.test/index.test.js +0 -87
  241. package/src/tests/handlers/pages/TranslationHandler.test/create.test.js +0 -290
  242. package/src/tests/handlers/pages/TranslationHandler.test/create_form.test.js +0 -71
  243. package/src/tests/handlers/pages/TranslationHandler.test/index.test.js +0 -87
  244. package/src/tests/handlers/pages/URLsHandler.test/create.test.js +0 -160
  245. package/src/tests/handlers/pages/URLsHandler.test/create_form.test.js +0 -58
  246. package/src/tests/helpers/AuthHelper.test.js +0 -169
  247. package/src/tests/helpers/FormBuildert.test.js +0 -357
  248. package/src/tests/helpers/HTMLBuilder.test.js +0 -44
  249. package/src/tests/helpers/Inflector.test.js +0 -75
  250. package/src/tests/helpers/Pagination.test.js +0 -65
  251. package/src/tests/helpers/SortButton.test.js +0 -85
  252. package/src/tests/helpers/historyUtils.test.js +0 -107
  253. package/src/tests/helpers/utils.test.js +0 -27
  254. package/src/tests/routeCollection.test.js +0 -163
  255. package/src/tests/routeMember.test.js +0 -97
  256. package/src/tests/routeNestedCollection.test.js +0 -182
  257. package/src/tests/routeNestedMember.test.js +0 -102
  258. package/src/tests/support/factory.js +0 -194
  259. package/src/tests/support/handlersHelper.js +0 -31
  260. package/src/utils.js +0 -30
  261. package/src/views/_auth/login.ejs +0 -82
  262. package/src/views/_shared/_credentials_input.ejs +0 -31
  263. package/src/views/_shared/_layout_input.ejs +0 -5
  264. package/src/views/_shared/_scripts_input.ejs +0 -5
  265. package/src/views/_shared/_structured_json_input.ejs +0 -7
  266. package/src/views/article_revisions/_nav.ejs +0 -44
  267. package/src/views/article_revisions/codes/_form.ejs +0 -13
  268. package/src/views/article_revisions/codes/edit_form.ejs +0 -16
  269. package/src/views/article_revisions/general/_form.ejs +0 -17
  270. package/src/views/article_revisions/general/edit_form.ejs +0 -16
  271. package/src/views/article_revisions/locks/_form.ejs +0 -11
  272. package/src/views/article_revisions/locks/create_form.ejs +0 -27
  273. package/src/views/article_revisions/meta/_form.ejs +0 -15
  274. package/src/views/article_revisions/meta/edit_form.ejs +0 -16
  275. package/src/views/article_revisions/publishes/_form.ejs +0 -70
  276. package/src/views/article_revisions/publishes/create_form.ejs +0 -9
  277. package/src/views/article_revisions/tags/_form.ejs +0 -12
  278. package/src/views/article_revisions/tags/edit_form.ejs +0 -16
  279. package/src/views/article_revisions/visuals/_form.ejs +0 -12
  280. package/src/views/article_revisions/visuals/edit_form.ejs +0 -16
  281. package/src/views/articles/_form.ejs +0 -45
  282. package/src/views/articles/_shared/_history_toolbar.ejs +0 -24
  283. package/src/views/articles/_shared/_revision_toolbar.ejs +0 -68
  284. package/src/views/articles/_shared/_title.ejs +0 -11
  285. package/src/views/articles/_shared/_toolbar.ejs +0 -33
  286. package/src/views/articles/_shared/history_table.ejs +0 -68
  287. package/src/views/articles/create_form.ejs +0 -9
  288. package/src/views/articles/deletes/create_form.ejs +0 -68
  289. package/src/views/articles/history/index.ejs +0 -87
  290. package/src/views/articles/index.ejs +0 -171
  291. package/src/views/articles/show.ejs +0 -234
  292. package/src/views/articles/translations/_translation_toolbar.ejs +0 -18
  293. package/src/views/articles/translations/create_form.ejs +0 -75
  294. package/src/views/articles/translations/index.ejs +0 -39
  295. package/src/views/articles/urls/create_form.ejs +0 -36
  296. package/src/views/categories/_form.ejs +0 -24
  297. package/src/views/categories/create_form.ejs +0 -9
  298. package/src/views/categories/edit_form.ejs +0 -9
  299. package/src/views/categories/index.ejs +0 -35
  300. package/src/views/dashboard/index.ejs +0 -23
  301. package/src/views/event_revisions/_nav.ejs +0 -44
  302. package/src/views/event_revisions/codes/_form.ejs +0 -13
  303. package/src/views/event_revisions/codes/edit_form.ejs +0 -16
  304. package/src/views/event_revisions/general/_form.ejs +0 -19
  305. package/src/views/event_revisions/general/edit_form.ejs +0 -16
  306. package/src/views/event_revisions/locks/_form.ejs +0 -11
  307. package/src/views/event_revisions/locks/create_form.ejs +0 -27
  308. package/src/views/event_revisions/meta/_form.ejs +0 -15
  309. package/src/views/event_revisions/meta/edit_form.ejs +0 -16
  310. package/src/views/event_revisions/publishes/_form.ejs +0 -77
  311. package/src/views/event_revisions/publishes/create_form.ejs +0 -9
  312. package/src/views/event_revisions/tags/_form.ejs +0 -12
  313. package/src/views/event_revisions/tags/edit_form.ejs +0 -16
  314. package/src/views/event_revisions/visuals/_form.ejs +0 -12
  315. package/src/views/event_revisions/visuals/edit_form.ejs +0 -16
  316. package/src/views/events/_form.ejs +0 -47
  317. package/src/views/events/_shared/_history_toolbar.ejs +0 -24
  318. package/src/views/events/_shared/_revision_toolbar.ejs +0 -68
  319. package/src/views/events/_shared/_title.ejs +0 -12
  320. package/src/views/events/_shared/_toolbar.ejs +0 -33
  321. package/src/views/events/_shared/history_table.ejs +0 -68
  322. package/src/views/events/create_form.ejs +0 -9
  323. package/src/views/events/deletes/create_form.ejs +0 -68
  324. package/src/views/events/history/index.ejs +0 -87
  325. package/src/views/events/index.ejs +0 -171
  326. package/src/views/events/show.ejs +0 -234
  327. package/src/views/events/translations/_translation_toolbar.ejs +0 -18
  328. package/src/views/events/translations/create_form.ejs +0 -75
  329. package/src/views/events/translations/index.ejs +0 -39
  330. package/src/views/events/urls/create_form.ejs +0 -36
  331. package/src/views/layouts/application.ejs +0 -239
  332. package/src/views/layouts/header.ejs +0 -47
  333. package/src/views/page_revisions/_nav.ejs +0 -44
  334. package/src/views/page_revisions/codes/_form.ejs +0 -13
  335. package/src/views/page_revisions/codes/edit_form.ejs +0 -16
  336. package/src/views/page_revisions/general/_form.ejs +0 -16
  337. package/src/views/page_revisions/general/edit_form.ejs +0 -16
  338. package/src/views/page_revisions/locks/_form.ejs +0 -11
  339. package/src/views/page_revisions/locks/create_form.ejs +0 -27
  340. package/src/views/page_revisions/meta/_form.ejs +0 -15
  341. package/src/views/page_revisions/meta/edit_form.ejs +0 -16
  342. package/src/views/page_revisions/publishes/_form.ejs +0 -76
  343. package/src/views/page_revisions/publishes/create_form.ejs +0 -9
  344. package/src/views/page_revisions/tags/_form.ejs +0 -12
  345. package/src/views/page_revisions/tags/edit_form.ejs +0 -21
  346. package/src/views/page_revisions/visuals/_form.ejs +0 -12
  347. package/src/views/page_revisions/visuals/edit_form.ejs +0 -16
  348. package/src/views/pages/_form.ejs +0 -44
  349. package/src/views/pages/_shared/_history_toolbar.ejs +0 -24
  350. package/src/views/pages/_shared/_revision_toolbar.ejs +0 -68
  351. package/src/views/pages/_shared/_title.ejs +0 -12
  352. package/src/views/pages/_shared/_toolbar.ejs +0 -33
  353. package/src/views/pages/_shared/history_table.ejs +0 -68
  354. package/src/views/pages/create_form.ejs +0 -9
  355. package/src/views/pages/deletes/create_form.ejs +0 -68
  356. package/src/views/pages/history/index.ejs +0 -87
  357. package/src/views/pages/index.ejs +0 -166
  358. package/src/views/pages/show.ejs +0 -235
  359. package/src/views/pages/translations/_translation_toolbar.ejs +0 -18
  360. package/src/views/pages/translations/create_form.ejs +0 -75
  361. package/src/views/pages/translations/index.ejs +0 -39
  362. package/src/views/pages/urls/create_form.ejs +0 -36
  363. package/src/views/redirects/_form.ejs +0 -26
  364. package/src/views/redirects/create_form.ejs +0 -9
  365. package/src/views/redirects/edit_form.ejs +0 -9
  366. package/src/views/redirects/index.ejs +0 -75
  367. package/src/views/redirects/show.ejs +0 -60
  368. package/src/views/settings/_nav.ejs +0 -22
  369. package/src/views/settings/layout/edit_form.ejs +0 -58
  370. package/src/views/settings/meta/edit_form.ejs +0 -24
  371. package/src/views/tags/_form.ejs +0 -25
  372. package/src/views/tags/create_form.ejs +0 -9
  373. package/src/views/tags/edit_form.ejs +0 -9
  374. package/src/views/tags/index.ejs +0 -43
  375. package/tailwind.config.js +0 -40
  376. package/tsconfig.json +0 -15
  377. package/tsconfig.lint.json +0 -8
@@ -1,105 +0,0 @@
1
- import Tags from "../../../cloud/Tags";
2
- import TagsHandler from "../../../handlers/TagsHandler";
3
- import Factory from "../../support/factory";
4
-
5
- describe("Tags Handler", () => {
6
- function buildCtx(tag) {
7
- return {
8
- client: {
9
- tags: new Tags(() => ({}), "token"),
10
- },
11
- params: { id: tag.id },
12
- resourceParams: {
13
- tag: {
14
- name: "Updated Tag",
15
- slug: "updated-tag",
16
- },
17
- },
18
- locale: "en",
19
- };
20
- }
21
-
22
- test("update successful", async () => {
23
- const tag = Factory.build("tag", {
24
- id: "1",
25
- name: "Original Tag",
26
- slug: "original-tag",
27
- });
28
- const ctx = buildCtx(tag);
29
-
30
- const mockedUpdate = jest
31
- .spyOn(ctx.client.tags, "update")
32
- .mockImplementation(() => ({
33
- tag: { ...tag, name: "Updated Tag", slug: "updated-tag" },
34
- errors: null,
35
- }));
36
-
37
- const result = await TagsHandler.update(ctx);
38
-
39
- expect(mockedUpdate).toHaveBeenCalledWith(
40
- "1",
41
- {
42
- name: "Updated Tag",
43
- slug: "updated-tag",
44
- },
45
- "en"
46
- );
47
-
48
- expect(result).toEqual({
49
- redirect: "/en/tags",
50
- });
51
- });
52
-
53
- test("update failed", async () => {
54
- const tag = Factory.build("tag", {
55
- id: "1",
56
- name: "Original Tag",
57
- slug: "original-tag",
58
- });
59
- const ctx = buildCtx(tag);
60
-
61
- const errors = [{ key: "name", message: "already taken" }];
62
-
63
- const mockedUpdate = jest
64
- .spyOn(ctx.client.tags, "update")
65
- .mockImplementation(() => ({
66
- tag: null,
67
- errors,
68
- }));
69
-
70
- const mockedFormatErrors = jest
71
- .spyOn(ctx.client.tags, "formatErrors")
72
- .mockImplementation(() => ({
73
- name: "already taken",
74
- }));
75
-
76
- const result = await TagsHandler.update(ctx);
77
-
78
- expect(mockedUpdate).toHaveBeenCalledWith(
79
- "1",
80
- {
81
- name: "Updated Tag",
82
- slug: "updated-tag",
83
- },
84
- "en"
85
- );
86
-
87
- expect(mockedFormatErrors).toHaveBeenCalledWith(errors);
88
-
89
- expect(result).toEqual({
90
- assigns: {
91
- tag: {
92
- id: "1",
93
- name: "Updated Tag",
94
- slug: "updated-tag",
95
- },
96
- errors: {
97
- tag: {
98
- name: "already taken",
99
- },
100
- },
101
- _translations: [],
102
- },
103
- });
104
- });
105
- });
@@ -1,36 +0,0 @@
1
- import SettingsHandler from "../../../../handlers/_shared/SettingsHandler";
2
- import Settings from "../../../../cloud/Settings";
3
-
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx() {
7
- return {
8
- client: {
9
- settings: new Settings(() => ({}), "token"),
10
- },
11
- locale: "en",
12
- };
13
- }
14
-
15
- describe("Settings edit", () => {
16
- test("edit_form", async () => {
17
- const settings = Factory.build("settings");
18
-
19
- const ctx = buildCtx();
20
-
21
- const mockFind = jest
22
- .spyOn(ctx.client.settings, "find")
23
- .mockImplementation(() => settings.value);
24
-
25
- const result = await SettingsHandler.edit_form(ctx);
26
-
27
- expect(mockFind).toHaveBeenCalledWith("en");
28
-
29
- expect(result).toEqual({
30
- assigns: {
31
- resource: settings.value,
32
- errors: {},
33
- },
34
- });
35
- });
36
- });
@@ -1,114 +0,0 @@
1
- import SettingsHandler from "../../../../handlers/_shared/SettingsHandler";
2
- import Settings from "../../../../cloud/Settings";
3
-
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx(params) {
7
- return {
8
- client: {
9
- settings: new Settings(() => ({}), "token"),
10
- },
11
- locale: "en",
12
- resourceParams: {
13
- resource: params,
14
- },
15
- locale: "en",
16
- resourceConfig: {
17
- resource: "settings/meta",
18
- },
19
- };
20
- }
21
-
22
- describe("Settings update", () => {
23
- test("update succesfully", async () => {
24
- const settings = Factory.build("settings", {
25
- value: {
26
- meta: {
27
- title: "Not A title!",
28
- description: "No, no!",
29
- },
30
- },
31
- });
32
-
33
- const ctx = buildCtx({
34
- meta: {
35
- title: "A title",
36
- description: "A description",
37
- image: JSON.stringify({ url: "https://image-url.com" }),
38
- },
39
- });
40
-
41
- const mockFind = jest
42
- .spyOn(ctx.client.settings, "find")
43
- .mockImplementation(() => settings.value);
44
-
45
- const mockUpdate = jest
46
- .spyOn(ctx.client.settings, "update")
47
- .mockImplementation(() => ({ setting: {}, errors: null }));
48
-
49
- const result = await SettingsHandler.update(ctx);
50
-
51
- expect(mockFind).toHaveBeenCalledWith("en");
52
- expect(mockUpdate).toHaveBeenCalledWith("en", {
53
- meta: {
54
- title: "A title",
55
- description: "A description",
56
- image: { url: "https://image-url.com" },
57
- },
58
- });
59
-
60
- expect(result).toEqual({
61
- redirect: "/en/settings/meta/edit?success=1",
62
- });
63
- });
64
-
65
- test("update failed", async () => {
66
- const settings = Factory.build("settings", {
67
- value: {
68
- meta: {
69
- title: "Not A title!",
70
- description: "No, no!",
71
- },
72
- },
73
- });
74
-
75
- const updateParams = {
76
- meta: {
77
- title: "A title",
78
- description: "A description",
79
- image: JSON.stringify({ url: "https://image-url.com" }),
80
- },
81
- };
82
-
83
- const ctx = buildCtx(updateParams);
84
-
85
- const mockFind = jest
86
- .spyOn(ctx.client.settings, "find")
87
- .mockImplementation(() => settings.value);
88
-
89
- const mockUpdate = jest
90
- .spyOn(ctx.client.settings, "update")
91
- .mockImplementation(() => ({
92
- setting: null,
93
- errors: [{ key: "generalError", message: "some error" }],
94
- }));
95
-
96
- const result = await SettingsHandler.update(ctx);
97
-
98
- expect(mockFind).toHaveBeenCalledWith("en");
99
- expect(mockUpdate).toHaveBeenCalledWith("en", {
100
- meta: {
101
- title: "A title",
102
- description: "A description",
103
- image: { url: "https://image-url.com" },
104
- },
105
- });
106
-
107
- expect(result).toEqual({
108
- assigns: {
109
- resource: updateParams,
110
- errors: { resource: { generalError: "some error" } },
111
- },
112
- });
113
- });
114
- });
@@ -1,79 +0,0 @@
1
- import ArticleRevisionsHandler from "../../../../handlers/article_revisions/ArticleRevisionsHandler";
2
- import ArticleRevisions from "../../../../cloud/ArticleRevisions";
3
-
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx(articleID) {
7
- return {
8
- client: {
9
- articleRevisions: new ArticleRevisions(() => ({}), "token"),
10
- },
11
- params: { parent_id: articleID },
12
- locale: "en",
13
- resourceConfig: {
14
- articleType: "article",
15
- articleTypePlural: "articles",
16
- },
17
- };
18
- }
19
-
20
- describe("Article revisions", () => {
21
- test("create successful", async () => {
22
- const revision = Factory.build("article_revision", { originalId: 1 });
23
- const ctx = buildCtx(revision.originalId);
24
-
25
- const mockCreate = jest
26
- .spyOn(ctx.client.articleRevisions, "create")
27
- .mockImplementation(() => ({
28
- revision,
29
- errors: null,
30
- articleErrors: null,
31
- }));
32
-
33
- const result = await ArticleRevisionsHandler.create(ctx);
34
-
35
- expect(mockCreate).toHaveBeenCalledWith(revision.originalId, "en");
36
-
37
- expect(result).toEqual({
38
- redirect: `/en/articles/${revision.originalId}`,
39
- });
40
- });
41
-
42
- test("create failed with errors", async () => {
43
- const ctx = buildCtx(1);
44
- const errors = [{ key: "generalError", message: "something went wrong" }];
45
-
46
- const mockCreate = jest
47
- .spyOn(ctx.client.articleRevisions, "create")
48
- .mockImplementation(() => ({
49
- revision: null,
50
- errors,
51
- articleErrors: null,
52
- }));
53
-
54
- expect(async () => {
55
- await ArticleRevisionsHandler.create(ctx);
56
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
57
-
58
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
59
- });
60
-
61
- test("create failed with article errors", async () => {
62
- const ctx = buildCtx(1);
63
- const errors = [{ key: "generalError", message: "something went wrong" }];
64
-
65
- const mockCreate = jest
66
- .spyOn(ctx.client.articleRevisions, "create")
67
- .mockImplementation(() => ({
68
- revision: null,
69
- errors: null,
70
- articleErrors: errors,
71
- }));
72
-
73
- expect(async () => {
74
- await ArticleRevisionsHandler.create(ctx);
75
- }).rejects.toThrow(`Failed to start revision: ${JSON.stringify(errors)}`);
76
-
77
- expect(mockCreate).toHaveBeenCalledWith(1, "en");
78
- });
79
- });
@@ -1,57 +0,0 @@
1
- import ArticleRevisionsHandler from "../../../../handlers/article_revisions/ArticleRevisionsHandler";
2
- import ArticleRevisions from "../../../../cloud/ArticleRevisions";
3
-
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx(revisionID) {
7
- return {
8
- client: {
9
- articleRevisions: new ArticleRevisions(() => ({}), "token"),
10
- },
11
- params: { id: revisionID },
12
- locale: "en",
13
- resourceConfig: {
14
- articleType: "article",
15
- articleTypePlural: "articles",
16
- },
17
- };
18
- }
19
-
20
- describe("Article revisions", () => {
21
- test("destroy successful", async () => {
22
- const revision = Factory.build("article_revision");
23
- const ctx = buildCtx(1);
24
-
25
- const mockDelete = jest
26
- .spyOn(ctx.client.articleRevisions, "delete")
27
- .mockImplementation(() => ({ revision, errors: null }));
28
-
29
- const result = await ArticleRevisionsHandler.destroy(ctx);
30
-
31
- expect(mockDelete).toHaveBeenCalledWith(1, "en");
32
-
33
- expect(result).toEqual({
34
- headers: {
35
- "HX-Redirect": `/en/articles/${revision.originalId}`,
36
- },
37
- json: {},
38
- });
39
- });
40
-
41
- test("destroy failed", async () => {
42
- const ctx = buildCtx(1);
43
- const errors = [{ key: "generalError", message: "something went wrong" }];
44
-
45
- const mockDelete = jest
46
- .spyOn(ctx.client.articleRevisions, "delete")
47
- .mockImplementation(() => ({ revision: null, errors }));
48
-
49
- expect(async () => {
50
- await ArticleRevisionsHandler.destroy(ctx);
51
- }).rejects.toThrow(
52
- `Failed to delete revision#${1}: ${JSON.stringify(errors)}`
53
- );
54
-
55
- expect(mockDelete).toHaveBeenCalledWith(1, "en");
56
- });
57
- });
@@ -1,90 +0,0 @@
1
- import Factory from "../../../support/factory";
2
- import ArticleRevisions from "../../../../cloud/ArticleRevisions";
3
- import CancelSchedulesHandler from "../../../../handlers/article_revisions/CancelSchedulesHandler";
4
-
5
- function buildCtx(revision) {
6
- return {
7
- client: {
8
- articleRevisions: new ArticleRevisions(() => ({}), "token"),
9
- },
10
- params: { parent_id: revision.id },
11
- locale: "en",
12
- resourceConfig: {
13
- articleType: "article",
14
- articleTypePlural: "articles",
15
- },
16
- };
17
- }
18
-
19
- describe("Article revision schedule cancel", () => {
20
- test("cancel of schedule successful", async () => {
21
- const revision = Factory.build("article_revision");
22
- const ctx = buildCtx(revision);
23
-
24
- const mockUnlock = jest
25
- .spyOn(ctx.client.articleRevisions, "cancelSchedule")
26
- .mockImplementation(() => ({
27
- revision: revision,
28
- errors: null,
29
- articleErrors: null,
30
- }));
31
-
32
- const result = await CancelSchedulesHandler.create(ctx);
33
-
34
- expect(mockUnlock).toHaveBeenCalledWith(revision.id, "en");
35
-
36
- expect(result).toEqual({
37
- redirect: `/en/articles/${revision.originalId}`,
38
- });
39
- });
40
-
41
- test("unlock failed with errors", async () => {
42
- const revision = Factory.build("article_revision");
43
- const ctx = buildCtx(revision);
44
- const errors = [
45
- {
46
- key: "generalError",
47
- message: "Failed to cancel schedule for revision",
48
- },
49
- ];
50
-
51
- const mockUnlock = jest
52
- .spyOn(ctx.client.articleRevisions, "cancelSchedule")
53
- .mockImplementation(() => ({
54
- revision: null,
55
- errors,
56
- articleErrors: null,
57
- }));
58
-
59
- await expect(CancelSchedulesHandler.create(ctx)).rejects.toThrow(
60
- `Failed to cancel schedule for revision: ${JSON.stringify(errors)}`
61
- );
62
-
63
- expect(mockUnlock).toHaveBeenCalledWith(revision.id, "en");
64
- });
65
-
66
- test("unlock failed with article errors", async () => {
67
- const revision = Factory.build("article_revision");
68
- const ctx = buildCtx(revision);
69
- const articleErrors = [
70
- {
71
- key: "generalError",
72
- message: "Failed to cancel schedule for revision",
73
- },
74
- ];
75
-
76
- const mockUnlock = jest
77
- .spyOn(ctx.client.articleRevisions, "cancelSchedule")
78
- .mockImplementation(() => ({
79
- revision: null,
80
- errors: null,
81
- articleErrors,
82
- }));
83
-
84
- await expect(CancelSchedulesHandler.create(ctx)).rejects.toThrow(
85
- `Failed to cancel schedule for revision: ${JSON.stringify(articleErrors)}`
86
- );
87
-
88
- expect(mockUnlock).toHaveBeenCalledWith(revision.id, "en");
89
- });
90
- });
@@ -1,56 +0,0 @@
1
- import CodeHandler from "../../../../handlers/article_revisions/CodeHandler";
2
- import ArticleRevisions from "../../../../cloud/ArticleRevisions";
3
-
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx(revision) {
7
- return {
8
- client: {
9
- articleRevisions: new ArticleRevisions(() => ({}), "token"),
10
- },
11
- params: { parent_id: revision.id },
12
- locale: "en",
13
- };
14
- }
15
-
16
- describe("Article revision code settings", () => {
17
- test("edit_form when a revision exists", async () => {
18
- const revision = Factory.build("article_revision", {
19
- publishAt: "2024-10-10T07:05:00Z",
20
- });
21
- const ctx = buildCtx(revision);
22
-
23
- const mockFind = jest
24
- .spyOn(ctx.client.articleRevisions, "find")
25
- .mockImplementation(() => revision);
26
-
27
- const result = await CodeHandler.edit_form(ctx);
28
-
29
- expect(mockFind).toHaveBeenCalledWith(revision.id, "en");
30
-
31
- expect(result).toEqual({
32
- assigns: {
33
- resource: {
34
- ...revision,
35
- publishAt: "2024-10-10T07:05:00",
36
- },
37
- errors: {},
38
- _translations: [],
39
- },
40
- });
41
- });
42
-
43
- test("edit_form when a revision does not exist", async () => {
44
- const ctx = buildCtx({ id: "42" });
45
-
46
- const mockFind = jest
47
- .spyOn(ctx.client.articleRevisions, "find")
48
- .mockImplementation(() => null);
49
-
50
- expect(async () => {
51
- await CodeHandler.edit_form(ctx);
52
- }).rejects.toThrow("Missing revision #42");
53
-
54
- expect(mockFind).toHaveBeenCalledWith("42", "en");
55
- });
56
- });
@@ -1,161 +0,0 @@
1
- import CodeHandler from "../../../../handlers/article_revisions/CodeHandler";
2
- import ArticleRevisions from "../../../../cloud/ArticleRevisions";
3
-
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx(revision, updateSettings) {
7
- return {
8
- client: {
9
- articleRevisions: new ArticleRevisions(() => ({}), "token"),
10
- },
11
- params: { parent_id: revision.id },
12
- resourceParams: {
13
- resource: updateSettings,
14
- },
15
- locale: "en",
16
- resourceConfig: {
17
- articleType: "article",
18
- articleTypePlural: "articles",
19
- },
20
- };
21
- }
22
-
23
- describe("Article revision code settings", () => {
24
- test("update successful", async () => {
25
- const revision = Factory.build("article_revision", {
26
- publishAt: "2024-10-10T07:05:00Z",
27
- });
28
-
29
- const updateSettings = {
30
- settings: {
31
- codes: {
32
- scripts: JSON.stringify([{ type: "bla" }]),
33
- structured_json: JSON.stringify({ type: "article" }),
34
- },
35
- },
36
- };
37
-
38
- const ctx = buildCtx(revision, updateSettings);
39
-
40
- const mockFind = jest
41
- .spyOn(ctx.client.articleRevisions, "find")
42
- .mockImplementation(() => revision);
43
-
44
- const mockUpdate = jest
45
- .spyOn(ctx.client.articleRevisions, "update")
46
- .mockImplementation(() => ({
47
- revision: {},
48
- errors: null,
49
- }));
50
-
51
- const result = await CodeHandler.update(ctx);
52
-
53
- expect(mockFind).toHaveBeenCalledWith(revision.id, "en");
54
- expect(mockUpdate).toHaveBeenCalledWith(revision.id, "en", {
55
- slug: revision.slug,
56
- title: revision.title,
57
- visibility: revision.visibility,
58
- publishAt: revision.publishAt,
59
- widgets: revision.widgets,
60
- tags: revision.tags.map((t) => t.id),
61
- categories: revision.categories.map((c) => c.id),
62
- settings: {
63
- ...revision.settings,
64
- codes: {
65
- scripts: [{ type: "bla" }],
66
- structured_json: { type: "article" },
67
- },
68
- },
69
- });
70
-
71
- expect(result).toEqual({
72
- redirect: `/en/article_revisions/${revision.id}/codes/edit?success=1`,
73
- });
74
- });
75
-
76
- test("update failed", async () => {
77
- const revision = Factory.build("article_revision", {
78
- publishAt: "2024-10-10T07:05:00Z",
79
- });
80
-
81
- const updateSettings = {
82
- settings: {
83
- codes: {
84
- scripts: JSON.stringify([{ type: "bla" }]),
85
- structured_json: JSON.stringify({ type: "article" }),
86
- },
87
- },
88
- };
89
-
90
- const ctx = buildCtx(revision, updateSettings);
91
-
92
- const mockFind = jest
93
- .spyOn(ctx.client.articleRevisions, "find")
94
- .mockImplementation(() => revision);
95
-
96
- const mockUpdate = jest
97
- .spyOn(ctx.client.articleRevisions, "update")
98
- .mockImplementation(() => ({
99
- revision: {},
100
- errors: [{ key: "generalError", message: "some error" }],
101
- }));
102
-
103
- const result = await CodeHandler.update(ctx);
104
-
105
- expect(mockFind).toHaveBeenCalledWith(revision.id, "en");
106
- expect(mockUpdate).toHaveBeenCalledWith(revision.id, "en", {
107
- slug: revision.slug,
108
- title: revision.title,
109
- visibility: revision.visibility,
110
- publishAt: revision.publishAt,
111
- widgets: revision.widgets,
112
- tags: revision.tags.map((t) => t.id),
113
- categories: revision.categories.map((c) => c.id),
114
- settings: {
115
- ...revision.settings,
116
- codes: {
117
- scripts: [{ type: "bla" }],
118
- structured_json: { type: "article" },
119
- },
120
- },
121
- });
122
-
123
- expect(result).toEqual({
124
- assigns: {
125
- resource: {
126
- ...revision,
127
- publishAt: "2024-10-10T07:05:00",
128
- settings: {
129
- ...revision.settings,
130
- codes: {
131
- scripts: [{ type: "bla" }],
132
- structured_json: { type: "article" },
133
- },
134
- },
135
- },
136
- errors: {
137
- resource: { generalError: "some error" },
138
- },
139
- _translations: [],
140
- },
141
- });
142
- });
143
-
144
- test("update when a revision does not exist", async () => {
145
- const revision = Factory.build("article_revision");
146
-
147
- const updateSettings = {};
148
-
149
- const ctx = buildCtx(revision, updateSettings);
150
-
151
- const mockFind = jest
152
- .spyOn(ctx.client.articleRevisions, "find")
153
- .mockImplementation(() => null);
154
-
155
- expect(async () => {
156
- await CodeHandler.update(ctx);
157
- }).rejects.toThrow(`Missing revision #${revision.id}`);
158
-
159
- expect(mockFind).toHaveBeenCalledWith(revision.id, "en");
160
- });
161
- });