@raketa-cloud/admin 0.0.99 → 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/cloud/ArticleChanges.js +0 -36
  12. package/src/cloud/ArticleRevisions.js +0 -239
  13. package/src/cloud/Articles.js +0 -194
  14. package/src/cloud/Categories.js +0 -97
  15. package/src/cloud/EventChanges.js +0 -36
  16. package/src/cloud/EventRevisions.js +0 -246
  17. package/src/cloud/Events.js +0 -204
  18. package/src/cloud/PageChanges.js +0 -36
  19. package/src/cloud/PageRevisions.js +0 -226
  20. package/src/cloud/Pages.js +0 -185
  21. package/src/cloud/RaketaClient.js +0 -223
  22. package/src/cloud/Redirects.js +0 -81
  23. package/src/cloud/Settings.js +0 -34
  24. package/src/cloud/Tags.js +0 -80
  25. package/src/cloud/documents/articlesDocuments.js +0 -343
  26. package/src/cloud/documents/categoryDocuments.js +0 -52
  27. package/src/cloud/documents/common.js +0 -133
  28. package/src/cloud/documents/eventsDocuments.js +0 -351
  29. package/src/cloud/documents/pagesDocuments.js +0 -339
  30. package/src/cloud/documents/redirectsDocuments.js +0 -82
  31. package/src/cloud/documents/settingsDocuments.js +0 -23
  32. package/src/cloud/documents/tagsDocuments.js +0 -63
  33. package/src/currentPath.cjs +0 -1
  34. package/src/handlers/DashboardsHandler.js +0 -9
  35. package/src/handlers/RedirectsHandler.js +0 -124
  36. package/src/handlers/TagsHandler.js +0 -113
  37. package/src/handlers/_shared/SettingsHandler.js +0 -36
  38. package/src/handlers/article_revisions/ArticleRevisionsHandler.js +0 -49
  39. package/src/handlers/article_revisions/CancelSchedulesHandler.js +0 -26
  40. package/src/handlers/article_revisions/CodeHandler.js +0 -74
  41. package/src/handlers/article_revisions/GeneralHandler.js +0 -76
  42. package/src/handlers/article_revisions/LocksHandler.js +0 -77
  43. package/src/handlers/article_revisions/MetaHandler.js +0 -74
  44. package/src/handlers/article_revisions/PublishesHandler.js +0 -120
  45. package/src/handlers/article_revisions/RevertsHandler.js +0 -28
  46. package/src/handlers/article_revisions/TagHandler.js +0 -82
  47. package/src/handlers/article_revisions/UnlocksHandler.js +0 -24
  48. package/src/handlers/article_revisions/VisualHandler.js +0 -74
  49. package/src/handlers/article_revisions/WidgetHandler.js +0 -47
  50. package/src/handlers/articles/ArticlesHandler.js +0 -109
  51. package/src/handlers/articles/ClonesHandler.js +0 -19
  52. package/src/handlers/articles/DeletesHandler.js +0 -72
  53. package/src/handlers/articles/HistoryHandler.js +0 -31
  54. package/src/handlers/articles/TranslationsHandler.js +0 -231
  55. package/src/handlers/articles/URLsHandler.js +0 -83
  56. package/src/handlers/categories/index.js +0 -122
  57. package/src/handlers/event_revisions/CancelSchedulesHandler.js +0 -26
  58. package/src/handlers/event_revisions/CodeHandler.js +0 -72
  59. package/src/handlers/event_revisions/EventRevisionsHandler.js +0 -47
  60. package/src/handlers/event_revisions/GeneralHandler.js +0 -74
  61. package/src/handlers/event_revisions/LocksHandler.js +0 -65
  62. package/src/handlers/event_revisions/MetaHandler.js +0 -72
  63. package/src/handlers/event_revisions/PublishesHandler.js +0 -112
  64. package/src/handlers/event_revisions/RevertsHandler.js +0 -26
  65. package/src/handlers/event_revisions/TagHandler.js +0 -79
  66. package/src/handlers/event_revisions/UnlocksHandler.js +0 -24
  67. package/src/handlers/event_revisions/VisualHandler.js +0 -72
  68. package/src/handlers/event_revisions/WidgetHandler.js +0 -41
  69. package/src/handlers/events/ClonesHandler.js +0 -19
  70. package/src/handlers/events/DeletesHandler.js +0 -72
  71. package/src/handlers/events/EventsHandler.js +0 -111
  72. package/src/handlers/events/HistoryHandler.js +0 -31
  73. package/src/handlers/events/TranslationsHandler.js +0 -233
  74. package/src/handlers/events/URLsHandler.js +0 -81
  75. package/src/handlers/page_revisions/CancelSchedulesHandler.js +0 -26
  76. package/src/handlers/page_revisions/CodeHandler.js +0 -57
  77. package/src/handlers/page_revisions/GeneralHandler.js +0 -59
  78. package/src/handlers/page_revisions/LocksHandler.js +0 -69
  79. package/src/handlers/page_revisions/MetaHandler.js +0 -57
  80. package/src/handlers/page_revisions/PageRevisionsHandler.js +0 -47
  81. package/src/handlers/page_revisions/PublishesHandler.js +0 -112
  82. package/src/handlers/page_revisions/RevertsHandler.js +0 -26
  83. package/src/handlers/page_revisions/TagHandler.js +0 -105
  84. package/src/handlers/page_revisions/UnlocksHandler.js +0 -22
  85. package/src/handlers/page_revisions/VisualHandler.js +0 -58
  86. package/src/handlers/page_revisions/WidgetHandler.js +0 -41
  87. package/src/handlers/pages/ClonesHandler.js +0 -19
  88. package/src/handlers/pages/DeletesHandler.js +0 -68
  89. package/src/handlers/pages/HistoryHandler.js +0 -31
  90. package/src/handlers/pages/PagesHandler.js +0 -104
  91. package/src/handlers/pages/TranslationsHandler.js +0 -233
  92. package/src/handlers/pages/URLsHandler.js +0 -77
  93. package/src/helpers/AuthHelper.js +0 -49
  94. package/src/helpers/FormBuilder.js +0 -438
  95. package/src/helpers/HTMLBuilder.js +0 -38
  96. package/src/helpers/Inflector.js +0 -9
  97. package/src/helpers/Pagination.js +0 -92
  98. package/src/helpers/SortButton.js +0 -102
  99. package/src/helpers/form_for.js +0 -8
  100. package/src/helpers/historyUtils.js +0 -133
  101. package/src/helpers/pagination_helper.js +0 -5
  102. package/src/helpers/sort_button.js +0 -5
  103. package/src/helpers/utils.js +0 -21
  104. package/src/routeArticlesModule.js +0 -151
  105. package/src/routeCategoriesModule.js +0 -16
  106. package/src/routeCollection.js +0 -90
  107. package/src/routeEventsModule.js +0 -166
  108. package/src/routeMember.js +0 -40
  109. package/src/routeNestedCollection.js +0 -96
  110. package/src/routeNestedMember.js +0 -46
  111. package/src/routePagesModule.js +0 -163
  112. package/src/routeSettings.js +0 -14
  113. package/src/routeStandard.js +0 -35
  114. package/src/setGlobalContext.js +0 -5
  115. package/src/setupAuthentication.js +0 -169
  116. package/src/setupCloud.js +0 -50
  117. package/src/simpleCipher.js +0 -58
  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,96 +0,0 @@
1
- const routeNestedCollection = (
2
- adapter,
3
- parent,
4
- resource,
5
- handler,
6
- resourceConfig = {}
7
- ) => {
8
- const {
9
- before_filter,
10
- after_filter,
11
- index,
12
- show,
13
- create_form,
14
- edit_form,
15
- create,
16
- update,
17
- destroy,
18
- } = handler;
19
-
20
- const mapping = [
21
- [
22
- "GET",
23
- `/${parent}/:parent_id/${resource}`,
24
- resource,
25
- `${parent}/${resource}`,
26
- "index",
27
- index,
28
- before_filter,
29
- after_filter,
30
- ],
31
- [
32
- "GET",
33
- `/${parent}/:parent_id/${resource}/new`,
34
- resource,
35
- `${parent}/${resource}`,
36
- "create_form",
37
- create_form,
38
- before_filter,
39
- after_filter,
40
- ],
41
- [
42
- "GET",
43
- `/${resource}/:id`,
44
- resource,
45
- `${parent}/${resource}`,
46
- "show",
47
- show,
48
- before_filter,
49
- after_filter,
50
- ],
51
- [
52
- "GET",
53
- `/${resource}/:id/edit`,
54
- resource,
55
- `${parent}/${resource}`,
56
- "edit_form",
57
- edit_form,
58
- before_filter,
59
- after_filter,
60
- ],
61
- [
62
- "POST",
63
- `/${parent}/:parent_id/${resource}`,
64
- resource,
65
- `${parent}/${resource}`,
66
- "create_form",
67
- create,
68
- before_filter,
69
- after_filter,
70
- ],
71
- [
72
- "PUT",
73
- `/${resource}/:id`,
74
- resource,
75
- `${parent}/${resource}`,
76
- "update",
77
- update,
78
- before_filter,
79
- after_filter,
80
- ],
81
- [
82
- "DELETE",
83
- `/${resource}/:id`,
84
- resource,
85
- `${parent}/${resource}`,
86
- "destroy",
87
- destroy,
88
- before_filter,
89
- after_filter,
90
- ],
91
- ];
92
-
93
- adapter.routeNestedCollection(mapping, resourceConfig);
94
- };
95
-
96
- export default routeNestedCollection;
@@ -1,46 +0,0 @@
1
- const routeNestedMember = (
2
- adapter,
3
- parent,
4
- resource,
5
- handler,
6
- resourceConfig = {}
7
- ) => {
8
- const { before_filter, after_filter, show, edit_form, update } = handler;
9
-
10
- const mapping = [
11
- [
12
- "GET",
13
- `/${parent}/:parent_id/${resource}`,
14
- resource,
15
- `${parent}/${resource}`,
16
- "show",
17
- show,
18
- before_filter,
19
- after_filter,
20
- ],
21
- [
22
- "GET",
23
- `/${parent}/:parent_id/${resource}/edit`,
24
- resource,
25
- `${parent}/${resource}`,
26
- "edit_form",
27
- edit_form,
28
- before_filter,
29
- after_filter,
30
- ],
31
- [
32
- "POST",
33
- `/${parent}/:parent_id/${resource}`,
34
- resource,
35
- `${parent}/${resource}`,
36
- "edit_form",
37
- update,
38
- before_filter,
39
- after_filter,
40
- ],
41
- ];
42
-
43
- adapter.routeNestedMember(mapping, resourceConfig);
44
- };
45
-
46
- export default routeNestedMember;
@@ -1,163 +0,0 @@
1
- import CancelSchedulesHandler from "./handlers/page_revisions/CancelSchedulesHandler";
2
- import CodeHandler from "./handlers/page_revisions/CodeHandler";
3
- import GeneralHandler from "./handlers/page_revisions/GeneralHandler";
4
- import LocksHandler from "./handlers/page_revisions/LocksHandler";
5
- import MetaHandler from "./handlers/page_revisions/MetaHandler";
6
- import PageRevisionsHandler from "./handlers/page_revisions/PageRevisionsHandler";
7
- import PublishesHandler from "./handlers/page_revisions/PublishesHandler";
8
- import RevertsHandler from "./handlers/page_revisions/RevertsHandler";
9
- import TagHandler from "./handlers/page_revisions/TagHandler";
10
- import UnlocksHandler from "./handlers/page_revisions/UnlocksHandler";
11
- import VisualHandler from "./handlers/page_revisions/VisualHandler";
12
- import WidgetHandler from "./handlers/page_revisions/WidgetHandler";
13
- import ClonesHandler from "./handlers/pages/ClonesHandler";
14
- import DeletesHandler from "./handlers/pages/DeletesHandler";
15
- import HistoryHandler from "./handlers/pages/HistoryHandler";
16
- import PagesHandler from "./handlers/pages/PagesHandler";
17
- import TranslationsHandler from "./handlers/pages/TranslationsHandler";
18
- import URLsHandler from "./handlers/pages/URLsHandler";
19
- import routeCollection from "./routeCollection";
20
- import routeNestedCollection from "./routeNestedCollection";
21
- import routeNestedMember from "./routeNestedMember";
22
-
23
- function routePagesModule(
24
- adapter,
25
- pageType = "page",
26
- pageTypePlural = "pages"
27
- ) {
28
- const baseResource = pageTypePlural;
29
- const revisionsBaseResource = `${pageType}_revisions`;
30
-
31
- const resourceConfig = {
32
- pageType,
33
- pageTypePlural,
34
- };
35
-
36
- routeCollection(adapter, pageTypePlural, PagesHandler, {
37
- ...resourceConfig,
38
- viewsFallback: "pages",
39
- });
40
-
41
- routeNestedCollection(
42
- adapter,
43
- baseResource,
44
- "translations",
45
- TranslationsHandler,
46
- { ...resourceConfig, viewsFallback: "pages/translations" }
47
- );
48
-
49
- routeNestedCollection(adapter, baseResource, "history", HistoryHandler, {
50
- ...resourceConfig,
51
- viewsFallback: "pages/history",
52
- });
53
-
54
- routeNestedCollection(
55
- adapter,
56
- baseResource,
57
- revisionsBaseResource,
58
- PageRevisionsHandler,
59
- {
60
- ...resourceConfig,
61
- viewsFallback: "pages/page_revisions",
62
- }
63
- );
64
-
65
- routeNestedMember(adapter, revisionsBaseResource, "general", GeneralHandler, {
66
- ...resourceConfig,
67
- viewsFallback: "page_revisions/general",
68
- });
69
-
70
- routeNestedMember(adapter, revisionsBaseResource, "visuals", VisualHandler, {
71
- ...resourceConfig,
72
- viewsFallback: "page_revisions/visuals",
73
- });
74
-
75
- routeNestedMember(adapter, revisionsBaseResource, "codes", CodeHandler, {
76
- ...resourceConfig,
77
- viewsFallback: "page_revisions/codes",
78
- });
79
-
80
- routeNestedMember(adapter, revisionsBaseResource, "meta", MetaHandler, {
81
- ...resourceConfig,
82
- viewsFallback: "page_revisions/meta",
83
- });
84
-
85
- routeNestedMember(adapter, revisionsBaseResource, "tags", TagHandler, {
86
- ...resourceConfig,
87
- viewsFallback: "page_revisions/tags",
88
- });
89
-
90
- routeNestedCollection(adapter, revisionsBaseResource, "locks", LocksHandler, {
91
- ...resourceConfig,
92
- viewsFallback: "page_revisions/locks",
93
- });
94
-
95
- routeNestedCollection(
96
- adapter,
97
- revisionsBaseResource,
98
- "unlocks",
99
- UnlocksHandler,
100
- {
101
- ...resourceConfig,
102
- viewsFallback: "page_revisions/unlocks",
103
- }
104
- );
105
-
106
- routeNestedCollection(adapter, baseResource, "clones", ClonesHandler, {
107
- ...resourceConfig,
108
- viewsFallback: "pages/clones",
109
- });
110
-
111
- routeNestedCollection(adapter, baseResource, "urls", URLsHandler, {
112
- ...resourceConfig,
113
- viewsFallback: "pages/urls",
114
- });
115
-
116
- routeNestedCollection(adapter, baseResource, "deletes", DeletesHandler, {
117
- ...resourceConfig,
118
- viewsFallback: "pages/deletes",
119
- });
120
-
121
- routeNestedCollection(
122
- adapter,
123
- baseResource,
124
- `${pageType}_changes/reverts`,
125
- RevertsHandler,
126
- {
127
- ...resourceConfig,
128
- viewsFallback: "page_changes/reverts",
129
- }
130
- );
131
-
132
- routeNestedCollection(
133
- adapter,
134
- revisionsBaseResource,
135
- "publishes",
136
- PublishesHandler,
137
- {
138
- ...resourceConfig,
139
- viewsFallback: "page_revisions/publishes",
140
- }
141
- );
142
-
143
- routeNestedCollection(
144
- adapter,
145
- revisionsBaseResource,
146
- "cancel_schedules",
147
- CancelSchedulesHandler,
148
- {
149
- ...resourceConfig,
150
- viewsFallback: "page_revisions/cancel_schedules",
151
- }
152
- );
153
-
154
- routeNestedMember(
155
- adapter,
156
- `api/${revisionsBaseResource}`,
157
- "widgets",
158
- WidgetHandler,
159
- resourceConfig
160
- );
161
- }
162
-
163
- export default routePagesModule;
@@ -1,14 +0,0 @@
1
- import routeMember from "./routeMember";
2
- import SettingsHandler from "./handlers/_shared/SettingsHandler";
3
-
4
- function routeSettings(adapter) {
5
- routeMember(adapter, "settings/meta", SettingsHandler, {
6
- resource: "settings/meta",
7
- });
8
-
9
- routeMember(adapter, "settings/layout", SettingsHandler, {
10
- resource: "settings/layout",
11
- });
12
- }
13
-
14
- export default routeSettings;
@@ -1,35 +0,0 @@
1
- import routeCollection from "./routeCollection";
2
- import routeSettings from "./routeSettings";
3
- import routePagesModule from "./routePagesModule";
4
- import routeArticlesModule from "./routeArticlesModule";
5
- import routeEventsModule from "./routeEventsModule";
6
- import RedirectsHandler from "./handlers/RedirectsHandler";
7
- import TagsHandler from "./handlers/TagsHandler";
8
- import DashboardsHandler from "./handlers/DashboardsHandler";
9
-
10
- function routeStandard(adapter) {
11
- adapter.routeCollection(
12
- [
13
- [
14
- "GET",
15
- "",
16
- "dashboard",
17
- "dashboard",
18
- "index",
19
- DashboardsHandler.index,
20
- undefined,
21
- undefined,
22
- ],
23
- ],
24
- {}
25
- );
26
-
27
- routeCollection(adapter, "redirects", RedirectsHandler);
28
- routeCollection(adapter, "tags", TagsHandler);
29
- routeSettings(adapter);
30
- routePagesModule(adapter);
31
- routeArticlesModule(adapter);
32
- routeEventsModule(adapter);
33
- }
34
-
35
- export default routeStandard;
@@ -1,5 +0,0 @@
1
- const setGlobalContext = (adapter, func) => {
2
- adapter.setGlobalContext(func);
3
- };
4
-
5
- export default setGlobalContext;
@@ -1,169 +0,0 @@
1
- import { createHmac, randomBytes } from "node:crypto";
2
- import ejs from "ejs";
3
- import { deleteCookie, getCookie, setCookie } from "hono/cookie";
4
- import currentPath from "./currentPath.cjs";
5
- import AuthHelper from "./helpers/AuthHelper";
6
- // TODO: Maybe change the encryption mechanism?
7
- import simpleCipher from "./simpleCipher";
8
-
9
- // Generate a random signing secret on every server restart
10
- // const SIGNING_SECRET = randomBytes(64).toString("hex");
11
- const DELIMITER = ",";
12
-
13
- function calculateHash(text, config) {
14
- return createHmac("sha256", config.secrets.signing_secret)
15
- .update(text)
16
- .digest("hex");
17
- }
18
-
19
- function obfuscateToken(token, config) {
20
- const date = new Date();
21
- const timestamp = date.getTime() + 2 * 60000;
22
- const timestamped = [token, timestamp].join(DELIMITER);
23
- const hash = calculateHash(timestamped, config);
24
- const signed = [hash, timestamped].join(DELIMITER);
25
-
26
- return Buffer.from(simpleCipher.encrypt(signed, config)).toString("base64");
27
- }
28
-
29
- function extractToken(text, config) {
30
- const encrypted = Buffer.from(text, "base64").toString("ascii");
31
- const signed = simpleCipher.decrypt(encrypted, config);
32
- const [hash, token, timestamp] = signed.split(DELIMITER);
33
- const tDate = new Date(Number.parseInt(timestamp, 10));
34
-
35
- if (tDate < new Date()) {
36
- return null;
37
- }
38
-
39
- if (hash !== calculateHash([token, timestamp].join(DELIMITER), config)) {
40
- return null;
41
- }
42
-
43
- return token;
44
- }
45
-
46
- function getAuthBearer(c) {
47
- const authHeader = c.req.header("Authorization") || "";
48
-
49
- return authHeader.replace("Bearer", "").trim();
50
- }
51
-
52
- function unauthorized() {
53
- return new Response("Unauthorized", {
54
- status: 401,
55
- headers: {
56
- Authenticate: 'error="invalid_token"',
57
- },
58
- });
59
- }
60
-
61
- const setupAuthentication = (app, config) => {
62
- app.use(async (c, next) => {
63
- const token = getCookie(c, AuthHelper.cookie_key) || getAuthBearer(c);
64
-
65
- const status = AuthHelper.isAuthenticated({ path: c.req.path, token });
66
-
67
- if (!status) {
68
- return c.redirect("/login");
69
- }
70
-
71
- if (token) {
72
- const { info } = AuthHelper.parseJWT(token);
73
- c.set("authentication", { token, user: info });
74
- }
75
-
76
- await next();
77
- });
78
-
79
- app.get("/login", async (c) => {
80
- const googleURL = AuthHelper.getGoogleURL({
81
- gateway_url: config.cloud.gateway_url,
82
- gateway_project: config.cloud.gateway_project,
83
- gateway_user_pool: config.cloud.gateway_user_pool,
84
- auth_callback_url: config.cloud.auth_callback_url,
85
- });
86
-
87
- const templatePath = `${currentPath}/views/_auth/login.ejs`;
88
-
89
- const rendered = await ejs.renderFile(templatePath, {
90
- googleURL,
91
- error: c.req.query("err"),
92
- });
93
-
94
- return c.html(rendered);
95
- });
96
-
97
- app.get("/auth/google/callback", (c) => {
98
- const token = c.req.query("token") || "";
99
-
100
- const {
101
- info: { active },
102
- } = AuthHelper.parseJWT(token);
103
-
104
- if (!AuthHelper.verifyJWT(token)) return c.redirect("/login?err=expired");
105
- if (!active) return c.redirect("/login?err=not_activated");
106
-
107
- const isLocalhost = c.req.url.includes("http://localhost");
108
-
109
- setCookie(c, AuthHelper.cookie_key, token, {
110
- path: "/",
111
- httpOnly: true,
112
- secure: !isLocalhost,
113
- });
114
-
115
- return c.redirect("/remote/login");
116
- });
117
-
118
- app.get("/logout", (c) => {
119
- deleteCookie(c, AuthHelper.cookie_key);
120
-
121
- return c.redirect(config.remoteConfig.remoteLogout);
122
- });
123
-
124
- // Routes related to the remote project handling
125
- app.get("/profile", (c) => {
126
- const token = getAuthBearer(c);
127
-
128
- // TODO: Here we may update the Gateway API to have the check dynamically done in the backend!
129
- if (AuthHelper.verifyJWT(token)) {
130
- return c.json({ message: "OK" });
131
- } else {
132
- return unauthorized();
133
- }
134
- });
135
-
136
- app.get("/remote/login", (c) => {
137
- const token = getCookie(c, AuthHelper.cookie_key);
138
-
139
- if (!AuthHelper.verifyJWT(token)) {
140
- return c.redirect("/login");
141
- }
142
-
143
- const ot = obfuscateToken(token, config);
144
-
145
- return c.redirect(
146
- [
147
- config.remoteConfig.remoteLogin,
148
- "?redirect_to=",
149
- c.req.query().redirect_to,
150
- "&snapshot=",
151
- ot,
152
- ].join("")
153
- );
154
- });
155
-
156
- app.post("/remote/verify", async (c) => {
157
- const { credentials } = await c.req.json();
158
-
159
- const token = extractToken(credentials, config);
160
-
161
- if (!token) {
162
- return unauthorized();
163
- }
164
-
165
- return c.json({ token });
166
- });
167
- };
168
-
169
- export default setupAuthentication;
package/src/setupCloud.js DELETED
@@ -1,50 +0,0 @@
1
- import Redirects from "./cloud/Redirects";
2
- import Settings from "./cloud/Settings";
3
- import Tags from "./cloud/Tags";
4
- import Pages from "./cloud/Pages";
5
- import PageRevisions from "./cloud/PageRevisions";
6
- import PageChanges from "./cloud/PageChanges";
7
- import Articles from "./cloud/Articles";
8
- import ArticleRevisions from "./cloud/ArticleRevisions";
9
- import ArticleChanges from "./cloud/ArticleChanges";
10
- import Events from "./cloud/Events";
11
- import EventRevisions from "./cloud/EventRevisions";
12
- import EventChanges from "./cloud/EventChanges";
13
- import Categories from "./cloud/Categories";
14
-
15
- function setupCloud(ctx, getConfig) {
16
- if (!ctx?.authentication?.token) return;
17
-
18
- ctx.client = {};
19
-
20
- ctx.client.redirects = new Redirects(getConfig, ctx.authentication.token);
21
- ctx.client.settings = new Settings(getConfig, ctx.authentication.token);
22
- ctx.client.tags = new Tags(getConfig, ctx.authentication.token);
23
- ctx.client.pages = new Pages(getConfig, ctx.authentication.token);
24
- ctx.client.pageRevisions = new PageRevisions(
25
- getConfig,
26
- ctx.authentication.token
27
- );
28
- ctx.client.pageChanges = new PageChanges(getConfig, ctx.authentication.token);
29
- ctx.client.articles = new Articles(getConfig, ctx.authentication.token);
30
- ctx.client.articleRevisions = new ArticleRevisions(
31
- getConfig,
32
- ctx.authentication.token
33
- );
34
- ctx.client.articleChanges = new ArticleChanges(
35
- getConfig,
36
- ctx.authentication.token
37
- );
38
- ctx.client.events = new Events(getConfig, ctx.authentication.token);
39
- ctx.client.eventRevisions = new EventRevisions(
40
- getConfig,
41
- ctx.authentication.token
42
- );
43
- ctx.client.eventChanges = new EventChanges(
44
- getConfig,
45
- ctx.authentication.token
46
- );
47
- ctx.client.categories = new Categories(getConfig, ctx.authentication.token);
48
- }
49
-
50
- export default setupCloud;
@@ -1,58 +0,0 @@
1
- const ALPHABET =
2
- "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789,.";
3
-
4
- function generateEncryptionLookup(key) {
5
- const lookup = {};
6
-
7
- ALPHABET.split("").forEach((char, index) => {
8
- lookup[char] = key[index];
9
- });
10
-
11
- return lookup;
12
- }
13
-
14
- function generateDecryptionLookup(key) {
15
- const lookup = {};
16
-
17
- key.split("").forEach((char, index) => {
18
- lookup[char] = ALPHABET[index];
19
- });
20
-
21
- return lookup;
22
- }
23
-
24
- // function generateKey() {
25
- // const shuffled = ALPHABET.split("")
26
- // .sort(() => Math.random() - 0.5)
27
- // .join("");
28
-
29
- // return shuffled;
30
- // }
31
-
32
- // Scramble lookup maps on every server restart
33
- // const CIPHER_KEY = generateKey();
34
- // const ENCRYPT_LOOKUP = generateEncryptionLookup(CIPHER_KEY);
35
- // const DECRYPT_LOOKUP = generateDecryptionLookup(CIPHER_KEY);
36
-
37
- function encrypt(plaintext, config) {
38
- const ecryptLookup = generateEncryptionLookup(config.secrets.crypto_secret);
39
-
40
- return plaintext
41
- .split("")
42
- .map((char) => ecryptLookup[char] || char)
43
- .join("");
44
- }
45
-
46
- function decrypt(ciphertext, config) {
47
- const decryptLookup = generateDecryptionLookup(config.secrets.crypto_secret);
48
-
49
- return ciphertext
50
- .split("")
51
- .map((char) => decryptLookup[char] || char)
52
- .join("");
53
- }
54
-
55
- export default {
56
- encrypt,
57
- decrypt,
58
- };