@crowi/api 2.0.0-alpha.0 → 2.0.0-alpha.2

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 (452) hide show
  1. package/dist/hono/handlers/access-token.d.ts +55 -55
  2. package/dist/hono/handlers/activation.d.ts +27 -27
  3. package/dist/hono/handlers/admin/app.d.ts +26 -26
  4. package/dist/hono/handlers/admin/auth.d.ts +24 -24
  5. package/dist/hono/handlers/admin/mail.d.ts +30 -30
  6. package/dist/hono/handlers/admin/plugins.d.ts +112 -112
  7. package/dist/hono/handlers/admin/search.d.ts +21 -21
  8. package/dist/hono/handlers/admin/security.d.ts +24 -24
  9. package/dist/hono/handlers/admin/storage.d.ts +19 -19
  10. package/dist/hono/handlers/admin/users.d.ts +399 -281
  11. package/dist/hono/handlers/admin/users.js +28 -0
  12. package/dist/hono/handlers/admin/users.js.map +1 -1
  13. package/dist/hono/handlers/adminCrypto.d.ts +32 -32
  14. package/dist/hono/handlers/app.d.ts +12 -8
  15. package/dist/hono/handlers/app.js +42 -1
  16. package/dist/hono/handlers/app.js.map +1 -1
  17. package/dist/hono/handlers/attachment-stream.js +23 -0
  18. package/dist/hono/handlers/attachment-stream.js.map +1 -1
  19. package/dist/hono/handlers/attachment.d.ts +180 -180
  20. package/dist/hono/handlers/autocomplete.d.ts +45 -45
  21. package/dist/hono/handlers/backlink.d.ts +33 -33
  22. package/dist/hono/handlers/bookmark.d.ts +95 -95
  23. package/dist/hono/handlers/comment.d.ts +55 -55
  24. package/dist/hono/handlers/draft.d.ts +27 -27
  25. package/dist/hono/handlers/draft.js +10 -0
  26. package/dist/hono/handlers/draft.js.map +1 -1
  27. package/dist/hono/handlers/emailChange.d.ts +25 -25
  28. package/dist/hono/handlers/installer.d.ts +16 -16
  29. package/dist/hono/handlers/inviteAccept.d.ts +37 -37
  30. package/dist/hono/handlers/me.d.ts +92 -92
  31. package/dist/hono/handlers/notification.d.ts +94 -94
  32. package/dist/hono/handlers/oauth.d.ts +58 -58
  33. package/dist/hono/handlers/page-collab.d.ts +20 -20
  34. package/dist/hono/handlers/page-preview.d.ts +7 -7
  35. package/dist/hono/handlers/page.d.ts +575 -324
  36. package/dist/hono/handlers/page.js +123 -6
  37. package/dist/hono/handlers/page.js.map +1 -1
  38. package/dist/hono/handlers/passwordReset.d.ts +37 -37
  39. package/dist/hono/handlers/presence.d.ts +44 -44
  40. package/dist/hono/handlers/revision.d.ts +99 -99
  41. package/dist/hono/handlers/search.d.ts +64 -64
  42. package/dist/hono/handlers/tokenAuth.d.ts +80 -80
  43. package/dist/hono/handlers/user.d.ts +102 -102
  44. package/dist/hono/handlers/user.js +15 -5
  45. package/dist/hono/handlers/user.js.map +1 -1
  46. package/dist/hono/index.d.ts +94 -94
  47. package/dist/mcp/result.d.ts +52 -11
  48. package/dist/mcp/result.js +66 -1
  49. package/dist/mcp/result.js.map +1 -1
  50. package/dist/mcp/tools/page.js +30 -5
  51. package/dist/mcp/tools/page.js.map +1 -1
  52. package/dist/mcp/tools/search.d.ts +12 -0
  53. package/dist/mcp/tools/search.js +21 -5
  54. package/dist/mcp/tools/search.js.map +1 -1
  55. package/dist/migration/helpers.d.ts +13 -0
  56. package/dist/migration/helpers.js +29 -0
  57. package/dist/migration/helpers.js.map +1 -0
  58. package/dist/migration/migrations/files-url-to-attachments.d.ts +35 -0
  59. package/dist/migration/migrations/files-url-to-attachments.js +291 -0
  60. package/dist/migration/migrations/files-url-to-attachments.js.map +1 -0
  61. package/dist/migration/migrations/index.js +6 -0
  62. package/dist/migration/migrations/index.js.map +1 -1
  63. package/dist/migration/migrations/published-current-revision.d.ts +47 -0
  64. package/dist/migration/migrations/published-current-revision.js +90 -0
  65. package/dist/migration/migrations/published-current-revision.js.map +1 -0
  66. package/dist/migration/migrations/relocate-reserved-api-paths.d.ts +3 -0
  67. package/dist/migration/migrations/relocate-reserved-api-paths.js +135 -0
  68. package/dist/migration/migrations/relocate-reserved-api-paths.js.map +1 -0
  69. package/dist/migration/migrations/wikilink-format.d.ts +0 -11
  70. package/dist/migration/migrations/wikilink-format.js +5 -156
  71. package/dist/migration/migrations/wikilink-format.js.map +1 -1
  72. package/dist/migration/migrations/wikilink-html-recover.d.ts +116 -0
  73. package/dist/migration/migrations/wikilink-html-recover.js +314 -0
  74. package/dist/migration/migrations/wikilink-html-recover.js.map +1 -0
  75. package/dist/models/page.d.ts +3 -0
  76. package/dist/models/page.js +40 -2
  77. package/dist/models/page.js.map +1 -1
  78. package/dist/models/user.d.ts +1 -0
  79. package/dist/models/user.js +40 -21
  80. package/dist/models/user.js.map +1 -1
  81. package/dist/renderer/core/headings.d.ts +12 -1
  82. package/dist/renderer/core/headings.js +48 -8
  83. package/dist/renderer/core/headings.js.map +1 -1
  84. package/dist/renderer/pipeline.d.ts +6 -0
  85. package/dist/renderer/pipeline.js.map +1 -1
  86. package/dist/util/page-response.js +19 -2
  87. package/dist/util/page-response.js.map +1 -1
  88. package/dist/util/replace-url.d.ts +85 -0
  89. package/dist/util/replace-url.js +251 -0
  90. package/dist/util/replace-url.js.map +1 -0
  91. package/package.json +13 -5
  92. package/public/images/file-not-found.png +0 -0
  93. package/views/mail/activation.mjml +9 -0
  94. package/views/mail/activation.text +13 -0
  95. package/views/mail/adminApprovalPending.mjml +7 -0
  96. package/views/mail/adminApprovalPending.text +11 -0
  97. package/views/mail/emailChange.mjml +9 -0
  98. package/views/mail/emailChange.text +13 -0
  99. package/views/mail/invite.mjml +9 -0
  100. package/views/mail/invite.text +13 -0
  101. package/views/mail/layout.mjml +38 -0
  102. package/views/mail/passwordChanged.mjml +4 -0
  103. package/views/mail/passwordChanged.text +9 -0
  104. package/views/mail/passwordReset.mjml +9 -0
  105. package/views/mail/passwordReset.text +13 -0
  106. package/views/mail/test.mjml +2 -0
  107. package/views/mail/test.text +7 -0
  108. package/dist/common/functions/path2name.d.ts +0 -1
  109. package/dist/common/functions/path2name.js +0 -22
  110. package/dist/common/functions/path2name.js.map +0 -1
  111. package/dist/common/functions/renderIcon.d.ts +0 -1
  112. package/dist/common/functions/renderIcon.js +0 -9
  113. package/dist/common/functions/renderIcon.js.map +0 -1
  114. package/dist/controllers/admin.d.ts +0 -3
  115. package/dist/controllers/admin.js +0 -474
  116. package/dist/controllers/admin.js.map +0 -1
  117. package/dist/controllers/attachment.d.ts +0 -4
  118. package/dist/controllers/attachment.js +0 -200
  119. package/dist/controllers/attachment.js.map +0 -1
  120. package/dist/controllers/backlink.d.ts +0 -3
  121. package/dist/controllers/backlink.js +0 -42
  122. package/dist/controllers/backlink.js.map +0 -1
  123. package/dist/controllers/bookmark.d.ts +0 -3
  124. package/dist/controllers/bookmark.js +0 -100
  125. package/dist/controllers/bookmark.js.map +0 -1
  126. package/dist/controllers/comment.d.ts +0 -3
  127. package/dist/controllers/comment.js +0 -111
  128. package/dist/controllers/comment.js.map +0 -1
  129. package/dist/controllers/index.d.ts +0 -25
  130. package/dist/controllers/index.js +0 -44
  131. package/dist/controllers/index.js.map +0 -1
  132. package/dist/controllers/installer.d.ts +0 -3
  133. package/dist/controllers/installer.js +0 -48
  134. package/dist/controllers/installer.js.map +0 -1
  135. package/dist/controllers/login.d.ts +0 -4
  136. package/dist/controllers/login.js +0 -438
  137. package/dist/controllers/login.js.map +0 -1
  138. package/dist/controllers/logout.d.ts +0 -5
  139. package/dist/controllers/logout.js +0 -11
  140. package/dist/controllers/logout.js.map +0 -1
  141. package/dist/controllers/me.d.ts +0 -4
  142. package/dist/controllers/me.js +0 -369
  143. package/dist/controllers/me.js.map +0 -1
  144. package/dist/controllers/notification.d.ts +0 -3
  145. package/dist/controllers/notification.js +0 -88
  146. package/dist/controllers/notification.js.map +0 -1
  147. package/dist/controllers/page.d.ts +0 -3
  148. package/dist/controllers/page.js +0 -881
  149. package/dist/controllers/page.js.map +0 -1
  150. package/dist/controllers/revision.d.ts +0 -3
  151. package/dist/controllers/revision.js +0 -91
  152. package/dist/controllers/revision.js.map +0 -1
  153. package/dist/controllers/search.d.ts +0 -3
  154. package/dist/controllers/search.js +0 -93
  155. package/dist/controllers/search.js.map +0 -1
  156. package/dist/controllers/share.d.ts +0 -3
  157. package/dist/controllers/share.js +0 -207
  158. package/dist/controllers/share.js.map +0 -1
  159. package/dist/controllers/shareAccess.d.ts +0 -3
  160. package/dist/controllers/shareAccess.js +0 -28
  161. package/dist/controllers/shareAccess.js.map +0 -1
  162. package/dist/controllers/slack.d.ts +0 -3
  163. package/dist/controllers/slack.js +0 -87
  164. package/dist/controllers/slack.js.map +0 -1
  165. package/dist/controllers/tokenAuth.d.ts +0 -10
  166. package/dist/controllers/tokenAuth.js +0 -292
  167. package/dist/controllers/tokenAuth.js.map +0 -1
  168. package/dist/controllers/user.d.ts +0 -3
  169. package/dist/controllers/user.js +0 -67
  170. package/dist/controllers/user.js.map +0 -1
  171. package/dist/controllers/version.d.ts +0 -4
  172. package/dist/controllers/version.js +0 -19
  173. package/dist/controllers/version.js.map +0 -1
  174. package/dist/crowi/express-init.d.ts +0 -4
  175. package/dist/crowi/express-init.js +0 -101
  176. package/dist/crowi/express-init.js.map +0 -1
  177. package/dist/form/admin/app.d.ts +0 -2
  178. package/dist/form/admin/app.js +0 -9
  179. package/dist/form/admin/app.js.map +0 -1
  180. package/dist/form/admin/auth.d.ts +0 -2
  181. package/dist/form/admin/auth.js +0 -9
  182. package/dist/form/admin/auth.js.map +0 -1
  183. package/dist/form/admin/aws.d.ts +0 -2
  184. package/dist/form/admin/aws.js +0 -13
  185. package/dist/form/admin/aws.js.map +0 -1
  186. package/dist/form/admin/github.d.ts +0 -2
  187. package/dist/form/admin/github.js +0 -15
  188. package/dist/form/admin/github.js.map +0 -1
  189. package/dist/form/admin/google.d.ts +0 -2
  190. package/dist/form/admin/google.js +0 -13
  191. package/dist/form/admin/google.js.map +0 -1
  192. package/dist/form/admin/mail.d.ts +0 -2
  193. package/dist/form/admin/mail.js +0 -13
  194. package/dist/form/admin/mail.js.map +0 -1
  195. package/dist/form/admin/sec.d.ts +0 -2
  196. package/dist/form/admin/sec.js +0 -10
  197. package/dist/form/admin/sec.js.map +0 -1
  198. package/dist/form/admin/slackSetting.d.ts +0 -2
  199. package/dist/form/admin/slackSetting.js +0 -13
  200. package/dist/form/admin/slackSetting.js.map +0 -1
  201. package/dist/form/admin/userEdit.d.ts +0 -2
  202. package/dist/form/admin/userEdit.js +0 -9
  203. package/dist/form/admin/userEdit.js.map +0 -1
  204. package/dist/form/admin/userInvite.d.ts +0 -2
  205. package/dist/form/admin/userInvite.js +0 -9
  206. package/dist/form/admin/userInvite.js.map +0 -1
  207. package/dist/form/comment.d.ts +0 -2
  208. package/dist/form/comment.js +0 -9
  209. package/dist/form/comment.js.map +0 -1
  210. package/dist/form/index.d.ts +0 -25
  211. package/dist/form/index.js +0 -48
  212. package/dist/form/index.js.map +0 -1
  213. package/dist/form/invited.d.ts +0 -2
  214. package/dist/form/invited.js +0 -13
  215. package/dist/form/invited.js.map +0 -1
  216. package/dist/form/login.d.ts +0 -2
  217. package/dist/form/login.js +0 -11
  218. package/dist/form/login.js.map +0 -1
  219. package/dist/form/me/apiToken.d.ts +0 -2
  220. package/dist/form/me/apiToken.js +0 -9
  221. package/dist/form/me/apiToken.js.map +0 -1
  222. package/dist/form/me/password.d.ts +0 -2
  223. package/dist/form/me/password.js +0 -11
  224. package/dist/form/me/password.js.map +0 -1
  225. package/dist/form/me/user.d.ts +0 -2
  226. package/dist/form/me/user.js +0 -9
  227. package/dist/form/me/user.js.map +0 -1
  228. package/dist/form/register.d.ts +0 -2
  229. package/dist/form/register.js +0 -13
  230. package/dist/form/register.js.map +0 -1
  231. package/dist/form/revision.d.ts +0 -2
  232. package/dist/form/revision.js +0 -13
  233. package/dist/form/revision.js.map +0 -1
  234. package/dist/hono/handlers/admin/share.d.ts +0 -106
  235. package/dist/hono/handlers/admin/share.js +0 -55
  236. package/dist/hono/handlers/admin/share.js.map +0 -1
  237. package/dist/middlewares/accessTokenParser.d.ts +0 -4
  238. package/dist/middlewares/accessTokenParser.js +0 -29
  239. package/dist/middlewares/accessTokenParser.js.map +0 -1
  240. package/dist/middlewares/adminRequired.d.ts +0 -10
  241. package/dist/middlewares/adminRequired.js +0 -35
  242. package/dist/middlewares/adminRequired.js.map +0 -1
  243. package/dist/middlewares/applicationInstalled.d.ts +0 -3
  244. package/dist/middlewares/applicationInstalled.js +0 -20
  245. package/dist/middlewares/applicationInstalled.js.map +0 -1
  246. package/dist/middlewares/applicationNotInstalled.d.ts +0 -3
  247. package/dist/middlewares/applicationNotInstalled.js +0 -13
  248. package/dist/middlewares/applicationNotInstalled.js.map +0 -1
  249. package/dist/middlewares/basicAuth.d.ts +0 -4
  250. package/dist/middlewares/basicAuth.js +0 -23
  251. package/dist/middlewares/basicAuth.js.map +0 -1
  252. package/dist/middlewares/csrfVerify.d.ts +0 -4
  253. package/dist/middlewares/csrfVerify.js +0 -24
  254. package/dist/middlewares/csrfVerify.js.map +0 -1
  255. package/dist/middlewares/encodeSpace.d.ts +0 -3
  256. package/dist/middlewares/encodeSpace.js +0 -14
  257. package/dist/middlewares/encodeSpace.js.map +0 -1
  258. package/dist/middlewares/fileAccessRightOrLoginRequired.d.ts +0 -4
  259. package/dist/middlewares/fileAccessRightOrLoginRequired.js +0 -29
  260. package/dist/middlewares/fileAccessRightOrLoginRequired.js.map +0 -1
  261. package/dist/middlewares/index.d.ts +0 -16
  262. package/dist/middlewares/index.js +0 -30
  263. package/dist/middlewares/index.js.map +0 -1
  264. package/dist/middlewares/jwtAdminRequired.d.ts +0 -8
  265. package/dist/middlewares/jwtAdminRequired.js +0 -35
  266. package/dist/middlewares/jwtAdminRequired.js.map +0 -1
  267. package/dist/middlewares/jwtAuth.d.ts +0 -4
  268. package/dist/middlewares/jwtAuth.js +0 -104
  269. package/dist/middlewares/jwtAuth.js.map +0 -1
  270. package/dist/middlewares/loginChecker.d.ts +0 -4
  271. package/dist/middlewares/loginChecker.js +0 -32
  272. package/dist/middlewares/loginChecker.js.map +0 -1
  273. package/dist/middlewares/loginRequired.d.ts +0 -4
  274. package/dist/middlewares/loginRequired.js +0 -88
  275. package/dist/middlewares/loginRequired.js.map +0 -1
  276. package/dist/routes/admin.d.ts +0 -4
  277. package/dist/routes/admin.js +0 -17
  278. package/dist/routes/admin.js.map +0 -1
  279. package/dist/routes/api/admin.d.ts +0 -4
  280. package/dist/routes/api/admin.js +0 -37
  281. package/dist/routes/api/admin.js.map +0 -1
  282. package/dist/routes/api/attachment.d.ts +0 -4
  283. package/dist/routes/api/attachment.js +0 -19
  284. package/dist/routes/api/attachment.js.map +0 -1
  285. package/dist/routes/api/bookmark.d.ts +0 -4
  286. package/dist/routes/api/bookmark.js +0 -15
  287. package/dist/routes/api/bookmark.js.map +0 -1
  288. package/dist/routes/api/comment.d.ts +0 -4
  289. package/dist/routes/api/comment.js +0 -14
  290. package/dist/routes/api/comment.js.map +0 -1
  291. package/dist/routes/api/index.d.ts +0 -4
  292. package/dist/routes/api/index.js +0 -36
  293. package/dist/routes/api/index.js.map +0 -1
  294. package/dist/routes/api/like.d.ts +0 -4
  295. package/dist/routes/api/like.js +0 -13
  296. package/dist/routes/api/like.js.map +0 -1
  297. package/dist/routes/api/notification.d.ts +0 -4
  298. package/dist/routes/api/notification.js +0 -15
  299. package/dist/routes/api/notification.js.map +0 -1
  300. package/dist/routes/api/page.d.ts +0 -4
  301. package/dist/routes/api/page.js +0 -24
  302. package/dist/routes/api/page.js.map +0 -1
  303. package/dist/routes/api/revision.d.ts +0 -4
  304. package/dist/routes/api/revision.js +0 -14
  305. package/dist/routes/api/revision.js.map +0 -1
  306. package/dist/routes/api/share.d.ts +0 -4
  307. package/dist/routes/api/share.js +0 -16
  308. package/dist/routes/api/share.js.map +0 -1
  309. package/dist/routes/api/version.d.ts +0 -4
  310. package/dist/routes/api/version.js +0 -10
  311. package/dist/routes/api/version.js.map +0 -1
  312. package/dist/routes/index.d.ts +0 -4
  313. package/dist/routes/index.js +0 -71
  314. package/dist/routes/index.js.map +0 -1
  315. package/dist/routes/login.d.ts +0 -4
  316. package/dist/routes/login.js +0 -18
  317. package/dist/routes/login.js.map +0 -1
  318. package/dist/routes/me.d.ts +0 -4
  319. package/dist/routes/me.js +0 -24
  320. package/dist/routes/me.js.map +0 -1
  321. package/dist/routes/ts-rest/admin/app.d.ts +0 -4
  322. package/dist/routes/ts-rest/admin/app.js +0 -67
  323. package/dist/routes/ts-rest/admin/app.js.map +0 -1
  324. package/dist/routes/ts-rest/admin/auth.d.ts +0 -4
  325. package/dist/routes/ts-rest/admin/auth.js +0 -95
  326. package/dist/routes/ts-rest/admin/auth.js.map +0 -1
  327. package/dist/routes/ts-rest/admin/index.d.ts +0 -10
  328. package/dist/routes/ts-rest/admin/index.js +0 -35
  329. package/dist/routes/ts-rest/admin/index.js.map +0 -1
  330. package/dist/routes/ts-rest/admin/mail.d.ts +0 -4
  331. package/dist/routes/ts-rest/admin/mail.js +0 -156
  332. package/dist/routes/ts-rest/admin/mail.js.map +0 -1
  333. package/dist/routes/ts-rest/admin/plugins.d.ts +0 -4
  334. package/dist/routes/ts-rest/admin/plugins.js +0 -317
  335. package/dist/routes/ts-rest/admin/plugins.js.map +0 -1
  336. package/dist/routes/ts-rest/admin/search.d.ts +0 -4
  337. package/dist/routes/ts-rest/admin/search.js +0 -67
  338. package/dist/routes/ts-rest/admin/search.js.map +0 -1
  339. package/dist/routes/ts-rest/admin/security.d.ts +0 -4
  340. package/dist/routes/ts-rest/admin/security.js +0 -114
  341. package/dist/routes/ts-rest/admin/security.js.map +0 -1
  342. package/dist/routes/ts-rest/admin/share.d.ts +0 -4
  343. package/dist/routes/ts-rest/admin/share.js +0 -69
  344. package/dist/routes/ts-rest/admin/share.js.map +0 -1
  345. package/dist/routes/ts-rest/admin/storage.d.ts +0 -4
  346. package/dist/routes/ts-rest/admin/storage.js +0 -59
  347. package/dist/routes/ts-rest/admin/storage.js.map +0 -1
  348. package/dist/routes/ts-rest/admin/users.d.ts +0 -4
  349. package/dist/routes/ts-rest/admin/users.js +0 -215
  350. package/dist/routes/ts-rest/admin/users.js.map +0 -1
  351. package/dist/routes/ts-rest/adminCrypto.d.ts +0 -4
  352. package/dist/routes/ts-rest/adminCrypto.js +0 -111
  353. package/dist/routes/ts-rest/adminCrypto.js.map +0 -1
  354. package/dist/routes/ts-rest/app.d.ts +0 -4
  355. package/dist/routes/ts-rest/app.js +0 -23
  356. package/dist/routes/ts-rest/app.js.map +0 -1
  357. package/dist/routes/ts-rest/attachment.d.ts +0 -4
  358. package/dist/routes/ts-rest/attachment.js +0 -830
  359. package/dist/routes/ts-rest/attachment.js.map +0 -1
  360. package/dist/routes/ts-rest/auth.d.ts +0 -4
  361. package/dist/routes/ts-rest/auth.js +0 -70
  362. package/dist/routes/ts-rest/auth.js.map +0 -1
  363. package/dist/routes/ts-rest/autocomplete.d.ts +0 -30
  364. package/dist/routes/ts-rest/autocomplete.js +0 -189
  365. package/dist/routes/ts-rest/autocomplete.js.map +0 -1
  366. package/dist/routes/ts-rest/backlink.d.ts +0 -4
  367. package/dist/routes/ts-rest/backlink.js +0 -106
  368. package/dist/routes/ts-rest/backlink.js.map +0 -1
  369. package/dist/routes/ts-rest/bookmark.d.ts +0 -4
  370. package/dist/routes/ts-rest/bookmark.js +0 -189
  371. package/dist/routes/ts-rest/bookmark.js.map +0 -1
  372. package/dist/routes/ts-rest/comment.d.ts +0 -4
  373. package/dist/routes/ts-rest/comment.js +0 -217
  374. package/dist/routes/ts-rest/comment.js.map +0 -1
  375. package/dist/routes/ts-rest/draft.d.ts +0 -22
  376. package/dist/routes/ts-rest/draft.js +0 -200
  377. package/dist/routes/ts-rest/draft.js.map +0 -1
  378. package/dist/routes/ts-rest/index.d.ts +0 -4
  379. package/dist/routes/ts-rest/index.js +0 -103
  380. package/dist/routes/ts-rest/index.js.map +0 -1
  381. package/dist/routes/ts-rest/installer.d.ts +0 -4
  382. package/dist/routes/ts-rest/installer.js +0 -77
  383. package/dist/routes/ts-rest/installer.js.map +0 -1
  384. package/dist/routes/ts-rest/me.d.ts +0 -4
  385. package/dist/routes/ts-rest/me.js +0 -410
  386. package/dist/routes/ts-rest/me.js.map +0 -1
  387. package/dist/routes/ts-rest/notification.d.ts +0 -4
  388. package/dist/routes/ts-rest/notification.js +0 -241
  389. package/dist/routes/ts-rest/notification.js.map +0 -1
  390. package/dist/routes/ts-rest/page-collab.d.ts +0 -29
  391. package/dist/routes/ts-rest/page-collab.js +0 -90
  392. package/dist/routes/ts-rest/page-collab.js.map +0 -1
  393. package/dist/routes/ts-rest/page-preview.d.ts +0 -26
  394. package/dist/routes/ts-rest/page-preview.js +0 -80
  395. package/dist/routes/ts-rest/page-preview.js.map +0 -1
  396. package/dist/routes/ts-rest/page.d.ts +0 -4
  397. package/dist/routes/ts-rest/page.js +0 -676
  398. package/dist/routes/ts-rest/page.js.map +0 -1
  399. package/dist/routes/ts-rest/presence.d.ts +0 -30
  400. package/dist/routes/ts-rest/presence.js +0 -155
  401. package/dist/routes/ts-rest/presence.js.map +0 -1
  402. package/dist/routes/ts-rest/revision.d.ts +0 -4
  403. package/dist/routes/ts-rest/revision.js +0 -240
  404. package/dist/routes/ts-rest/revision.js.map +0 -1
  405. package/dist/routes/ts-rest/search.d.ts +0 -4
  406. package/dist/routes/ts-rest/search.js +0 -121
  407. package/dist/routes/ts-rest/search.js.map +0 -1
  408. package/dist/routes/ts-rest/tokenAuth.d.ts +0 -4
  409. package/dist/routes/ts-rest/tokenAuth.js +0 -94
  410. package/dist/routes/ts-rest/tokenAuth.js.map +0 -1
  411. package/dist/routes/ts-rest/user.d.ts +0 -4
  412. package/dist/routes/ts-rest/user.js +0 -307
  413. package/dist/routes/ts-rest/user.js.map +0 -1
  414. package/dist/types/express.d.ts +0 -34
  415. package/dist/types/express.js +0 -50
  416. package/dist/types/express.js.map +0 -1
  417. package/dist/util/accessTokenParser.d.ts +0 -1
  418. package/dist/util/accessTokenParser.js +0 -34
  419. package/dist/util/accessTokenParser.js.map +0 -1
  420. package/dist/util/apiPaginate.d.ts +0 -11
  421. package/dist/util/apiPaginate.js +0 -33
  422. package/dist/util/apiPaginate.js.map +0 -1
  423. package/dist/util/apiResponse.d.ts +0 -9
  424. package/dist/util/apiResponse.js +0 -23
  425. package/dist/util/apiResponse.js.map +0 -1
  426. package/dist/util/auth.d.ts +0 -11
  427. package/dist/util/auth.js +0 -48
  428. package/dist/util/auth.js.map +0 -1
  429. package/dist/util/aws-config-migration.d.ts +0 -11
  430. package/dist/util/aws-config-migration.js +0 -68
  431. package/dist/util/aws-config-migration.js.map +0 -1
  432. package/dist/util/formUtil.d.ts +0 -2
  433. package/dist/util/formUtil.js +0 -15
  434. package/dist/util/formUtil.js.map +0 -1
  435. package/dist/util/githubAuth.d.ts +0 -2
  436. package/dist/util/githubAuth.js +0 -82
  437. package/dist/util/githubAuth.js.map +0 -1
  438. package/dist/util/googleAuth.d.ts +0 -2
  439. package/dist/util/googleAuth.js +0 -85
  440. package/dist/util/googleAuth.js.map +0 -1
  441. package/dist/util/mailer.d.ts +0 -7
  442. package/dist/util/mailer.js +0 -98
  443. package/dist/util/mailer.js.map +0 -1
  444. package/dist/util/page-status-migration.d.ts +0 -23
  445. package/dist/util/page-status-migration.js +0 -48
  446. package/dist/util/page-status-migration.js.map +0 -1
  447. package/dist/util/ssr.d.ts +0 -3
  448. package/dist/util/ssr.js +0 -9
  449. package/dist/util/ssr.js.map +0 -1
  450. package/dist/util/view.d.ts +0 -10
  451. package/dist/util/view.js +0 -99
  452. package/dist/util/view.js.map +0 -1
@@ -1,4 +0,0 @@
1
- import Crowi from '../../crowi';
2
- import { Express } from 'express';
3
- declare const _default: (crowi: Crowi, app: Express) => import("express-serve-static-core").Router;
4
- export default _default;
@@ -1,94 +0,0 @@
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 express_1 = require("@ts-rest/express");
7
- const api_contract_1 = require("@crowi/api-contract");
8
- const express_2 = require("express");
9
- const tokenAuth_1 = __importDefault(require("../../controllers/tokenAuth"));
10
- const applicationInstalled_1 = __importDefault(require("../../middlewares/applicationInstalled"));
11
- const jwtAuth_1 = __importDefault(require("../../middlewares/jwtAuth"));
12
- exports.default = (crowi, app) => {
13
- const TokenAuth = (0, tokenAuth_1.default)(crowi, app);
14
- const s = (0, express_1.initServer)();
15
- const router = (0, express_2.Router)();
16
- const checkAppInstalled = (0, applicationInstalled_1.default)();
17
- const requireJwtAuth = (0, jwtAuth_1.default)(crowi);
18
- const tokenAuthRouter = s.router(api_contract_1.apiContract.tokenAuth, {
19
- tokenLogin: async ({ body, req, res }) => {
20
- return new Promise((resolve) => {
21
- const request = req;
22
- request.body = body;
23
- TokenAuth.login(request, {
24
- status: (code) => ({
25
- json: (data) => resolve({ status: code, body: data }),
26
- }),
27
- json: (data) => resolve({ status: 200, body: data }),
28
- });
29
- });
30
- },
31
- tokenRegister: async ({ body, req, res }) => {
32
- return new Promise((resolve) => {
33
- const request = req;
34
- request.body = body;
35
- TokenAuth.register(request, {
36
- status: (code) => ({
37
- json: (data) => resolve({ status: code, body: data }),
38
- }),
39
- json: (data) => resolve({ status: 201, body: data }),
40
- });
41
- });
42
- },
43
- tokenRefresh: async ({ body, req, res }) => {
44
- return new Promise((resolve) => {
45
- const request = req;
46
- request.body = body;
47
- TokenAuth.refresh(request, {
48
- status: (code) => ({
49
- json: (data) => resolve({ status: code, body: data }),
50
- }),
51
- json: (data) => resolve({ status: 200, body: data }),
52
- });
53
- });
54
- },
55
- tokenLogout: async ({ body, req, res }) => {
56
- return new Promise((resolve) => {
57
- const request = req;
58
- request.body = body;
59
- // Apply JWT auth middleware
60
- requireJwtAuth(request, res, (err) => {
61
- if (err) {
62
- return resolve({ status: 401, body: { error: { code: 'AUTHENTICATION_REQUIRED', message: 'Authentication is required' } } });
63
- }
64
- TokenAuth.logout(request, {
65
- json: (data) => resolve({ status: 200, body: data }),
66
- });
67
- });
68
- });
69
- },
70
- tokenMe: async ({ req, res }) => {
71
- return new Promise((resolve) => {
72
- const request = req;
73
- // Apply JWT auth middleware
74
- requireJwtAuth(request, res, (err) => {
75
- if (err) {
76
- return resolve({ status: 401, body: { error: { code: 'AUTHENTICATION_REQUIRED', message: 'Authentication is required' } } });
77
- }
78
- TokenAuth.me(request, {
79
- status: (code) => ({
80
- json: (data) => resolve({ status: code, body: data }),
81
- }),
82
- json: (data) => resolve({ status: 200, body: data }),
83
- });
84
- });
85
- });
86
- },
87
- });
88
- (0, express_1.createExpressEndpoints)(api_contract_1.apiContract.tokenAuth, tokenAuthRouter, router);
89
- // Apply middleware to specific routes
90
- router.use('/auth/login', checkAppInstalled);
91
- router.use('/auth/register', checkAppInstalled);
92
- return router;
93
- };
94
- //# sourceMappingURL=tokenAuth.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"tokenAuth.js","sourceRoot":"","sources":["../../../src/routes/ts-rest/tokenAuth.ts"],"names":[],"mappings":"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"}
@@ -1,4 +0,0 @@
1
- import Crowi from '../../crowi';
2
- import { Express } from 'express';
3
- declare const _default: (crowi: Crowi, _app: Express) => import("express-serve-static-core").Router;
4
- export default _default;
@@ -1,307 +0,0 @@
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 express_1 = require("@ts-rest/express");
7
- const api_contract_1 = require("@crowi/api-contract");
8
- const express_2 = require("express");
9
- const page_1 = require("../../models/page");
10
- const ts_rest_helpers_1 = require("../../util/ts-rest-helpers");
11
- const page_response_1 = require("../../util/page-response");
12
- const debug_1 = __importDefault(require("debug"));
13
- const debug = (0, debug_1.default)('crowi:routes:ts-rest:user');
14
- /**
15
- * Convert BookmarkDocument to serializable object for API response
16
- */
17
- const bookmarkToResponse = (bookmark) => {
18
- const bookmarkObj = typeof bookmark.toObject === 'function' ? bookmark.toObject() : bookmark;
19
- return {
20
- _id: (0, ts_rest_helpers_1.toStringId)(bookmarkObj._id),
21
- page: bookmarkObj.page ? (0, page_response_1.pageToResponse)(bookmarkObj.page) : null,
22
- user: (0, ts_rest_helpers_1.isPopulatedUser)(bookmarkObj.user) ? (0, ts_rest_helpers_1.toPageUser)(bookmarkObj.user) : (0, ts_rest_helpers_1.toStringId)(bookmarkObj.user),
23
- createdAt: (0, ts_rest_helpers_1.toISOStringOrNull)(bookmarkObj.createdAt) || new Date().toISOString(),
24
- };
25
- };
26
- exports.default = (crowi, _app) => {
27
- const s = (0, express_1.initServer)();
28
- const router = (0, express_2.Router)();
29
- const User = crowi.model('User');
30
- const Page = crowi.model('Page');
31
- const Bookmark = crowi.model('Bookmark');
32
- const userRouter = s.router(api_contract_1.apiContract.user, {
33
- /**
34
- * GET /api/v2/user/:username
35
- * Get user page information
36
- * - Returns user profile with statistics
37
- * - Includes recent pages (10) and bookmarks (10) for initial display
38
- */
39
- getUserPage: async ({ params, req }) => {
40
- const currentUser = req.user;
41
- const { username } = params;
42
- debug('getUserPage called with:', { username, currentUserId: currentUser?._id });
43
- // Authentication check - this endpoint requires login
44
- if (!currentUser) {
45
- return {
46
- status: 401,
47
- body: {
48
- error: {
49
- code: 'AUTHENTICATION_REQUIRED',
50
- message: 'Authentication is required',
51
- },
52
- },
53
- };
54
- }
55
- try {
56
- // Find the target user by username
57
- const targetUser = await User.findUserByUsername(username);
58
- if (!targetUser) {
59
- return {
60
- status: 404,
61
- body: {
62
- error: {
63
- code: 'USER_NOT_FOUND',
64
- message: 'User not found',
65
- },
66
- },
67
- };
68
- }
69
- // Check if user is active
70
- if (targetUser.status !== User.STATUS_ACTIVE) {
71
- return {
72
- status: 404,
73
- body: {
74
- error: {
75
- code: 'USER_NOT_FOUND',
76
- message: 'User not found',
77
- },
78
- },
79
- };
80
- }
81
- // Get page count for the user — same conditions as findListByCreator.
82
- const pageCountConditions = {
83
- creator: targetUser._id,
84
- redirectTo: null,
85
- $or: (0, page_1.visiblePageStatusOr)(currentUser._id, targetUser._id),
86
- };
87
- // If not viewing own page, only show public pages
88
- if (!currentUser._id.equals(targetUser._id)) {
89
- pageCountConditions.grant = Page.GRANT_PUBLIC;
90
- }
91
- const createdPagesCount = await Page.countDocuments(pageCountConditions);
92
- // Get bookmark count for the user
93
- const bookmarksCount = await Bookmark.countDocuments({ user: targetUser._id });
94
- // Get recent pages (10 items)
95
- const recentPagesRaw = await Page.findListByCreator(targetUser, { limit: 10, offset: 0 }, currentUser);
96
- const recentPages = (await Page.populate(recentPagesRaw, [{ path: 'creator' }, { path: 'lastUpdateUser' }]));
97
- // Get recent bookmarks (10 items)
98
- const bookmarkResult = await Bookmark.findByUserId(targetUser._id, { limit: 10, offset: 0 });
99
- const recentBookmarks = bookmarkResult.data;
100
- return {
101
- status: 200,
102
- body: {
103
- user: (0, ts_rest_helpers_1.toUserPublic)(targetUser),
104
- createdPagesCount,
105
- bookmarksCount,
106
- recentPages: recentPages.map((page) => (0, page_response_1.pageToResponse)(page)),
107
- recentBookmarks: recentBookmarks
108
- .filter((bookmark) => bookmark.page) // Filter out bookmarks with null pages
109
- .map((bookmark) => bookmarkToResponse(bookmark)),
110
- },
111
- };
112
- }
113
- catch (err) {
114
- const error = err;
115
- debug('Error fetching user page:', error.message, error.stack);
116
- return {
117
- status: 500,
118
- body: {
119
- error: {
120
- code: 'INTERNAL_ERROR',
121
- message: 'Internal server error',
122
- },
123
- },
124
- };
125
- }
126
- },
127
- /**
128
- * GET /api/v2/user/:username/bookmarks
129
- * Get user bookmarks with pagination
130
- * - Returns paginated list of bookmarks for a user
131
- * - Only returns bookmarks for pages the current user can access
132
- */
133
- getUserBookmarks: async ({ params, query, req }) => {
134
- const currentUser = req.user;
135
- const { username } = params;
136
- const { limit = 50, offset = 0 } = query;
137
- debug('getUserBookmarks called with:', { username, limit, offset, currentUserId: currentUser?._id });
138
- // Authentication check - this endpoint requires login
139
- if (!currentUser) {
140
- return {
141
- status: 401,
142
- body: {
143
- error: {
144
- code: 'AUTHENTICATION_REQUIRED',
145
- message: 'Authentication is required',
146
- },
147
- },
148
- };
149
- }
150
- try {
151
- // Find the target user by username
152
- const targetUser = await User.findUserByUsername(username);
153
- if (!targetUser) {
154
- return {
155
- status: 404,
156
- body: {
157
- error: {
158
- code: 'USER_NOT_FOUND',
159
- message: 'User not found',
160
- },
161
- },
162
- };
163
- }
164
- // Check if user is active
165
- if (targetUser.status !== User.STATUS_ACTIVE) {
166
- return {
167
- status: 404,
168
- body: {
169
- error: {
170
- code: 'USER_NOT_FOUND',
171
- message: 'User not found',
172
- },
173
- },
174
- };
175
- }
176
- // Get bookmarks with pagination
177
- const bookmarkResult = await Bookmark.findByUserId(targetUser._id, { limit, offset });
178
- const bookmarks = bookmarkResult.data;
179
- const total = bookmarkResult.meta.total;
180
- // Calculate pagination
181
- const prev = offset > 0 ? Math.max(0, offset - limit) : null;
182
- const next = offset + limit < total ? offset + limit : null;
183
- return {
184
- status: 200,
185
- body: {
186
- bookmarks: bookmarks.filter((bookmark) => bookmark.page).map((bookmark) => bookmarkToResponse(bookmark)),
187
- pager: {
188
- prev,
189
- next,
190
- offset,
191
- },
192
- total,
193
- },
194
- };
195
- }
196
- catch (err) {
197
- const error = err;
198
- debug('Error fetching user bookmarks:', error.message, error.stack);
199
- return {
200
- status: 500,
201
- body: {
202
- error: {
203
- code: 'INTERNAL_ERROR',
204
- message: 'Internal server error',
205
- },
206
- },
207
- };
208
- }
209
- },
210
- /**
211
- * GET /api/v2/user/:username/pages
212
- * Get user created pages with pagination
213
- * - Returns paginated list of pages created by the user
214
- * - Only returns pages the current user can access
215
- */
216
- getUserPages: async ({ params, query, req }) => {
217
- const currentUser = req.user;
218
- const { username } = params;
219
- const { limit = 50, offset = 0 } = query;
220
- debug('getUserPages called with:', { username, limit, offset, currentUserId: currentUser?._id });
221
- // Authentication check - this endpoint requires login
222
- if (!currentUser) {
223
- return {
224
- status: 401,
225
- body: {
226
- error: {
227
- code: 'AUTHENTICATION_REQUIRED',
228
- message: 'Authentication is required',
229
- },
230
- },
231
- };
232
- }
233
- try {
234
- // Find the target user by username
235
- const targetUser = await User.findUserByUsername(username);
236
- if (!targetUser) {
237
- return {
238
- status: 404,
239
- body: {
240
- error: {
241
- code: 'USER_NOT_FOUND',
242
- message: 'User not found',
243
- },
244
- },
245
- };
246
- }
247
- // Check if user is active
248
- if (targetUser.status !== User.STATUS_ACTIVE) {
249
- return {
250
- status: 404,
251
- body: {
252
- error: {
253
- code: 'USER_NOT_FOUND',
254
- message: 'User not found',
255
- },
256
- },
257
- };
258
- }
259
- // Get pages created by the user with pagination
260
- const rawPages = await Page.findListByCreator(targetUser, { limit, offset }, currentUser);
261
- const pages = (await Page.populate(rawPages, [{ path: 'creator' }, { path: 'lastUpdateUser' }]));
262
- // Get total count for pagination — same conditions as findListByCreator.
263
- const pageCountConditions = {
264
- creator: targetUser._id,
265
- redirectTo: null,
266
- $or: (0, page_1.visiblePageStatusOr)(currentUser._id, targetUser._id),
267
- };
268
- // If not viewing own page, only show public pages
269
- if (!currentUser._id.equals(targetUser._id)) {
270
- pageCountConditions.grant = Page.GRANT_PUBLIC;
271
- }
272
- const total = await Page.countDocuments(pageCountConditions);
273
- // Calculate pagination
274
- const prev = offset > 0 ? Math.max(0, offset - limit) : null;
275
- const next = offset + limit < total ? offset + limit : null;
276
- return {
277
- status: 200,
278
- body: {
279
- pages: pages.map((page) => (0, page_response_1.pageToResponse)(page)),
280
- pager: {
281
- prev,
282
- next,
283
- offset,
284
- },
285
- total,
286
- },
287
- };
288
- }
289
- catch (err) {
290
- const error = err;
291
- debug('Error fetching user pages:', error.message, error.stack);
292
- return {
293
- status: 500,
294
- body: {
295
- error: {
296
- code: 'INTERNAL_ERROR',
297
- message: 'Internal server error',
298
- },
299
- },
300
- };
301
- }
302
- },
303
- });
304
- (0, express_1.createExpressEndpoints)(api_contract_1.apiContract.user, userRouter, router);
305
- return router;
306
- };
307
- //# sourceMappingURL=user.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"user.js","sourceRoot":"","sources":["../../../src/routes/ts-rest/user.ts"],"names":[],"mappings":"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"}
@@ -1,34 +0,0 @@
1
- import { ParsedQs } from 'qs';
2
- import { Types } from 'mongoose';
3
- import { Session, SessionData } from 'express-session';
4
- import type { UserDocument } from '../models/user';
5
- declare module 'express-session' {
6
- interface SessionData {
7
- shareIds?: string[];
8
- secretKeywords?: Record<string, string>;
9
- user?: any;
10
- auth?: any;
11
- google?: any;
12
- github?: any;
13
- callback?: string | null;
14
- redirectTo?: string;
15
- trackingId?: string;
16
- }
17
- }
18
- declare global {
19
- namespace Express {
20
- interface Request {
21
- search?: string;
22
- form?: any;
23
- config?: any;
24
- user?: UserDocument;
25
- skipCsrfVerify?: boolean;
26
- csrfToken?: string | null;
27
- session: Session & Partial<SessionData>;
28
- }
29
- }
30
- }
31
- export declare function getQueryAsString(query: string | ParsedQs | (string | ParsedQs)[] | undefined): string;
32
- export declare function getQueryAsBoolean(query: string | ParsedQs | (string | ParsedQs)[] | undefined): boolean;
33
- export declare function getQueryAsObjectId(query: string | ParsedQs | (string | ParsedQs)[] | undefined): Types.ObjectId | null;
34
- export declare function getQueryAsNumber(query: string | ParsedQs | (string | ParsedQs)[] | undefined, defaultValue?: number): number;
@@ -1,50 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.getQueryAsString = getQueryAsString;
4
- exports.getQueryAsBoolean = getQueryAsBoolean;
5
- exports.getQueryAsObjectId = getQueryAsObjectId;
6
- exports.getQueryAsNumber = getQueryAsNumber;
7
- const mongoose_1 = require("mongoose");
8
- // Query パラメータを string として安全に取得するためのヘルパー関数
9
- function getQueryAsString(query) {
10
- if (query === undefined)
11
- return '';
12
- if (typeof query === 'string')
13
- return query;
14
- if (Array.isArray(query)) {
15
- return query.length > 0 && typeof query[0] === 'string' ? query[0] : '';
16
- }
17
- return String(query);
18
- }
19
- // Query パラメータを boolean として安全に取得するためのヘルパー関数
20
- function getQueryAsBoolean(query) {
21
- if (query === undefined)
22
- return false;
23
- if (typeof query === 'string')
24
- return query === 'true';
25
- if (Array.isArray(query)) {
26
- return query.length > 0 && (query[0] === 'true' || query[0] === true);
27
- }
28
- return Boolean(query);
29
- }
30
- // Query パラメータを ObjectId として安全に取得するためのヘルパー関数
31
- function getQueryAsObjectId(query) {
32
- const strValue = getQueryAsString(query);
33
- if (!strValue)
34
- return null;
35
- try {
36
- // Types.ObjectIdのコンストラクタは文字列を受け取れる
37
- return new mongoose_1.Types.ObjectId(strValue);
38
- }
39
- catch (e) {
40
- return null;
41
- }
42
- }
43
- // Query パラメータを number として安全に取得するためのヘルパー関数
44
- function getQueryAsNumber(query, defaultValue = 0) {
45
- if (query === undefined)
46
- return defaultValue;
47
- const value = parseInt(getQueryAsString(query), 10);
48
- return isNaN(value) ? defaultValue : value;
49
- }
50
- //# sourceMappingURL=express.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"express.js","sourceRoot":"","sources":["../../src/types/express.ts"],"names":[],"mappings":";;AAuCA,4CAOC;AAGD,8CAOC;AAGD,gDAUC;AAGD,4CAKC;AA3ED,uCAAyC;AAoCzC,0CAA0C;AAC1C,SAAgB,gBAAgB,CAAC,KAA4D;IAC3F,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,EAAE,CAAC;IACnC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,CAAC;IAC5C,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,OAAO,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAC1E,CAAC;IACD,OAAO,MAAM,CAAC,KAAK,CAAC,CAAC;AACvB,CAAC;AAED,2CAA2C;AAC3C,SAAgB,iBAAiB,CAAC,KAA4D;IAC5F,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,KAAK,CAAC;IACtC,IAAI,OAAO,KAAK,KAAK,QAAQ;QAAE,OAAO,KAAK,KAAK,MAAM,CAAC;IACvD,IAAI,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,CAAC;QACzB,OAAO,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,KAAK,MAAM,IAAI,KAAK,CAAC,CAAC,CAAC,KAAM,IAAY,CAAC,CAAC;IACjF,CAAC;IACD,OAAO,OAAO,CAAC,KAAK,CAAC,CAAC;AACxB,CAAC;AAED,4CAA4C;AAC5C,SAAgB,kBAAkB,CAAC,KAA4D;IAC7F,MAAM,QAAQ,GAAG,gBAAgB,CAAC,KAAK,CAAC,CAAC;IACzC,IAAI,CAAC,QAAQ;QAAE,OAAO,IAAI,CAAC;IAE3B,IAAI,CAAC;QACH,mCAAmC;QACnC,OAAO,IAAI,gBAAK,CAAC,QAAQ,CAAC,QAAQ,CAAC,CAAC;IACtC,CAAC;IAAC,OAAO,CAAC,EAAE,CAAC;QACX,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC;AAED,0CAA0C;AAC1C,SAAgB,gBAAgB,CAAC,KAA4D,EAAE,YAAY,GAAG,CAAC;IAC7G,IAAI,KAAK,KAAK,SAAS;QAAE,OAAO,YAAY,CAAC;IAE7C,MAAM,KAAK,GAAG,QAAQ,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE,EAAE,CAAC,CAAC;IACpD,OAAO,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,KAAK,CAAC;AAC7C,CAAC"}
@@ -1 +0,0 @@
1
- export declare const parseAccessToken: (req: any) => any;
@@ -1,34 +0,0 @@
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
- exports.parseAccessToken = void 0;
7
- const debug_1 = __importDefault(require("debug"));
8
- const debug = (0, debug_1.default)('crowi:util:accessTokenParser');
9
- /**
10
- * Extract Bearer token from Authorization header.
11
- *
12
- * @param {Object} headers HTTP request headers
13
- * @param {string} headers.authorization Authorization header value.
14
- * @return {?string} found access_token or null.
15
- */
16
- const extractBearerToken = (headers) => {
17
- const v = headers.authorization;
18
- if (!v) {
19
- return null;
20
- }
21
- const parts = v.trim().replace(/( )+/g, ' ').split(' ');
22
- if (parts.length !== 2 || parts[0] !== 'Bearer') {
23
- return null;
24
- }
25
- return parts[1];
26
- };
27
- const parseAccessToken = (req) => {
28
- if (!req) {
29
- throw new Error('req required.');
30
- }
31
- return extractBearerToken(req.headers) || req.query.access_token || req.body.access_token || null;
32
- };
33
- exports.parseAccessToken = parseAccessToken;
34
- //# sourceMappingURL=accessTokenParser.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"accessTokenParser.js","sourceRoot":"","sources":["../../src/util/accessTokenParser.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAE1B,MAAM,KAAK,GAAG,IAAA,eAAK,EAAC,8BAA8B,CAAC,CAAC;AAEpD;;;;;;GAMG;AACH,MAAM,kBAAkB,GAAG,CAAC,OAAO,EAAE,EAAE;IACrC,MAAM,CAAC,GAAG,OAAO,CAAC,aAAa,CAAC;IAChC,IAAI,CAAC,CAAC,EAAE,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;IAED,MAAM,KAAK,GAAG,CAAC,CAAC,IAAI,EAAE,CAAC,OAAO,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;IACxD,IAAI,KAAK,CAAC,MAAM,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,KAAK,QAAQ,EAAE,CAAC;QAChD,OAAO,IAAI,CAAC;IACd,CAAC;IAED,OAAO,KAAK,CAAC,CAAC,CAAC,CAAC;AAClB,CAAC,CAAC;AAEK,MAAM,gBAAgB,GAAG,CAAC,GAAG,EAAE,EAAE;IACtC,IAAI,CAAC,GAAG,EAAE,CAAC;QACT,MAAM,IAAI,KAAK,CAAC,eAAe,CAAC,CAAC;IACnC,CAAC;IAED,OAAO,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,YAAY,IAAI,GAAG,CAAC,IAAI,CAAC,YAAY,IAAI,IAAI,CAAC;AACpG,CAAC,CAAC;AANW,QAAA,gBAAgB,oBAM3B"}
@@ -1,11 +0,0 @@
1
- declare const _default: {
2
- parseOptionsForElasticSearch(params: any): {
3
- limit: any;
4
- offset: any;
5
- };
6
- parseOptions(params: any): {
7
- limit: any;
8
- offset: any;
9
- };
10
- };
11
- export default _default;
@@ -1,33 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- const LIMIT_DEFAULT = 50;
4
- const LIMIT_MAX = 1000;
5
- const OFFSET_DEFAULT = 0;
6
- const DEFAULT_MAX_RESULT_WINDOW = 10000;
7
- const parseIntValue = (value, defaultValue, maxLimit) => {
8
- if (!value) {
9
- return defaultValue;
10
- }
11
- const v = parseInt(value);
12
- if (!maxLimit) {
13
- return v;
14
- }
15
- return v <= maxLimit ? v : maxLimit;
16
- };
17
- exports.default = {
18
- parseOptionsForElasticSearch(params) {
19
- const limit = parseIntValue(params.limit, LIMIT_DEFAULT, LIMIT_MAX);
20
- const offset = parseIntValue(params.offset, OFFSET_DEFAULT);
21
- // See https://github.com/crowi/crowi/pull/293
22
- if (limit + offset > DEFAULT_MAX_RESULT_WINDOW) {
23
- throw new Error(`(limit + offset) must be less than or equal to ${DEFAULT_MAX_RESULT_WINDOW}`);
24
- }
25
- return { limit, offset };
26
- },
27
- parseOptions(params) {
28
- const limit = parseIntValue(params.limit, LIMIT_DEFAULT, LIMIT_MAX);
29
- const offset = parseIntValue(params.offset, OFFSET_DEFAULT);
30
- return { limit, offset };
31
- },
32
- };
33
- //# sourceMappingURL=apiPaginate.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"apiPaginate.js","sourceRoot":"","sources":["../../src/util/apiPaginate.ts"],"names":[],"mappings":";;AAAA,MAAM,aAAa,GAAG,EAAE,CAAC;AACzB,MAAM,SAAS,GAAG,IAAI,CAAC;AAEvB,MAAM,cAAc,GAAG,CAAC,CAAC;AAEzB,MAAM,yBAAyB,GAAG,KAAK,CAAC;AAExC,MAAM,aAAa,GAAG,CAAC,KAAK,EAAE,YAAY,EAAE,QAAS,EAAE,EAAE;IACvD,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,OAAO,YAAY,CAAC;IACtB,CAAC;IAED,MAAM,CAAC,GAAG,QAAQ,CAAC,KAAK,CAAC,CAAC;IAC1B,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,OAAO,CAAC,CAAC;IACX,CAAC;IAED,OAAO,CAAC,IAAI,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC;AACtC,CAAC,CAAC;AAEF,kBAAe;IACb,4BAA4B,CAAC,MAAM;QACjC,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAE5D,8CAA8C;QAC9C,IAAI,KAAK,GAAG,MAAM,GAAG,yBAAyB,EAAE,CAAC;YAC/C,MAAM,IAAI,KAAK,CAAC,kDAAkD,yBAAyB,EAAE,CAAC,CAAC;QACjG,CAAC;QAED,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC3B,CAAC;IACD,YAAY,CAAC,MAAM;QACjB,MAAM,KAAK,GAAG,aAAa,CAAC,MAAM,CAAC,KAAK,EAAE,aAAa,EAAE,SAAS,CAAC,CAAC;QACpE,MAAM,MAAM,GAAG,aAAa,CAAC,MAAM,CAAC,MAAM,EAAE,cAAc,CAAC,CAAC;QAE5D,OAAO,EAAE,KAAK,EAAE,MAAM,EAAE,CAAC;IAC3B,CAAC;CACF,CAAC"}
@@ -1,9 +0,0 @@
1
- declare const _default: {
2
- error(err?: any, info?: {}): {
3
- ok: boolean;
4
- info: any;
5
- error?: any;
6
- };
7
- success(data?: any): any;
8
- };
9
- export default _default;
@@ -1,23 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.default = {
4
- error(err, info = {}) {
5
- const result = {
6
- ok: false,
7
- info,
8
- };
9
- if (err instanceof Error) {
10
- result.error = err.toString();
11
- }
12
- else {
13
- result.error = err;
14
- }
15
- return result;
16
- },
17
- success(data) {
18
- const result = data || {};
19
- result.ok = true;
20
- return result;
21
- },
22
- };
23
- //# sourceMappingURL=apiResponse.js.map