@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,303 +0,0 @@
1
- import EventRevisions from "../../../../cloud/EventRevisions";
2
- import Events from "../../../../cloud/Events";
3
- import TranslationsHandler from "../../../../handlers/events/TranslationsHandler";
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx(params, event) {
7
- return {
8
- client: {
9
- events: new Events(() => ({}), "token"),
10
- eventRevisions: new EventRevisions(() => ({}), "token"),
11
- },
12
- params: { parent_id: event.id },
13
- resourceParams: {
14
- resource: params,
15
- },
16
- locale: "en",
17
- resourceConfig: {
18
- eventType: "event",
19
- eventTypePlural: "events",
20
- },
21
- };
22
- }
23
-
24
- describe("Events Translation Handler", () => {
25
- test("create fails with translation errors", async () => {
26
- const event = Factory.build("event", {
27
- translations: {},
28
- categories: [{ id: "cat1" }],
29
- });
30
- const params = {
31
- languages: ["fr"],
32
- };
33
-
34
- const ctx = buildCtx(params, event);
35
-
36
- const mockFind = jest
37
- .spyOn(ctx.client.events, "find")
38
- .mockImplementation(() => event);
39
-
40
- const translationErrors = [{ key: "title", message: "cannot be blank" }];
41
- const mockTranslateBatch = jest
42
- .spyOn(ctx.client.events, "translateBatch")
43
- .mockImplementation((parentId, locales) =>
44
- locales.map((locale) => ({
45
- event: null,
46
- errors: translationErrors,
47
- }))
48
- );
49
-
50
- const mockFormatErrors = jest
51
- .spyOn(ctx.client.events, "formatErrors")
52
- .mockImplementation(() => ({ title: "cannot be blank" }));
53
-
54
- const result = await TranslationsHandler.create(ctx);
55
-
56
- expect(mockFind).toHaveBeenCalledWith(event.id, "en");
57
- expect(mockTranslateBatch).toHaveBeenCalled();
58
- expect(mockFormatErrors).toHaveBeenCalledWith(translationErrors);
59
-
60
- expect(result).toEqual({
61
- assigns: {
62
- resource: {
63
- title: event.title,
64
- tags: [],
65
- visibility: "private",
66
- slug: event.slug,
67
- settings: event.settings,
68
- widgets: event.widgets,
69
- categories: ["cat1"],
70
- publishAt: event.publishAt,
71
- startsAt: event.startsAt,
72
- endsAt: event.endsAt,
73
- translations: {},
74
- languages: ["fr"],
75
- },
76
- blueprint: event,
77
- targetLocale: "fr",
78
- errors: { resource: { title: "cannot be blank" } },
79
- },
80
- });
81
- });
82
-
83
- test("create successfully multiple translations with already one is existing", async () => {
84
- const event = Factory.build("event", {
85
- translations: { de: "de-id" },
86
- categories: [{ id: "cat1" }],
87
- });
88
-
89
- const params = {
90
- languages: ["fr", "es", "de"],
91
- };
92
-
93
- const ctx = buildCtx(params, event);
94
-
95
- const mockFind = jest
96
- .spyOn(ctx.client.events, "find")
97
- .mockImplementation(() => event);
98
-
99
- const mockTranslateBatch = jest
100
- .spyOn(ctx.client.events, "translateBatch")
101
- .mockImplementation((parentId, locales) =>
102
- locales.map((locale) => ({
103
- event: { id: `translated-event-${locale}` },
104
- errors: null,
105
- }))
106
- );
107
-
108
- const mockCreateRevisionBatch = jest
109
- .spyOn(ctx.client.eventRevisions, "createBatch")
110
- .mockImplementation((revisionInputs) =>
111
- revisionInputs.map(({ locale }) => ({
112
- revision: { id: `revision-${locale}` },
113
- errors: null,
114
- }))
115
- );
116
-
117
- const result = await TranslationsHandler.create(ctx);
118
-
119
- expect(mockFind).toHaveBeenCalledWith(event.id, "en");
120
-
121
- expect(mockTranslateBatch).toHaveBeenCalledTimes(1);
122
- expect(mockTranslateBatch).toHaveBeenCalledWith(
123
- event.id,
124
- ["fr", "es"],
125
- expect.objectContaining({
126
- title: event.title,
127
- tags: [],
128
- visibility: "private",
129
- slug: event.slug,
130
- })
131
- );
132
-
133
- expect(mockCreateRevisionBatch).toHaveBeenCalledTimes(1);
134
- expect(mockCreateRevisionBatch).toHaveBeenCalledWith([
135
- { eventId: "translated-event-fr", locale: "fr" },
136
- { eventId: "translated-event-es", locale: "es" },
137
- ]);
138
-
139
- expect(result).toEqual({
140
- redirect: `/en/events/${event.id}/translations?translations=fr:translated-event-fr;es:translated-event-es`,
141
- });
142
- });
143
-
144
- test("create translations fails if any translation fails", async () => {
145
- const event = Factory.build("event", {
146
- translations: {},
147
- categories: [{ id: "some-category-uno" }],
148
- });
149
-
150
- const params = {
151
- languages: ["fr", "es"],
152
- };
153
-
154
- const ctx = buildCtx(params, event);
155
-
156
- const mockFind = jest
157
- .spyOn(ctx.client.events, "find")
158
- .mockImplementation(() => event);
159
-
160
- const mockTranslateBatch = jest
161
- .spyOn(ctx.client.events, "translateBatch")
162
- .mockImplementation((parentId, locales) => [
163
- {
164
- event: {
165
- id: "translated-event-fr",
166
- slug: "event-revision",
167
- visibility: "public",
168
- },
169
- errors: null,
170
- },
171
- {
172
- event: null,
173
- errors: [{ key: "title", message: "invalid for spanish" }],
174
- },
175
- ]);
176
-
177
- const mockFormatErrors = jest
178
- .spyOn(ctx.client.events, "formatErrors")
179
- .mockImplementation(() => ({
180
- title: "invalid for spanish",
181
- }));
182
-
183
- const mockCreateRevision = jest
184
- .spyOn(ctx.client.eventRevisions, "create")
185
- .mockImplementation(() => ({ errors: null }));
186
-
187
- const result = await TranslationsHandler.create(ctx);
188
-
189
- expect(mockFind).toHaveBeenCalledWith(event.id, "en");
190
-
191
- expect(mockTranslateBatch).toHaveBeenCalledWith(
192
- event.id,
193
- ["fr", "es"],
194
- expect.objectContaining({
195
- title: event.title,
196
- tags: [],
197
- visibility: "private",
198
- slug: event.slug,
199
- })
200
- );
201
-
202
- expect(result).toEqual({
203
- assigns: {
204
- resource: {
205
- title: event.title,
206
- tags: [],
207
- visibility: "private",
208
- slug: event.slug,
209
- settings: event.settings,
210
- widgets: event.widgets,
211
- categories: ["some-category-uno"],
212
- publishAt: event.publishAt,
213
- startsAt: event.startsAt,
214
- endsAt: event.endsAt,
215
- translations: {
216
- fr: {
217
- id: "translated-event-fr",
218
- slug: event.slug,
219
- visibility: event.visibility,
220
- },
221
- },
222
- languages: ["fr", "es"],
223
- },
224
- blueprint: event,
225
- targetLocale: "es",
226
- errors: { resource: { title: "invalid for spanish" } },
227
- },
228
- });
229
- });
230
-
231
- test("create translation fails with revision errors", async () => {
232
- const event = Factory.build("event", {
233
- translations: {},
234
- categories: [{ id: "cat1" }],
235
- });
236
- const params = {
237
- languages: ["fr"],
238
- };
239
-
240
- const ctx = buildCtx(params, event);
241
-
242
- const mockFind = jest
243
- .spyOn(ctx.client.events, "find")
244
- .mockImplementation(() => event);
245
-
246
- const mockTranslateBatch = jest
247
- .spyOn(ctx.client.events, "translateBatch")
248
- .mockImplementation(() => [
249
- {
250
- event: {
251
- id: "translated-event-fr",
252
- slug: "event-revision",
253
- visibility: "public",
254
- },
255
- errors: null,
256
- },
257
- ]);
258
-
259
- const revisionErrors = [{ key: "base", message: "something went wrong" }];
260
- const mockCreateRevisionBatch = jest
261
- .spyOn(ctx.client.eventRevisions, "createBatch")
262
- .mockImplementation(() => [{ errors: revisionErrors }]);
263
-
264
- const mockFormatErrors = jest
265
- .spyOn(ctx.client.events, "formatErrors")
266
- .mockImplementation(() => ({ base: "something went wrong" }));
267
-
268
- const result = await TranslationsHandler.create(ctx);
269
-
270
- expect(mockCreateRevisionBatch).toHaveBeenCalledWith([
271
- { eventId: "translated-event-fr", locale: "fr" },
272
- ]);
273
- expect(mockFormatErrors).toHaveBeenCalledWith(revisionErrors);
274
-
275
- expect(result).toEqual({
276
- assigns: {
277
- resource: {
278
- title: event.title,
279
- tags: [],
280
- visibility: "private",
281
- slug: event.slug,
282
- settings: event.settings,
283
- widgets: event.widgets,
284
- categories: ["cat1"],
285
- publishAt: event.publishAt,
286
- startsAt: event.startsAt,
287
- endsAt: event.endsAt,
288
- translations: {
289
- fr: {
290
- id: "translated-event-fr",
291
- slug: event.slug,
292
- visibility: event.visibility,
293
- },
294
- },
295
- languages: ["fr"],
296
- },
297
- blueprint: event,
298
- targetLocale: "fr",
299
- errors: { resource: { base: "something went wrong" } },
300
- },
301
- });
302
- });
303
- });
@@ -1,71 +0,0 @@
1
- import Events from "../../../../cloud/Events";
2
- import TranslationsHandler from "../../../../handlers/events/TranslationsHandler";
3
- import Factory from "../../../support/factory";
4
-
5
- function buildCtx(event) {
6
- return {
7
- client: {
8
- events: new Events(() => ({}), "token"),
9
- },
10
- params: { parent_id: event.id },
11
- query: { target_locale: "" },
12
- locale: "en",
13
- resourceConfig: {
14
- eventType: "event",
15
- eventTypePlural: "events",
16
- },
17
- };
18
- }
19
-
20
- describe("Event translation form", () => {
21
- test("create_form when a event exists with target locale", async () => {
22
- const event = Factory.build("event");
23
- const ctx = buildCtx(event);
24
- ctx.query.target_locale = "fr";
25
-
26
- const mockFindEvent = jest
27
- .spyOn(ctx.client.events, "find")
28
- .mockImplementation(() => event);
29
-
30
- const result = await TranslationsHandler.create_form(ctx);
31
-
32
- expect(mockFindEvent).toHaveBeenCalledWith(event.id, "en");
33
-
34
- const expectedResource = structuredClone(event);
35
-
36
- expect(result).toEqual({
37
- assigns: {
38
- resource: expectedResource,
39
- blueprint: event,
40
- targetLocale: "fr",
41
- errors: {},
42
- _translations: [],
43
- },
44
- });
45
- });
46
-
47
- test("create_form when a event exists without target locale", async () => {
48
- const event = Factory.build("event");
49
- const ctx = buildCtx(event);
50
-
51
- const mockFindEvent = jest
52
- .spyOn(ctx.client.events, "find")
53
- .mockImplementation(() => event);
54
-
55
- const result = await TranslationsHandler.create_form(ctx);
56
-
57
- expect(mockFindEvent).toHaveBeenCalledWith(event.id, "en");
58
-
59
- const expectedResource = structuredClone(event);
60
-
61
- expect(result).toEqual({
62
- assigns: {
63
- resource: expectedResource,
64
- blueprint: event,
65
- targetLocale: "",
66
- errors: {},
67
- _translations: [],
68
- },
69
- });
70
- });
71
- });
@@ -1,91 +0,0 @@
1
- import EventRevisions from "../../../../cloud/EventRevisions";
2
- import Events from "../../../../cloud/Events";
3
- import TranslationsHandler from "../../../../handlers/events/TranslationsHandler";
4
- import Factory from "../../../support/factory";
5
-
6
- function buildCtx() {
7
- const originalEvent = Factory.build("event", {
8
- id: "original-event-id",
9
- title: "Test Event Title",
10
- });
11
-
12
- return {
13
- client: {
14
- events: new Events(() => ({}), "token"),
15
- eventRevisions: new EventRevisions(() => ({}), "token"),
16
- },
17
- params: { parent_id: originalEvent.id },
18
- query: { translations: "fr:fr-event-id;es:es-event-id" },
19
- locale: "en",
20
- resourceConfig: {
21
- eventType: "event",
22
- eventTypePlural: "events",
23
- },
24
- originalEvent,
25
- };
26
- }
27
-
28
- describe("Translations Handler", () => {
29
- test("index", async () => {
30
- const frEvent = Factory.build("event", { id: "fr-event-id" });
31
- const esEvent = Factory.build("event", { id: "es-event-id" });
32
- const esRevision = Factory.build("event_revision", {
33
- id: "es-revision-id",
34
- });
35
- const frRevision = Factory.build("event_revision", {
36
- id: "fr-revision-id",
37
- });
38
- const ctx = buildCtx();
39
-
40
- const mockedFind = jest
41
- .spyOn(ctx.client.events, "find")
42
- .mockImplementation((id, locale) => {
43
- if (locale === "fr") return frEvent;
44
- if (locale === "es") return esEvent;
45
- if (id === "original-event-id") return ctx.originalEvent;
46
- });
47
-
48
- const mockedRevisions = jest
49
- .spyOn(ctx.client.eventRevisions, "all")
50
- .mockImplementation((id, locale) => ({
51
- list: locale === "fr" ? [frRevision] : [esRevision],
52
- }));
53
-
54
- const mockedList = jest
55
- .spyOn(ctx.client.events, "list")
56
- .mockImplementation(() => ({}));
57
-
58
- const result = await TranslationsHandler.index(ctx);
59
-
60
- expect(mockedFind).toHaveBeenCalledWith("fr-event-id", "fr");
61
- expect(mockedFind).toHaveBeenCalledWith("es-event-id", "es");
62
- expect(mockedRevisions).toHaveBeenCalledWith("fr-event-id", "fr");
63
- expect(mockedRevisions).toHaveBeenCalledWith("es-event-id", "es");
64
- expect(mockedList).toHaveBeenCalledWith(
65
- { translations: "fr:fr-event-id;es:es-event-id" },
66
- "en",
67
- "event"
68
- );
69
-
70
- expect(result).toEqual({
71
- assigns: {
72
- items: {},
73
- visibilityOptions: ctx.client.events.visibilityOptions(),
74
- translations: [
75
- {
76
- ...frEvent,
77
- translationLocale: "fr",
78
- revisionId: "fr-revision-id",
79
- },
80
- {
81
- ...esEvent,
82
- translationLocale: "es",
83
- revisionId: "es-revision-id",
84
- },
85
- ],
86
- parent_id: "original-event-id",
87
- eventTitle: "Test Event Title",
88
- },
89
- });
90
- });
91
- });
@@ -1,160 +0,0 @@
1
- import URLsHandler from "../../../../handlers/events/URLsHandler";
2
- import Events from "../../../../cloud/Events";
3
- import Factory from "../../../support/factory";
4
- import { remoteConfig } from "../../../support/handlersHelper";
5
-
6
- function buildCtx(event, updateSettings) {
7
- return {
8
- client: {
9
- events: new Events(() => ({}), "token"),
10
- },
11
- params: { parent_id: event.id },
12
- resourceParams: {
13
- resource: updateSettings,
14
- },
15
- locale: "en",
16
- remoteConfig: remoteConfig(),
17
- resourceConfig: {
18
- eventType: "event",
19
- eventTypePlural: "events",
20
- },
21
- };
22
- }
23
-
24
- describe("Event change url", () => {
25
- test("create successful", async () => {
26
- const event = Factory.build("event");
27
- const updateSettings = {
28
- slug: "new-slug",
29
- redirect: "1",
30
- };
31
- const ctx = buildCtx(event, updateSettings);
32
-
33
- const mockFind = jest
34
- .spyOn(ctx.client.events, "find")
35
- .mockImplementation(() => event);
36
-
37
- const mockChange = jest
38
- .spyOn(ctx.client.events, "updateSlug")
39
- .mockImplementation(() => ({ event, errors: null }));
40
-
41
- const result = await URLsHandler.create(ctx);
42
-
43
- expect(mockFind).toHaveBeenCalledWith(event.id, "en");
44
- expect(mockChange).toHaveBeenCalledWith(
45
- event.id,
46
- updateSettings.slug,
47
- "en",
48
- {
49
- url: `/en/events/${event.slug}`,
50
- destination: `/en/events/${updateSettings.slug}`,
51
- httpResponseCode: 301,
52
- note: "Created with changed URL for a resource of type event",
53
- }
54
- );
55
-
56
- expect(result).toEqual({
57
- redirect: `/en/events/${event.id}`,
58
- });
59
- });
60
-
61
- test("create failed due to slug error", async () => {
62
- const event = Factory.build("event");
63
- const updateSettings = {
64
- slug: "new-slug",
65
- };
66
- const ctx = buildCtx(event, updateSettings);
67
-
68
- const mockFind = jest
69
- .spyOn(ctx.client.events, "find")
70
- .mockImplementation(() => event);
71
-
72
- const mockChange = jest
73
- .spyOn(ctx.client.events, "updateSlug")
74
- .mockImplementation(() => ({
75
- event: null,
76
- errors: [{ codes: [], key: "slug", message: "has already been taken" }],
77
- }));
78
-
79
- const result = await URLsHandler.create(ctx);
80
-
81
- expect(mockFind).toHaveBeenCalledWith(event.id, "en");
82
- expect(mockChange).toHaveBeenCalledWith(
83
- event.id,
84
- updateSettings.slug,
85
- "en",
86
- null
87
- );
88
-
89
- expect(result).toEqual({
90
- assigns: {
91
- resource: { ...updateSettings, id: event.id },
92
- errors: { resource: { slug: "has already been taken" } },
93
- _translations: [],
94
- },
95
- });
96
- });
97
-
98
- test("create failed due to redirect create", async () => {
99
- const event = Factory.build("event");
100
- const updateSettings = {
101
- slug: "new-slug",
102
- redirect: "1",
103
- };
104
- const ctx = buildCtx(event, updateSettings);
105
-
106
- const mockFind = jest
107
- .spyOn(ctx.client.events, "find")
108
- .mockImplementation(() => event);
109
-
110
- const mockChange = jest
111
- .spyOn(ctx.client.events, "updateSlug")
112
- .mockImplementation(() => ({
113
- event: null,
114
- errors: [
115
- {
116
- codes: [],
117
- key: "generalError",
118
- message: "url: has already been taken",
119
- },
120
- ],
121
- }));
122
-
123
- const result = await URLsHandler.create(ctx);
124
-
125
- expect(mockFind).toHaveBeenCalledWith(event.id, "en");
126
- expect(mockChange).toHaveBeenCalledWith(
127
- event.id,
128
- updateSettings.slug,
129
- "en",
130
- {
131
- url: `/en/events/${event.slug}`,
132
- destination: `/en/events/${updateSettings.slug}`,
133
- httpResponseCode: 301,
134
- note: "Created with changed URL for a resource of type event",
135
- }
136
- );
137
-
138
- expect(result).toEqual({
139
- assigns: {
140
- resource: { ...updateSettings, id: event.id },
141
- errors: { resource: { redirect: "url: has already been taken" } },
142
- _translations: [],
143
- },
144
- });
145
- });
146
-
147
- test("create for non existing event", async () => {
148
- const ctx = buildCtx({ id: "42" }, {});
149
-
150
- const mockFind = jest
151
- .spyOn(ctx.client.events, "find")
152
- .mockImplementation(() => null);
153
-
154
- expect(async () => {
155
- await URLsHandler.create(ctx);
156
- }).rejects.toThrow("Cannot find event with id 42");
157
-
158
- expect(mockFind).toHaveBeenCalledWith("42", "en");
159
- });
160
- });
@@ -1,55 +0,0 @@
1
- import Events from "../../../../cloud/Events";
2
- import URLsHandler from "../../../../handlers/events/URLsHandler";
3
- import Factory from "../../../support/factory";
4
-
5
- function buildCtx(event) {
6
- return {
7
- client: {
8
- events: new Events(() => ({}), "token"),
9
- },
10
- params: { parent_id: event.id },
11
- locale: "en",
12
- resourceConfig: {
13
- eventType: "event",
14
- eventTypePlural: "events",
15
- },
16
- };
17
- }
18
-
19
- describe("Event change url", () => {
20
- test("create_form for existing event", async () => {
21
- const event = Factory.build("event");
22
- const ctx = buildCtx(event);
23
-
24
- const mockFind = jest
25
- .spyOn(ctx.client.events, "find")
26
- .mockImplementation(() => event);
27
-
28
- const result = await URLsHandler.create_form(ctx);
29
-
30
- expect(mockFind).toHaveBeenCalledWith(event.id, "en");
31
-
32
- expect(result).toEqual({
33
- assigns: {
34
- event,
35
- resource: { slug: event.slug, id: event.id, redirect: null },
36
- errors: {},
37
- _translations: [],
38
- },
39
- });
40
- });
41
-
42
- test("create_form for non existing event", async () => {
43
- const ctx = buildCtx({ id: "42" });
44
-
45
- const mockFind = jest
46
- .spyOn(ctx.client.events, "find")
47
- .mockImplementation(() => null);
48
-
49
- expect(async () => {
50
- await URLsHandler.create_form(ctx);
51
- }).rejects.toThrow("Cannot find event with id 42");
52
-
53
- expect(mockFind).toHaveBeenCalledWith("42", "en");
54
- });
55
- });