@fc3/mmcadi 0.1.22 → 0.1.24

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 (453) hide show
  1. package/bin/compile +2 -2
  2. package/dist/.last-compile-time +1 -1
  3. package/dist/.last-publish-time +1 -1
  4. package/dist/client.js +1549 -265
  5. package/dist/src/client/client.js +1 -1
  6. package/dist/src/client/client.js.map +1 -1
  7. package/dist/src/client/enum/media-ready-state.d.ts +8 -0
  8. package/dist/src/client/enum/media-ready-state.js +12 -0
  9. package/dist/src/client/enum/media-ready-state.js.map +1 -0
  10. package/dist/src/client/enum/page-type.d.ts +6 -1
  11. package/dist/src/client/enum/page-type.js +5 -0
  12. package/dist/src/client/enum/page-type.js.map +1 -1
  13. package/dist/src/client/factory/page.js +11 -1
  14. package/dist/src/client/factory/page.js.map +1 -1
  15. package/dist/src/client/page/add-block-to-playlist.d.ts +5 -0
  16. package/dist/src/client/page/add-block-to-playlist.js +12 -0
  17. package/dist/src/client/page/add-block-to-playlist.js.map +1 -0
  18. package/dist/src/client/page/confirm-delete-block.js +1 -1
  19. package/dist/src/client/page/confirm-delete-block.js.map +1 -1
  20. package/dist/src/client/page/confirm-hide-block.d.ts +7 -0
  21. package/dist/src/client/page/confirm-hide-block.js +28 -0
  22. package/dist/src/client/page/confirm-hide-block.js.map +1 -0
  23. package/dist/src/client/page/cursor.d.ts +45 -0
  24. package/dist/src/client/page/cursor.js +429 -0
  25. package/dist/src/client/page/cursor.js.map +1 -0
  26. package/dist/src/client/page/edit-block.js +1 -1
  27. package/dist/src/client/page/edit-block.js.map +1 -1
  28. package/dist/src/client/page/history.d.ts +16 -0
  29. package/dist/src/client/page/history.js +126 -0
  30. package/dist/src/client/page/history.js.map +1 -0
  31. package/dist/src/client/page/select-block-destination.d.ts +5 -0
  32. package/dist/src/client/page/select-block-destination.js +12 -0
  33. package/dist/src/client/page/select-block-destination.js.map +1 -0
  34. package/dist/src/client/page/select-block-type.js +1 -1
  35. package/dist/src/client/page/select-block-type.js.map +1 -1
  36. package/dist/src/client/page/view-custom.d.ts +5 -29
  37. package/dist/src/client/page/view-custom.js +31 -282
  38. package/dist/src/client/page/view-custom.js.map +1 -1
  39. package/dist/src/client/page/view-playlist.d.ts +5 -0
  40. package/dist/src/client/page/view-playlist.js +16 -0
  41. package/dist/src/client/page/view-playlist.js.map +1 -0
  42. package/dist/src/client/page.d.ts +1 -0
  43. package/dist/src/client/page.js +8 -1
  44. package/dist/src/client/page.js.map +1 -1
  45. package/dist/src/client/shim/logger.d.ts +8 -2
  46. package/dist/src/client/shim/logger.js +19 -2
  47. package/dist/src/client/shim/logger.js.map +1 -1
  48. package/dist/src/client/shim/process.d.ts +4 -0
  49. package/dist/src/client/shim/process.js +16 -0
  50. package/dist/src/client/shim/process.js.map +1 -0
  51. package/dist/src/client/utility/get-block-activation-href.d.ts +2 -0
  52. package/dist/src/client/utility/get-block-activation-href.js +25 -0
  53. package/dist/src/client/utility/get-block-activation-href.js.map +1 -0
  54. package/dist/src/client/utility/get-meta-value.js +1 -1
  55. package/dist/src/client/utility/get-meta-value.js.map +1 -1
  56. package/dist/src/common/builder/block/background.js +1 -1
  57. package/dist/src/common/builder/block/background.js.map +1 -1
  58. package/dist/src/common/builder/block/folder.js +1 -1
  59. package/dist/src/common/builder/block/folder.js.map +1 -1
  60. package/dist/src/common/builder/block/header.d.ts +4 -1
  61. package/dist/src/common/builder/block/header.js +16 -3
  62. package/dist/src/common/builder/block/header.js.map +1 -1
  63. package/dist/src/common/builder/block/link.js +1 -1
  64. package/dist/src/common/builder/block/link.js.map +1 -1
  65. package/dist/src/constant/role/creator.js +1 -1
  66. package/dist/src/constant/role/creator.js.map +1 -1
  67. package/dist/src/constant/role/public.js +1 -1
  68. package/dist/src/constant/role/public.js.map +1 -1
  69. package/dist/src/constant/role/unknown.js +1 -1
  70. package/dist/src/constant/role/unknown.js.map +1 -1
  71. package/dist/src/enum/action-type.d.ts +4 -1
  72. package/dist/src/enum/action-type.js +3 -0
  73. package/dist/src/enum/action-type.js.map +1 -1
  74. package/dist/src/enum/block-type.d.ts +1 -0
  75. package/dist/src/enum/block-type.js +1 -0
  76. package/dist/src/enum/block-type.js.map +1 -1
  77. package/dist/src/enum/emoji.d.ts +11 -2
  78. package/dist/src/enum/emoji.js +10 -1
  79. package/dist/src/enum/emoji.js.map +1 -1
  80. package/dist/src/enum/tool-type.d.ts +1 -0
  81. package/dist/src/enum/tool-type.js +1 -0
  82. package/dist/src/enum/tool-type.js.map +1 -1
  83. package/dist/src/index.d.ts +1 -0
  84. package/dist/src/index.js +3 -1
  85. package/dist/src/index.js.map +1 -1
  86. package/dist/src/interface/repository.d.ts +10 -2
  87. package/dist/src/lib/feature/feature.js +2 -2
  88. package/dist/src/lib/feature/feature.js.map +1 -1
  89. package/dist/src/lib/filesystem/enum/file-extension.d.ts +1 -0
  90. package/dist/src/lib/filesystem/enum/file-extension.js +1 -0
  91. package/dist/src/lib/filesystem/enum/file-extension.js.map +1 -1
  92. package/dist/src/lib/http/enum/content-type.d.ts +1 -0
  93. package/dist/src/lib/http/enum/content-type.js +1 -0
  94. package/dist/src/lib/http/enum/content-type.js.map +1 -1
  95. package/dist/src/lib/http/enum/header.d.ts +4 -0
  96. package/dist/src/lib/http/enum/header.js +4 -0
  97. package/dist/src/lib/http/enum/header.js.map +1 -1
  98. package/dist/src/lib/http/utility/get-content-type-for-extension.js +2 -0
  99. package/dist/src/lib/http/utility/get-content-type-for-extension.js.map +1 -1
  100. package/dist/src/lib/random/elements.js +1 -1
  101. package/dist/src/lib/random/elements.js.map +1 -1
  102. package/dist/src/lib/server/http/endpoint/ping.d.ts +2 -3
  103. package/dist/src/lib/server/http/endpoint.js +2 -2
  104. package/dist/src/lib/server/http/endpoint.js.map +1 -1
  105. package/dist/src/operation.d.ts +2 -2
  106. package/dist/src/operation.js +3 -2
  107. package/dist/src/operation.js.map +1 -1
  108. package/dist/src/server/endpoint/abstract-page.d.ts +2 -2
  109. package/dist/src/server/endpoint/abstract-page.js +23 -5
  110. package/dist/src/server/endpoint/abstract-page.js.map +1 -1
  111. package/dist/src/server/endpoint/action/create.d.ts +5 -2
  112. package/dist/src/server/endpoint/action/create.js +126 -28
  113. package/dist/src/server/endpoint/action/create.js.map +1 -1
  114. package/dist/src/server/endpoint/action/get.d.ts +8 -2
  115. package/dist/src/server/endpoint/action/get.js +100 -7
  116. package/dist/src/server/endpoint/action/get.js.map +1 -1
  117. package/dist/src/server/endpoint/base.d.ts +3 -1
  118. package/dist/src/server/endpoint/base.js +8 -3
  119. package/dist/src/server/endpoint/base.js.map +1 -1
  120. package/dist/src/server/endpoint/history.d.ts +13 -0
  121. package/dist/src/server/endpoint/history.js +61 -0
  122. package/dist/src/server/endpoint/history.js.map +1 -0
  123. package/dist/src/server/endpoint/login.d.ts +2 -2
  124. package/dist/src/server/endpoint/login.js +3 -3
  125. package/dist/src/server/endpoint/login.js.map +1 -1
  126. package/dist/src/server/endpoint/logout.d.ts +1 -1
  127. package/dist/src/server/endpoint/logout.js +8 -3
  128. package/dist/src/server/endpoint/logout.js.map +1 -1
  129. package/dist/src/server/endpoint/month.d.ts +2 -2
  130. package/dist/src/server/endpoint/month.js +2 -2
  131. package/dist/src/server/endpoint/month.js.map +1 -1
  132. package/dist/src/server/endpoint/playlist/create.d.ts +14 -0
  133. package/dist/src/server/endpoint/playlist/create.js +38 -0
  134. package/dist/src/server/endpoint/playlist/create.js.map +1 -0
  135. package/dist/src/server/endpoint/playlist/get.d.ts +17 -0
  136. package/dist/src/server/endpoint/playlist/get.js +106 -0
  137. package/dist/src/server/endpoint/playlist/get.js.map +1 -0
  138. package/dist/src/server/endpoint/robots.d.ts +1 -1
  139. package/dist/src/server/endpoint/robots.js +1 -1
  140. package/dist/src/server/endpoint/robots.js.map +1 -1
  141. package/dist/src/server/endpoint/session/create.d.ts +1 -1
  142. package/dist/src/server/endpoint/session/create.js +2 -2
  143. package/dist/src/server/endpoint/session/create.js.map +1 -1
  144. package/dist/src/server/endpoint/settings/get.d.ts +4 -2
  145. package/dist/src/server/endpoint/settings/get.js +29 -10
  146. package/dist/src/server/endpoint/settings/get.js.map +1 -1
  147. package/dist/src/server/endpoint/settings/update.d.ts +1 -1
  148. package/dist/src/server/endpoint/settings/update.js +1 -1
  149. package/dist/src/server/endpoint/settings/update.js.map +1 -1
  150. package/dist/src/server/endpoint/week.d.ts +2 -2
  151. package/dist/src/server/endpoint/week.js +2 -2
  152. package/dist/src/server/endpoint/week.js.map +1 -1
  153. package/dist/src/server/endpoint/year.d.ts +2 -2
  154. package/dist/src/server/endpoint/year.js +2 -2
  155. package/dist/src/server/endpoint/year.js.map +1 -1
  156. package/dist/src/server/factory/{block-result-serializer.d.ts → block-serializer.d.ts} +2 -2
  157. package/dist/src/server/factory/{block-result-serializer.js → block-serializer.js} +19 -16
  158. package/dist/src/server/factory/block-serializer.js.map +1 -0
  159. package/dist/src/server/middleware/base.d.ts +1 -1
  160. package/dist/src/server/middleware/base.js +1 -1
  161. package/dist/src/server/middleware/base.js.map +1 -1
  162. package/dist/src/server/middleware/error-handler.d.ts +1 -1
  163. package/dist/src/server/middleware/error-handler.js +17 -6
  164. package/dist/src/server/middleware/error-handler.js.map +1 -1
  165. package/dist/src/server/middleware/static-file.d.ts +1 -1
  166. package/dist/src/server/middleware/static-file.js +103 -24
  167. package/dist/src/server/middleware/static-file.js.map +1 -1
  168. package/dist/src/server/operation/add-block.d.ts +1 -1
  169. package/dist/src/server/operation/add-block.js +22 -3
  170. package/dist/src/server/operation/add-block.js.map +1 -1
  171. package/dist/src/server/operation/add-entry-to-playlist.d.ts +12 -0
  172. package/dist/src/server/operation/add-entry-to-playlist.js +65 -0
  173. package/dist/src/server/operation/add-entry-to-playlist.js.map +1 -0
  174. package/dist/src/server/operation/create-playlist.d.ts +10 -0
  175. package/dist/src/server/operation/create-playlist.js +35 -0
  176. package/dist/src/server/operation/create-playlist.js.map +1 -0
  177. package/dist/src/server/operation/create-session.d.ts +1 -1
  178. package/dist/src/server/operation/create-session.js +1 -1
  179. package/dist/src/server/operation/create-session.js.map +1 -1
  180. package/dist/src/server/operation/delete-block.d.ts +7 -4
  181. package/dist/src/server/operation/delete-block.js +48 -10
  182. package/dist/src/server/operation/delete-block.js.map +1 -1
  183. package/dist/src/server/operation/demote-block.d.ts +1 -1
  184. package/dist/src/server/operation/demote-block.js +1 -1
  185. package/dist/src/server/operation/demote-block.js.map +1 -1
  186. package/dist/src/server/operation/destroy-session.d.ts +1 -1
  187. package/dist/src/server/operation/destroy-session.js +13 -1
  188. package/dist/src/server/operation/destroy-session.js.map +1 -1
  189. package/dist/src/server/operation/find-account.d.ts +1 -1
  190. package/dist/src/server/operation/find-account.js +5 -8
  191. package/dist/src/server/operation/find-account.js.map +1 -1
  192. package/dist/src/server/operation/find-playlist.d.ts +10 -0
  193. package/dist/src/server/operation/find-playlist.js +22 -0
  194. package/dist/src/server/operation/find-playlist.js.map +1 -0
  195. package/dist/src/server/operation/hide-block.d.ts +14 -0
  196. package/dist/src/server/operation/hide-block.js +55 -0
  197. package/dist/src/server/operation/hide-block.js.map +1 -0
  198. package/dist/src/server/operation/load-account.d.ts +1 -0
  199. package/dist/src/server/operation/load-account.js +7 -0
  200. package/dist/src/server/operation/load-account.js.map +1 -1
  201. package/dist/src/server/operation/load-block.d.ts +1 -1
  202. package/dist/src/server/operation/load-block.js +1 -1
  203. package/dist/src/server/operation/load-block.js.map +1 -1
  204. package/dist/src/server/operation/load-directory-items.d.ts +1 -1
  205. package/dist/src/server/operation/load-directory-items.js +1 -1
  206. package/dist/src/server/operation/load-directory-items.js.map +1 -1
  207. package/dist/src/server/operation/load-page.d.ts +4 -2
  208. package/dist/src/server/operation/load-page.js +106 -48
  209. package/dist/src/server/operation/load-page.js.map +1 -1
  210. package/dist/src/server/operation/load-playlists-for-account.d.ts +11 -0
  211. package/dist/src/server/operation/load-playlists-for-account.js +22 -0
  212. package/dist/src/server/operation/load-playlists-for-account.js.map +1 -0
  213. package/dist/src/server/operation/move-block.d.ts +17 -0
  214. package/dist/src/server/operation/move-block.js +121 -0
  215. package/dist/src/server/operation/move-block.js.map +1 -0
  216. package/dist/src/server/operation/promote-block.d.ts +1 -1
  217. package/dist/src/server/operation/promote-block.js +1 -1
  218. package/dist/src/server/operation/promote-block.js.map +1 -1
  219. package/dist/src/server/operation/save-page.d.ts +1 -1
  220. package/dist/src/server/operation/save-page.js +1 -1
  221. package/dist/src/server/operation/save-page.js.map +1 -1
  222. package/dist/src/server/operation/store-file.d.ts +14 -0
  223. package/dist/src/server/operation/{store-files.js → store-file.js} +29 -27
  224. package/dist/src/server/operation/store-file.js.map +1 -0
  225. package/dist/src/server/operation/update-account-settings.d.ts +1 -1
  226. package/dist/src/server/operation/update-account-settings.js +2 -2
  227. package/dist/src/server/operation/update-account-settings.js.map +1 -1
  228. package/dist/src/server/operation/update-block.d.ts +1 -1
  229. package/dist/src/server/operation/update-block.js +5 -5
  230. package/dist/src/server/operation/update-block.js.map +1 -1
  231. package/dist/src/server/repository/filesystem.d.ts +30 -0
  232. package/dist/src/server/repository/filesystem.js +179 -0
  233. package/dist/src/server/repository/filesystem.js.map +1 -0
  234. package/dist/src/server/repository/memory.d.ts +11 -2
  235. package/dist/src/server/repository/memory.js +69 -5
  236. package/dist/src/server/repository/memory.js.map +1 -1
  237. package/dist/src/server/{result-serializer → serializer}/action.d.ts +8 -1
  238. package/dist/src/server/{result-serializer → serializer}/action.js +375 -16
  239. package/dist/src/server/serializer/action.js.map +1 -0
  240. package/dist/src/server/{result-serializer → serializer}/base.d.ts +3 -2
  241. package/dist/src/server/{result-serializer → serializer}/base.js +42 -5
  242. package/dist/src/server/serializer/base.js.map +1 -0
  243. package/dist/src/server/{result-serializer → serializer}/block/audio.js +14 -10
  244. package/dist/src/server/serializer/block/audio.js.map +1 -0
  245. package/dist/src/server/serializer/block/background.js.map +1 -0
  246. package/dist/src/server/serializer/block/calendar.js.map +1 -0
  247. package/dist/src/server/serializer/block/directory.js.map +1 -0
  248. package/dist/src/server/serializer/block/ephemeral.js.map +1 -0
  249. package/dist/src/server/{result-serializer → serializer}/block/folder.js +5 -0
  250. package/dist/src/server/serializer/block/folder.js.map +1 -0
  251. package/dist/src/server/{result-serializer → serializer}/block/header.js +3 -2
  252. package/dist/src/server/serializer/block/header.js.map +1 -0
  253. package/dist/src/server/{result-serializer → serializer}/block/image.js +12 -13
  254. package/dist/src/server/serializer/block/image.js.map +1 -0
  255. package/dist/src/server/serializer/block/link.js.map +1 -0
  256. package/dist/src/server/{result-serializer → serializer}/block/list.js +1 -1
  257. package/dist/src/server/serializer/block/list.js.map +1 -0
  258. package/dist/src/server/{result-serializer → serializer}/block/multi-column.js +2 -2
  259. package/dist/src/server/serializer/block/multi-column.js.map +1 -0
  260. package/dist/src/server/serializer/block/note.js.map +1 -0
  261. package/dist/src/server/serializer/block/parameter.js.map +1 -0
  262. package/dist/src/server/serializer/block/todo.js.map +1 -0
  263. package/dist/src/server/serializer/block/video.d.ts +6 -0
  264. package/dist/src/server/serializer/block/video.js +40 -0
  265. package/dist/src/server/serializer/block/video.js.map +1 -0
  266. package/dist/src/server/{result-serializer → serializer}/block/whitespace.js +12 -1
  267. package/dist/src/server/serializer/block/whitespace.js.map +1 -0
  268. package/dist/src/server/{result-serializer → serializer}/block.d.ts +2 -2
  269. package/dist/src/server/{result-serializer → serializer}/block.js +7 -4
  270. package/dist/src/server/serializer/block.js.map +1 -0
  271. package/dist/src/server/serializer/common/time-place-options.js.map +1 -0
  272. package/dist/src/server/serializer/history.d.ts +19 -0
  273. package/dist/src/server/serializer/history.js +77 -0
  274. package/dist/src/server/serializer/history.js.map +1 -0
  275. package/dist/src/server/serializer/login.js.map +1 -0
  276. package/dist/src/server/serializer/month.js.map +1 -0
  277. package/dist/src/server/{result-serializer → serializer}/page.d.ts +2 -1
  278. package/dist/src/server/{result-serializer → serializer}/page.js +20 -35
  279. package/dist/src/server/serializer/page.js.map +1 -0
  280. package/dist/src/server/serializer/playlist.d.ts +27 -0
  281. package/dist/src/server/serializer/playlist.js +46 -0
  282. package/dist/src/server/serializer/playlist.js.map +1 -0
  283. package/dist/src/server/{result-serializer → serializer}/settings.d.ts +9 -0
  284. package/dist/src/server/{result-serializer → serializer}/settings.js +45 -2
  285. package/dist/src/server/serializer/settings.js.map +1 -0
  286. package/dist/src/server/{result-serializer → serializer}/week.js +2 -2
  287. package/dist/src/server/serializer/week.js.map +1 -0
  288. package/dist/src/server/{result-serializer → serializer}/year.js +2 -2
  289. package/dist/src/server/serializer/year.js.map +1 -0
  290. package/dist/src/server/utility/accepts-content-type.d.ts +1 -1
  291. package/dist/src/server/utility/accepts-content-type.js +1 -1
  292. package/dist/src/server/utility/accepts-content-type.js.map +1 -1
  293. package/dist/src/server/utility/accepts-html.d.ts +1 -1
  294. package/dist/src/server/utility/accepts-html.js +1 -1
  295. package/dist/src/server/utility/accepts-html.js.map +1 -1
  296. package/dist/src/server/utility/accepts-json.d.ts +1 -1
  297. package/dist/src/server/utility/accepts-json.js +1 -1
  298. package/dist/src/server/utility/accepts-json.js.map +1 -1
  299. package/dist/src/server/utility/create-date.js +1 -1
  300. package/dist/src/server/utility/create-date.js.map +1 -1
  301. package/dist/src/server/utility/day-to-date.js +1 -1
  302. package/dist/src/server/utility/day-to-date.js.map +1 -1
  303. package/dist/src/server/utility/get-block-at-index-path.js +1 -1
  304. package/dist/src/server/utility/get-block-at-index-path.js.map +1 -1
  305. package/dist/src/server/utility/get-custom-page-type-for-path.js +1 -1
  306. package/dist/src/server/utility/get-custom-page-type-for-path.js.map +1 -1
  307. package/dist/src/server/utility/get-emoji-for-block-type.js +6 -2
  308. package/dist/src/server/utility/get-emoji-for-block-type.js.map +1 -1
  309. package/dist/src/server/utility/get-emoji-for-tool-type.js +1 -0
  310. package/dist/src/server/utility/get-emoji-for-tool-type.js.map +1 -1
  311. package/dist/src/server/utility/get-hex-for-color.js +1 -1
  312. package/dist/src/server/utility/get-hex-for-color.js.map +1 -1
  313. package/dist/src/server/utility/get-key-for-role.js +1 -1
  314. package/dist/src/server/utility/get-key-for-role.js.map +1 -1
  315. package/dist/src/server/utility/get-label-for-time-place-visibility.js +1 -1
  316. package/dist/src/server/utility/get-label-for-time-place-visibility.js.map +1 -1
  317. package/dist/src/server/utility/get-month-name.js +1 -1
  318. package/dist/src/server/utility/get-month-name.js.map +1 -1
  319. package/dist/src/server/utility/get-parent-index-path.js +1 -1
  320. package/dist/src/server/utility/get-parent-index-path.js.map +1 -1
  321. package/dist/src/server/utility/get-random-emoji-for-date.js +2 -2
  322. package/dist/src/server/utility/get-random-emoji-for-date.js.map +1 -1
  323. package/dist/src/server/utility/get-siblings-and-index-for-index-path.js +2 -2
  324. package/dist/src/server/utility/get-siblings-and-index-for-index-path.js.map +1 -1
  325. package/dist/src/server/utility/get-thumbnail-filename.js +1 -1
  326. package/dist/src/server/utility/get-thumbnail-filename.js.map +1 -1
  327. package/dist/src/server/utility/get-weekday-name.js +1 -1
  328. package/dist/src/server/utility/get-weekday-name.js.map +1 -1
  329. package/dist/src/server/utility/key-to-date.js +1 -1
  330. package/dist/src/server/utility/key-to-date.js.map +1 -1
  331. package/dist/src/server/utility/month-to-date.js +1 -1
  332. package/dist/src/server/utility/month-to-date.js.map +1 -1
  333. package/dist/src/server/utility/parse-index-path.js +1 -1
  334. package/dist/src/server/utility/parse-index-path.js.map +1 -1
  335. package/dist/src/server/utility/path-to-date.js +1 -1
  336. package/dist/src/server/utility/path-to-date.js.map +1 -1
  337. package/dist/src/server/utility/supports-thumbnail.d.ts +2 -0
  338. package/dist/src/server/utility/supports-thumbnail.js +14 -0
  339. package/dist/src/server/utility/supports-thumbnail.js.map +1 -0
  340. package/dist/src/server/utility/validate-page.js +1 -1
  341. package/dist/src/server/utility/validate-page.js.map +1 -1
  342. package/dist/src/server/utility/validate-path.js +1 -1
  343. package/dist/src/server/utility/validate-path.js.map +1 -1
  344. package/dist/src/server/utility/validate-url.js +1 -1
  345. package/dist/src/server/utility/validate-url.js.map +1 -1
  346. package/dist/src/server/utility/year-to-date.js +1 -1
  347. package/dist/src/server/utility/year-to-date.js.map +1 -1
  348. package/dist/src/server.d.ts +6 -1
  349. package/dist/src/server.js +45 -11
  350. package/dist/src/server.js.map +1 -1
  351. package/dist/src/type/account-settings.d.ts +3 -2
  352. package/dist/src/type/action/add-block-to-playlist.d.ts +11 -0
  353. package/dist/src/type/action/add-block-to-playlist.js +3 -0
  354. package/dist/src/type/action/add-block-to-playlist.js.map +1 -0
  355. package/dist/src/type/action/add-block.d.ts +10 -2
  356. package/dist/src/type/action/hide-block.d.ts +9 -0
  357. package/dist/src/type/action/hide-block.js +3 -0
  358. package/dist/src/type/action/hide-block.js.map +1 -0
  359. package/dist/src/type/action/move-block.d.ts +10 -0
  360. package/dist/src/type/action/move-block.js +3 -0
  361. package/dist/src/type/action/move-block.js.map +1 -0
  362. package/dist/src/type/block/audio.d.ts +4 -0
  363. package/dist/src/type/block/header.d.ts +2 -0
  364. package/dist/src/type/block/image.d.ts +2 -0
  365. package/dist/src/type/block/video.d.ts +8 -0
  366. package/dist/src/type/block/video.js +3 -0
  367. package/dist/src/type/block/video.js.map +1 -0
  368. package/dist/src/type/block.d.ts +2 -2
  369. package/dist/src/type/page.d.ts +2 -0
  370. package/dist/src/type/playlist.d.ts +11 -0
  371. package/dist/src/type/playlist.js +3 -0
  372. package/dist/src/type/playlist.js.map +1 -0
  373. package/dist/src/type/unpersisted.d.ts +2 -0
  374. package/dist/src/type/unpersisted.js +3 -0
  375. package/dist/src/type/unpersisted.js.map +1 -0
  376. package/dist/test/unit/server/operation/promote-block.js +13 -2
  377. package/dist/test/unit/server/operation/promote-block.js.map +1 -1
  378. package/dist/tsconfig.tsbuildinfo +1 -1
  379. package/package.json +18 -3
  380. package/dist/src/server/endpoint/account/get.d.ts +0 -14
  381. package/dist/src/server/endpoint/account/get.js +0 -34
  382. package/dist/src/server/endpoint/account/get.js.map +0 -1
  383. package/dist/src/server/endpoint/role/get.d.ts +0 -14
  384. package/dist/src/server/endpoint/role/get.js +0 -43
  385. package/dist/src/server/endpoint/role/get.js.map +0 -1
  386. package/dist/src/server/factory/block-result-serializer.js.map +0 -1
  387. package/dist/src/server/operation/store-files.d.ts +0 -15
  388. package/dist/src/server/operation/store-files.js.map +0 -1
  389. package/dist/src/server/result-serializer/account.d.ts +0 -9
  390. package/dist/src/server/result-serializer/account.js +0 -26
  391. package/dist/src/server/result-serializer/account.js.map +0 -1
  392. package/dist/src/server/result-serializer/action.js.map +0 -1
  393. package/dist/src/server/result-serializer/base.js.map +0 -1
  394. package/dist/src/server/result-serializer/block/audio.js.map +0 -1
  395. package/dist/src/server/result-serializer/block/background.js.map +0 -1
  396. package/dist/src/server/result-serializer/block/calendar.js.map +0 -1
  397. package/dist/src/server/result-serializer/block/directory.js.map +0 -1
  398. package/dist/src/server/result-serializer/block/ephemeral.js.map +0 -1
  399. package/dist/src/server/result-serializer/block/folder.js.map +0 -1
  400. package/dist/src/server/result-serializer/block/header.js.map +0 -1
  401. package/dist/src/server/result-serializer/block/image.js.map +0 -1
  402. package/dist/src/server/result-serializer/block/link.js.map +0 -1
  403. package/dist/src/server/result-serializer/block/list.js.map +0 -1
  404. package/dist/src/server/result-serializer/block/multi-column.js.map +0 -1
  405. package/dist/src/server/result-serializer/block/note.js.map +0 -1
  406. package/dist/src/server/result-serializer/block/parameter.js.map +0 -1
  407. package/dist/src/server/result-serializer/block/todo.js.map +0 -1
  408. package/dist/src/server/result-serializer/block/whitespace.js.map +0 -1
  409. package/dist/src/server/result-serializer/block.js.map +0 -1
  410. package/dist/src/server/result-serializer/common/time-place-options.js.map +0 -1
  411. package/dist/src/server/result-serializer/login.js.map +0 -1
  412. package/dist/src/server/result-serializer/month.js.map +0 -1
  413. package/dist/src/server/result-serializer/page.js.map +0 -1
  414. package/dist/src/server/result-serializer/role.d.ts +0 -9
  415. package/dist/src/server/result-serializer/role.js +0 -26
  416. package/dist/src/server/result-serializer/role.js.map +0 -1
  417. package/dist/src/server/result-serializer/settings.js.map +0 -1
  418. package/dist/src/server/result-serializer/week.js.map +0 -1
  419. package/dist/src/server/result-serializer/year.js.map +0 -1
  420. package/dist/test/unit/lib/grammar/inflector.d.ts +0 -1
  421. package/dist/test/unit/lib/grammar/inflector.js +0 -72
  422. package/dist/test/unit/lib/grammar/inflector.js.map +0 -1
  423. /package/dist/src/server/{result-serializer → serializer}/block/audio.d.ts +0 -0
  424. /package/dist/src/server/{result-serializer → serializer}/block/background.d.ts +0 -0
  425. /package/dist/src/server/{result-serializer → serializer}/block/background.js +0 -0
  426. /package/dist/src/server/{result-serializer → serializer}/block/calendar.d.ts +0 -0
  427. /package/dist/src/server/{result-serializer → serializer}/block/calendar.js +0 -0
  428. /package/dist/src/server/{result-serializer → serializer}/block/directory.d.ts +0 -0
  429. /package/dist/src/server/{result-serializer → serializer}/block/directory.js +0 -0
  430. /package/dist/src/server/{result-serializer → serializer}/block/ephemeral.d.ts +0 -0
  431. /package/dist/src/server/{result-serializer → serializer}/block/ephemeral.js +0 -0
  432. /package/dist/src/server/{result-serializer → serializer}/block/folder.d.ts +0 -0
  433. /package/dist/src/server/{result-serializer → serializer}/block/header.d.ts +0 -0
  434. /package/dist/src/server/{result-serializer → serializer}/block/image.d.ts +0 -0
  435. /package/dist/src/server/{result-serializer → serializer}/block/link.d.ts +0 -0
  436. /package/dist/src/server/{result-serializer → serializer}/block/link.js +0 -0
  437. /package/dist/src/server/{result-serializer → serializer}/block/list.d.ts +0 -0
  438. /package/dist/src/server/{result-serializer → serializer}/block/multi-column.d.ts +0 -0
  439. /package/dist/src/server/{result-serializer → serializer}/block/note.d.ts +0 -0
  440. /package/dist/src/server/{result-serializer → serializer}/block/note.js +0 -0
  441. /package/dist/src/server/{result-serializer → serializer}/block/parameter.d.ts +0 -0
  442. /package/dist/src/server/{result-serializer → serializer}/block/parameter.js +0 -0
  443. /package/dist/src/server/{result-serializer → serializer}/block/todo.d.ts +0 -0
  444. /package/dist/src/server/{result-serializer → serializer}/block/todo.js +0 -0
  445. /package/dist/src/server/{result-serializer → serializer}/block/whitespace.d.ts +0 -0
  446. /package/dist/src/server/{result-serializer → serializer}/common/time-place-options.d.ts +0 -0
  447. /package/dist/src/server/{result-serializer → serializer}/common/time-place-options.js +0 -0
  448. /package/dist/src/server/{result-serializer → serializer}/login.d.ts +0 -0
  449. /package/dist/src/server/{result-serializer → serializer}/login.js +0 -0
  450. /package/dist/src/server/{result-serializer → serializer}/month.d.ts +0 -0
  451. /package/dist/src/server/{result-serializer → serializer}/month.js +0 -0
  452. /package/dist/src/server/{result-serializer → serializer}/week.d.ts +0 -0
  453. /package/dist/src/server/{result-serializer → serializer}/year.d.ts +0 -0
@@ -3,14 +3,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const http_1 = require("./../../../lib/http/index.js");
7
- const errors_1 = require("./../../../lib/errors/index.js");
6
+ const http_1 = require("@fc3/http");
7
+ const errors_1 = require("@fc3/errors");
8
8
  const base_1 = __importDefault(require("./../base.js"));
9
9
  const block_type_1 = __importDefault(require("./../../../enum/block-type.js"));
10
- const action_1 = __importDefault(require("./../../result-serializer/action.js"));
10
+ const action_1 = __importDefault(require("./../../serializer/action.js"));
11
11
  const get_parent_path_1 = __importDefault(require("./../../../common/utility/get-parent-path.js"));
12
12
  const get_block_permissions_1 = __importDefault(require("./../../utility/get-block-permissions.js"));
13
13
  const get_path_for_folder_block_1 = __importDefault(require("./../../utility/get-path-for-folder-block.js"));
14
+ const load_playlists_for_account_1 = __importDefault(require("./../../operation/load-playlists-for-account.js"));
14
15
  const permission_type_1 = __importDefault(require("./../../../enum/permission-type.js"));
15
16
  const color_1 = __importDefault(require("./../../../enum/color.js"));
16
17
  const emoji_1 = __importDefault(require("./../../../enum/emoji.js"));
@@ -35,14 +36,42 @@ class GetActionEndpoint extends base_1.default {
35
36
  switch (action_type) {
36
37
  case action_type_1.default.ADD_BLOCK:
37
38
  return this.processAddBlock();
39
+ case action_type_1.default.MOVE_BLOCK:
40
+ return this.processMoveBlock();
38
41
  case action_type_1.default.DELETE_BLOCK:
39
42
  return this.processDeleteBlock();
43
+ case action_type_1.default.HIDE_BLOCK:
44
+ return this.processHideBlock();
40
45
  case action_type_1.default.EDIT_BLOCK:
41
46
  return this.processEditBlock();
47
+ case action_type_1.default.ADD_BLOCK_TO_PLAYLIST:
48
+ return this.processAddBlockToPlaylist();
42
49
  default:
43
50
  throw new errors_1.InvalidError(`Unsupported action type: ${action_type}`);
44
51
  }
45
52
  }
53
+ async processMoveBlock() {
54
+ const path = this.getPath();
55
+ const action_type = action_type_1.default.MOVE_BLOCK;
56
+ const index_path = this.getQueryParameter('index_path');
57
+ const target_path = path;
58
+ if (typeof index_path !== 'string') {
59
+ throw new errors_1.InvalidError(`Invalid index path: ${index_path}`);
60
+ }
61
+ const execution_context = this.getExecutionContext();
62
+ const operation = new load_block_1.default(path, index_path, execution_context);
63
+ const block = await operation.perform();
64
+ const editing = false;
65
+ this.setTargetBlock(block);
66
+ return {
67
+ path,
68
+ block,
69
+ action_type,
70
+ index_path,
71
+ target_path,
72
+ editing
73
+ };
74
+ }
46
75
  async processAddBlock() {
47
76
  const path = this.getPath();
48
77
  const action_type = action_type_1.default.ADD_BLOCK;
@@ -71,6 +100,26 @@ class GetActionEndpoint extends base_1.default {
71
100
  editing
72
101
  };
73
102
  }
103
+ async processHideBlock() {
104
+ const path = this.getPath();
105
+ const action_type = action_type_1.default.HIDE_BLOCK;
106
+ const index_path = this.getQueryParameter('index_path');
107
+ if (typeof index_path !== 'string') {
108
+ throw new errors_1.InvalidError(`Invalid index path: ${index_path}`);
109
+ }
110
+ const execution_context = this.getExecutionContext();
111
+ const operation = new load_block_1.default(path, index_path, execution_context);
112
+ const block = await operation.perform();
113
+ const editing = false;
114
+ this.setTargetBlock(block);
115
+ return {
116
+ path,
117
+ action_type,
118
+ index_path,
119
+ editing,
120
+ block
121
+ };
122
+ }
74
123
  async processDeleteBlock() {
75
124
  const path = this.getPath();
76
125
  const action_type = action_type_1.default.DELETE_BLOCK;
@@ -111,15 +160,33 @@ class GetActionEndpoint extends base_1.default {
111
160
  block
112
161
  };
113
162
  }
163
+ async processAddBlockToPlaylist() {
164
+ const path = this.getPath();
165
+ const action_type = action_type_1.default.ADD_BLOCK_TO_PLAYLIST;
166
+ const index_path = this.getQueryParameter('index_path');
167
+ if (typeof index_path !== 'string') {
168
+ throw new errors_1.InvalidError(`Invalid index path: ${index_path}`);
169
+ }
170
+ const execution_context = this.getExecutionContext();
171
+ const operation = new load_block_1.default(path, index_path, execution_context);
172
+ const block = await operation.perform();
173
+ const editing = false;
174
+ this.setTargetBlock(block);
175
+ return {
176
+ path,
177
+ action_type,
178
+ index_path,
179
+ editing,
180
+ block
181
+ };
182
+ }
114
183
  async getHtmlResultSerializer(result) {
115
184
  const session = this.getSession();
116
185
  const path = '/actions';
117
186
  const referrer_url = this.getReferrerUrl();
118
- const execution_context = this.getExecutionContext();
119
- const account_operation = new load_account_1.default(execution_context);
120
- const { routes, roles } = execution_context.getConfig();
187
+ const { routes, roles } = this.getConfig();
121
188
  const route_paths = Object.keys(routes);
122
- const account = await account_operation.perform();
189
+ const account = await this.loadAccount();
123
190
  const creator_username = await this.determineCreatorUsername();
124
191
  if (account === null) {
125
192
  throw new errors_1.InvariantViolation(`
@@ -127,8 +194,10 @@ class GetActionEndpoint extends base_1.default {
127
194
  but they were not set
128
195
  `);
129
196
  }
197
+ const playlists = await this.loadPlaylistsForAction(result);
130
198
  const metadata = {
131
199
  account,
200
+ playlists,
132
201
  roles,
133
202
  route_paths,
134
203
  creator_username
@@ -165,6 +234,16 @@ class GetActionEndpoint extends base_1.default {
165
234
  }
166
235
  return parent_block;
167
236
  }
237
+ async loadPlaylistsForAction(action) {
238
+ const { action_type } = action;
239
+ if (action_type !== action_type_1.default.ADD_BLOCK_TO_PLAYLIST) {
240
+ return [];
241
+ }
242
+ const account = await this.loadAccount();
243
+ const execution_context = this.getExecutionContext();
244
+ const operation = new load_playlists_for_account_1.default(account, execution_context);
245
+ return operation.perform();
246
+ }
168
247
  async determineCreatorUsername() {
169
248
  const { creator_id } = this.getTargetBlock();
170
249
  return `${creator_id}`;
@@ -192,6 +271,20 @@ class GetActionEndpoint extends base_1.default {
192
271
  setTargetBlock(block) {
193
272
  this.target_block = block;
194
273
  }
274
+ async loadAccount() {
275
+ if (this.account === undefined) {
276
+ const execution_context = this.getExecutionContext();
277
+ const account_operation = new load_account_1.default(execution_context);
278
+ const account = await account_operation.perform();
279
+ if (account === null) {
280
+ throw new errors_1.InvariantViolation(`
281
+ Tried to read account, but it was not present after session verification
282
+ `);
283
+ }
284
+ this.account = account;
285
+ }
286
+ return this.account;
287
+ }
195
288
  getTargetBlock() {
196
289
  if (this.target_block === undefined) {
197
290
  throw new errors_1.InvariantViolation(`
@@ -1 +1 @@
1
- {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/server/endpoint/action/get.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/server/endpoint/action/get.ts"],"names":[],"mappings":"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"}
@@ -1,8 +1,10 @@
1
- import { Endpoint } from './../../lib/server/index';
1
+ import { Endpoint } from '@fc3/server';
2
+ import RuntimeConfig from './../../type/runtime-config';
2
3
  type AllowedOutputs = string | Buffer | object;
3
4
  declare abstract class BaseEndpoint<I, O extends AllowedOutputs> extends Endpoint<I, O> {
4
5
  protected getHost(): string;
5
6
  protected getReferrerUrl(): string;
6
7
  protected verifyLoggedIn(): void;
8
+ protected getConfig(): RuntimeConfig;
7
9
  }
8
10
  export default BaseEndpoint;
@@ -3,9 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const server_1 = require("./../../lib/server/index.js");
7
- const http_1 = require("./../../lib/http/index.js");
8
- const errors_1 = require("./../../lib/errors/index.js");
6
+ const server_1 = require("@fc3/server");
7
+ const http_1 = require("@fc3/http");
8
+ const errors_1 = require("@fc3/errors");
9
9
  const validate_url_1 = __importDefault(require("./../utility/validate-url.js"));
10
10
  class BaseEndpoint extends server_1.Endpoint {
11
11
  getHost() {
@@ -37,6 +37,11 @@ class BaseEndpoint extends server_1.Endpoint {
37
37
  throw new errors_1.UnauthorizedError();
38
38
  }
39
39
  }
40
+ getConfig() {
41
+ const execution_context = this.getExecutionContext();
42
+ const config = execution_context.getConfig();
43
+ return config;
44
+ }
40
45
  }
41
46
  exports.default = BaseEndpoint;
42
47
  //# sourceMappingURL=base.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/server/endpoint/base.ts"],"names":[],"mappings":";;;;;AAAA,uCAAoC;AACpC,mCAAoC;AACpC,uCAAiE;AAEjE,+EAAsD;AAItD,MAAe,YAA0C,SAAQ,iBAAc;IACpE,OAAO;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC,iBAAU,CAAC,IAAI,CAAC,CAAC;QAErD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,2BAAkB,CAAC;;IAE5B,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAES,cAAc;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,iBAAU,CAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAA,sBAAW,EAAC,QAAQ,CAAC,CAAC;YAEtB,OAAO,QAAQ,CAAC;QACjB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;QAEzC,IAAA,sBAAW,EAAC,QAAQ,CAAC,CAAC;QAEtB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAES,cAAc;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAElC,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YACjC,MAAM,IAAI,0BAAiB,EAAE,CAAC;QAC/B,CAAC;IACF,CAAC;CACD;AAED,kBAAe,YAAY,CAAC"}
1
+ {"version":3,"file":"base.js","sourceRoot":"","sources":["../../../../src/server/endpoint/base.ts"],"names":[],"mappings":";;;;;AAAA,wCAAqC;AACrC,oCAAqC;AACrC,wCAAkE;AAElE,+EAAsD;AAKtD,MAAe,YAA0C,SAAQ,iBAAc;IACpE,OAAO;QAChB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,cAAc,CAAC,iBAAU,CAAC,IAAI,CAAC,CAAC;QAErD,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,IAAI,2BAAkB,CAAC;;IAE5B,CAAC,CAAC;QACJ,CAAC;QAED,OAAO,IAAI,CAAC;IACb,CAAC;IAES,cAAc;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,QAAQ,GAAG,OAAO,CAAC,cAAc,CAAC,iBAAU,CAAC,OAAO,CAAC,CAAC;QAE5D,IAAI,QAAQ,KAAK,SAAS,EAAE,CAAC;YAC5B,IAAA,sBAAW,EAAC,QAAQ,CAAC,CAAC;YAEtB,OAAO,QAAQ,CAAC;QACjB,CAAC;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,CAAC;QAC5B,MAAM,QAAQ,GAAG,OAAO,CAAC,WAAW,EAAE,CAAC;QACvC,MAAM,QAAQ,GAAG,GAAG,QAAQ,MAAM,IAAI,EAAE,CAAC;QAEzC,IAAA,sBAAW,EAAC,QAAQ,CAAC,CAAC;QAEtB,OAAO,QAAQ,CAAC;IACjB,CAAC;IAES,cAAc;QACvB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAElC,IAAI,OAAO,CAAC,UAAU,KAAK,IAAI,EAAE,CAAC;YACjC,MAAM,IAAI,0BAAiB,EAAE,CAAC;QAC/B,CAAC;IACF,CAAC;IAES,SAAS;QAClB,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrD,MAAM,MAAM,GAAG,iBAAiB,CAAC,SAAS,EAAE,CAAC;QAE7C,OAAO,MAAuB,CAAC;IAChC,CAAC;CACD;AAED,kBAAe,YAAY,CAAC"}
@@ -0,0 +1,13 @@
1
+ import { HttpMethod, ContentType } from '@fc3/http';
2
+ import BaseEndpoint from './base';
3
+ import HistoryResultSerializer from './../serializer/history';
4
+ type HistoryInput = {};
5
+ type HistoryOutput = string[];
6
+ declare class HistoryEndpoint extends BaseEndpoint<HistoryInput, HistoryOutput> {
7
+ path: string;
8
+ method: HttpMethod;
9
+ content_types: ContentType[];
10
+ protected process(): Promise<HistoryOutput>;
11
+ protected getHtmlResultSerializer(history: HistoryOutput): Promise<HistoryResultSerializer>;
12
+ }
13
+ export default HistoryEndpoint;
@@ -0,0 +1,61 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const http_1 = require("@fc3/http");
7
+ const errors_1 = require("@fc3/errors");
8
+ const base_1 = __importDefault(require("./base.js"));
9
+ const load_page_1 = __importDefault(require("./../operation/load-page.js"));
10
+ const load_account_1 = __importDefault(require("./../operation/load-account.js"));
11
+ const history_1 = __importDefault(require("./../serializer/history.js"));
12
+ class HistoryEndpoint extends base_1.default {
13
+ constructor() {
14
+ super(...arguments);
15
+ this.path = '/history';
16
+ this.method = http_1.HttpMethod.GET;
17
+ this.content_types = [
18
+ http_1.ContentType.HTML
19
+ ];
20
+ }
21
+ async process() {
22
+ const execution_context = this.getExecutionContext();
23
+ const operation = new load_account_1.default(execution_context);
24
+ const account = await operation.perform();
25
+ if (account === null) {
26
+ throw new errors_1.UnauthorizedError();
27
+ }
28
+ return account.settings.history;
29
+ }
30
+ async getHtmlResultSerializer(history) {
31
+ const session = this.getSession();
32
+ const path = '/history';
33
+ const referrer_url = this.getReferrerUrl();
34
+ const execution_context = this.getExecutionContext();
35
+ const { roles } = this.getConfig();
36
+ const index = this.getNumericParameter('index', 0);
37
+ const pages = [];
38
+ let history_index = 0;
39
+ while (history_index < history.length) {
40
+ const history_item = history[history_index++];
41
+ const operation = new load_page_1.default(history_item, execution_context);
42
+ try {
43
+ const page = await operation.perform();
44
+ pages.push(page);
45
+ }
46
+ catch (error) {
47
+ if (!(0, errors_1.errorMatches)(error, errors_1.NotFoundError)) {
48
+ throw error;
49
+ }
50
+ }
51
+ }
52
+ const metadata = {
53
+ pages,
54
+ roles,
55
+ index
56
+ };
57
+ return new history_1.default(history, metadata, path, referrer_url, session);
58
+ }
59
+ }
60
+ exports.default = HistoryEndpoint;
61
+ //# sourceMappingURL=history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/server/endpoint/history.ts"],"names":[],"mappings":";;;;;AAAA,oCAAkD;AAClD,wCAA2E;AAE3E,gEAAgD;AAChD,2EAA2D;AAE3D,iFAAiE;AACjE,wEAAgE;AAKhE,MAAM,eAAgB,SAAQ,cAAyC;IAAvE;;QACQ,SAAI,GAAG,UAAU,CAAC;QAClB,WAAM,GAAG,iBAAU,CAAC,GAAG,CAAC;QACxB,kBAAa,GAAG;YACtB,kBAAW,CAAC,IAAI;SAChB,CAAC;IAyDH,CAAC;IAvDU,KAAK,CAAC,OAAO;QACtB,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,IAAI,sBAAoB,CAAC,iBAAiB,CAAC,CAAC;QAC9D,MAAM,OAAO,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAE1C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,0BAAiB,EAAE,CAAC;QAC/B,CAAC;QAED,OAAO,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAC;IACjC,CAAC;IAES,KAAK,CAAC,uBAAuB,CACtC,OAAsB;QAEtB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,UAAU,CAAC;QACxB,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAC3C,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrD,MAAM,EAAC,KAAK,EAAC,GAAG,IAAI,CAAC,SAAS,EAAE,CAAC;QACjC,MAAM,KAAK,GAAG,IAAI,CAAC,mBAAmB,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QAEnD,MAAM,KAAK,GAAW,EAAE,CAAC;QAEzB,IAAI,aAAa,GAAG,CAAC,CAAC;QAEtB,OAAO,aAAa,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC;YACvC,MAAM,YAAY,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,CAAC;YAC9C,MAAM,SAAS,GAAG,IAAI,mBAAiB,CAAC,YAAY,EAAE,iBAAiB,CAAC,CAAC;YAEzE,IAAI,CAAC;gBACJ,MAAM,IAAI,GAAG,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;gBAEvC,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;YAClB,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBAChB,IAAI,CAAC,IAAA,qBAAY,EAAC,KAAK,EAAE,sBAAa,CAAC,EAAE,CAAC;oBACzC,MAAM,KAAK,CAAC;gBACb,CAAC;YACF,CAAC;QACF,CAAC;QAED,MAAM,QAAQ,GAAG;YAChB,KAAK;YACL,KAAK;YACL,KAAK;SACL,CAAC;QAEF,OAAO,IAAI,iBAAuB,CACjC,OAAO,EACP,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,OAAO,CACP,CAAC;IACH,CAAC;CACD;AAED,kBAAe,eAAe,CAAC"}
@@ -1,5 +1,5 @@
1
- import { HttpMethod, ContentType } from './../../lib/http/index';
2
- import LoginResultSerializer from './../result-serializer/login';
1
+ import { HttpMethod, ContentType } from '@fc3/http';
2
+ import LoginResultSerializer from './../serializer/login';
3
3
  import BaseEndpoint from './base';
4
4
  type LoginInput = {};
5
5
  type LoginOutput = {
@@ -3,9 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const http_1 = require("./../../lib/http/index.js");
7
- const errors_1 = require("./../../lib/errors/index.js");
8
- const login_1 = __importDefault(require("./../result-serializer/login.js"));
6
+ const http_1 = require("@fc3/http");
7
+ const errors_1 = require("@fc3/errors");
8
+ const login_1 = __importDefault(require("./../serializer/login.js"));
9
9
  const base_1 = __importDefault(require("./base.js"));
10
10
  class LoginEndpoint extends base_1.default {
11
11
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../../src/server/endpoint/login.ts"],"names":[],"mappings":";;;;;AAAA,mCAAiD;AACjD,uCAAwC;AAExC,2EAAmE;AACnE,gEAAgD;AAQhD,MAAM,aAAc,SAAQ,cAAqC;IAAjE;;QACQ,SAAI,GAAG,QAAQ,CAAC;QAChB,WAAM,GAAG,iBAAU,CAAC,GAAG,CAAC;QACxB,kBAAa,GAAG;YACtB,kBAAW,CAAC,IAAI;SAChB,CAAC;IAyBH,CAAC;IAvBU,KAAK,CAAC,OAAO;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC;QAE3D,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,IAAI,qBAAY,CAAC;2BACC,UAAU;IACjC,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEnD,OAAO;YACN,WAAW;SACX,CAAC;IACH,CAAC;IAES,KAAK,CAAC,uBAAuB,CAAC,MAAmB;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,QAAQ,CAAC;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE3C,OAAO,IAAI,eAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;CACD;AAED,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"login.js","sourceRoot":"","sources":["../../../../src/server/endpoint/login.ts"],"names":[],"mappings":";;;;;AAAA,oCAAkD;AAClD,wCAAyC;AAEzC,oEAA4D;AAC5D,gEAAgD;AAQhD,MAAM,aAAc,SAAQ,cAAqC;IAAjE;;QACQ,SAAI,GAAG,QAAQ,CAAC;QAChB,WAAM,GAAG,iBAAU,CAAC,GAAG,CAAC;QACxB,kBAAa,GAAG;YACtB,kBAAW,CAAC,IAAI;SAChB,CAAC;IAyBH,CAAC;IAvBU,KAAK,CAAC,OAAO;QACtB,MAAM,UAAU,GAAG,IAAI,CAAC,iBAAiB,CAAC,QAAQ,CAAC,IAAI,GAAG,CAAC;QAE3D,IAAI,OAAO,UAAU,KAAK,QAAQ,EAAE,CAAC;YACpC,MAAM,IAAI,qBAAY,CAAC;2BACC,UAAU;IACjC,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,WAAW,GAAG,kBAAkB,CAAC,UAAU,CAAC,CAAC;QAEnD,OAAO;YACN,WAAW;SACX,CAAC;IACH,CAAC;IAES,KAAK,CAAC,uBAAuB,CAAC,MAAmB;QAC1D,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,QAAQ,CAAC;QACtB,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE3C,OAAO,IAAI,eAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;CACD;AAED,kBAAe,aAAa,CAAC"}
@@ -1,4 +1,4 @@
1
- import { HttpMethod, ContentType } from './../../lib/http/index';
1
+ import { HttpMethod, ContentType } from '@fc3/http';
2
2
  import BaseEndpoint from './base';
3
3
  type LogoutInput = {};
4
4
  type LogoutOutput = string;
@@ -3,9 +3,11 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const http_1 = require("./../../lib/http/index.js");
6
+ const http_1 = require("@fc3/http");
7
7
  const destroy_session_1 = __importDefault(require("./../operation/destroy-session.js"));
8
+ const color_1 = __importDefault(require("./../../enum/color.js"));
8
9
  const base_1 = __importDefault(require("./base.js"));
10
+ const create_toast_path_1 = __importDefault(require("./../utility/create-toast-path.js"));
9
11
  class LogoutEndpoint extends base_1.default {
10
12
  constructor() {
11
13
  super(...arguments);
@@ -22,8 +24,11 @@ class LogoutEndpoint extends base_1.default {
22
24
  const operation = new destroy_session_1.default(session.id, execution_context);
23
25
  await operation.perform();
24
26
  const response = this.getResponse();
25
- const url = '/?toast_message=logged+out&toast_color=%23FC3';
26
- response.setHeaderValue(http_1.HttpHeader.LOCATION, url);
27
+ const path = (0, create_toast_path_1.default)('/', {
28
+ message: 'logged out',
29
+ color: color_1.default.GREY
30
+ });
31
+ response.setHeaderValue(http_1.HttpHeader.LOCATION, path);
27
32
  response.setStatusCode(http_1.StatusCode.REDIRECT);
28
33
  return '';
29
34
  }
@@ -1 +1 @@
1
- {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../../../src/server/endpoint/logout.ts"],"names":[],"mappings":";;;;;AAAA,mCAAyE;AAEzE,uFAAuE;AACvE,gEAAgD;AAKhD,MAAM,cAAe,SAAQ,cAAuC;IAApE;;QACQ,SAAI,GAAG,SAAS,CAAC;QACjB,WAAM,GAAG,iBAAU,CAAC,GAAG,CAAC;QACxB,kBAAa,GAAG;YACtB,kBAAW,CAAC,IAAI;YAChB,kBAAW,CAAC,IAAI;SAChB,CAAC;IAqBH,CAAC;IAnBU,KAAK,CAAC,OAAO;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAErD,MAAM,SAAS,GAAG,IAAI,yBAAuB,CAC5C,OAAO,CAAC,EAAE,EACV,iBAAiB,CACjB,CAAC;QAEF,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,GAAG,GAAG,+CAA+C,CAAC;QAE5D,QAAQ,CAAC,cAAc,CAAC,iBAAU,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC;QAClD,QAAQ,CAAC,aAAa,CAAC,iBAAU,CAAC,QAAQ,CAAC,CAAC;QAE5C,OAAO,EAAE,CAAC;IACX,CAAC;CACD;AAED,kBAAe,cAAc,CAAC"}
1
+ {"version":3,"file":"logout.js","sourceRoot":"","sources":["../../../../src/server/endpoint/logout.ts"],"names":[],"mappings":";;;;;AAAA,oCAA0E;AAE1E,uFAAuE;AACvE,uDAA+B;AAC/B,gEAAgD;AAChD,yFAA+D;AAK/D,MAAM,cAAe,SAAQ,cAAuC;IAApE;;QACQ,SAAI,GAAG,SAAS,CAAC;QACjB,WAAM,GAAG,iBAAU,CAAC,GAAG,CAAC;QACxB,kBAAa,GAAG;YACtB,kBAAW,CAAC,IAAI;YAChB,kBAAW,CAAC,IAAI;SAChB,CAAC;IAwBH,CAAC;IAtBU,KAAK,CAAC,OAAO;QACtB,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QAErD,MAAM,SAAS,GAAG,IAAI,yBAAuB,CAC5C,OAAO,CAAC,EAAE,EACV,iBAAiB,CACjB,CAAC;QAEF,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAE1B,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACpC,MAAM,IAAI,GAAG,IAAA,2BAAe,EAAC,GAAG,EAAE;YACjC,OAAO,EAAE,YAAY;YACrB,KAAK,EAAE,eAAK,CAAC,IAAI;SACjB,CAAC,CAAC;QAEH,QAAQ,CAAC,cAAc,CAAC,iBAAU,CAAC,QAAQ,EAAE,IAAI,CAAC,CAAC;QACnD,QAAQ,CAAC,aAAa,CAAC,iBAAU,CAAC,QAAQ,CAAC,CAAC;QAE5C,OAAO,EAAE,CAAC;IACX,CAAC;CACD;AAED,kBAAe,cAAc,CAAC"}
@@ -1,7 +1,7 @@
1
- import { HttpMethod, ContentType } from './../../lib/http/index';
1
+ import { HttpMethod, ContentType } from '@fc3/http';
2
2
  import BaseEndpoint from './base';
3
3
  import Month from './../../type/month';
4
- import MonthResultSerializer from './../result-serializer/month';
4
+ import MonthResultSerializer from './../serializer/month';
5
5
  declare class MonthEndpoint extends BaseEndpoint<unknown, Month> {
6
6
  path: string;
7
7
  method: HttpMethod;
@@ -3,9 +3,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
3
3
  return (mod && mod.__esModule) ? mod : { "default": mod };
4
4
  };
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
- const http_1 = require("./../../lib/http/index.js");
6
+ const http_1 = require("@fc3/http");
7
7
  const base_1 = __importDefault(require("./base.js"));
8
- const month_1 = __importDefault(require("./../result-serializer/month.js"));
8
+ const month_1 = __importDefault(require("./../serializer/month.js"));
9
9
  const validate_month_1 = __importDefault(require("./../utility/validate-month.js"));
10
10
  class MonthEndpoint extends base_1.default {
11
11
  constructor() {
@@ -1 +1 @@
1
- {"version":3,"file":"month.js","sourceRoot":"","sources":["../../../../src/server/endpoint/month.ts"],"names":[],"mappings":";;;;;AAAA,mCAAiD;AAEjD,gEAAgD;AAEhD,2EAAmE;AACnE,mFAA0D;AAE1D,MAAM,aAAc,SAAQ,cAA4B;IAAxD;;QACQ,SAAI,GAAG,aAAa,CAAC;QACrB,WAAM,GAAG,iBAAU,CAAC,GAAG,CAAC;QAExB,kBAAa,GAAG;YACtB,kBAAW,CAAC,IAAI;YAChB,kBAAW,CAAC,IAAI;SAChB,CAAC;IAkBH,CAAC;IAhBU,KAAK,CAAC,OAAO;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAEzC,OAAO,IAAA,wBAAa,EAAC;YACpB,GAAG;SACH,CAAC,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,uBAAuB,CAAC,MAAa;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE3C,OAAO,IAAI,eAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;CACD;AAED,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"month.js","sourceRoot":"","sources":["../../../../src/server/endpoint/month.ts"],"names":[],"mappings":";;;;;AAAA,oCAAkD;AAElD,gEAAgD;AAEhD,oEAA4D;AAC5D,mFAA0D;AAE1D,MAAM,aAAc,SAAQ,cAA4B;IAAxD;;QACQ,SAAI,GAAG,aAAa,CAAC;QACrB,WAAM,GAAG,iBAAU,CAAC,GAAG,CAAC;QAExB,kBAAa,GAAG;YACtB,kBAAW,CAAC,IAAI;YAChB,kBAAW,CAAC,IAAI;SAChB,CAAC;IAkBH,CAAC;IAhBU,KAAK,CAAC,OAAO;QACtB,MAAM,GAAG,GAAG,IAAI,CAAC,gBAAgB,CAAC,KAAK,CAAC,CAAC;QAEzC,OAAO,IAAA,wBAAa,EAAC;YACpB,GAAG;SACH,CAAC,CAAC;IACJ,CAAC;IAES,KAAK,CAAC,uBAAuB,CAAC,MAAa;QACpD,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,OAAO,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QAClC,MAAM,IAAI,GAAG,OAAO,CAAC,OAAO,EAAE,CAAC;QAC/B,MAAM,YAAY,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAE3C,OAAO,IAAI,eAAqB,CAAC,MAAM,EAAE,IAAI,EAAE,YAAY,EAAE,OAAO,CAAC,CAAC;IACvE,CAAC;CACD;AAED,kBAAe,aAAa,CAAC"}
@@ -0,0 +1,14 @@
1
+ import { HttpMethod, ContentType } from '@fc3/http';
2
+ import BaseEndpoint from './../base';
3
+ type CreatePlaylistInput = {
4
+ readonly name: string;
5
+ };
6
+ type CreatePlaylistOutput = string;
7
+ declare class CreatePlaylistEndpoint extends BaseEndpoint<CreatePlaylistInput, CreatePlaylistOutput> {
8
+ path: string;
9
+ method: HttpMethod;
10
+ content_types: ContentType[];
11
+ protected authorize(): Promise<void>;
12
+ protected process(): Promise<CreatePlaylistOutput>;
13
+ }
14
+ export default CreatePlaylistEndpoint;
@@ -0,0 +1,38 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const http_1 = require("@fc3/http");
7
+ const errors_1 = require("@fc3/errors");
8
+ const base_1 = __importDefault(require("./../base.js"));
9
+ const create_playlist_1 = __importDefault(require("./../../operation/create-playlist.js"));
10
+ const create_slug_1 = __importDefault(require("./../../utility/create-slug.js"));
11
+ class CreatePlaylistEndpoint extends base_1.default {
12
+ constructor() {
13
+ super(...arguments);
14
+ this.path = '/playlists';
15
+ this.method = http_1.HttpMethod.POST;
16
+ this.content_types = [http_1.ContentType.JSON, http_1.ContentType.HTML];
17
+ }
18
+ async authorize() {
19
+ this.verifyLoggedIn();
20
+ }
21
+ async process() {
22
+ const { name } = this.getRequestBody();
23
+ if (typeof name !== 'string' || name.trim() === '') {
24
+ throw new errors_1.InvalidError(`Invalid playlist name: ${name}`);
25
+ }
26
+ const execution_context = this.getExecutionContext();
27
+ const operation = new create_playlist_1.default(name, execution_context);
28
+ await operation.perform();
29
+ const slug = (0, create_slug_1.default)(name);
30
+ const redirect_url = `/playlists/${slug}`;
31
+ const response = this.getResponse();
32
+ response.setHeaderValue(http_1.HttpHeader.LOCATION, redirect_url);
33
+ response.setStatusCode(http_1.StatusCode.REDIRECT);
34
+ return '';
35
+ }
36
+ }
37
+ exports.default = CreatePlaylistEndpoint;
38
+ //# sourceMappingURL=create.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../../src/server/endpoint/playlist/create.ts"],"names":[],"mappings":";;;;;AAAA,oCAA0E;AAC1E,wCAAyC;AAEzC,gEAAgD;AAChD,uFAAuE;AACvE,6EAAoD;AAQpD,MAAM,sBAAuB,SAAQ,cAAuD;IAA5F;;QACQ,SAAI,GAAG,YAAY,CAAC;QACpB,WAAM,GAAG,iBAAU,CAAC,IAAI,CAAC;QACzB,kBAAa,GAAG,CAAC,kBAAW,CAAC,IAAI,EAAE,kBAAW,CAAC,IAAI,CAAC,CAAC;IA2B7D,CAAC;IAzBU,KAAK,CAAC,SAAS;QACxB,IAAI,CAAC,cAAc,EAAE,CAAC;IACvB,CAAC;IAES,KAAK,CAAC,OAAO;QACtB,MAAM,EAAC,IAAI,EAAC,GAAG,IAAI,CAAC,cAAc,EAAE,CAAC;QAErC,IAAI,OAAO,IAAI,KAAK,QAAQ,IAAI,IAAI,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC;YACpD,MAAM,IAAI,qBAAY,CAAC,0BAA0B,IAAI,EAAE,CAAC,CAAC;QAC1D,CAAC;QAED,MAAM,iBAAiB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;QACrD,MAAM,SAAS,GAAG,IAAI,yBAAuB,CAAC,IAAI,EAAE,iBAAiB,CAAC,CAAC;QAEvE,MAAM,SAAS,CAAC,OAAO,EAAE,CAAC;QAE1B,MAAM,IAAI,GAAG,IAAA,qBAAU,EAAC,IAAI,CAAC,CAAC;QAC9B,MAAM,YAAY,GAAG,cAAc,IAAI,EAAE,CAAC;QAC1C,MAAM,QAAQ,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QAEpC,QAAQ,CAAC,cAAc,CAAC,iBAAU,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAC3D,QAAQ,CAAC,aAAa,CAAC,iBAAU,CAAC,QAAQ,CAAC,CAAC;QAE5C,OAAO,EAAE,CAAC;IACX,CAAC;CACD;AAED,kBAAe,sBAAsB,CAAC"}
@@ -0,0 +1,17 @@
1
+ import { HttpMethod, ContentType } from '@fc3/http';
2
+ import BaseEndpoint from './../base';
3
+ import Playlist from './../../../type/playlist';
4
+ import PlaylistResultSerializer from './../../serializer/playlist';
5
+ type GetPlaylistInput = {};
6
+ type GetPlaylistOutput = Playlist;
7
+ declare class GetPlaylistEndpoint extends BaseEndpoint<GetPlaylistInput, GetPlaylistOutput> {
8
+ path: string;
9
+ method: HttpMethod;
10
+ content_types: ContentType[];
11
+ private account;
12
+ protected process(): Promise<GetPlaylistOutput>;
13
+ protected getHtmlResultSerializer(playlist: GetPlaylistOutput): Promise<PlaylistResultSerializer>;
14
+ private loadEntries;
15
+ private loadAccount;
16
+ }
17
+ export default GetPlaylistEndpoint;
@@ -0,0 +1,106 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ const http_1 = require("@fc3/http");
7
+ const errors_1 = require("@fc3/errors");
8
+ const base_1 = __importDefault(require("./../base.js"));
9
+ const load_account_1 = __importDefault(require("./../../operation/load-account.js"));
10
+ const create_slug_1 = __importDefault(require("./../../utility/create-slug.js"));
11
+ const playlist_1 = __importDefault(require("./../../serializer/playlist.js"));
12
+ const load_page_1 = __importDefault(require("./../../operation/load-page.js"));
13
+ const load_playlists_for_account_1 = __importDefault(require("./../../operation/load-playlists-for-account.js"));
14
+ const get_block_at_index_path_1 = __importDefault(require("./../../utility/get-block-at-index-path.js"));
15
+ const block_type_1 = __importDefault(require("./../../../enum/block-type.js"));
16
+ class GetPlaylistEndpoint extends base_1.default {
17
+ constructor() {
18
+ super(...arguments);
19
+ this.path = '/playlists/:slug';
20
+ this.method = http_1.HttpMethod.GET;
21
+ this.content_types = [http_1.ContentType.HTML];
22
+ }
23
+ async process() {
24
+ this.verifyLoggedIn();
25
+ const slug = this.getPathParameter('slug');
26
+ const execution_context = this.getExecutionContext();
27
+ const account = await this.loadAccount();
28
+ const operation = new load_playlists_for_account_1.default(account, execution_context);
29
+ const playlists = await operation.perform();
30
+ const playlist = playlists.find((possible_playlist) => {
31
+ const { name } = possible_playlist;
32
+ const possible_slug = (0, create_slug_1.default)(name);
33
+ return possible_slug === slug;
34
+ });
35
+ if (!playlist) {
36
+ throw new errors_1.NotFoundError(`Playlist not found: ${slug}`);
37
+ }
38
+ return playlist;
39
+ }
40
+ async getHtmlResultSerializer(playlist) {
41
+ const session = this.getSession();
42
+ const referrer_url = this.getReferrerUrl();
43
+ const slug = (0, create_slug_1.default)(playlist.name);
44
+ const path = `/playlists/${slug}`;
45
+ const { roles } = this.getConfig();
46
+ const account = await this.loadAccount();
47
+ const entries = await this.loadEntries(playlist, roles, referrer_url, account);
48
+ const metadata = {
49
+ entries,
50
+ roles,
51
+ account
52
+ };
53
+ return new playlist_1.default(playlist, metadata, path, referrer_url, session);
54
+ }
55
+ async loadEntries(playlist, roles, referrer_url, account) {
56
+ const execution_context = this.getExecutionContext();
57
+ const hydrated_entries = [];
58
+ let index = 0;
59
+ while (index < playlist.entries.length) {
60
+ const entry = playlist.entries[index++];
61
+ const { path, index_path } = entry;
62
+ const load_page = new load_page_1.default(path, execution_context);
63
+ const page = await load_page.perform();
64
+ const block = (0, get_block_at_index_path_1.default)(page, index_path);
65
+ const { block_type } = block;
66
+ if (block_type !== block_type_1.default.AUDIO) {
67
+ throw new errors_1.InvariantViolation(`
68
+ Playlist entry at ${path}?index_path=${index_path}
69
+ is not an audio block
70
+ `);
71
+ }
72
+ const audio_block = block;
73
+ const metadata = {
74
+ page_path: path,
75
+ index_path,
76
+ editing: false,
77
+ referrer_url,
78
+ target_index_path: null,
79
+ roles,
80
+ account,
81
+ creator_username: 'system'
82
+ };
83
+ hydrated_entries.push({
84
+ block: audio_block,
85
+ metadata
86
+ });
87
+ }
88
+ return hydrated_entries;
89
+ }
90
+ async loadAccount() {
91
+ if (this.account === undefined) {
92
+ const execution_context = this.getExecutionContext();
93
+ const account_operation = new load_account_1.default(execution_context);
94
+ const account = await account_operation.perform();
95
+ if (account === null) {
96
+ throw new errors_1.InvariantViolation(`
97
+ Passed the sign-in check, but no account was found
98
+ `);
99
+ }
100
+ this.account = account;
101
+ }
102
+ return this.account;
103
+ }
104
+ }
105
+ exports.default = GetPlaylistEndpoint;
106
+ //# sourceMappingURL=get.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"get.js","sourceRoot":"","sources":["../../../../../src/server/endpoint/playlist/get.ts"],"names":[],"mappings":"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"}