@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
@@ -0,0 +1,429 @@
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 errors_1 = require("@fc3/errors");
7
+ const array_1 = require("@fc3/array");
8
+ const page_1 = __importDefault(require("./../page.js"));
9
+ const block_type_1 = __importDefault(require("./../../enum/block-type.js"));
10
+ const key_code_1 = __importDefault(require("./../enum/key-code.js"));
11
+ const get_meta_value_1 = __importDefault(require("./../utility/get-meta-value.js"));
12
+ const get_parent_path_1 = __importDefault(require("./../../common/utility/get-parent-path.js"));
13
+ const get_block_activation_href_1 = __importDefault(require("./../utility/get-block-activation-href.js"));
14
+ const media_ready_state_1 = __importDefault(require("./../enum/media-ready-state.js"));
15
+ function getAttributeForElement(element, attribute) {
16
+ const value = element.getAttribute(attribute);
17
+ if (value === null) {
18
+ throw new errors_1.InvariantViolation(`
19
+ Tried to read ${attribute} for element, but it was not set
20
+ `);
21
+ }
22
+ return value;
23
+ }
24
+ function getIndexPathForElement(element) {
25
+ return getAttributeForElement(element, 'data-index-path');
26
+ }
27
+ class CursorPage extends page_1.default {
28
+ constructor() {
29
+ super();
30
+ this.logged_in = false;
31
+ this.queued_media = null;
32
+ this.ready_media = [];
33
+ }
34
+ initView() {
35
+ this.focusCurrentBlockElement();
36
+ const meta_value = (0, get_meta_value_1.default)('logged_in');
37
+ this.logged_in = meta_value === 'true';
38
+ }
39
+ initEvents() {
40
+ super.initEvents();
41
+ document.addEventListener('canplay', (event) => {
42
+ this.handleMediaCanPlay(event);
43
+ }, true);
44
+ document.addEventListener('ended', (event) => {
45
+ this.handleMediaPlaybackEnded(event);
46
+ }, true);
47
+ }
48
+ focusCurrentBlockElement() {
49
+ const element = this.getCurrentBlockElement();
50
+ if (element === null) {
51
+ return;
52
+ }
53
+ this.focusElement(element);
54
+ }
55
+ handleKey(key_code) {
56
+ switch (key_code) {
57
+ case key_code_1.default.ENTER:
58
+ case key_code_1.default.O:
59
+ return this.activateBlock();
60
+ case key_code_1.default.G:
61
+ return this.performPageJump();
62
+ case key_code_1.default.J:
63
+ return this.selectNextBlock();
64
+ case key_code_1.default.K:
65
+ return this.selectPreviousBlock();
66
+ case key_code_1.default.U:
67
+ return this.navigateToParentPage();
68
+ case key_code_1.default.D:
69
+ return this.deleteCurrentBlock();
70
+ case key_code_1.default.H:
71
+ return this.navigateToHistory();
72
+ case key_code_1.default.P:
73
+ return this.addBlockToPlaylist();
74
+ default:
75
+ return super.handleKey(key_code);
76
+ }
77
+ }
78
+ addBlockToPlaylist() {
79
+ if (!this.isLoggedIn()) {
80
+ return;
81
+ }
82
+ const block_element = this.getCurrentBlockElement();
83
+ if (block_element === null) {
84
+ return;
85
+ }
86
+ const block_id = block_element.id;
87
+ const link_id = `${block_id}-add-to-playlist`;
88
+ const link_element = document.getElementById(link_id);
89
+ if (link_element === null) {
90
+ throw new errors_1.InvariantViolation(`
91
+ Unable to find playlist link element for block: ${block_id}
92
+ `);
93
+ }
94
+ const href = link_element.getAttribute('href');
95
+ if (href === null) {
96
+ throw new errors_1.InvariantViolation(`
97
+ Unable to find playlist link href for block: ${block_id}
98
+ `);
99
+ }
100
+ window.location.href = href;
101
+ }
102
+ deleteCurrentBlock() {
103
+ if (!this.isLoggedIn()) {
104
+ return;
105
+ }
106
+ const block_element = this.getCurrentBlockElement();
107
+ if (block_element === null) {
108
+ return;
109
+ }
110
+ this.deleteBlockElement(block_element);
111
+ }
112
+ promoteCurrentBlock() {
113
+ if (!this.isLoggedIn()) {
114
+ return;
115
+ }
116
+ const block_element = this.getCurrentBlockElement();
117
+ if (block_element === null) {
118
+ return;
119
+ }
120
+ const block_id = block_element.id;
121
+ const form_id = `${block_id}-promote`;
122
+ const form_element = document.getElementById(form_id);
123
+ if (form_element === null) {
124
+ throw new errors_1.InvariantViolation(`
125
+ Unable to find promotion form element for block: ${block_id}
126
+ `);
127
+ }
128
+ form_element.submit();
129
+ }
130
+ demoteCurrentBlock() {
131
+ if (!this.isLoggedIn()) {
132
+ return;
133
+ }
134
+ const block_element = this.getCurrentBlockElement();
135
+ if (block_element === null) {
136
+ return;
137
+ }
138
+ const block_id = block_element.id;
139
+ const form_id = `${block_id}-demote`;
140
+ const form_element = document.getElementById(form_id);
141
+ if (form_element === null) {
142
+ throw new errors_1.InvariantViolation(`
143
+ Unable to find demotion form element for block: ${block_id}
144
+ `);
145
+ }
146
+ form_element.submit();
147
+ }
148
+ performPageJump() {
149
+ if (!this.shiftIsPressed()) {
150
+ return;
151
+ }
152
+ const previous_key_code = this.getPreviousKeyCode();
153
+ if (previous_key_code === key_code_1.default.ONE) {
154
+ this.jumpToPageTop();
155
+ }
156
+ else {
157
+ this.jumpToPageBottom();
158
+ }
159
+ }
160
+ jumpToPageTop() {
161
+ this.navigateToIndex(this.getFirstBlockIndex());
162
+ this.focusCurrentBlockElement();
163
+ }
164
+ jumpToPageBottom() {
165
+ this.navigateToIndex(this.getLastBlockIndex());
166
+ this.focusCurrentBlockElement();
167
+ }
168
+ navigateToParentPage() {
169
+ const parent_path = (0, get_parent_path_1.default)(window.location.pathname);
170
+ window.location.href = parent_path;
171
+ }
172
+ navigateToHistory() {
173
+ window.location.href = '/history';
174
+ }
175
+ navigateToIndex(index_path) {
176
+ if (index_path === null) {
177
+ return;
178
+ }
179
+ const block_elements = this.getBlockElements();
180
+ let found = false;
181
+ block_elements.forEach((block_element) => {
182
+ const sibling_path = getIndexPathForElement(block_element);
183
+ const is_match = sibling_path === index_path;
184
+ block_element.classList.toggle('selected', is_match);
185
+ if (is_match) {
186
+ found = true;
187
+ }
188
+ });
189
+ if (!found) {
190
+ throw new errors_1.InvariantViolation(`
191
+ Tried to navigate to element at index path ${index_path},
192
+ but matching element was not found
193
+ `);
194
+ }
195
+ const url = new URL(window.location.href);
196
+ url.searchParams.set('index_path', index_path);
197
+ window.history.replaceState({}, '', url);
198
+ }
199
+ selectPreviousBlock() {
200
+ if (this.shiftIsPressed()) {
201
+ this.promoteCurrentBlock();
202
+ }
203
+ else {
204
+ this.navigateToIndex(this.getPreviousBlockIndex());
205
+ this.focusCurrentBlockElement();
206
+ }
207
+ }
208
+ selectNextBlock() {
209
+ if (this.shiftIsPressed()) {
210
+ this.demoteCurrentBlock();
211
+ }
212
+ else {
213
+ this.navigateToIndex(this.getNextBlockIndex());
214
+ this.focusCurrentBlockElement();
215
+ }
216
+ }
217
+ getCurrentBlockIndex() {
218
+ const element = this.getCurrentBlockElement();
219
+ if (element === null) {
220
+ return '0';
221
+ }
222
+ return getIndexPathForElement(element);
223
+ }
224
+ getCurrentBlockNumericIndex() {
225
+ const index = this.getCurrentBlockIndex();
226
+ return parseInt(index);
227
+ }
228
+ getBlockElements() {
229
+ const elements = document.getElementsByClassName('block');
230
+ return Array.from(elements);
231
+ }
232
+ getCurrentBlockElement() {
233
+ const block_elements = this.getBlockElements();
234
+ const selected_element = block_elements.find((element) => {
235
+ return element.classList.contains('selected');
236
+ });
237
+ if (selected_element !== undefined) {
238
+ return selected_element;
239
+ }
240
+ const index_path = (() => {
241
+ const query_path = this.getQueryParameter('index_path');
242
+ if (query_path !== undefined) {
243
+ return query_path;
244
+ }
245
+ return this.getFirstBlockIndex();
246
+ })();
247
+ if (index_path === null) {
248
+ return null;
249
+ }
250
+ const element = block_elements.find((element) => {
251
+ const attribute = getIndexPathForElement(element);
252
+ return attribute === index_path;
253
+ });
254
+ return element || null;
255
+ }
256
+ getFirstBlockIndex() {
257
+ const blocks = this.getBlockElements();
258
+ const first_block = (0, array_1.getFirstValue)(blocks);
259
+ if (first_block === undefined) {
260
+ return null;
261
+ }
262
+ return getIndexPathForElement(first_block);
263
+ }
264
+ getLastBlockIndex() {
265
+ const blocks = this.getBlockElements();
266
+ const last_block = (0, array_1.getLastValue)(blocks);
267
+ if (last_block === undefined) {
268
+ return null;
269
+ }
270
+ return getIndexPathForElement(last_block);
271
+ }
272
+ getNextBlockIndex() {
273
+ const current_block = this.getCurrentBlockElement();
274
+ const blocks = this.getBlockElements();
275
+ const current_index = current_block ? blocks.indexOf(current_block) : -1;
276
+ const next_block = blocks[current_index + 1];
277
+ if (next_block === undefined) {
278
+ return null;
279
+ }
280
+ return getIndexPathForElement(next_block);
281
+ }
282
+ getPreviousBlockIndex() {
283
+ const current_block = this.getCurrentBlockElement();
284
+ const blocks = this.getBlockElements();
285
+ const current_index = current_block ? blocks.indexOf(current_block) : -1;
286
+ const previous_block = blocks[current_index - 1];
287
+ if (previous_block === undefined) {
288
+ return null;
289
+ }
290
+ return previous_block.getAttribute('data-index-path');
291
+ }
292
+ activateBlock() {
293
+ const block_element = this.getCurrentBlockElement();
294
+ if (block_element === null) {
295
+ return;
296
+ }
297
+ const attribute = block_element.getAttribute('data-block-type');
298
+ if (attribute === null) {
299
+ throw new errors_1.InvariantViolation(`
300
+ Tried to activate current block, but it did not have a block type
301
+ `);
302
+ }
303
+ const block_type = attribute;
304
+ const block_types = Object.values(block_type_1.default);
305
+ if (!block_types.includes(block_type)) {
306
+ throw new errors_1.InvariantViolation(`
307
+ Invalid block type: ${block_type}
308
+ `);
309
+ }
310
+ switch (block_type) {
311
+ case block_type_1.default.FOLDER:
312
+ return this.activateFolderBlock(block_element);
313
+ case block_type_1.default.TODO:
314
+ return this.activateTodoBlock(block_element);
315
+ case block_type_1.default.IMAGE:
316
+ return this.activateImageBlock(block_element);
317
+ case block_type_1.default.AUDIO:
318
+ return this.activateAudioBlock(block_element);
319
+ default:
320
+ return console.warn(`no-op activation for block of type ${block_type}`);
321
+ }
322
+ }
323
+ activateTodoBlock(block_element) {
324
+ const forms = block_element.getElementsByTagName('form');
325
+ const form = forms[0];
326
+ if (form === undefined) {
327
+ throw new errors_1.InvariantViolation(`
328
+ Tried to activate form for todo block, but it was not set
329
+ `);
330
+ }
331
+ form.submit();
332
+ }
333
+ activateFolderBlock(block_element) {
334
+ const href = (0, get_block_activation_href_1.default)(block_element);
335
+ window.location.href = href;
336
+ }
337
+ activateImageBlock(block_element) {
338
+ const href = (0, get_block_activation_href_1.default)(block_element);
339
+ window.location.href = href;
340
+ }
341
+ activateAudioBlock(block_element) {
342
+ const audio_element = block_element.querySelectorAll('audio')[0];
343
+ if (audio_element === undefined) {
344
+ throw new errors_1.InvariantViolation(`
345
+ Tried to read audio element for block, but it was not present
346
+ `);
347
+ }
348
+ this.enqueueMedia(audio_element);
349
+ }
350
+ enqueueMedia(element) {
351
+ this.pauseActiveMedia();
352
+ this.setQueuedMedia(element);
353
+ }
354
+ setQueuedMedia(element) {
355
+ this.queued_media = element;
356
+ if (element === null) {
357
+ return;
358
+ }
359
+ const media_block = element.closest('section.block');
360
+ if (media_block !== null) {
361
+ const index_path = getIndexPathForElement(media_block);
362
+ this.navigateToIndex(index_path);
363
+ this.focusCurrentBlockElement();
364
+ }
365
+ if (element.readyState >= media_ready_state_1.default.HAVE_CURRENT_DATA) {
366
+ element.currentTime = 0;
367
+ element.play();
368
+ return;
369
+ }
370
+ }
371
+ handleMediaCanPlay(event) {
372
+ const target = event.target;
373
+ if (!(target instanceof HTMLMediaElement)) {
374
+ return;
375
+ }
376
+ const media_target = target;
377
+ if (this.queued_media !== media_target) {
378
+ return;
379
+ }
380
+ if (this.ready_media.includes(media_target)) {
381
+ return;
382
+ }
383
+ this.ready_media.push(media_target);
384
+ media_target.currentTime = 0;
385
+ media_target.play();
386
+ }
387
+ handleMediaPlaybackEnded(event) {
388
+ const target = event.target;
389
+ if (!(target instanceof HTMLMediaElement)) {
390
+ return;
391
+ }
392
+ const media_target = target;
393
+ if (this.queued_media !== null && this.queued_media !== media_target) {
394
+ return;
395
+ }
396
+ this.setQueuedMedia(null);
397
+ media_target.currentTime = 0;
398
+ const media_elements = document.querySelectorAll('audio,video');
399
+ let index = 0;
400
+ while (index < media_elements.length) {
401
+ const element = media_elements[index++];
402
+ if (element === media_target) {
403
+ const next_element = media_elements[index];
404
+ if (next_element) {
405
+ return this.setQueuedMedia(next_element);
406
+ }
407
+ }
408
+ }
409
+ }
410
+ pauseActiveMedia() {
411
+ this.setQueuedMedia(null);
412
+ const elements = document.querySelectorAll('audio,video');
413
+ const media_elements = Array.from(elements);
414
+ media_elements.forEach((media_element) => {
415
+ if (media_element.paused || media_element.ended) {
416
+ return;
417
+ }
418
+ if (media_element.readyState < media_ready_state_1.default.HAVE_CURRENT_DATA) {
419
+ return;
420
+ }
421
+ media_element.pause();
422
+ });
423
+ }
424
+ isLoggedIn() {
425
+ return this.logged_in;
426
+ }
427
+ }
428
+ exports.default = CursorPage;
429
+ //# sourceMappingURL=cursor.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cursor.js","sourceRoot":"","sources":["../../../../src/client/page/cursor.ts"],"names":[],"mappings":"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"}
@@ -3,7 +3,7 @@ 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 errors_1 = require("./../../lib/errors/index.js");
6
+ const errors_1 = require("@fc3/errors");
7
7
  const key_code_1 = __importDefault(require("./../enum/key-code.js"));
8
8
  const page_1 = __importDefault(require("./../page.js"));
9
9
  class EditBlockPage extends page_1.default {
@@ -1 +1 @@
1
- {"version":3,"file":"edit-block.js","sourceRoot":"","sources":["../../../../src/client/page/edit-block.ts"],"names":[],"mappings":";;;;;AAAA,uCAA8C;AAE9C,oEAA2C;AAC3C,uDAA+B;AAE/B,MAAM,aAAc,SAAQ,cAAI;IACrB,UAAU;QACnB,KAAK,CAAC,UAAU,EAAE,CAAC;QAEnB,MAAM,cAAc,GAAG,QAAQ,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAE7C,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC9B,IAAI,IAAiC,CAAC;YACtC,IAAI,YAAY,GAAsB,QAAQ,CAAC;YAE/C,OAAO,YAAY,EAAE,CAAC;gBACrB,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC;gBAEvC,IAAI,YAAY,YAAY,eAAe,EAAE,CAAC;oBAC7C,IAAI,GAAG,YAAY,CAAC;oBACpB,MAAM;gBACP,CAAC;YACF,CAAC;YAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,2BAAkB,CAAC;;KAE5B,CAAC,CAAC;YACJ,CAAC;YAED,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAoB,EAAE,EAAE;gBAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC;gBAEjD,IAAI,QAAQ,KAAK,kBAAO,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAClD,KAAK,CAAC,cAAc,EAAE,CAAC;gBACxB,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;CACD;AAED,kBAAe,aAAa,CAAC"}
1
+ {"version":3,"file":"edit-block.js","sourceRoot":"","sources":["../../../../src/client/page/edit-block.ts"],"names":[],"mappings":";;;;;AAAA,wCAA+C;AAE/C,oEAA2C;AAC3C,uDAA+B;AAE/B,MAAM,aAAc,SAAQ,cAAI;IACrB,UAAU;QACnB,KAAK,CAAC,UAAU,EAAE,CAAC;QAEnB,MAAM,cAAc,GAAG,QAAQ,CAAC,oBAAoB,CAAC,UAAU,CAAC,CAAC;QACjE,MAAM,SAAS,GAAG,KAAK,CAAC,IAAI,CAAC,cAAc,CAAC,CAAC;QAE7C,SAAS,CAAC,OAAO,CAAC,CAAC,QAAQ,EAAE,EAAE;YAC9B,IAAI,IAAiC,CAAC;YACtC,IAAI,YAAY,GAAsB,QAAQ,CAAC;YAE/C,OAAO,YAAY,EAAE,CAAC;gBACrB,YAAY,GAAG,YAAY,CAAC,UAAU,CAAC;gBAEvC,IAAI,YAAY,YAAY,eAAe,EAAE,CAAC;oBAC7C,IAAI,GAAG,YAAY,CAAC;oBACpB,MAAM;gBACP,CAAC;YACF,CAAC;YAED,IAAI,IAAI,KAAK,SAAS,EAAE,CAAC;gBACxB,MAAM,IAAI,2BAAkB,CAAC;;KAE5B,CAAC,CAAC;YACJ,CAAC;YAED,QAAQ,CAAC,gBAAgB,CAAC,SAAS,EAAE,CAAC,KAAoB,EAAE,EAAE;gBAC7D,MAAM,QAAQ,GAAG,KAAK,CAAC,OAAO,IAAI,KAAK,CAAC,QAAQ,CAAC;gBAEjD,IAAI,QAAQ,KAAK,kBAAO,CAAC,KAAK,IAAI,KAAK,CAAC,QAAQ,EAAE,CAAC;oBAClD,KAAK,CAAC,cAAc,EAAE,CAAC;gBACxB,CAAC;YACF,CAAC,CAAC,CAAC;QACJ,CAAC,CAAC,CAAC;IACJ,CAAC;CACD;AAED,kBAAe,aAAa,CAAC"}
@@ -0,0 +1,16 @@
1
+ import Page from './../page';
2
+ import KeyCode from './../enum/key-code';
3
+ declare class HistoryPage extends Page {
4
+ protected handleKey(key_code: KeyCode): void;
5
+ private activateBlock;
6
+ protected selectPreviousBlock(): void;
7
+ protected selectNextBlock(): void;
8
+ private navigateToIndex;
9
+ private getPreviousBlockIndex;
10
+ private getNextBlockIndex;
11
+ private getCurrentIndex;
12
+ private focusCurrentBlockElement;
13
+ private getCurrentBlockElement;
14
+ private getBlockElements;
15
+ }
16
+ export default HistoryPage;
@@ -0,0 +1,126 @@
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 errors_1 = require("@fc3/errors");
7
+ const page_1 = __importDefault(require("./../page.js"));
8
+ const key_code_1 = __importDefault(require("./../enum/key-code.js"));
9
+ const block_type_1 = __importDefault(require("./../../enum/block-type.js"));
10
+ const get_block_activation_href_1 = __importDefault(require("./../utility/get-block-activation-href.js"));
11
+ class HistoryPage extends page_1.default {
12
+ handleKey(key_code) {
13
+ switch (key_code) {
14
+ case key_code_1.default.ENTER:
15
+ case key_code_1.default.O:
16
+ return this.activateBlock();
17
+ case key_code_1.default.J:
18
+ return this.selectNextBlock();
19
+ case key_code_1.default.K:
20
+ return this.selectPreviousBlock();
21
+ default:
22
+ return super.handleKey(key_code);
23
+ }
24
+ }
25
+ activateBlock() {
26
+ const block_element = this.getCurrentBlockElement();
27
+ if (block_element === null) {
28
+ return;
29
+ }
30
+ const attribute = block_element.getAttribute('data-block-type');
31
+ if (attribute === null) {
32
+ throw new errors_1.InvariantViolation(`
33
+ Tried to activate current block, but it did not have a block type
34
+ `);
35
+ }
36
+ const block_type = attribute;
37
+ const block_types = Object.values(block_type_1.default);
38
+ if (!block_types.includes(block_type)) {
39
+ throw new errors_1.InvariantViolation(`
40
+ Invalid block type: ${block_type}
41
+ `);
42
+ }
43
+ if (block_type !== block_type_1.default.FOLDER) {
44
+ return console.warn(`no-op activation for block of type ${block_type}`);
45
+ }
46
+ const href = (0, get_block_activation_href_1.default)(block_element);
47
+ window.location.href = href;
48
+ }
49
+ selectPreviousBlock() {
50
+ this.navigateToIndex(this.getPreviousBlockIndex());
51
+ this.focusCurrentBlockElement();
52
+ }
53
+ selectNextBlock() {
54
+ this.navigateToIndex(this.getNextBlockIndex());
55
+ this.focusCurrentBlockElement();
56
+ }
57
+ navigateToIndex(index) {
58
+ if (index === null) {
59
+ return;
60
+ }
61
+ const block_elements = this.getBlockElements();
62
+ block_elements.forEach((block_element, block_index) => {
63
+ const is_match = block_index === index;
64
+ block_element.classList.toggle('selected', is_match);
65
+ });
66
+ const url = new URL(window.location.href);
67
+ url.searchParams.set('index', index.toString());
68
+ window.history.replaceState({}, '', url);
69
+ }
70
+ getPreviousBlockIndex() {
71
+ const block_elements = this.getBlockElements();
72
+ const current_index = this.getCurrentIndex();
73
+ const previous_block = block_elements[current_index - 1];
74
+ if (previous_block === undefined) {
75
+ return null;
76
+ }
77
+ return current_index - 1;
78
+ }
79
+ getNextBlockIndex() {
80
+ const block_elements = this.getBlockElements();
81
+ const current_index = this.getCurrentIndex();
82
+ const next_block = block_elements[current_index + 1];
83
+ if (next_block === undefined) {
84
+ return null;
85
+ }
86
+ return current_index + 1;
87
+ }
88
+ getCurrentIndex() {
89
+ const current_block = this.getCurrentBlockElement();
90
+ const blocks = this.getBlockElements();
91
+ const current_index = current_block ? blocks.indexOf(current_block) : -1;
92
+ return current_index;
93
+ }
94
+ focusCurrentBlockElement() {
95
+ const element = this.getCurrentBlockElement();
96
+ if (element === null) {
97
+ return;
98
+ }
99
+ this.focusElement(element);
100
+ }
101
+ getCurrentBlockElement() {
102
+ const block_elements = this.getBlockElements();
103
+ const selected_element = block_elements.find((element) => {
104
+ return element.classList.contains('selected');
105
+ });
106
+ if (selected_element !== undefined) {
107
+ return selected_element;
108
+ }
109
+ const index = (() => {
110
+ const parameter = this.getQueryParameter('index');
111
+ if (parameter === undefined) {
112
+ return 0;
113
+ }
114
+ const parsed_parameter = parseInt(parameter);
115
+ return parsed_parameter || 0;
116
+ })();
117
+ const element = block_elements[index];
118
+ return element || null;
119
+ }
120
+ getBlockElements() {
121
+ const elements = document.getElementsByClassName('block');
122
+ return Array.from(elements);
123
+ }
124
+ }
125
+ exports.default = HistoryPage;
126
+ //# sourceMappingURL=history.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"history.js","sourceRoot":"","sources":["../../../../src/client/page/history.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import Page from './../page';
2
+ declare class SelectBlockDestinationPage extends Page {
3
+ protected initEvents(): void;
4
+ }
5
+ export default SelectBlockDestinationPage;
@@ -0,0 +1,12 @@
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 page_1 = __importDefault(require("./../page.js"));
7
+ class SelectBlockDestinationPage extends page_1.default {
8
+ initEvents() {
9
+ }
10
+ }
11
+ exports.default = SelectBlockDestinationPage;
12
+ //# sourceMappingURL=select-block-destination.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"select-block-destination.js","sourceRoot":"","sources":["../../../../src/client/page/select-block-destination.ts"],"names":[],"mappings":";;;;;AAAA,uDAA+B;AAE/B,MAAM,0BAA2B,SAAQ,cAAI;IAClC,UAAU;IACpB,CAAC;CACD;AAED,kBAAe,0BAA0B,CAAC"}
@@ -3,7 +3,7 @@ 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 errors_1 = require("./../../lib/errors/index.js");
6
+ const errors_1 = require("@fc3/errors");
7
7
  const page_1 = __importDefault(require("./../page.js"));
8
8
  const key_code_1 = __importDefault(require("./../enum/key-code.js"));
9
9
  const block_type_1 = __importDefault(require("./../../enum/block-type.js"));
@@ -1 +1 @@
1
- {"version":3,"file":"select-block-type.js","sourceRoot":"","sources":["../../../../src/client/page/select-block-type.ts"],"names":[],"mappings":";;;;;AAAA,uCAA8C;AAE9C,uDAA+B;AAC/B,oEAA2C;AAC3C,iEAAwC;AAExC,MAAM,mBAAoB,SAAQ,cAAI;IAC3B,SAAS,CAAC,QAAiB;QACpC,QAAQ,QAAQ,EAAE,CAAC;YAClB,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,KAAK,CAAC,CAAC;YAChD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,KAAK,CAAC,CAAC;YAChD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,MAAM,CAAC,CAAC;YACjD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,MAAM,CAAC,CAAC;YACjD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,YAAY,CAAC,CAAC;YAEvD;gBACC,OAAO,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAEO,iBAAiB,CAAC,UAAqB;QAC9C,MAAM,EAAE,GAAG,aAAa,UAAU,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAE5C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,2BAAkB,CAAC;oCACI,UAAU;;IAE1C,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAE1C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,2BAAkB,CAAC;oCACI,UAAU;;IAE1C,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC7B,CAAC;CACD;AAED,kBAAe,mBAAmB,CAAC"}
1
+ {"version":3,"file":"select-block-type.js","sourceRoot":"","sources":["../../../../src/client/page/select-block-type.ts"],"names":[],"mappings":";;;;;AAAA,wCAA+C;AAE/C,uDAA+B;AAC/B,oEAA2C;AAC3C,iEAAwC;AAExC,MAAM,mBAAoB,SAAQ,cAAI;IAC3B,SAAS,CAAC,QAAiB;QACpC,QAAQ,QAAQ,EAAE,CAAC;YAClB,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,KAAK,CAAC,CAAC;YAChD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,KAAK,CAAC,CAAC;YAChD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,MAAM,CAAC,CAAC;YACjD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,MAAM,CAAC,CAAC;YACjD,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,IAAI,CAAC,CAAC;YAC/C,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,iBAAiB,CAAC,oBAAS,CAAC,YAAY,CAAC,CAAC;YAEvD;gBACC,OAAO,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAEO,iBAAiB,CAAC,UAAqB;QAC9C,MAAM,EAAE,GAAG,aAAa,UAAU,EAAE,CAAC;QACrC,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,EAAE,CAAC,CAAC;QAE5C,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,2BAAkB,CAAC;oCACI,UAAU;;IAE1C,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,IAAI,GAAG,OAAO,CAAC,YAAY,CAAC,MAAM,CAAC,CAAC;QAE1C,IAAI,IAAI,KAAK,IAAI,EAAE,CAAC;YACnB,MAAM,IAAI,2BAAkB,CAAC;oCACI,UAAU;;IAE1C,CAAC,CAAC;QACJ,CAAC;QAED,MAAM,CAAC,QAAQ,CAAC,IAAI,GAAG,IAAI,CAAC;IAC7B,CAAC;CACD;AAED,kBAAe,mBAAmB,CAAC"}