@raketa-cloud/admin 1.8.3 → 1.8.6

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 (320) hide show
  1. package/dist/application.css +36 -0
  2. package/package.json +2 -2
  3. package/src/cloud/ResourceChanges.js +41 -0
  4. package/src/cloud/ResourceRevisions.js +242 -0
  5. package/src/cloud/Resources.js +219 -0
  6. package/src/cloud/documents/common.js +0 -30
  7. package/src/cloud/documents/resourcesDocuments.js +371 -0
  8. package/src/handlers/_shared/getResourceUpdateDestination.js +11 -0
  9. package/src/handlers/resource_revisions/CancelSchedulesHandler.js +31 -0
  10. package/src/handlers/resource_revisions/CodeHandler.js +70 -0
  11. package/src/handlers/resource_revisions/GeneralHandler.js +72 -0
  12. package/src/handlers/{article_revisions → resource_revisions}/LocksHandler.js +15 -10
  13. package/src/handlers/resource_revisions/MetaHandler.js +70 -0
  14. package/src/handlers/{article_revisions → resource_revisions}/PublishesHandler.js +27 -19
  15. package/src/handlers/resource_revisions/ResourceRevisionsHandler.js +65 -0
  16. package/src/handlers/{article_revisions → resource_revisions}/RevertsHandler.js +7 -5
  17. package/src/handlers/{page_revisions → resource_revisions}/TagHandler.js +31 -16
  18. package/src/handlers/resource_revisions/UnlocksHandler.js +29 -0
  19. package/src/handlers/resource_revisions/VisualHandler.js +71 -0
  20. package/src/handlers/{article_revisions → resource_revisions}/WidgetHandler.js +11 -6
  21. package/src/handlers/{pages → resources}/ChangeHandler.js +5 -3
  22. package/src/handlers/resources/ClonesHandler.js +24 -0
  23. package/src/handlers/resources/DeletesHandler.js +79 -0
  24. package/src/handlers/{pages → resources}/ExportsHandler.js +8 -4
  25. package/src/handlers/resources/HistoryHandler.js +39 -0
  26. package/src/handlers/{pages/PagesAPIHandler.js → resources/ResourcesAPIHandler.js} +4 -2
  27. package/src/handlers/{pages/PagesHandler.js → resources/ResourcesHandler.js} +35 -18
  28. package/src/handlers/{pages → resources}/TranslationsHandler.js +65 -37
  29. package/src/handlers/resources/URLsHandler.js +84 -0
  30. package/src/helpers/CSVExportHelper.js +5 -6
  31. package/src/index.js +28 -69
  32. package/src/routeArticlesModule.js +7 -167
  33. package/src/routeEventsModule.js +7 -182
  34. package/src/routePagesModule.js +7 -179
  35. package/src/routeResource.js +197 -0
  36. package/src/routeStandard.js +1 -1
  37. package/src/setupCloud.js +10 -30
  38. package/src/tests/HonoAdapter.coverage.test.js +640 -0
  39. package/src/tests/HonoAdapter.test.js +3 -0
  40. package/src/tests/buildResourcePath.test.js +69 -0
  41. package/src/tests/handlers/_shared/getResourceUpdateDestination.test.js +63 -0
  42. package/src/tests/handlers/{article_revisions/CancelScheduledHandler.test → resource_revisions/CancelSchedulesHandler.test}/create.test.js +26 -26
  43. package/src/tests/handlers/{page_revisions/CodesHandler.test → resource_revisions/CodeHandler.test}/edit_form.test.js +13 -16
  44. package/src/tests/handlers/{article_revisions/CodesHandler.test → resource_revisions/CodeHandler.test}/update.test.js +38 -57
  45. package/src/tests/handlers/resource_revisions/GeneralHandler.test/edit_form.test.js +58 -0
  46. package/src/tests/handlers/{article_revisions → resource_revisions}/GeneralHandler.test/update.test.js +39 -53
  47. package/src/tests/handlers/{event_revisions → resource_revisions}/LocksHandler.test/create.test.js +34 -31
  48. package/src/tests/handlers/{event_revisions → resource_revisions}/LocksHandler.test/create_form.test.js +16 -12
  49. package/src/tests/handlers/{page_revisions → resource_revisions}/MetaHandler.test/edit_form.test.js +13 -9
  50. package/src/tests/handlers/{article_revisions → resource_revisions}/MetaHandler.test/update.test.js +38 -57
  51. package/src/tests/handlers/{article_revisions → resource_revisions}/PublishesHandler.test/create.test.js +60 -72
  52. package/src/tests/handlers/{page_revisions → resource_revisions}/PublishesHandler.test/create_form.test.js +14 -10
  53. package/src/tests/handlers/resource_revisions/ResourceRevisionsHandler.test/create.test.js +87 -0
  54. package/src/tests/handlers/{article_revisions/ArticleRevisionsHandler.test → resource_revisions/ResourceRevisionsHandler.test}/destroy.test.js +13 -13
  55. package/src/tests/handlers/resource_revisions/RevertsHandler.test/create.test.js +83 -0
  56. package/src/tests/handlers/{event_revisions → resource_revisions}/TagHandler.test/edit_form.test.js +23 -19
  57. package/src/tests/handlers/{article_revisions → resource_revisions}/TagHandler.test/update.test.js +44 -49
  58. package/src/tests/handlers/{article_revisions → resource_revisions}/UnlocksHandler.test/create.test.js +22 -22
  59. package/src/tests/handlers/{page_revisions/VisualHandler.test.test → resource_revisions/VisualHandler.test}/edit_form.test.js +13 -16
  60. package/src/tests/handlers/resource_revisions/VisualHandler.test/update.test.js +130 -0
  61. package/src/tests/handlers/{event_revisions → resource_revisions}/WidgetHandler.test/show.test.js +11 -7
  62. package/src/tests/handlers/{event_revisions → resource_revisions}/WidgetHandler.test/update.test.js +28 -14
  63. package/src/tests/handlers/resources/ChangeHandler.test/show.test.js +57 -0
  64. package/src/tests/handlers/resources/ClonesHandler.test/create.test.js +57 -0
  65. package/src/tests/handlers/{articles → resources}/DeletesHandler.test/create.test.js +30 -30
  66. package/src/tests/handlers/resources/DeletesHandler.test/create_form.test.js +60 -0
  67. package/src/tests/handlers/{articles → resources}/ExportsHandler.test/index.test.js +57 -57
  68. package/src/tests/handlers/{articles/ArticlesHistoryHandler.test → resources/HistoryHandler.test}/index.test.js +19 -20
  69. package/src/tests/handlers/resources/ResourcesAPIHandler.test/index.test.js +41 -0
  70. package/src/tests/handlers/{pages/PagesHandler.test → resources/ResourcesHandler.test}/create.test.js +23 -22
  71. package/src/tests/handlers/{events/EventsHandler.test → resources/ResourcesHandler.test}/create_form.test.js +12 -11
  72. package/src/tests/handlers/{events/EventsHandler.test → resources/ResourcesHandler.test}/index.test.js +18 -18
  73. package/src/tests/handlers/resources/ResourcesHandler.test/show.test.js +111 -0
  74. package/src/tests/handlers/resources/TranslationsHandler.test/create.test.js +320 -0
  75. package/src/tests/handlers/resources/TranslationsHandler.test/create_form.test.js +85 -0
  76. package/src/tests/handlers/resources/TranslationsHandler.test/index.test.js +99 -0
  77. package/src/tests/handlers/{articles → resources}/URLsHandler.test/create.test.js +48 -43
  78. package/src/tests/handlers/resources/URLsHandler.test/create_form.test.js +55 -0
  79. package/src/tests/routeArticlesModule.test.js +43 -0
  80. package/src/tests/routeCategoriesModule.test.js +23 -0
  81. package/src/tests/routeEventsModule.test.js +43 -0
  82. package/src/tests/routePagesModule.test.js +43 -0
  83. package/src/tests/routeResource.test.js +202 -0
  84. package/src/tests/routeSettings.test.js +40 -0
  85. package/src/tests/routeStandard.test.js +70 -0
  86. package/src/tests/setGlobalContext.test.js +12 -0
  87. package/src/tests/setupAuthentication.test.js +407 -0
  88. package/src/tests/setupCloud.test.js +51 -0
  89. package/src/tests/support/factory.js +15 -86
  90. package/src/views/article_revisions/_nav.ejs +6 -6
  91. package/src/views/article_revisions/codes/_form.ejs +2 -2
  92. package/src/views/article_revisions/general/_form.ejs +3 -3
  93. package/src/views/article_revisions/locks/_form.ejs +2 -2
  94. package/src/views/article_revisions/meta/_form.ejs +2 -2
  95. package/src/views/article_revisions/publishes/_form.ejs +3 -3
  96. package/src/views/article_revisions/tags/_form.ejs +2 -2
  97. package/src/views/article_revisions/visuals/_form.ejs +2 -2
  98. package/src/views/articles/_form.ejs +9 -9
  99. package/src/views/articles/_shared/_export_button.ejs +1 -1
  100. package/src/views/articles/_shared/_history_toolbar.ejs +2 -2
  101. package/src/views/articles/_shared/_revision_operator.ejs +8 -0
  102. package/src/views/articles/_shared/_revision_toolbar.ejs +7 -7
  103. package/src/views/articles/_shared/_title.ejs +2 -2
  104. package/src/views/articles/_shared/_toolbar.ejs +6 -6
  105. package/src/views/articles/_shared/history_table.ejs +1 -1
  106. package/src/views/articles/create_form.ejs +1 -1
  107. package/src/views/articles/deletes/create_form.ejs +3 -3
  108. package/src/views/articles/history/index.ejs +4 -4
  109. package/src/views/articles/index.ejs +14 -12
  110. package/src/views/articles/show.ejs +8 -22
  111. package/src/views/articles/translations/_translation_toolbar.ejs +2 -2
  112. package/src/views/articles/translations/create_form.ejs +2 -2
  113. package/src/views/articles/translations/index.ejs +3 -3
  114. package/src/views/articles/urls/create_form.ejs +3 -3
  115. package/src/views/event_revisions/_nav.ejs +6 -6
  116. package/src/views/event_revisions/codes/_form.ejs +2 -2
  117. package/src/views/event_revisions/general/_form.ejs +5 -5
  118. package/src/views/event_revisions/locks/_form.ejs +2 -2
  119. package/src/views/event_revisions/meta/_form.ejs +2 -2
  120. package/src/views/event_revisions/publishes/_form.ejs +3 -3
  121. package/src/views/event_revisions/tags/_form.ejs +2 -2
  122. package/src/views/event_revisions/visuals/_form.ejs +2 -2
  123. package/src/views/events/_form.ejs +6 -6
  124. package/src/views/events/_shared/_export_button.ejs +1 -1
  125. package/src/views/events/_shared/_history_toolbar.ejs +2 -2
  126. package/src/views/events/_shared/_revision_operator.ejs +8 -0
  127. package/src/views/events/_shared/_revision_toolbar.ejs +7 -7
  128. package/src/views/events/_shared/_title.ejs +2 -2
  129. package/src/views/events/_shared/_toolbar.ejs +6 -6
  130. package/src/views/events/_shared/history_table.ejs +1 -1
  131. package/src/views/events/create_form.ejs +1 -1
  132. package/src/views/events/deletes/create_form.ejs +3 -3
  133. package/src/views/events/history/index.ejs +4 -4
  134. package/src/views/events/index.ejs +14 -12
  135. package/src/views/events/show.ejs +8 -22
  136. package/src/views/events/translations/_translation_toolbar.ejs +2 -2
  137. package/src/views/events/translations/create_form.ejs +2 -2
  138. package/src/views/events/translations/index.ejs +3 -3
  139. package/src/views/events/urls/create_form.ejs +3 -3
  140. package/src/views/layouts/application.ejs +30 -0
  141. package/src/views/page_revisions/_nav.ejs +6 -6
  142. package/src/views/page_revisions/codes/_form.ejs +2 -2
  143. package/src/views/page_revisions/general/_form.ejs +2 -2
  144. package/src/views/page_revisions/locks/_form.ejs +2 -2
  145. package/src/views/page_revisions/meta/_form.ejs +2 -2
  146. package/src/views/page_revisions/publishes/_form.ejs +3 -3
  147. package/src/views/page_revisions/tags/_form.ejs +2 -2
  148. package/src/views/page_revisions/visuals/_form.ejs +2 -2
  149. package/src/views/pages/_form.ejs +3 -3
  150. package/src/views/pages/_shared/_export_button.ejs +1 -1
  151. package/src/views/pages/_shared/_history_toolbar.ejs +2 -2
  152. package/src/views/pages/_shared/_revision_operator.ejs +8 -0
  153. package/src/views/pages/_shared/_revision_toolbar.ejs +7 -7
  154. package/src/views/pages/_shared/_title.ejs +2 -2
  155. package/src/views/pages/_shared/_toolbar.ejs +6 -6
  156. package/src/views/pages/_shared/history_table.ejs +1 -1
  157. package/src/views/pages/create_form.ejs +1 -1
  158. package/src/views/pages/deletes/create_form.ejs +3 -3
  159. package/src/views/pages/history/index.ejs +4 -4
  160. package/src/views/pages/index.ejs +12 -10
  161. package/src/views/pages/show.ejs +8 -22
  162. package/src/views/pages/translations/_translation_toolbar.ejs +2 -2
  163. package/src/views/pages/translations/create_form.ejs +2 -2
  164. package/src/views/pages/translations/index.ejs +3 -3
  165. package/src/views/pages/urls/create_form.ejs +3 -3
  166. package/src/cloud/ArticleChanges.js +0 -36
  167. package/src/cloud/ArticleRevisions.js +0 -239
  168. package/src/cloud/Articles.js +0 -216
  169. package/src/cloud/EventChanges.js +0 -36
  170. package/src/cloud/EventRevisions.js +0 -246
  171. package/src/cloud/Events.js +0 -231
  172. package/src/cloud/PageChanges.js +0 -36
  173. package/src/cloud/PageRevisions.js +0 -226
  174. package/src/cloud/Pages.js +0 -204
  175. package/src/cloud/documents/articlesDocuments.js +0 -375
  176. package/src/cloud/documents/eventsDocuments.js +0 -390
  177. package/src/cloud/documents/pagesDocuments.js +0 -370
  178. package/src/handlers/_shared/getArticlesUpdateDestination.js +0 -7
  179. package/src/handlers/_shared/getEventsUpdateDestination.js +0 -7
  180. package/src/handlers/_shared/getPagesUpdateDestination.js +0 -8
  181. package/src/handlers/article_revisions/ArticleRevisionsHandler.js +0 -57
  182. package/src/handlers/article_revisions/CancelSchedulesHandler.js +0 -26
  183. package/src/handlers/article_revisions/CodeHandler.js +0 -75
  184. package/src/handlers/article_revisions/GeneralHandler.js +0 -77
  185. package/src/handlers/article_revisions/MetaHandler.js +0 -75
  186. package/src/handlers/article_revisions/TagHandler.js +0 -83
  187. package/src/handlers/article_revisions/UnlocksHandler.js +0 -24
  188. package/src/handlers/article_revisions/VisualHandler.js +0 -75
  189. package/src/handlers/articles/ArticlesAPIHandler.js +0 -15
  190. package/src/handlers/articles/ArticlesHandler.js +0 -126
  191. package/src/handlers/articles/ChangeHandler.js +0 -22
  192. package/src/handlers/articles/ClonesHandler.js +0 -19
  193. package/src/handlers/articles/DeletesHandler.js +0 -72
  194. package/src/handlers/articles/ExportsHandler.js +0 -35
  195. package/src/handlers/articles/HistoryHandler.js +0 -31
  196. package/src/handlers/articles/TranslationsHandler.js +0 -231
  197. package/src/handlers/articles/URLsHandler.js +0 -83
  198. package/src/handlers/event_revisions/CancelSchedulesHandler.js +0 -26
  199. package/src/handlers/event_revisions/CodeHandler.js +0 -73
  200. package/src/handlers/event_revisions/EventRevisionsHandler.js +0 -55
  201. package/src/handlers/event_revisions/GeneralHandler.js +0 -75
  202. package/src/handlers/event_revisions/LocksHandler.js +0 -65
  203. package/src/handlers/event_revisions/MetaHandler.js +0 -73
  204. package/src/handlers/event_revisions/PublishesHandler.js +0 -112
  205. package/src/handlers/event_revisions/RevertsHandler.js +0 -26
  206. package/src/handlers/event_revisions/TagHandler.js +0 -80
  207. package/src/handlers/event_revisions/UnlocksHandler.js +0 -24
  208. package/src/handlers/event_revisions/VisualHandler.js +0 -73
  209. package/src/handlers/event_revisions/WidgetHandler.js +0 -41
  210. package/src/handlers/events/ChangeHandler.js +0 -22
  211. package/src/handlers/events/ClonesHandler.js +0 -19
  212. package/src/handlers/events/DeletesHandler.js +0 -72
  213. package/src/handlers/events/EventsAPIHandler.js +0 -15
  214. package/src/handlers/events/EventsHandler.js +0 -128
  215. package/src/handlers/events/ExportsHandler.js +0 -35
  216. package/src/handlers/events/HistoryHandler.js +0 -31
  217. package/src/handlers/events/TranslationsHandler.js +0 -233
  218. package/src/handlers/events/URLsHandler.js +0 -81
  219. package/src/handlers/page_revisions/CancelSchedulesHandler.js +0 -26
  220. package/src/handlers/page_revisions/CodeHandler.js +0 -59
  221. package/src/handlers/page_revisions/GeneralHandler.js +0 -61
  222. package/src/handlers/page_revisions/LocksHandler.js +0 -69
  223. package/src/handlers/page_revisions/MetaHandler.js +0 -59
  224. package/src/handlers/page_revisions/PageRevisionsHandler.js +0 -55
  225. package/src/handlers/page_revisions/PublishesHandler.js +0 -112
  226. package/src/handlers/page_revisions/RevertsHandler.js +0 -26
  227. package/src/handlers/page_revisions/UnlocksHandler.js +0 -22
  228. package/src/handlers/page_revisions/VisualHandler.js +0 -60
  229. package/src/handlers/page_revisions/WidgetHandler.js +0 -41
  230. package/src/handlers/pages/ClonesHandler.js +0 -19
  231. package/src/handlers/pages/DeletesHandler.js +0 -68
  232. package/src/handlers/pages/HistoryHandler.js +0 -31
  233. package/src/handlers/pages/URLsHandler.js +0 -77
  234. package/src/tests/handlers/article_revisions/ArticleRevisionsHandler.test/create.test.js +0 -87
  235. package/src/tests/handlers/article_revisions/CodesHandler.test/edit_form.test.js +0 -56
  236. package/src/tests/handlers/article_revisions/GeneralHandler.test/edit_form.test.js +0 -59
  237. package/src/tests/handlers/article_revisions/LocksHandler.test/create.test.js +0 -142
  238. package/src/tests/handlers/article_revisions/LocksHandler.test/create_form.test.js +0 -55
  239. package/src/tests/handlers/article_revisions/MetaHandler.test/edit_form.test.js +0 -56
  240. package/src/tests/handlers/article_revisions/PublishesHandler.test/create_form.test.js +0 -48
  241. package/src/tests/handlers/article_revisions/RevertsHandler.test/create.test.js +0 -86
  242. package/src/tests/handlers/article_revisions/TagHandler.test/edit_form.test.js +0 -72
  243. package/src/tests/handlers/article_revisions/VisualHandler.test.test/edit_form.test.js +0 -56
  244. package/src/tests/handlers/article_revisions/VisualHandler.test.test/update.test.js +0 -146
  245. package/src/tests/handlers/article_revisions/WidgetHandler.test/show.test.js +0 -46
  246. package/src/tests/handlers/article_revisions/WidgetHandler.test/update.test.js +0 -103
  247. package/src/tests/handlers/articles/ArticlesAPIHandler.test/index.test.js +0 -43
  248. package/src/tests/handlers/articles/ArticlesHandler.test/create.test.js +0 -172
  249. package/src/tests/handlers/articles/ArticlesHandler.test/create_form.test.js +0 -44
  250. package/src/tests/handlers/articles/ArticlesHandler.test/index.test.js +0 -73
  251. package/src/tests/handlers/articles/ArticlesHandler.test/show.test.js +0 -120
  252. package/src/tests/handlers/articles/ChangeHandler.test/show.test.js +0 -59
  253. package/src/tests/handlers/articles/ClonesHandler.test/create.test.js +0 -57
  254. package/src/tests/handlers/articles/DeletesHandler.test/create_form.test.js +0 -60
  255. package/src/tests/handlers/articles/TranslationHandler.test/create.test.js +0 -297
  256. package/src/tests/handlers/articles/TranslationHandler.test/create_form.test.js +0 -71
  257. package/src/tests/handlers/articles/TranslationHandler.test/index.test.js +0 -91
  258. package/src/tests/handlers/articles/URLsHandler.test/create_form.test.js +0 -55
  259. package/src/tests/handlers/event_revisions/CancelScheduledHandler.test/create.test.js +0 -90
  260. package/src/tests/handlers/event_revisions/CodesHandler.test/edit_form.test.js +0 -60
  261. package/src/tests/handlers/event_revisions/CodesHandler.test/update.test.js +0 -171
  262. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/create.test.js +0 -87
  263. package/src/tests/handlers/event_revisions/EventRevisionsHandler.test/destroy.test.js +0 -57
  264. package/src/tests/handlers/event_revisions/GeneralHandler.test/edit_form.test.js +0 -63
  265. package/src/tests/handlers/event_revisions/GeneralHandler.test/update.test.js +0 -172
  266. package/src/tests/handlers/event_revisions/MetaHandler.test/edit_form.test.js +0 -60
  267. package/src/tests/handlers/event_revisions/MetaHandler.test/update.test.js +0 -173
  268. package/src/tests/handlers/event_revisions/PublishesHandler.test/create.test.js +0 -333
  269. package/src/tests/handlers/event_revisions/PublishesHandler.test/create_form.test.js +0 -48
  270. package/src/tests/handlers/event_revisions/RevertsHandler.test/create.test.js +0 -83
  271. package/src/tests/handlers/event_revisions/TagHandler.test/update.test.js +0 -163
  272. package/src/tests/handlers/event_revisions/UnlocksHandler.test/create.test.js +0 -84
  273. package/src/tests/handlers/event_revisions/VisualHandler.test.test/edit_form.test.js +0 -60
  274. package/src/tests/handlers/event_revisions/VisualHandler.test.test/update.test.js +0 -156
  275. package/src/tests/handlers/events/ChangeHandler.test/show.test.js +0 -59
  276. package/src/tests/handlers/events/ClonesHandler.test/create.test.js +0 -57
  277. package/src/tests/handlers/events/DeletesHandler.test/create.test.js +0 -115
  278. package/src/tests/handlers/events/DeletesHandler.test/create_form.test.js +0 -60
  279. package/src/tests/handlers/events/EventsAPIHandler.test/index.test.js +0 -39
  280. package/src/tests/handlers/events/EventsHandler.test/create.test.js +0 -172
  281. package/src/tests/handlers/events/EventsHandler.test/show.test.js +0 -120
  282. package/src/tests/handlers/events/EventsHistoryHandler.test/index.test.js +0 -87
  283. package/src/tests/handlers/events/ExportsHandler.test/index.test.js +0 -212
  284. package/src/tests/handlers/events/TranslationHandler.test/create.test.js +0 -303
  285. package/src/tests/handlers/events/TranslationHandler.test/create_form.test.js +0 -71
  286. package/src/tests/handlers/events/TranslationHandler.test/index.test.js +0 -91
  287. package/src/tests/handlers/events/URLsHandler.test/create.test.js +0 -160
  288. package/src/tests/handlers/events/URLsHandler.test/create_form.test.js +0 -55
  289. package/src/tests/handlers/page_revisions/CancelScheduledHandler.test/create.test.js +0 -86
  290. package/src/tests/handlers/page_revisions/CodesHandler.test/update.test.js +0 -204
  291. package/src/tests/handlers/page_revisions/GeneralHandler.test/edit_form.test.js +0 -54
  292. package/src/tests/handlers/page_revisions/GeneralHandler.test/update.test.js +0 -219
  293. package/src/tests/handlers/page_revisions/LocksHandler.test/create.test.js +0 -138
  294. package/src/tests/handlers/page_revisions/LocksHandler.test/create_form.test.js +0 -55
  295. package/src/tests/handlers/page_revisions/MetaHandler.test/update.test.js +0 -211
  296. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/create.test.js +0 -85
  297. package/src/tests/handlers/page_revisions/PageRevisionsHandler.test/destroy.test.js +0 -57
  298. package/src/tests/handlers/page_revisions/PublishesHandler.test/create.test.js +0 -333
  299. package/src/tests/handlers/page_revisions/RevertsHandler.test/create.test.js +0 -83
  300. package/src/tests/handlers/page_revisions/TagHandler.test/edit_form.test.js +0 -100
  301. package/src/tests/handlers/page_revisions/TagHandler.test/update.test.js +0 -223
  302. package/src/tests/handlers/page_revisions/UnlocksHandler.test/create.test.js +0 -80
  303. package/src/tests/handlers/page_revisions/VisualHandler.test.test/update.test.js +0 -183
  304. package/src/tests/handlers/page_revisions/WidgetHandler.test/show.test.js +0 -46
  305. package/src/tests/handlers/page_revisions/WidgetHandler.test/update.test.js +0 -103
  306. package/src/tests/handlers/pages/ChangeHandler.test/show.test.js +0 -59
  307. package/src/tests/handlers/pages/ConesHandler.test/create.test.js +0 -57
  308. package/src/tests/handlers/pages/DeletesHandler.test/create.test.js +0 -115
  309. package/src/tests/handlers/pages/DeletesHandler.test/create_form.test.js +0 -60
  310. package/src/tests/handlers/pages/ExportsHandler.test/index.test.js +0 -212
  311. package/src/tests/handlers/pages/PagesAPIHandler.test/index.test.js +0 -39
  312. package/src/tests/handlers/pages/PagesHandler.test/create_form.test.js +0 -41
  313. package/src/tests/handlers/pages/PagesHandler.test/index.test.js +0 -69
  314. package/src/tests/handlers/pages/PagesHandler.test/show.test.js +0 -118
  315. package/src/tests/handlers/pages/PagesHistoryHandler.test/index.test.js +0 -87
  316. package/src/tests/handlers/pages/TranslationHandler.test/create.test.js +0 -290
  317. package/src/tests/handlers/pages/TranslationHandler.test/create_form.test.js +0 -71
  318. package/src/tests/handlers/pages/TranslationHandler.test/index.test.js +0 -87
  319. package/src/tests/handlers/pages/URLsHandler.test/create.test.js +0 -160
  320. package/src/tests/handlers/pages/URLsHandler.test/create_form.test.js +0 -58
@@ -1,15 +1,14 @@
1
- import ArticleChanges from "../../../../cloud/ArticleChanges";
2
- import Articles from "../../../../cloud/Articles";
3
- import ArticlesHandler from "../../../../handlers/articles/ArticlesHandler";
4
- import HistoryHandler from "../../../../handlers/articles/HistoryHandler";
1
+ import ResourceChanges from "../../../../cloud/ResourceChanges";
2
+ import Resources from "../../../../cloud/Resources";
3
+ import HistoryHandler from "../../../../handlers/resources/HistoryHandler";
5
4
  import Factory from "../../../support/factory";
6
5
 
7
- describe("Articles History Handler", () => {
6
+ describe("Resources History Handler", () => {
8
7
  function buildHistoryCtx() {
9
8
  return {
10
9
  client: {
11
- articles: new Articles(() => ({}), "token"),
12
- articleChanges: new ArticleChanges(() => ({}), "token"),
10
+ resources: new Resources(() => ({}), "token"),
11
+ resourceChanges: new ResourceChanges(() => ({}), "token"),
13
12
  },
14
13
  query: { foo: "bar" },
15
14
  locale: "en",
@@ -17,14 +16,14 @@ describe("Articles History Handler", () => {
17
16
  parent_id: "123",
18
17
  },
19
18
  resourceConfig: {
20
- articleType: "article",
19
+ resourceType: "article",
21
20
  },
22
21
  };
23
22
  }
24
23
 
25
24
  test("successfully returns history data", async () => {
26
25
  const ctx = buildHistoryCtx();
27
- const article = Factory.build("article");
26
+ const resource = Factory.build("resource");
28
27
  const changes = {
29
28
  list: [
30
29
  { operatorMeta: { name: "John Travolta" } },
@@ -33,28 +32,28 @@ describe("Articles History Handler", () => {
33
32
  pagination: Factory.build("pagination"),
34
33
  };
35
34
 
36
- jest.spyOn(ctx.client.articles, "find").mockImplementation(() => article);
35
+ jest.spyOn(ctx.client.resources, "find").mockImplementation(() => resource);
37
36
  jest
38
- .spyOn(ctx.client.articleChanges, "list")
37
+ .spyOn(ctx.client.resourceChanges, "list")
39
38
  .mockImplementation(() => changes);
40
39
  jest
41
- .spyOn(ctx.client.articleChanges, "all_editors")
40
+ .spyOn(ctx.client.resourceChanges, "all_editors")
42
41
  .mockImplementation(() => ["John Travolta", "Generic Jane Smith"]);
43
42
 
44
43
  const result = await HistoryHandler.index(ctx);
45
44
 
46
45
  expect(result).toEqual({
47
46
  assigns: {
48
- resource: article,
49
- changes: changes,
47
+ resource,
48
+ changes,
50
49
  editors: ["John Travolta", "Generic Jane Smith"],
51
50
  },
52
51
  });
53
52
  });
54
53
 
55
- test("throws error when article is not found", async () => {
54
+ test("throws error when resource is not found", async () => {
56
55
  const ctx = buildHistoryCtx();
57
- jest.spyOn(ctx.client.articles, "find").mockImplementation(() => null);
56
+ jest.spyOn(ctx.client.resources, "find").mockImplementation(() => null);
58
57
 
59
58
  await expect(HistoryHandler.index(ctx)).rejects.toThrow(
60
59
  "Missing article #123"
@@ -63,7 +62,7 @@ describe("Articles History Handler", () => {
63
62
 
64
63
  test("returns unique editors list", async () => {
65
64
  const ctx = buildHistoryCtx();
66
- const article = Factory.build("article");
65
+ const resource = Factory.build("resource");
67
66
  const changes = {
68
67
  list: [
69
68
  { operatorMeta: { name: "John Travolta" } },
@@ -72,12 +71,12 @@ describe("Articles History Handler", () => {
72
71
  pagination: Factory.build("pagination"),
73
72
  };
74
73
 
75
- jest.spyOn(ctx.client.articles, "find").mockImplementation(() => article);
74
+ jest.spyOn(ctx.client.resources, "find").mockImplementation(() => resource);
76
75
  jest
77
- .spyOn(ctx.client.articleChanges, "list")
76
+ .spyOn(ctx.client.resourceChanges, "list")
78
77
  .mockImplementation(() => changes);
79
78
  jest
80
- .spyOn(ctx.client.articleChanges, "all_editors")
79
+ .spyOn(ctx.client.resourceChanges, "all_editors")
81
80
  .mockImplementation(() => ["John Travolta"]);
82
81
 
83
82
  const result = await HistoryHandler.index(ctx);
@@ -0,0 +1,41 @@
1
+ import Resources from "../../../../cloud/Resources";
2
+ import ResourcesAPIHandler from "../../../../handlers/resources/ResourcesAPIHandler";
3
+
4
+ import Factory from "../../../support/factory";
5
+
6
+ describe("Resources API Handler", () => {
7
+ function buildCtx() {
8
+ return {
9
+ client: {
10
+ resources: new Resources(() => ({}), "token"),
11
+ },
12
+ query: { foo: "bar" },
13
+ locale: "en",
14
+ resourceConfig: {
15
+ resourceType: "article",
16
+ resourceTypePlural: "articles",
17
+ },
18
+ };
19
+ }
20
+
21
+ test("index", async () => {
22
+ const resource = Factory.build("resource");
23
+ const ctx = buildCtx();
24
+
25
+ const mockedListAll = jest
26
+ .spyOn(ctx.client.resources, "listAll")
27
+ .mockImplementation(() => ({ list: [resource] }));
28
+
29
+ const result = await ResourcesAPIHandler.index(ctx);
30
+
31
+ expect(mockedListAll).toHaveBeenCalledWith(
32
+ { foo: "bar" },
33
+ "en",
34
+ "article"
35
+ );
36
+
37
+ expect(result).toEqual({
38
+ json: { list: [resource] },
39
+ });
40
+ });
41
+ });
@@ -1,14 +1,14 @@
1
- import PagesHandler from "../../../../handlers/pages/PagesHandler";
2
- import Pages from "../../../../cloud/Pages";
1
+ import ResourcesHandler from "../../../../handlers/resources/ResourcesHandler";
2
+ import Resources from "../../../../cloud/Resources";
3
3
  import Tags from "../../../../cloud/Tags";
4
4
 
5
5
  import Factory from "../../../support/factory";
6
6
 
7
- describe("Pages Handler", () => {
7
+ describe("Resources Handler", () => {
8
8
  function buildCtx(params) {
9
9
  return {
10
10
  client: {
11
- pages: new Pages(() => ({}), "token"),
11
+ resources: new Resources(() => ({}), "token"),
12
12
  tags: new Tags(() => ({}), "token"),
13
13
  },
14
14
  resourceParams: {
@@ -16,16 +16,17 @@ describe("Pages Handler", () => {
16
16
  },
17
17
  locale: "en",
18
18
  resourceConfig: {
19
- pageType: "page",
20
- pageTypePlural: "pages",
19
+ resourceType: "article",
20
+ resourceTypePlural: "articles",
21
+ dateFields: [],
21
22
  },
22
23
  };
23
24
  }
24
25
 
25
- test("create successfull", async () => {
26
+ test("create successful", async () => {
26
27
  const tag = Factory.build("tag");
27
28
  const params = {
28
- title: "Page title",
29
+ title: "Resource title",
29
30
  slug: "url",
30
31
  visibility: "public",
31
32
  settings: {
@@ -46,10 +47,10 @@ describe("Pages Handler", () => {
46
47
  const ctx = buildCtx(params);
47
48
 
48
49
  const mockedCreate = jest
49
- .spyOn(ctx.client.pages, "create")
50
- .mockImplementation(() => ({ page: {}, errors: null }));
50
+ .spyOn(ctx.client.resources, "create")
51
+ .mockImplementation(() => ({ resource: {}, errors: null }));
51
52
 
52
- const result = await PagesHandler.create(ctx);
53
+ const result = await ResourcesHandler.create(ctx);
53
54
 
54
55
  expect(mockedCreate).toHaveBeenCalledWith(
55
56
  {
@@ -73,18 +74,18 @@ describe("Pages Handler", () => {
73
74
  categories: [],
74
75
  },
75
76
  "en",
76
- "page"
77
+ "article"
77
78
  );
78
79
 
79
80
  expect(result).toEqual({
80
- redirect: "/en/pages",
81
+ redirect: "/en/articles",
81
82
  });
82
83
  });
83
84
 
84
85
  test("create failed", async () => {
85
86
  const tag = Factory.build("tag");
86
87
  const params = {
87
- title: "Page title",
88
+ title: "Resource title",
88
89
  slug: "",
89
90
  visibility: "public",
90
91
  settings: {
@@ -109,13 +110,13 @@ describe("Pages Handler", () => {
109
110
  .mockImplementation(() => ({ list: [tag] }));
110
111
 
111
112
  const mockedCreate = jest
112
- .spyOn(ctx.client.pages, "create")
113
+ .spyOn(ctx.client.resources, "create")
113
114
  .mockImplementation(() => ({
114
- page: {},
115
+ resource: {},
115
116
  errors: [{ key: "slug", message: "cannot be blank" }],
116
117
  }));
117
118
 
118
- const result = await PagesHandler.create(ctx);
119
+ const result = await ResourcesHandler.create(ctx);
119
120
 
120
121
  expect(mockedTagsList).toHaveBeenCalledWith("en");
121
122
  expect(mockedCreate).toHaveBeenCalledWith(
@@ -140,26 +141,26 @@ describe("Pages Handler", () => {
140
141
  categories: [],
141
142
  },
142
143
  "en",
143
- "page"
144
+ "article"
144
145
  );
145
146
 
146
147
  expect(result).toEqual({
147
148
  assigns: {
148
149
  resource: {
149
- widgets: [],
150
- categories: [],
151
150
  ...params,
152
151
  settings: {
153
152
  ...params.settings,
154
153
  meta: {
155
154
  ...params.settings.meta,
156
- image: JSON.parse(params.settings.meta.image),
155
+ image: { id: 42 },
157
156
  },
158
157
  },
158
+ widgets: [],
159
+ categories: [],
159
160
  },
160
161
  tags: [tag],
161
162
  errors: { resource: { slug: "cannot be blank" } },
162
- visibilityOptions: ctx.client.pages.visibilityOptions(),
163
+ visibilityOptions: ctx.client.resources.visibilityOptions(),
163
164
  _translations: [],
164
165
  },
165
166
  });
@@ -1,26 +1,27 @@
1
- import EventsHandler from "../../../../handlers/events/EventsHandler";
2
- import Events from "../../../../cloud/Events";
1
+ import ResourcesHandler from "../../../../handlers/resources/ResourcesHandler";
2
+ import Resources from "../../../../cloud/Resources";
3
3
  import Tags from "../../../../cloud/Tags";
4
4
 
5
5
  import Factory from "../../../support/factory";
6
6
 
7
- describe("Events Handler", () => {
7
+ describe("Resources Handler", () => {
8
8
  function buildCtx() {
9
9
  return {
10
10
  client: {
11
- events: new Events(() => ({}), "token"),
11
+ resources: new Resources(() => ({}), "token"),
12
12
  tags: new Tags(() => ({}), "token"),
13
13
  },
14
14
  query: { foo: "bar" },
15
15
  locale: "en",
16
16
  resourceConfig: {
17
- eventType: "event",
18
- eventTypePlural: "events",
17
+ resourceType: "article",
18
+ resourceTypePlural: "articles",
19
+ dateFields: [],
19
20
  },
20
21
  };
21
22
  }
22
23
 
23
- test("index", async () => {
24
+ test("create_form", async () => {
24
25
  const tags = [Factory.build("tag")];
25
26
  const ctx = buildCtx();
26
27
 
@@ -28,16 +29,16 @@ describe("Events Handler", () => {
28
29
  .spyOn(ctx.client.tags, "all")
29
30
  .mockImplementation(() => ({ list: tags, pagination: null }));
30
31
 
31
- const result = await EventsHandler.create_form(ctx);
32
+ const result = await ResourcesHandler.create_form(ctx);
32
33
 
33
34
  expect(mockedTagList).toHaveBeenCalledWith("en");
34
35
 
35
36
  expect(result).toEqual({
36
37
  assigns: {
37
- resource: { ...ctx.client.events.defaults() },
38
- tags: tags,
38
+ resource: { ...ctx.client.resources.defaults([]) },
39
+ tags,
39
40
  errors: {},
40
- visibilityOptions: ctx.client.events.visibilityOptions(),
41
+ visibilityOptions: ctx.client.resources.visibilityOptions(),
41
42
  _translations: [],
42
43
  },
43
44
  });
@@ -1,13 +1,13 @@
1
- import EventsHandler from "../../../../handlers/events/EventsHandler";
2
- import Events from "../../../../cloud/Events";
1
+ import ResourcesHandler from "../../../../handlers/resources/ResourcesHandler";
2
+ import Resources from "../../../../cloud/Resources";
3
3
  import Tags from "../../../../cloud/Tags";
4
4
 
5
5
  import Factory from "../../../support/factory";
6
6
 
7
- describe("Events Handler", () => {
7
+ describe("Resources Handler", () => {
8
8
  function buildCtx() {
9
- const mockEvents = new Events(() => ({}), "token");
10
- mockEvents.getConfig = jest.fn().mockReturnValue({
9
+ const mockResources = new Resources(() => ({}), "token");
10
+ mockResources.getConfig = jest.fn().mockReturnValue({
11
11
  i18n: {
12
12
  locales: {
13
13
  en: { name: "English", code: "en-gb" },
@@ -19,50 +19,50 @@ describe("Events Handler", () => {
19
19
 
20
20
  return {
21
21
  client: {
22
- events: mockEvents,
22
+ resources: mockResources,
23
23
  tags: new Tags(() => ({}), "token"),
24
24
  },
25
25
  query: { foo: "bar" },
26
26
  locale: "en",
27
27
  resourceConfig: {
28
- eventType: "event",
29
- eventTypePlural: "events",
28
+ resourceType: "article",
29
+ resourceTypePlural: "articles",
30
30
  },
31
31
  };
32
32
  }
33
33
 
34
34
  test("index", async () => {
35
- const event = Factory.build("event");
35
+ const resource = Factory.build("resource");
36
36
  const pagination = Factory.build("pagination");
37
37
  const tags = [Factory.build("tag")];
38
38
  const ctx = buildCtx();
39
39
 
40
- const mockedEventList = jest
41
- .spyOn(ctx.client.events, "list")
42
- .mockImplementation(() => ({ list: [event], pagination }));
40
+ const mockedList = jest
41
+ .spyOn(ctx.client.resources, "list")
42
+ .mockImplementation(() => ({ list: [resource], pagination }));
43
43
 
44
44
  const mockedTagList = jest
45
45
  .spyOn(ctx.client.tags, "all")
46
46
  .mockImplementation(() => ({ list: tags, pagination: null }));
47
47
 
48
- const result = await EventsHandler.index(ctx);
48
+ const result = await ResourcesHandler.index(ctx);
49
49
 
50
- expect(mockedEventList).toHaveBeenCalledWith({ foo: "bar" }, "en", "event");
50
+ expect(mockedList).toHaveBeenCalledWith({ foo: "bar" }, "en", "article");
51
51
  expect(mockedTagList).toHaveBeenCalledWith("en");
52
52
 
53
53
  expect(result).toEqual({
54
54
  assigns: {
55
55
  items: {
56
- list: [event],
57
- pagination: pagination,
56
+ list: [resource],
57
+ pagination,
58
58
  },
59
59
  translations: [
60
60
  { name: "English", code: "en" },
61
61
  { name: "Spanish", code: "es" },
62
62
  { name: "French", code: "fr" },
63
63
  ],
64
- tags: tags,
65
- visibilityOptions: ctx.client.events.visibilityOptions(),
64
+ tags,
65
+ visibilityOptions: ctx.client.resources.visibilityOptions(),
66
66
  },
67
67
  });
68
68
  });
@@ -0,0 +1,111 @@
1
+ import ResourceChanges from "../../../../cloud/ResourceChanges";
2
+ import ResourceRevisions from "../../../../cloud/ResourceRevisions";
3
+ import Resources from "../../../../cloud/Resources";
4
+ import ResourcesHandler from "../../../../handlers/resources/ResourcesHandler";
5
+
6
+ import Factory from "../../../support/factory";
7
+
8
+ describe("Resources Handler", () => {
9
+ function buildCtx(resource) {
10
+ return {
11
+ client: {
12
+ resources: new Resources(() => ({}), "token"),
13
+ resourceChanges: new ResourceChanges(() => ({}), "token"),
14
+ resourceRevisions: new ResourceRevisions(() => ({}), "token"),
15
+ },
16
+ params: { id: resource.id },
17
+ locale: "en",
18
+ locales: {
19
+ en: {
20
+ name: "English",
21
+ code: "en-gb",
22
+ flag: "/static/_assets/flags/gb.svg",
23
+ },
24
+ bg: {
25
+ name: "Bulgarian",
26
+ code: "bg",
27
+ flag: "/static/_assets/flags/bg.svg",
28
+ },
29
+ de: {
30
+ name: "German",
31
+ code: "de",
32
+ flag: "/static/_assets/flags/de.svg",
33
+ },
34
+ },
35
+ resourceConfig: {
36
+ resourceType: "article",
37
+ resourceTypePlural: "articles",
38
+ },
39
+ };
40
+ }
41
+
42
+ test("show for existing resource", async () => {
43
+ const resource = Factory.build("resource", {
44
+ translations: {
45
+ de: { id: 42 },
46
+ bg: { id: 69 },
47
+ },
48
+ });
49
+ const revision = Factory.build("resource_revision", {
50
+ originalId: resource.id,
51
+ });
52
+ const change = Factory.build("resource_change");
53
+ const ctx = buildCtx(resource);
54
+
55
+ const mockedFind = jest
56
+ .spyOn(ctx.client.resources, "find")
57
+ .mockImplementation(() => resource);
58
+
59
+ const mockedRevisions = jest
60
+ .spyOn(ctx.client.resourceRevisions, "all")
61
+ .mockImplementation(() => ({ list: [revision] }));
62
+
63
+ const mockedChanges = jest
64
+ .spyOn(ctx.client.resourceChanges, "list")
65
+ .mockImplementation(() => ({ list: [change] }));
66
+
67
+ const result = await ResourcesHandler.show(ctx);
68
+
69
+ expect(mockedFind).toHaveBeenCalledWith(resource.id, "en", "article");
70
+ expect(mockedRevisions).toHaveBeenCalledWith(resource.id, "en", "article");
71
+ expect(mockedChanges).toHaveBeenCalledWith(
72
+ {
73
+ "f:change_type": [
74
+ "revision_publish",
75
+ "revision_lock",
76
+ "revision_unlock",
77
+ "update",
78
+ ],
79
+ },
80
+ resource.id,
81
+ "en",
82
+ "article"
83
+ );
84
+
85
+ expect(result).toEqual({
86
+ assigns: {
87
+ resource,
88
+ revisions: [revision],
89
+ changes: { list: [change] },
90
+ _translations: [
91
+ { locale: "bg", path: "/bg/articles/69" },
92
+ { locale: "de", path: "/de/articles/42" },
93
+ ],
94
+ },
95
+ });
96
+ });
97
+
98
+ test("show for non existing resource", async () => {
99
+ const ctx = buildCtx({ id: "42" });
100
+
101
+ const mockedFind = jest
102
+ .spyOn(ctx.client.resources, "find")
103
+ .mockImplementation(() => null);
104
+
105
+ expect(async () => {
106
+ await ResourcesHandler.show(ctx);
107
+ }).rejects.toThrow("Missing article #42");
108
+
109
+ expect(mockedFind).toHaveBeenCalledWith("42", "en", "article");
110
+ });
111
+ });