@fc3/mmcadi 0.1.20 → 0.1.23

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 (373) hide show
  1. package/bin/lint +12 -0
  2. package/bin/test-one +32 -0
  3. package/dist/.last-compile-time +1 -1
  4. package/dist/.last-publish-time +1 -1
  5. package/dist/client.js +264 -47
  6. package/dist/src/client/enum/page-type.d.ts +5 -1
  7. package/dist/src/client/enum/page-type.js +4 -0
  8. package/dist/src/client/enum/page-type.js.map +1 -1
  9. package/dist/src/client/factory/page.js +9 -1
  10. package/dist/src/client/factory/page.js.map +1 -1
  11. package/dist/src/client/page/confirm-hide-block.d.ts +7 -0
  12. package/dist/src/client/page/confirm-hide-block.js +28 -0
  13. package/dist/src/client/page/confirm-hide-block.js.map +1 -0
  14. package/dist/src/client/page/history.d.ts +16 -0
  15. package/dist/src/client/page/history.js +126 -0
  16. package/dist/src/client/page/history.js.map +1 -0
  17. package/dist/src/client/page/role.d.ts +5 -0
  18. package/dist/src/client/page/role.js +12 -0
  19. package/dist/src/client/page/role.js.map +1 -0
  20. package/dist/src/client/page/select-block-destination.d.ts +5 -0
  21. package/dist/src/client/page/select-block-destination.js +12 -0
  22. package/dist/src/client/page/select-block-destination.js.map +1 -0
  23. package/dist/src/client/page/view-custom.d.ts +3 -1
  24. package/dist/src/client/page/view-custom.js +60 -26
  25. package/dist/src/client/page/view-custom.js.map +1 -1
  26. package/dist/src/client/utility/get-block-activation-href.d.ts +2 -0
  27. package/dist/src/client/utility/get-block-activation-href.js +25 -0
  28. package/dist/src/client/utility/get-block-activation-href.js.map +1 -0
  29. package/dist/src/common/builder/block/folder.d.ts +2 -1
  30. package/dist/src/common/builder/block/folder.js.map +1 -1
  31. package/dist/src/common/builder/block/header.d.ts +5 -1
  32. package/dist/src/common/builder/block/header.js +16 -2
  33. package/dist/src/common/builder/block/header.js.map +1 -1
  34. package/dist/src/common/builder/block/parameter.d.ts +3 -0
  35. package/dist/src/common/builder/block/parameter.js +19 -0
  36. package/dist/src/common/builder/block/parameter.js.map +1 -0
  37. package/dist/src/constant/role/creator.d.ts +3 -0
  38. package/dist/src/constant/role/creator.js +17 -0
  39. package/dist/src/constant/role/creator.js.map +1 -0
  40. package/dist/src/constant/role/public.d.ts +3 -0
  41. package/dist/src/constant/role/public.js +17 -0
  42. package/dist/src/constant/role/public.js.map +1 -0
  43. package/dist/src/constant/role/unknown.d.ts +3 -0
  44. package/dist/src/constant/role/unknown.js +17 -0
  45. package/dist/src/constant/role/unknown.js.map +1 -0
  46. package/dist/src/enum/action-type.d.ts +2 -0
  47. package/dist/src/enum/action-type.js +2 -0
  48. package/dist/src/enum/action-type.js.map +1 -1
  49. package/dist/src/enum/block-type.d.ts +2 -1
  50. package/dist/src/enum/block-type.js +1 -0
  51. package/dist/src/enum/block-type.js.map +1 -1
  52. package/dist/src/enum/default-role.d.ts +2 -1
  53. package/dist/src/enum/default-role.js +1 -0
  54. package/dist/src/enum/default-role.js.map +1 -1
  55. package/dist/src/enum/emoji.d.ts +2 -0
  56. package/dist/src/enum/emoji.js +2 -0
  57. package/dist/src/enum/emoji.js.map +1 -1
  58. package/dist/src/enum/tool-type.d.ts +1 -0
  59. package/dist/src/enum/tool-type.js +1 -0
  60. package/dist/src/enum/tool-type.js.map +1 -1
  61. package/dist/src/index.d.ts +2 -0
  62. package/dist/src/index.js +3 -1
  63. package/dist/src/index.js.map +1 -1
  64. package/dist/src/interface/route.d.ts +2 -1
  65. package/dist/src/lib/environment-mocker/index.d.ts +18 -0
  66. package/dist/src/lib/environment-mocker/index.js +40 -0
  67. package/dist/src/lib/environment-mocker/index.js.map +1 -0
  68. package/dist/src/lib/grammar/index.d.ts +3 -0
  69. package/dist/src/lib/grammar/index.js +7 -1
  70. package/dist/src/lib/grammar/index.js.map +1 -1
  71. package/dist/src/lib/grammar/utility/pluralize.d.ts +2 -0
  72. package/dist/src/lib/grammar/utility/pluralize.js +12 -0
  73. package/dist/src/lib/grammar/utility/pluralize.js.map +1 -0
  74. package/dist/src/lib/grammar/utility/singularize-or-pluralize.d.ts +2 -0
  75. package/dist/src/lib/grammar/utility/singularize-or-pluralize.js +12 -0
  76. package/dist/src/lib/grammar/utility/singularize-or-pluralize.js.map +1 -0
  77. package/dist/src/lib/grammar/utility/singularize.d.ts +2 -0
  78. package/dist/src/lib/grammar/utility/singularize.js +12 -0
  79. package/dist/src/lib/grammar/utility/singularize.js.map +1 -0
  80. package/dist/src/lib/log-capturer/index.d.ts +2 -0
  81. package/dist/src/lib/log-capturer/index.js +8 -0
  82. package/dist/src/lib/log-capturer/index.js.map +1 -0
  83. package/dist/src/lib/log-capturer/log-capturer.d.ts +19 -0
  84. package/dist/src/lib/log-capturer/log-capturer.js +39 -0
  85. package/dist/src/lib/log-capturer/log-capturer.js.map +1 -0
  86. package/dist/src/lib/server/http/endpoint.js +1 -1
  87. package/dist/src/lib/server/http/endpoint.js.map +1 -1
  88. package/dist/src/lib/string/create-slug.js +2 -1
  89. package/dist/src/lib/string/create-slug.js.map +1 -1
  90. package/dist/src/server/endpoint/abstract-page.d.ts +1 -1
  91. package/dist/src/server/endpoint/abstract-page.js +21 -3
  92. package/dist/src/server/endpoint/abstract-page.js.map +1 -1
  93. package/dist/src/server/endpoint/account/get.d.ts +14 -0
  94. package/dist/src/server/endpoint/account/get.js +34 -0
  95. package/dist/src/server/endpoint/account/get.js.map +1 -0
  96. package/dist/src/server/endpoint/action/create.d.ts +3 -1
  97. package/dist/src/server/endpoint/action/create.js +63 -52
  98. package/dist/src/server/endpoint/action/create.js.map +1 -1
  99. package/dist/src/server/endpoint/action/get.d.ts +3 -1
  100. package/dist/src/server/endpoint/action/get.js +47 -1
  101. package/dist/src/server/endpoint/action/get.js.map +1 -1
  102. package/dist/src/server/endpoint/history.d.ts +13 -0
  103. package/dist/src/server/endpoint/history.js +61 -0
  104. package/dist/src/server/endpoint/history.js.map +1 -0
  105. package/dist/src/server/endpoint/login.d.ts +1 -1
  106. package/dist/src/server/endpoint/login.js +1 -1
  107. package/dist/src/server/endpoint/login.js.map +1 -1
  108. package/dist/src/server/endpoint/logout.js +7 -2
  109. package/dist/src/server/endpoint/logout.js.map +1 -1
  110. package/dist/src/server/endpoint/month.d.ts +1 -1
  111. package/dist/src/server/endpoint/month.js +1 -1
  112. package/dist/src/server/endpoint/month.js.map +1 -1
  113. package/dist/src/server/endpoint/role/get.d.ts +14 -0
  114. package/dist/src/server/endpoint/role/get.js +43 -0
  115. package/dist/src/server/endpoint/role/get.js.map +1 -0
  116. package/dist/src/server/endpoint/settings/get.d.ts +1 -1
  117. package/dist/src/server/endpoint/settings/get.js +1 -1
  118. package/dist/src/server/endpoint/settings/get.js.map +1 -1
  119. package/dist/src/server/endpoint/week.d.ts +1 -1
  120. package/dist/src/server/endpoint/week.js +1 -1
  121. package/dist/src/server/endpoint/week.js.map +1 -1
  122. package/dist/src/server/endpoint/year.d.ts +1 -1
  123. package/dist/src/server/endpoint/year.js +1 -1
  124. package/dist/src/server/endpoint/year.js.map +1 -1
  125. package/dist/src/server/enum/custom-page-type.d.ts +3 -1
  126. package/dist/src/server/enum/custom-page-type.js +2 -0
  127. package/dist/src/server/enum/custom-page-type.js.map +1 -1
  128. package/dist/src/server/factory/block-result-serializer.d.ts +1 -1
  129. package/dist/src/server/factory/block-result-serializer.js +16 -13
  130. package/dist/src/server/factory/block-result-serializer.js.map +1 -1
  131. package/dist/src/server/factory/block-serializer.d.ts +15 -0
  132. package/dist/src/server/factory/block-serializer.js +80 -0
  133. package/dist/src/server/factory/block-serializer.js.map +1 -0
  134. package/dist/src/server/middleware/error-handler.js +21 -6
  135. package/dist/src/server/middleware/error-handler.js.map +1 -1
  136. package/dist/src/server/operation/add-block.js +1 -0
  137. package/dist/src/server/operation/add-block.js.map +1 -1
  138. package/dist/src/server/operation/delete-block.d.ts +5 -3
  139. package/dist/src/server/operation/delete-block.js +30 -9
  140. package/dist/src/server/operation/delete-block.js.map +1 -1
  141. package/dist/src/server/operation/destroy-session.js +13 -1
  142. package/dist/src/server/operation/destroy-session.js.map +1 -1
  143. package/dist/src/server/operation/find-account.d.ts +1 -0
  144. package/dist/src/server/operation/find-account.js +12 -3
  145. package/dist/src/server/operation/find-account.js.map +1 -1
  146. package/dist/src/server/operation/hide-block.d.ts +14 -0
  147. package/dist/src/server/operation/hide-block.js +55 -0
  148. package/dist/src/server/operation/hide-block.js.map +1 -0
  149. package/dist/src/server/operation/load-account.js +5 -8
  150. package/dist/src/server/operation/load-account.js.map +1 -1
  151. package/dist/src/server/operation/load-page.d.ts +7 -4
  152. package/dist/src/server/operation/load-page.js +251 -74
  153. package/dist/src/server/operation/load-page.js.map +1 -1
  154. package/dist/src/server/operation/move-block.d.ts +16 -0
  155. package/dist/src/server/operation/move-block.js +101 -0
  156. package/dist/src/server/operation/move-block.js.map +1 -0
  157. package/dist/src/server/operation/store-file.d.ts +14 -0
  158. package/dist/src/server/operation/store-file.js +83 -0
  159. package/dist/src/server/operation/store-file.js.map +1 -0
  160. package/dist/src/server/operation/store-files.d.ts +15 -0
  161. package/dist/src/server/operation/store-files.js +84 -0
  162. package/dist/src/server/operation/store-files.js.map +1 -0
  163. package/dist/src/server/operation/update-block.js +4 -4
  164. package/dist/src/server/operation/update-block.js.map +1 -1
  165. package/dist/src/server/result-serializer/account.d.ts +9 -0
  166. package/dist/src/server/result-serializer/account.js +26 -0
  167. package/dist/src/server/result-serializer/account.js.map +1 -0
  168. package/dist/src/server/result-serializer/action.d.ts +2 -1
  169. package/dist/src/server/result-serializer/action.js +27 -18
  170. package/dist/src/server/result-serializer/action.js.map +1 -1
  171. package/dist/src/server/result-serializer/base.js +22 -4
  172. package/dist/src/server/result-serializer/base.js.map +1 -1
  173. package/dist/src/server/result-serializer/block/folder.js +25 -9
  174. package/dist/src/server/result-serializer/block/folder.js.map +1 -1
  175. package/dist/src/server/result-serializer/block/header.js +6 -2
  176. package/dist/src/server/result-serializer/block/header.js.map +1 -1
  177. package/dist/src/server/result-serializer/block/image.js +6 -3
  178. package/dist/src/server/result-serializer/block/image.js.map +1 -1
  179. package/dist/src/server/result-serializer/block/parameter.d.ts +6 -0
  180. package/dist/src/server/result-serializer/block/parameter.js +13 -0
  181. package/dist/src/server/result-serializer/block/parameter.js.map +1 -0
  182. package/dist/src/server/result-serializer/block.d.ts +2 -1
  183. package/dist/src/server/result-serializer/block.js +32 -13
  184. package/dist/src/server/result-serializer/block.js.map +1 -1
  185. package/dist/src/server/result-serializer/page.d.ts +2 -1
  186. package/dist/src/server/result-serializer/page.js +4 -4
  187. package/dist/src/server/result-serializer/page.js.map +1 -1
  188. package/dist/src/server/result-serializer/role.d.ts +9 -0
  189. package/dist/src/server/result-serializer/role.js +26 -0
  190. package/dist/src/server/result-serializer/role.js.map +1 -0
  191. package/dist/src/server/serializer/action.d.ts +40 -0
  192. package/dist/src/server/serializer/action.js +940 -0
  193. package/dist/src/server/serializer/action.js.map +1 -0
  194. package/dist/src/server/serializer/base.d.ts +31 -0
  195. package/dist/src/server/serializer/base.js +1222 -0
  196. package/dist/src/server/serializer/base.js.map +1 -0
  197. package/dist/src/server/serializer/block/audio.d.ts +6 -0
  198. package/dist/src/server/serializer/block/audio.js +26 -0
  199. package/dist/src/server/serializer/block/audio.js.map +1 -0
  200. package/dist/src/server/serializer/block/background.d.ts +6 -0
  201. package/dist/src/server/serializer/block/background.js +22 -0
  202. package/dist/src/server/serializer/block/background.js.map +1 -0
  203. package/dist/src/server/serializer/block/calendar.d.ts +7 -0
  204. package/dist/src/server/serializer/block/calendar.js +140 -0
  205. package/dist/src/server/serializer/block/calendar.js.map +1 -0
  206. package/dist/src/server/serializer/block/directory.d.ts +7 -0
  207. package/dist/src/server/serializer/block/directory.js +53 -0
  208. package/dist/src/server/serializer/block/directory.js.map +1 -0
  209. package/dist/src/server/serializer/block/ephemeral.d.ts +6 -0
  210. package/dist/src/server/serializer/block/ephemeral.js +16 -0
  211. package/dist/src/server/serializer/block/ephemeral.js.map +1 -0
  212. package/dist/src/server/serializer/block/folder.d.ts +14 -0
  213. package/dist/src/server/serializer/block/folder.js +145 -0
  214. package/dist/src/server/serializer/block/folder.js.map +1 -0
  215. package/dist/src/server/serializer/block/header.d.ts +6 -0
  216. package/dist/src/server/serializer/block/header.js +35 -0
  217. package/dist/src/server/serializer/block/header.js.map +1 -0
  218. package/dist/src/server/serializer/block/image.d.ts +6 -0
  219. package/dist/src/server/serializer/block/image.js +45 -0
  220. package/dist/src/server/serializer/block/image.js.map +1 -0
  221. package/dist/src/server/serializer/block/link.d.ts +6 -0
  222. package/dist/src/server/serializer/block/link.js +39 -0
  223. package/dist/src/server/serializer/block/link.js.map +1 -0
  224. package/dist/src/server/serializer/block/list.d.ts +13 -0
  225. package/dist/src/server/serializer/block/list.js +113 -0
  226. package/dist/src/server/serializer/block/list.js.map +1 -0
  227. package/dist/src/server/serializer/block/multi-column.d.ts +6 -0
  228. package/dist/src/server/serializer/block/multi-column.js +78 -0
  229. package/dist/src/server/serializer/block/multi-column.js.map +1 -0
  230. package/dist/src/server/serializer/block/note.d.ts +6 -0
  231. package/dist/src/server/serializer/block/note.js +40 -0
  232. package/dist/src/server/serializer/block/note.js.map +1 -0
  233. package/dist/src/server/serializer/block/parameter.d.ts +6 -0
  234. package/dist/src/server/serializer/block/parameter.js +13 -0
  235. package/dist/src/server/serializer/block/parameter.js.map +1 -0
  236. package/dist/src/server/serializer/block/todo.d.ts +6 -0
  237. package/dist/src/server/serializer/block/todo.js +76 -0
  238. package/dist/src/server/serializer/block/todo.js.map +1 -0
  239. package/dist/src/server/serializer/block/whitespace.d.ts +6 -0
  240. package/dist/src/server/serializer/block/whitespace.js +17 -0
  241. package/dist/src/server/serializer/block/whitespace.js.map +1 -0
  242. package/dist/src/server/serializer/block.d.ts +27 -0
  243. package/dist/src/server/serializer/block.js +226 -0
  244. package/dist/src/server/serializer/block.js.map +1 -0
  245. package/dist/src/server/serializer/common/time-place-options.d.ts +2 -0
  246. package/dist/src/server/serializer/common/time-place-options.js +34 -0
  247. package/dist/src/server/serializer/common/time-place-options.js.map +1 -0
  248. package/dist/src/server/serializer/history.d.ts +19 -0
  249. package/dist/src/server/serializer/history.js +77 -0
  250. package/dist/src/server/serializer/history.js.map +1 -0
  251. package/dist/src/server/serializer/login.d.ts +12 -0
  252. package/dist/src/server/serializer/login.js +54 -0
  253. package/dist/src/server/serializer/login.js.map +1 -0
  254. package/dist/src/server/serializer/month.d.ts +10 -0
  255. package/dist/src/server/serializer/month.js +160 -0
  256. package/dist/src/server/serializer/month.js.map +1 -0
  257. package/dist/src/server/serializer/page.d.ts +47 -0
  258. package/dist/src/server/serializer/page.js +454 -0
  259. package/dist/src/server/serializer/page.js.map +1 -0
  260. package/dist/src/server/serializer/settings.d.ts +9 -0
  261. package/dist/src/server/serializer/settings.js +80 -0
  262. package/dist/src/server/serializer/settings.js.map +1 -0
  263. package/dist/src/server/serializer/week.d.ts +10 -0
  264. package/dist/src/server/serializer/week.js +175 -0
  265. package/dist/src/server/serializer/week.js.map +1 -0
  266. package/dist/src/server/serializer/year.d.ts +10 -0
  267. package/dist/src/server/serializer/year.js +142 -0
  268. package/dist/src/server/serializer/year.js.map +1 -0
  269. package/dist/src/server/type/multipart-file.d.ts +7 -0
  270. package/dist/src/server/type/multipart-file.js +3 -0
  271. package/dist/src/server/type/multipart-file.js.map +1 -0
  272. package/dist/src/server/utility/extract-role.d.ts +3 -0
  273. package/dist/src/server/utility/extract-role.js +19 -0
  274. package/dist/src/server/utility/extract-role.js.map +1 -0
  275. package/dist/src/server/utility/get-custom-page-type-for-path.js +12 -0
  276. package/dist/src/server/utility/get-custom-page-type-for-path.js.map +1 -1
  277. package/dist/src/server/utility/get-emoji-for-tool-type.js +1 -0
  278. package/dist/src/server/utility/get-emoji-for-tool-type.js.map +1 -1
  279. package/dist/src/server/utility/get-key-for-role.d.ts +3 -0
  280. package/dist/src/server/utility/get-key-for-role.js +10 -0
  281. package/dist/src/server/utility/get-key-for-role.js.map +1 -0
  282. package/dist/src/server/utility/get-thumbnail-filename.d.ts +2 -0
  283. package/dist/src/server/utility/get-thumbnail-filename.js +10 -0
  284. package/dist/src/server/utility/get-thumbnail-filename.js.map +1 -0
  285. package/dist/src/server/utility/get-url-for-role.d.ts +3 -0
  286. package/dist/src/server/utility/get-url-for-role.js +13 -0
  287. package/dist/src/server/utility/get-url-for-role.js.map +1 -0
  288. package/dist/src/server/utility/role-matches.d.ts +3 -0
  289. package/dist/src/server/utility/role-matches.js +13 -0
  290. package/dist/src/server/utility/role-matches.js.map +1 -0
  291. package/dist/src/server/utility/satisfies-role.d.ts +3 -0
  292. package/dist/src/server/utility/satisfies-role.js +21 -0
  293. package/dist/src/server/utility/satisfies-role.js.map +1 -0
  294. package/dist/src/server.js +8 -8
  295. package/dist/src/server.js.map +1 -1
  296. package/dist/src/type/account-settings.d.ts +3 -2
  297. package/dist/src/type/account.d.ts +1 -1
  298. package/dist/src/type/action/hide-block.d.ts +9 -0
  299. package/dist/src/type/action/hide-block.js +3 -0
  300. package/dist/src/type/action/hide-block.js.map +1 -0
  301. package/dist/src/type/action/move-block.d.ts +10 -0
  302. package/dist/src/type/action/move-block.js +3 -0
  303. package/dist/src/type/action/move-block.js.map +1 -0
  304. package/dist/src/type/block/audio.d.ts +2 -0
  305. package/dist/src/type/block/image.d.ts +2 -0
  306. package/dist/src/type/block/parameter.d.ts +8 -0
  307. package/dist/src/type/block/parameter.js +3 -0
  308. package/dist/src/type/block/parameter.js.map +1 -0
  309. package/dist/src/type/block-metadata.d.ts +2 -1
  310. package/dist/src/type/block.d.ts +2 -2
  311. package/dist/src/type/color-value.d.ts +2 -0
  312. package/dist/src/type/color-value.js +3 -0
  313. package/dist/src/type/color-value.js.map +1 -0
  314. package/dist/src/type/history-item.d.ts +5 -0
  315. package/dist/src/type/history-item.js +3 -0
  316. package/dist/src/type/history-item.js.map +1 -0
  317. package/dist/src/type/page.d.ts +2 -0
  318. package/dist/src/type/request-context.d.ts +7 -0
  319. package/dist/src/type/request-context.js +3 -0
  320. package/dist/src/type/request-context.js.map +1 -0
  321. package/dist/src/type/role.d.ts +8 -0
  322. package/dist/src/{interface/provider.js → type/role.js} +1 -1
  323. package/dist/src/type/role.js.map +1 -0
  324. package/dist/src/type/runtime-config.d.ts +2 -1
  325. package/dist/src/type/server-settings.d.ts +2 -1
  326. package/dist/test/unit/lib/environment-mocker/environment-mocker.d.ts +1 -0
  327. package/dist/test/unit/lib/environment-mocker/environment-mocker.js +40 -0
  328. package/dist/test/unit/lib/environment-mocker/environment-mocker.js.map +1 -0
  329. package/dist/test/unit/lib/grammar/index.d.ts +1 -0
  330. package/dist/test/unit/lib/grammar/index.js +60 -0
  331. package/dist/test/unit/lib/grammar/index.js.map +1 -0
  332. package/dist/test/unit/lib/grammar/inflector.d.ts +1 -0
  333. package/dist/test/unit/lib/grammar/inflector.js +72 -0
  334. package/dist/test/unit/lib/grammar/inflector.js.map +1 -0
  335. package/dist/test/unit/lib/http/parser/url.d.ts +1 -0
  336. package/dist/test/unit/lib/http/parser/url.js +27 -0
  337. package/dist/test/unit/lib/http/parser/url.js.map +1 -0
  338. package/dist/test/unit/lib/http/response/outgoing.d.ts +1 -0
  339. package/dist/test/unit/lib/http/response/outgoing.js +38 -0
  340. package/dist/test/unit/lib/http/response/outgoing.js.map +1 -0
  341. package/dist/test/unit/lib/http/utility/get-status-code-for-error-type.d.ts +1 -0
  342. package/dist/test/unit/lib/http/utility/get-status-code-for-error-type.js +21 -0
  343. package/dist/test/unit/lib/http/utility/get-status-code-for-error-type.js.map +1 -0
  344. package/dist/test/unit/lib/key-generator/key-generator.d.ts +1 -0
  345. package/dist/test/unit/lib/key-generator/key-generator.js +23 -0
  346. package/dist/test/unit/lib/key-generator/key-generator.js.map +1 -0
  347. package/dist/test/unit/lib/log-capturer/log-capturer.d.ts +1 -0
  348. package/dist/test/unit/lib/log-capturer/log-capturer.js +35 -0
  349. package/dist/test/unit/lib/log-capturer/log-capturer.js.map +1 -0
  350. package/dist/test/unit/lib/logger/formatter.d.ts +1 -0
  351. package/dist/test/unit/lib/logger/formatter.js +32 -0
  352. package/dist/test/unit/lib/logger/formatter.js.map +1 -0
  353. package/dist/test/unit/lib/logger/logger.d.ts +1 -0
  354. package/dist/test/unit/lib/logger/logger.js +194 -0
  355. package/dist/test/unit/lib/logger/logger.js.map +1 -0
  356. package/dist/test/unit/lib/operation/operation.d.ts +1 -0
  357. package/dist/test/unit/lib/operation/operation.js +128 -0
  358. package/dist/test/unit/lib/operation/operation.js.map +1 -0
  359. package/dist/test/unit/lib/promise-wrapper/promise-wrapper.d.ts +1 -0
  360. package/dist/test/unit/lib/promise-wrapper/promise-wrapper.js +41 -0
  361. package/dist/test/unit/lib/promise-wrapper/promise-wrapper.js.map +1 -0
  362. package/dist/test/unit/lib/string/create-slug.d.ts +1 -0
  363. package/dist/test/unit/lib/string/create-slug.js +15 -0
  364. package/dist/test/unit/lib/string/create-slug.js.map +1 -0
  365. package/dist/test/unit/lib/time/utility/sleep.d.ts +1 -0
  366. package/dist/test/unit/lib/time/utility/sleep.js +20 -0
  367. package/dist/test/unit/lib/time/utility/sleep.js.map +1 -0
  368. package/dist/test/unit/server/operation/promote-block.js +11 -0
  369. package/dist/test/unit/server/operation/promote-block.js.map +1 -1
  370. package/dist/tsconfig.tsbuildinfo +1 -1
  371. package/package.json +11 -5
  372. package/dist/src/interface/provider.d.ts +0 -6
  373. package/dist/src/interface/provider.js.map +0 -1
package/bin/lint ADDED
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -e
4
+
5
+ if [[ "${1:-}" == "--fix" ]]; then
6
+ ./node_modules/.bin/eslint "src/**/*.{ts,tsx}" "test/unit/**/*.{ts,tsx}" --fix
7
+ ./node_modules/.bin/prettier --write "src/**/*.{ts,tsx}" "test/unit/**/*.{ts,tsx}"
8
+ else
9
+ ./node_modules/.bin/eslint "src/**/*.{ts,tsx}" "test/unit/**/*.{ts,tsx}"
10
+ ./node_modules/.bin/prettier --check "src/**/*.{ts,tsx}" "test/unit/**/*.{ts,tsx}"
11
+ fi
12
+
package/bin/test-one ADDED
@@ -0,0 +1,32 @@
1
+ #!/usr/bin/env bash
2
+
3
+ set -e
4
+
5
+ RED='\033[0;31m'
6
+ YELLOW='\033[0;33m'
7
+ RESET='\033[0m'
8
+
9
+ bin/compile
10
+
11
+ FILE_TO_TEST=$1
12
+
13
+ if [ -f "dist/$1.js" ]; then
14
+ TEST_FILEPATH="$FILE_TO_TEST.js"
15
+ else
16
+ # If someone enters the path to the corresponding Typescript file for a test,
17
+ # we should map this to the associated JS file in the dist/test directory:
18
+ FILE_WITH_CORRECTED_EXTENSION=${FILE_TO_TEST/.ts/.js}
19
+
20
+ if [ -f "dist/$FILE_WITH_CORRECTED_EXTENSION" ]; then
21
+ TEST_FILEPATH=$FILE_WITH_CORRECTED_EXTENSION
22
+ fi
23
+ fi
24
+
25
+ if [ -f "dist/$TEST_FILEPATH" ]; then
26
+ NODE_ENV=test node --test dist/$TEST_FILEPATH
27
+ else
28
+ echo ""
29
+ echo -e "${RED}[ERROR]${RESET} No test file(s) found matching '$1'"
30
+ echo -e "${YELLOW}Example:${RESET} dev test test/unit/logger"
31
+ echo ""
32
+ fi
@@ -1 +1 @@
1
- 1761139254
1
+ 1762954547
@@ -1 +1 @@
1
- 1761139254
1
+ 1762954547
package/dist/client.js CHANGED
@@ -75,6 +75,7 @@
75
75
  // src/client/enum/page-type.ts
76
76
  var PageType = /* @__PURE__ */ ((PageType2) => {
77
77
  PageType2["HOME"] = "home";
78
+ PageType2["HISTORY"] = "history";
78
79
  PageType2["LOGIN"] = "login";
79
80
  PageType2["LOGOUT"] = "logout";
80
81
  PageType2["DAY"] = "day";
@@ -82,13 +83,16 @@
82
83
  PageType2["MONTH"] = "month";
83
84
  PageType2["YEAR"] = "year";
84
85
  PageType2["SELECT_BLOCK_TYPE"] = "select_block_type";
86
+ PageType2["SELECT_BLOCK_DESTINATION"] = "select_block_destination";
85
87
  PageType2["CREATE_BLOCK"] = "create_block";
86
88
  PageType2["EDIT_BLOCK"] = "edit_block";
87
89
  PageType2["VIEW_CUSTOM"] = "view_custom";
88
90
  PageType2["EDIT_CUSTOM"] = "edit_custom";
89
91
  PageType2["CONFIRM_DELETE_BLOCK"] = "confirm_delete_block";
92
+ PageType2["CONFIRM_HIDE_BLOCK"] = "confirm_hide_block";
90
93
  PageType2["MOVE_BLOCK"] = "move_block";
91
94
  PageType2["SETTINGS"] = "settings";
95
+ PageType2["ROLE"] = "role";
92
96
  return PageType2;
93
97
  })(PageType || {});
94
98
  var page_type_default = PageType;
@@ -242,6 +246,167 @@
242
246
  };
243
247
  var home_default = HomePage;
244
248
 
249
+ // src/enum/block-type.ts
250
+ var BlockType = /* @__PURE__ */ ((BlockType2) => {
251
+ BlockType2["HEADER"] = "header";
252
+ BlockType2["NOTE"] = "note";
253
+ BlockType2["IMAGE"] = "image";
254
+ BlockType2["AUDIO"] = "audio";
255
+ BlockType2["EPHEMERAL"] = "ephemeral";
256
+ BlockType2["CALENDAR"] = "calendar";
257
+ BlockType2["DIRECTORY"] = "directory";
258
+ BlockType2["FOLDER"] = "folder";
259
+ BlockType2["MULTI_COLUMN"] = "multi_column";
260
+ BlockType2["LINK"] = "link";
261
+ BlockType2["TODO"] = "todo";
262
+ BlockType2["LIST"] = "list";
263
+ BlockType2["BACKGROUND"] = "background";
264
+ BlockType2["WHITESPACE"] = "whitespace";
265
+ BlockType2["PARAMETER"] = "parameter";
266
+ return BlockType2;
267
+ })(BlockType || {});
268
+ var block_type_default = BlockType;
269
+
270
+ // src/client/utility/get-block-activation-href.ts
271
+ function getBlockActivationHref(block_element) {
272
+ const link_nodes = block_element.getElementsByTagName("a");
273
+ const links = Array.from(link_nodes);
274
+ const matching_link = links.find((link) => {
275
+ const role = link.getAttribute("data-role");
276
+ return role === "block_activation";
277
+ });
278
+ if (matching_link === void 0) {
279
+ throw new invariant_violation_default(`
280
+ Tried to activate link for folder block, but it was not set
281
+ `);
282
+ }
283
+ const href = matching_link.getAttribute("href");
284
+ if (href === null) {
285
+ throw new invariant_violation_default(`
286
+ Tried to activate link for folder block, but its href was not set
287
+ `);
288
+ }
289
+ return href;
290
+ }
291
+ var get_block_activation_href_default = getBlockActivationHref;
292
+
293
+ // src/client/page/history.ts
294
+ var HistoryPage = class extends page_default {
295
+ handleKey(key_code) {
296
+ switch (key_code) {
297
+ case key_code_default.ENTER:
298
+ case key_code_default.O:
299
+ return this.activateBlock();
300
+ case key_code_default.J:
301
+ return this.selectNextBlock();
302
+ case key_code_default.K:
303
+ return this.selectPreviousBlock();
304
+ default:
305
+ return super.handleKey(key_code);
306
+ }
307
+ }
308
+ activateBlock() {
309
+ const block_element = this.getCurrentBlockElement();
310
+ if (block_element === null) {
311
+ return;
312
+ }
313
+ const attribute = block_element.getAttribute("data-block-type");
314
+ if (attribute === null) {
315
+ throw new invariant_violation_default(`
316
+ Tried to activate current block, but it did not have a block type
317
+ `);
318
+ }
319
+ const block_type = attribute;
320
+ const block_types = Object.values(block_type_default);
321
+ if (!block_types.includes(block_type)) {
322
+ throw new invariant_violation_default(`
323
+ Invalid block type: ${block_type}
324
+ `);
325
+ }
326
+ if (block_type !== block_type_default.FOLDER) {
327
+ return console.warn(`no-op activation for block of type ${block_type}`);
328
+ }
329
+ const href = get_block_activation_href_default(block_element);
330
+ window.location.href = href;
331
+ }
332
+ selectPreviousBlock() {
333
+ this.navigateToIndex(this.getPreviousBlockIndex());
334
+ this.focusCurrentBlockElement();
335
+ }
336
+ selectNextBlock() {
337
+ this.navigateToIndex(this.getNextBlockIndex());
338
+ this.focusCurrentBlockElement();
339
+ }
340
+ navigateToIndex(index) {
341
+ if (index === null) {
342
+ return;
343
+ }
344
+ const block_elements = this.getBlockElements();
345
+ block_elements.forEach((block_element, block_index) => {
346
+ const is_match = block_index === index;
347
+ block_element.classList.toggle("selected", is_match);
348
+ });
349
+ const url = new URL(window.location.href);
350
+ url.searchParams.set("index", index.toString());
351
+ window.history.replaceState({}, "", url);
352
+ }
353
+ getPreviousBlockIndex() {
354
+ const block_elements = this.getBlockElements();
355
+ const current_index = this.getCurrentIndex();
356
+ const previous_block = block_elements[current_index - 1];
357
+ if (previous_block === void 0) {
358
+ return null;
359
+ }
360
+ return current_index - 1;
361
+ }
362
+ getNextBlockIndex() {
363
+ const block_elements = this.getBlockElements();
364
+ const current_index = this.getCurrentIndex();
365
+ const next_block = block_elements[current_index + 1];
366
+ if (next_block === void 0) {
367
+ return null;
368
+ }
369
+ return current_index + 1;
370
+ }
371
+ getCurrentIndex() {
372
+ const current_block = this.getCurrentBlockElement();
373
+ const blocks = this.getBlockElements();
374
+ const current_index = current_block ? blocks.indexOf(current_block) : -1;
375
+ return current_index;
376
+ }
377
+ focusCurrentBlockElement() {
378
+ const element = this.getCurrentBlockElement();
379
+ if (element === null) {
380
+ return;
381
+ }
382
+ this.focusElement(element);
383
+ }
384
+ getCurrentBlockElement() {
385
+ const block_elements = this.getBlockElements();
386
+ const selected_element = block_elements.find((element2) => {
387
+ return element2.classList.contains("selected");
388
+ });
389
+ if (selected_element !== void 0) {
390
+ return selected_element;
391
+ }
392
+ const index = (() => {
393
+ const parameter = this.getQueryParameter("index");
394
+ if (parameter === void 0) {
395
+ return 0;
396
+ }
397
+ const parsed_parameter = parseInt(parameter);
398
+ return parsed_parameter || 0;
399
+ })();
400
+ const element = block_elements[index];
401
+ return element || null;
402
+ }
403
+ getBlockElements() {
404
+ const elements = document.getElementsByClassName("block");
405
+ return Array.from(elements);
406
+ }
407
+ };
408
+ var history_default = HistoryPage;
409
+
245
410
  // src/client/page/login.ts
246
411
  var LoginPage = class extends page_default {
247
412
  initEvents() {
@@ -263,6 +428,13 @@
263
428
  };
264
429
  var day_default = DayPage;
265
430
 
431
+ // src/client/page/role.ts
432
+ var RolePage = class extends page_default {
433
+ initEvents() {
434
+ }
435
+ };
436
+ var role_default = RolePage;
437
+
266
438
  // src/client/page/month.ts
267
439
  var MonthPage = class extends page_default {
268
440
  initEvents() {
@@ -284,26 +456,6 @@
284
456
  };
285
457
  var year_default = YearPage;
286
458
 
287
- // src/enum/block-type.ts
288
- var BlockType = /* @__PURE__ */ ((BlockType2) => {
289
- BlockType2["HEADER"] = "header";
290
- BlockType2["NOTE"] = "note";
291
- BlockType2["IMAGE"] = "image";
292
- BlockType2["AUDIO"] = "audio";
293
- BlockType2["EPHEMERAL"] = "ephemeral";
294
- BlockType2["CALENDAR"] = "calendar";
295
- BlockType2["DIRECTORY"] = "directory";
296
- BlockType2["FOLDER"] = "folder";
297
- BlockType2["MULTI_COLUMN"] = "multi_column";
298
- BlockType2["LINK"] = "link";
299
- BlockType2["TODO"] = "todo";
300
- BlockType2["LIST"] = "list";
301
- BlockType2["BACKGROUND"] = "background";
302
- BlockType2["WHITESPACE"] = "whitespace";
303
- return BlockType2;
304
- })(BlockType || {});
305
- var block_type_default = BlockType;
306
-
307
459
  // src/client/page/select-block-type.ts
308
460
  var SelectBlockTypePage = class extends page_default {
309
461
  handleKey(key_code) {
@@ -349,6 +501,13 @@
349
501
  };
350
502
  var select_block_type_default = SelectBlockTypePage;
351
503
 
504
+ // src/client/page/select-block-destination.ts
505
+ var SelectBlockDestinationPage = class extends page_default {
506
+ initEvents() {
507
+ }
508
+ };
509
+ var select_block_destination_default = SelectBlockDestinationPage;
510
+
352
511
  // src/client/page/create-block.ts
353
512
  var CreateBlockPage = class extends page_default {
354
513
  };
@@ -443,26 +602,6 @@
443
602
  }
444
603
  return value;
445
604
  }
446
- function getBlockActivationHref(block_element) {
447
- const link_nodes = block_element.getElementsByTagName("a");
448
- const links = Array.from(link_nodes);
449
- const matching_link = links.find((link) => {
450
- const role = link.getAttribute("data-role");
451
- return role === "block_activation";
452
- });
453
- if (matching_link === void 0) {
454
- throw new invariant_violation_default(`
455
- Tried to activate link for folder block, but it was not set
456
- `);
457
- }
458
- const href = matching_link.getAttribute("href");
459
- if (href === null) {
460
- throw new invariant_violation_default(`
461
- Tried to activate link for folder block, but its href was not set
462
- `);
463
- }
464
- return href;
465
- }
466
605
  function getIndexPathForElement(element) {
467
606
  return getAttributeForElement(element, "data-index-path");
468
607
  }
@@ -492,8 +631,6 @@
492
631
  return this.toggleEditMode();
493
632
  case key_code_default.G:
494
633
  return this.performPageJump();
495
- case key_code_default.M:
496
- return this.showModificationMenu();
497
634
  case key_code_default.J:
498
635
  return this.selectNextBlock();
499
636
  case key_code_default.K:
@@ -502,10 +639,16 @@
502
639
  return this.navigateToParentPage();
503
640
  case key_code_default.D:
504
641
  return this.deleteCurrentBlock();
642
+ case key_code_default.M:
643
+ return this.moveCurrentBlock();
505
644
  case key_code_default.A:
506
645
  return this.addBlock();
507
646
  case key_code_default.E:
508
647
  return this.beginEditingBlock();
648
+ case key_code_default.H:
649
+ return this.navigateToHistory();
650
+ case key_code_default.I:
651
+ return this.hideCurrentBlock();
509
652
  default:
510
653
  return super.handleKey(key_code);
511
654
  }
@@ -567,6 +710,54 @@
567
710
  }
568
711
  window.location.href = href;
569
712
  }
713
+ moveCurrentBlock() {
714
+ if (!this.isLoggedIn()) {
715
+ return;
716
+ }
717
+ const block_element = this.getCurrentBlockElement();
718
+ if (block_element === null) {
719
+ return;
720
+ }
721
+ const block_id = block_element.id;
722
+ const link_id = `${block_id}-move`;
723
+ const link_element = document.getElementById(link_id);
724
+ if (link_element === null) {
725
+ throw new invariant_violation_default(`
726
+ Unable to find move link element for block: ${block_id}
727
+ `);
728
+ }
729
+ const href = link_element.getAttribute("href");
730
+ if (href === null) {
731
+ throw new invariant_violation_default(`
732
+ Unable to find move link href for block: ${block_id}
733
+ `);
734
+ }
735
+ window.location.href = href;
736
+ }
737
+ hideCurrentBlock() {
738
+ if (!this.isLoggedIn()) {
739
+ return;
740
+ }
741
+ const block_element = this.getCurrentBlockElement();
742
+ if (block_element === null) {
743
+ return;
744
+ }
745
+ const block_id = block_element.id;
746
+ const link_id = `${block_id}-hide`;
747
+ const link_element = document.getElementById(link_id);
748
+ if (link_element === null) {
749
+ throw new invariant_violation_default(`
750
+ Unable to find hide link element for block: ${block_id}
751
+ `);
752
+ }
753
+ const href = link_element.getAttribute("href");
754
+ if (href === null) {
755
+ throw new invariant_violation_default(`
756
+ Unable to find hide link href for block: ${block_id}
757
+ `);
758
+ }
759
+ window.location.href = href;
760
+ }
570
761
  deleteCurrentBlock() {
571
762
  if (!this.isLoggedIn()) {
572
763
  return;
@@ -650,6 +841,9 @@
650
841
  const parent_path = get_parent_path_default(window.location.pathname);
651
842
  window.location.href = parent_path;
652
843
  }
844
+ navigateToHistory() {
845
+ window.location.href = "/history";
846
+ }
653
847
  navigateToIndex(index_path) {
654
848
  if (index_path === null) {
655
849
  return;
@@ -811,15 +1005,13 @@
811
1005
  form.submit();
812
1006
  }
813
1007
  activateFolderBlock(block_element) {
814
- const href = getBlockActivationHref(block_element);
1008
+ const href = get_block_activation_href_default(block_element);
815
1009
  window.location.href = href;
816
1010
  }
817
1011
  activateImageBlock(block_element) {
818
- const href = getBlockActivationHref(block_element);
1012
+ const href = get_block_activation_href_default(block_element);
819
1013
  window.location.href = href;
820
1014
  }
821
- showModificationMenu() {
822
- }
823
1015
  isLoggedIn() {
824
1016
  return this.logged_in;
825
1017
  }
@@ -860,6 +1052,27 @@
860
1052
  };
861
1053
  var confirm_delete_block_default = ConfirmDeleteBlockPage;
862
1054
 
1055
+ // src/client/page/confirm-hide-block.ts
1056
+ var ConfirmHideBlockPage = class extends page_default {
1057
+ handleKey(key_code) {
1058
+ switch (key_code) {
1059
+ case key_code_default.I:
1060
+ return this.submitHideForm();
1061
+ default:
1062
+ return super.handleKey(key_code);
1063
+ }
1064
+ }
1065
+ submitHideForm() {
1066
+ const element = document.getElementById("hide-form");
1067
+ if (element === null) {
1068
+ throw new invariant_violation_default("Could not find hide form element");
1069
+ }
1070
+ const form = element;
1071
+ form.submit();
1072
+ }
1073
+ };
1074
+ var confirm_hide_block_default = ConfirmHideBlockPage;
1075
+
863
1076
  // src/client/page/move-block.ts
864
1077
  var MoveBlockPage = class extends page_default {
865
1078
  initEvents() {
@@ -877,6 +1090,7 @@
877
1090
  // src/client/factory/page.ts
878
1091
  var PageConstructors = {
879
1092
  [page_type_default.HOME]: home_default,
1093
+ [page_type_default.HISTORY]: history_default,
880
1094
  [page_type_default.LOGIN]: login_default,
881
1095
  [page_type_default.LOGOUT]: logout_default,
882
1096
  [page_type_default.DAY]: day_default,
@@ -884,13 +1098,16 @@
884
1098
  [page_type_default.MONTH]: month_default,
885
1099
  [page_type_default.YEAR]: year_default,
886
1100
  [page_type_default.SELECT_BLOCK_TYPE]: select_block_type_default,
1101
+ [page_type_default.SELECT_BLOCK_DESTINATION]: select_block_destination_default,
887
1102
  [page_type_default.CREATE_BLOCK]: create_block_default,
888
1103
  [page_type_default.EDIT_BLOCK]: edit_block_default,
889
1104
  [page_type_default.VIEW_CUSTOM]: view_custom_default,
890
1105
  [page_type_default.EDIT_CUSTOM]: edit_custom_default,
891
1106
  [page_type_default.CONFIRM_DELETE_BLOCK]: confirm_delete_block_default,
1107
+ [page_type_default.CONFIRM_HIDE_BLOCK]: confirm_hide_block_default,
892
1108
  [page_type_default.MOVE_BLOCK]: move_block_default,
893
- [page_type_default.SETTINGS]: settings_default
1109
+ [page_type_default.SETTINGS]: settings_default,
1110
+ [page_type_default.ROLE]: role_default
894
1111
  };
895
1112
  var PageFactory = class {
896
1113
  constructor(page_type) {
@@ -1,5 +1,6 @@
1
1
  declare enum PageType {
2
2
  HOME = "home",
3
+ HISTORY = "history",
3
4
  LOGIN = "login",
4
5
  LOGOUT = "logout",
5
6
  DAY = "day",
@@ -7,12 +8,15 @@ declare enum PageType {
7
8
  MONTH = "month",
8
9
  YEAR = "year",
9
10
  SELECT_BLOCK_TYPE = "select_block_type",
11
+ SELECT_BLOCK_DESTINATION = "select_block_destination",
10
12
  CREATE_BLOCK = "create_block",
11
13
  EDIT_BLOCK = "edit_block",
12
14
  VIEW_CUSTOM = "view_custom",
13
15
  EDIT_CUSTOM = "edit_custom",
14
16
  CONFIRM_DELETE_BLOCK = "confirm_delete_block",
17
+ CONFIRM_HIDE_BLOCK = "confirm_hide_block",
15
18
  MOVE_BLOCK = "move_block",
16
- SETTINGS = "settings"
19
+ SETTINGS = "settings",
20
+ ROLE = "role"
17
21
  }
18
22
  export default PageType;
@@ -3,6 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  var PageType;
4
4
  (function (PageType) {
5
5
  PageType["HOME"] = "home";
6
+ PageType["HISTORY"] = "history";
6
7
  PageType["LOGIN"] = "login";
7
8
  PageType["LOGOUT"] = "logout";
8
9
  PageType["DAY"] = "day";
@@ -10,13 +11,16 @@ var PageType;
10
11
  PageType["MONTH"] = "month";
11
12
  PageType["YEAR"] = "year";
12
13
  PageType["SELECT_BLOCK_TYPE"] = "select_block_type";
14
+ PageType["SELECT_BLOCK_DESTINATION"] = "select_block_destination";
13
15
  PageType["CREATE_BLOCK"] = "create_block";
14
16
  PageType["EDIT_BLOCK"] = "edit_block";
15
17
  PageType["VIEW_CUSTOM"] = "view_custom";
16
18
  PageType["EDIT_CUSTOM"] = "edit_custom";
17
19
  PageType["CONFIRM_DELETE_BLOCK"] = "confirm_delete_block";
20
+ PageType["CONFIRM_HIDE_BLOCK"] = "confirm_hide_block";
18
21
  PageType["MOVE_BLOCK"] = "move_block";
19
22
  PageType["SETTINGS"] = "settings";
23
+ PageType["ROLE"] = "role";
20
24
  })(PageType || (PageType = {}));
21
25
  exports.default = PageType;
22
26
  //# sourceMappingURL=page-type.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page-type.js","sourceRoot":"","sources":["../../../../src/client/enum/page-type.ts"],"names":[],"mappings":";;AAAA,IAAK,QAgBJ;AAhBD,WAAK,QAAQ;IACZ,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,mDAAuC,CAAA;IACvC,yCAA6B,CAAA;IAC7B,qCAAyB,CAAA;IACzB,uCAA2B,CAAA;IAC3B,uCAA2B,CAAA;IAC3B,yDAA6C,CAAA;IAC7C,qCAAyB,CAAA;IACzB,iCAAqB,CAAA;AACtB,CAAC,EAhBI,QAAQ,KAAR,QAAQ,QAgBZ;AAED,kBAAe,QAAQ,CAAC"}
1
+ {"version":3,"file":"page-type.js","sourceRoot":"","sources":["../../../../src/client/enum/page-type.ts"],"names":[],"mappings":";;AAAA,IAAK,QAoBJ;AApBD,WAAK,QAAQ;IACZ,yBAAa,CAAA;IACb,+BAAmB,CAAA;IACnB,2BAAe,CAAA;IACf,6BAAiB,CAAA;IACjB,uBAAW,CAAA;IACX,yBAAa,CAAA;IACb,2BAAe,CAAA;IACf,yBAAa,CAAA;IACb,mDAAuC,CAAA;IACvC,iEAAqD,CAAA;IACrD,yCAA6B,CAAA;IAC7B,qCAAyB,CAAA;IACzB,uCAA2B,CAAA;IAC3B,uCAA2B,CAAA;IAC3B,yDAA6C,CAAA;IAC7C,qDAAyC,CAAA;IACzC,qCAAyB,CAAA;IACzB,iCAAqB,CAAA;IACrB,yBAAa,CAAA;AACd,CAAC,EApBI,QAAQ,KAAR,QAAQ,QAoBZ;AAED,kBAAe,QAAQ,CAAC"}
@@ -5,22 +5,27 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
5
5
  Object.defineProperty(exports, "__esModule", { value: true });
6
6
  const page_type_1 = __importDefault(require("./../enum/page-type.js"));
7
7
  const home_1 = __importDefault(require("./../page/home.js"));
8
+ const history_1 = __importDefault(require("./../page/history.js"));
8
9
  const login_1 = __importDefault(require("./../page/login.js"));
9
10
  const logout_1 = __importDefault(require("./../page/logout.js"));
10
11
  const day_1 = __importDefault(require("./../page/day.js"));
12
+ const role_1 = __importDefault(require("./../page/role.js"));
11
13
  const month_1 = __importDefault(require("./../page/month.js"));
12
14
  const week_1 = __importDefault(require("./../page/week.js"));
13
15
  const year_1 = __importDefault(require("./../page/year.js"));
14
16
  const select_block_type_1 = __importDefault(require("./../page/select-block-type.js"));
17
+ const select_block_destination_1 = __importDefault(require("./../page/select-block-destination.js"));
15
18
  const create_block_1 = __importDefault(require("./../page/create-block.js"));
16
19
  const edit_block_1 = __importDefault(require("./../page/edit-block.js"));
17
20
  const view_custom_1 = __importDefault(require("./../page/view-custom.js"));
18
21
  const edit_custom_1 = __importDefault(require("./../page/edit-custom.js"));
19
22
  const confirm_delete_block_1 = __importDefault(require("./../page/confirm-delete-block.js"));
23
+ const confirm_hide_block_1 = __importDefault(require("./../page/confirm-hide-block.js"));
20
24
  const move_block_1 = __importDefault(require("./../page/move-block.js"));
21
25
  const settings_1 = __importDefault(require("./../page/settings.js"));
22
26
  const PageConstructors = {
23
27
  [page_type_1.default.HOME]: home_1.default,
28
+ [page_type_1.default.HISTORY]: history_1.default,
24
29
  [page_type_1.default.LOGIN]: login_1.default,
25
30
  [page_type_1.default.LOGOUT]: logout_1.default,
26
31
  [page_type_1.default.DAY]: day_1.default,
@@ -28,13 +33,16 @@ const PageConstructors = {
28
33
  [page_type_1.default.MONTH]: month_1.default,
29
34
  [page_type_1.default.YEAR]: year_1.default,
30
35
  [page_type_1.default.SELECT_BLOCK_TYPE]: select_block_type_1.default,
36
+ [page_type_1.default.SELECT_BLOCK_DESTINATION]: select_block_destination_1.default,
31
37
  [page_type_1.default.CREATE_BLOCK]: create_block_1.default,
32
38
  [page_type_1.default.EDIT_BLOCK]: edit_block_1.default,
33
39
  [page_type_1.default.VIEW_CUSTOM]: view_custom_1.default,
34
40
  [page_type_1.default.EDIT_CUSTOM]: edit_custom_1.default,
35
41
  [page_type_1.default.CONFIRM_DELETE_BLOCK]: confirm_delete_block_1.default,
42
+ [page_type_1.default.CONFIRM_HIDE_BLOCK]: confirm_hide_block_1.default,
36
43
  [page_type_1.default.MOVE_BLOCK]: move_block_1.default,
37
- [page_type_1.default.SETTINGS]: settings_1.default
44
+ [page_type_1.default.SETTINGS]: settings_1.default,
45
+ [page_type_1.default.ROLE]: role_1.default
38
46
  };
39
47
  class PageFactory {
40
48
  constructor(page_type) {
@@ -1 +1 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../src/client/factory/page.ts"],"names":[],"mappings":";;;;;AACA,sEAA6C;AAE7C,4DAAwC;AACxC,8DAA0C;AAC1C,gEAA4C;AAC5C,0DAAsC;AACtC,8DAA0C;AAC1C,4DAAwC;AACxC,4DAAwC;AACxC,sFAAgE;AAChE,4EAAuD;AACvD,wEAAmD;AACnD,0EAAqD;AACrD,0EAAqD;AACrD,4FAAsE;AACtE,wEAAmD;AACnD,oEAAgD;AAMhD,MAAM,gBAAgB,GAAsC;IAC3D,CAAC,mBAAQ,CAAC,IAAI,CAAC,EAAE,cAAQ;IACzB,CAAC,mBAAQ,CAAC,KAAK,CAAC,EAAE,eAAS;IAC3B,CAAC,mBAAQ,CAAC,MAAM,CAAC,EAAE,gBAAU;IAC7B,CAAC,mBAAQ,CAAC,GAAG,CAAC,EAAE,aAAO;IACvB,CAAC,mBAAQ,CAAC,IAAI,CAAC,EAAE,cAAQ;IACzB,CAAC,mBAAQ,CAAC,KAAK,CAAC,EAAE,eAAS;IAC3B,CAAC,mBAAQ,CAAC,IAAI,CAAC,EAAE,cAAQ;IACzB,CAAC,mBAAQ,CAAC,iBAAiB,CAAC,EAAE,2BAAmB;IACjD,CAAC,mBAAQ,CAAC,YAAY,CAAC,EAAE,sBAAe;IACxC,CAAC,mBAAQ,CAAC,UAAU,CAAC,EAAE,oBAAa;IACpC,CAAC,mBAAQ,CAAC,WAAW,CAAC,EAAE,qBAAc;IACtC,CAAC,mBAAQ,CAAC,WAAW,CAAC,EAAE,qBAAc;IACtC,CAAC,mBAAQ,CAAC,oBAAoB,CAAC,EAAE,8BAAsB;IACvD,CAAC,mBAAQ,CAAC,UAAU,CAAC,EAAE,oBAAa;IACpC,CAAC,mBAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAY;CACjC,CAAC;AAEF,MAAM,WAAW;IAGhB,YAAmB,SAAmB;QACrC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;IAEM,MAAM;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAErD,OAAO,IAAI,gBAAgB,CAAC;IAC7B,CAAC;IAEO,WAAW;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;CACD;AAED,kBAAe,WAAW,CAAC"}
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../../../src/client/factory/page.ts"],"names":[],"mappings":";;;;;AACA,sEAA6C;AAE7C,4DAAwC;AACxC,kEAA8C;AAC9C,8DAA0C;AAC1C,gEAA4C;AAC5C,0DAAsC;AACtC,4DAAwC;AACxC,8DAA0C;AAC1C,4DAAwC;AACxC,4DAAwC;AACxC,sFAAgE;AAChE,oGAA8E;AAC9E,4EAAuD;AACvD,wEAAmD;AACnD,0EAAqD;AACrD,0EAAqD;AACrD,4FAAsE;AACtE,wFAAkE;AAClE,wEAAmD;AACnD,oEAAgD;AAMhD,MAAM,gBAAgB,GAAsC;IAC3D,CAAC,mBAAQ,CAAC,IAAI,CAAC,EAAE,cAAQ;IACzB,CAAC,mBAAQ,CAAC,OAAO,CAAC,EAAE,iBAAW;IAC/B,CAAC,mBAAQ,CAAC,KAAK,CAAC,EAAE,eAAS;IAC3B,CAAC,mBAAQ,CAAC,MAAM,CAAC,EAAE,gBAAU;IAC7B,CAAC,mBAAQ,CAAC,GAAG,CAAC,EAAE,aAAO;IACvB,CAAC,mBAAQ,CAAC,IAAI,CAAC,EAAE,cAAQ;IACzB,CAAC,mBAAQ,CAAC,KAAK,CAAC,EAAE,eAAS;IAC3B,CAAC,mBAAQ,CAAC,IAAI,CAAC,EAAE,cAAQ;IACzB,CAAC,mBAAQ,CAAC,iBAAiB,CAAC,EAAE,2BAAmB;IACjD,CAAC,mBAAQ,CAAC,wBAAwB,CAAC,EAAE,kCAA0B;IAC/D,CAAC,mBAAQ,CAAC,YAAY,CAAC,EAAE,sBAAe;IACxC,CAAC,mBAAQ,CAAC,UAAU,CAAC,EAAE,oBAAa;IACpC,CAAC,mBAAQ,CAAC,WAAW,CAAC,EAAE,qBAAc;IACtC,CAAC,mBAAQ,CAAC,WAAW,CAAC,EAAE,qBAAc;IACtC,CAAC,mBAAQ,CAAC,oBAAoB,CAAC,EAAE,8BAAsB;IACvD,CAAC,mBAAQ,CAAC,kBAAkB,CAAC,EAAE,4BAAoB;IACnD,CAAC,mBAAQ,CAAC,UAAU,CAAC,EAAE,oBAAa;IACpC,CAAC,mBAAQ,CAAC,QAAQ,CAAC,EAAE,kBAAY;IACjC,CAAC,mBAAQ,CAAC,IAAI,CAAC,EAAE,cAAQ;CACzB,CAAC;AAEF,MAAM,WAAW;IAGhB,YAAmB,SAAmB;QACrC,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC5B,CAAC;IAEM,MAAM;QACZ,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC;QACrC,MAAM,gBAAgB,GAAG,gBAAgB,CAAC,SAAS,CAAC,CAAC;QAErD,OAAO,IAAI,gBAAgB,CAAC;IAC7B,CAAC;IAEO,WAAW;QAClB,OAAO,IAAI,CAAC,SAAS,CAAC;IACvB,CAAC;CACD;AAED,kBAAe,WAAW,CAAC"}
@@ -0,0 +1,7 @@
1
+ import Page from './../page';
2
+ import KeyCode from './../enum/key-code';
3
+ declare class ConfirmHideBlockPage extends Page {
4
+ protected handleKey(key_code: KeyCode): void;
5
+ private submitHideForm;
6
+ }
7
+ export default ConfirmHideBlockPage;
@@ -0,0 +1,28 @@
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("./../../lib/errors/index.js");
7
+ const page_1 = __importDefault(require("./../page.js"));
8
+ const key_code_1 = __importDefault(require("./../enum/key-code.js"));
9
+ class ConfirmHideBlockPage extends page_1.default {
10
+ handleKey(key_code) {
11
+ switch (key_code) {
12
+ case key_code_1.default.I:
13
+ return this.submitHideForm();
14
+ default:
15
+ return super.handleKey(key_code);
16
+ }
17
+ }
18
+ submitHideForm() {
19
+ const element = document.getElementById('hide-form');
20
+ if (element === null) {
21
+ throw new errors_1.InvariantViolation('Could not find hide form element');
22
+ }
23
+ const form = element;
24
+ form.submit();
25
+ }
26
+ }
27
+ exports.default = ConfirmHideBlockPage;
28
+ //# sourceMappingURL=confirm-hide-block.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"confirm-hide-block.js","sourceRoot":"","sources":["../../../../src/client/page/confirm-hide-block.ts"],"names":[],"mappings":";;;;;AAAA,uCAA8C;AAE9C,uDAA+B;AAC/B,oEAA2C;AAE3C,MAAM,oBAAqB,SAAQ,cAAI;IAC5B,SAAS,CAAC,QAAiB;QACpC,QAAQ,QAAQ,EAAE,CAAC;YAClB,KAAK,kBAAO,CAAC,CAAC;gBACb,OAAO,IAAI,CAAC,cAAc,EAAE,CAAC;YAE9B;gBACC,OAAO,KAAK,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;QACnC,CAAC;IACF,CAAC;IAEO,cAAc;QACrB,MAAM,OAAO,GAAG,QAAQ,CAAC,cAAc,CAAC,WAAW,CAAC,CAAC;QAErD,IAAI,OAAO,KAAK,IAAI,EAAE,CAAC;YACtB,MAAM,IAAI,2BAAkB,CAAC,kCAAkC,CAAC,CAAC;QAClE,CAAC;QAED,MAAM,IAAI,GAAG,OAA0B,CAAC;QAExC,IAAI,CAAC,MAAM,EAAE,CAAC;IACf,CAAC;CACD;AAED,kBAAe,oBAAoB,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;