@fecommunity/reactpress-server 4.0.0-beta.9 → 4.0.1

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 (334) hide show
  1. package/README.md +327 -45
  2. package/bin/reactpress-server.js +6 -14
  3. package/dist/app.module.js +27 -15
  4. package/dist/app.module.js.map +1 -1
  5. package/dist/filters/http-exception.filter.js +1 -1
  6. package/dist/filters/http-exception.filter.js.map +1 -1
  7. package/dist/generate-swagger.d.ts +1 -1
  8. package/dist/generate-swagger.js +11 -12
  9. package/dist/generate-swagger.js.map +1 -1
  10. package/dist/interceptors/transform.interceptor.d.ts +6 -2
  11. package/dist/interceptors/transform.interceptor.js +5 -10
  12. package/dist/interceptors/transform.interceptor.js.map +1 -1
  13. package/dist/logger/index.js +4 -5
  14. package/dist/logger/index.js.map +1 -1
  15. package/dist/main.d.ts +1 -1
  16. package/dist/main.js +23 -45
  17. package/dist/main.js.map +1 -1
  18. package/dist/modules/article/article.controller.d.ts +2 -7
  19. package/dist/modules/article/article.controller.js +48 -103
  20. package/dist/modules/article/article.controller.js.map +1 -1
  21. package/dist/modules/article/article.entity.d.ts +0 -4
  22. package/dist/modules/article/article.entity.js +41 -61
  23. package/dist/modules/article/article.entity.js.map +1 -1
  24. package/dist/modules/article/article.module.js +3 -18
  25. package/dist/modules/article/article.module.js.map +1 -1
  26. package/dist/modules/article/article.service.d.ts +2 -16
  27. package/dist/modules/article/article.service.js +29 -151
  28. package/dist/modules/article/article.service.js.map +1 -1
  29. package/dist/modules/auth/auth.controller.js +11 -11
  30. package/dist/modules/auth/auth.controller.js.map +1 -1
  31. package/dist/modules/auth/auth.module.js +4 -4
  32. package/dist/modules/auth/auth.module.js.map +1 -1
  33. package/dist/modules/auth/auth.service.js +7 -8
  34. package/dist/modules/auth/auth.service.js.map +1 -1
  35. package/dist/modules/auth/jwt-auth.guard.js +3 -4
  36. package/dist/modules/auth/jwt-auth.guard.js.map +1 -1
  37. package/dist/modules/auth/jwt.strategy.js +3 -4
  38. package/dist/modules/auth/jwt.strategy.js.map +1 -1
  39. package/dist/modules/auth/roles.guard.js +2 -2
  40. package/dist/modules/auth/roles.guard.js.map +1 -1
  41. package/dist/modules/category/category.controller.js +20 -21
  42. package/dist/modules/category/category.controller.js.map +1 -1
  43. package/dist/modules/category/category.entity.js +13 -13
  44. package/dist/modules/category/category.entity.js.map +1 -1
  45. package/dist/modules/category/category.module.js +1 -1
  46. package/dist/modules/category/category.module.js.map +1 -1
  47. package/dist/modules/category/category.service.js +4 -5
  48. package/dist/modules/category/category.service.js.map +1 -1
  49. package/dist/modules/comment/comment.controller.js +20 -24
  50. package/dist/modules/comment/comment.controller.js.map +1 -1
  51. package/dist/modules/comment/comment.entity.js +31 -31
  52. package/dist/modules/comment/comment.entity.js.map +1 -1
  53. package/dist/modules/comment/comment.module.js +2 -11
  54. package/dist/modules/comment/comment.module.js.map +1 -1
  55. package/dist/modules/comment/comment.service.d.ts +1 -5
  56. package/dist/modules/comment/comment.service.js +16 -43
  57. package/dist/modules/comment/comment.service.js.map +1 -1
  58. package/dist/modules/comment/html.d.ts +1 -1
  59. package/dist/modules/comment/html.js +3 -3
  60. package/dist/modules/comment/html.js.map +1 -1
  61. package/dist/modules/file/file.controller.d.ts +1 -1
  62. package/dist/modules/file/file.controller.js +20 -22
  63. package/dist/modules/file/file.controller.js.map +1 -1
  64. package/dist/modules/file/file.entity.d.ts +0 -7
  65. package/dist/modules/file/file.entity.js +15 -20
  66. package/dist/modules/file/file.entity.js.map +1 -1
  67. package/dist/modules/file/file.module.js +4 -16
  68. package/dist/modules/file/file.module.js.map +1 -1
  69. package/dist/modules/file/file.service.d.ts +1 -5
  70. package/dist/modules/file/file.service.js +24 -70
  71. package/dist/modules/file/file.service.js.map +1 -1
  72. package/dist/modules/install/install.controller.js +5 -5
  73. package/dist/modules/install/install.controller.js.map +1 -1
  74. package/dist/modules/install/install.module.js +1 -1
  75. package/dist/modules/install/install.module.js.map +1 -1
  76. package/dist/modules/install/install.service.js +2 -2
  77. package/dist/modules/install/install.service.js.map +1 -1
  78. package/dist/modules/knowledge/knowledge.controller.js +33 -35
  79. package/dist/modules/knowledge/knowledge.controller.js.map +1 -1
  80. package/dist/modules/knowledge/knowledge.entity.js +33 -33
  81. package/dist/modules/knowledge/knowledge.entity.js.map +1 -1
  82. package/dist/modules/knowledge/knowledge.module.js +1 -1
  83. package/dist/modules/knowledge/knowledge.module.js.map +1 -1
  84. package/dist/modules/knowledge/knowledge.service.js +11 -12
  85. package/dist/modules/knowledge/knowledge.service.js.map +1 -1
  86. package/dist/modules/page/page.controller.js +23 -24
  87. package/dist/modules/page/page.controller.js.map +1 -1
  88. package/dist/modules/page/page.entity.js +27 -27
  89. package/dist/modules/page/page.entity.js.map +1 -1
  90. package/dist/modules/page/page.module.js +1 -1
  91. package/dist/modules/page/page.module.js.map +1 -1
  92. package/dist/modules/page/page.service.js +12 -12
  93. package/dist/modules/page/page.service.js.map +1 -1
  94. package/dist/modules/search/search.controller.js +12 -12
  95. package/dist/modules/search/search.controller.js.map +1 -1
  96. package/dist/modules/search/search.entity.js +13 -13
  97. package/dist/modules/search/search.entity.js.map +1 -1
  98. package/dist/modules/search/search.module.js +1 -1
  99. package/dist/modules/search/search.module.js.map +1 -1
  100. package/dist/modules/search/search.service.js +2 -2
  101. package/dist/modules/search/search.service.js.map +1 -1
  102. package/dist/modules/setting/setting.constant.d.ts +4 -5
  103. package/dist/modules/setting/setting.constant.js +20 -5
  104. package/dist/modules/setting/setting.constant.js.map +1 -1
  105. package/dist/modules/setting/setting.controller.js +11 -11
  106. package/dist/modules/setting/setting.controller.js.map +1 -1
  107. package/dist/modules/setting/setting.entity.d.ts +0 -3
  108. package/dist/modules/setting/setting.entity.js +49 -64
  109. package/dist/modules/setting/setting.entity.js.map +1 -1
  110. package/dist/modules/setting/setting.module.js +2 -2
  111. package/dist/modules/setting/setting.module.js.map +1 -1
  112. package/dist/modules/setting/setting.service.d.ts +2 -13
  113. package/dist/modules/setting/setting.service.js +24 -169
  114. package/dist/modules/setting/setting.service.js.map +1 -1
  115. package/dist/modules/smtp/mail.util.d.ts +6 -7
  116. package/dist/modules/smtp/mail.util.js +9 -5
  117. package/dist/modules/smtp/mail.util.js.map +1 -1
  118. package/dist/modules/smtp/smtp.controller.d.ts +0 -3
  119. package/dist/modules/smtp/smtp.controller.js +14 -27
  120. package/dist/modules/smtp/smtp.controller.js.map +1 -1
  121. package/dist/modules/smtp/smtp.entity.js +15 -15
  122. package/dist/modules/smtp/smtp.entity.js.map +1 -1
  123. package/dist/modules/smtp/smtp.module.js +2 -2
  124. package/dist/modules/smtp/smtp.module.js.map +1 -1
  125. package/dist/modules/smtp/smtp.service.d.ts +0 -14
  126. package/dist/modules/smtp/smtp.service.js +12 -40
  127. package/dist/modules/smtp/smtp.service.js.map +1 -1
  128. package/dist/modules/tag/tag.controller.js +22 -24
  129. package/dist/modules/tag/tag.controller.js.map +1 -1
  130. package/dist/modules/tag/tag.entity.js +12 -12
  131. package/dist/modules/tag/tag.entity.js.map +1 -1
  132. package/dist/modules/tag/tag.module.js +1 -1
  133. package/dist/modules/tag/tag.module.js.map +1 -1
  134. package/dist/modules/tag/tag.service.js +4 -5
  135. package/dist/modules/tag/tag.service.js.map +1 -1
  136. package/dist/modules/user/user.controller.js +28 -39
  137. package/dist/modules/user/user.controller.js.map +1 -1
  138. package/dist/modules/user/user.entity.js +22 -22
  139. package/dist/modules/user/user.entity.js.map +1 -1
  140. package/dist/modules/user/user.module.js +2 -2
  141. package/dist/modules/user/user.module.js.map +1 -1
  142. package/dist/modules/user/user.service.js +12 -16
  143. package/dist/modules/user/user.service.js.map +1 -1
  144. package/dist/modules/view/view.controller.js +19 -20
  145. package/dist/modules/view/view.controller.js.map +1 -1
  146. package/dist/modules/view/view.entity.js +24 -24
  147. package/dist/modules/view/view.entity.js.map +1 -1
  148. package/dist/modules/view/view.module.js +1 -1
  149. package/dist/modules/view/view.module.js.map +1 -1
  150. package/dist/modules/view/view.service.js +4 -4
  151. package/dist/modules/view/view.service.js.map +1 -1
  152. package/dist/public/favicon.png +0 -0
  153. package/dist/starter.d.ts +1 -3
  154. package/dist/starter.js +14 -202
  155. package/dist/starter.js.map +1 -1
  156. package/dist/tsconfig.build.tsbuildinfo +15957 -1
  157. package/dist/utils/date.util.js +1 -1
  158. package/dist/utils/date.util.js.map +1 -1
  159. package/dist/utils/markdown.util.js +1 -1
  160. package/dist/utils/markdown.util.js.map +1 -1
  161. package/dist/utils/oss/aliyun-oss-client.d.ts +1 -3
  162. package/dist/utils/oss/aliyun-oss-client.js +0 -5
  163. package/dist/utils/oss/aliyun-oss-client.js.map +1 -1
  164. package/dist/utils/oss/oss-client.d.ts +1 -3
  165. package/dist/utils/oss/oss-client.js.map +1 -1
  166. package/dist/utils/oss.util.d.ts +1 -3
  167. package/dist/utils/oss.util.js +1 -6
  168. package/dist/utils/oss.util.js.map +1 -1
  169. package/dist/utils/uniqueid.util.js +1 -1
  170. package/dist/utils/uniqueid.util.js.map +1 -1
  171. package/dist/utils/upload.util.d.ts +2 -6
  172. package/dist/utils/upload.util.js +8 -23
  173. package/dist/utils/upload.util.js.map +1 -1
  174. package/dist/utils/user.util.d.ts +0 -1
  175. package/dist/utils/user.util.js +2 -6
  176. package/dist/utils/user.util.js.map +1 -1
  177. package/package.json +28 -21
  178. package/public/favicon.png +0 -0
  179. package/dist/common/api-messages.d.ts +0 -41
  180. package/dist/common/api-messages.js +0 -45
  181. package/dist/common/api-messages.js.map +0 -1
  182. package/dist/database/typeorm-options.d.ts +0 -3
  183. package/dist/database/typeorm-options.js +0 -60
  184. package/dist/database/typeorm-options.js.map +0 -1
  185. package/dist/modules/api-key/api-key.controller.d.ts +0 -14
  186. package/dist/modules/api-key/api-key.controller.js +0 -63
  187. package/dist/modules/api-key/api-key.controller.js.map +0 -1
  188. package/dist/modules/api-key/api-key.entity.d.ts +0 -11
  189. package/dist/modules/api-key/api-key.entity.js +0 -63
  190. package/dist/modules/api-key/api-key.entity.js.map +0 -1
  191. package/dist/modules/api-key/api-key.guard.d.ts +0 -7
  192. package/dist/modules/api-key/api-key.guard.js +0 -39
  193. package/dist/modules/api-key/api-key.guard.js.map +0 -1
  194. package/dist/modules/api-key/api-key.module.d.ts +0 -2
  195. package/dist/modules/api-key/api-key.module.js +0 -28
  196. package/dist/modules/api-key/api-key.module.js.map +0 -1
  197. package/dist/modules/api-key/api-key.service.d.ts +0 -15
  198. package/dist/modules/api-key/api-key.service.js +0 -81
  199. package/dist/modules/api-key/api-key.service.js.map +0 -1
  200. package/dist/modules/article/article-revision.entity.d.ts +0 -11
  201. package/dist/modules/article/article-revision.entity.js +0 -53
  202. package/dist/modules/article/article-revision.entity.js.map +0 -1
  203. package/dist/modules/article/article-slug.util.d.ts +0 -2
  204. package/dist/modules/article/article-slug.util.js +0 -19
  205. package/dist/modules/article/article-slug.util.js.map +0 -1
  206. package/dist/modules/article/scheduled-publish.service.d.ts +0 -13
  207. package/dist/modules/article/scheduled-publish.service.js +0 -65
  208. package/dist/modules/article/scheduled-publish.service.js.map +0 -1
  209. package/dist/modules/bootstrap/bootstrap.constants.d.ts +0 -20
  210. package/dist/modules/bootstrap/bootstrap.constants.js +0 -171
  211. package/dist/modules/bootstrap/bootstrap.constants.js.map +0 -1
  212. package/dist/modules/bootstrap/bootstrap.service.d.ts +0 -22
  213. package/dist/modules/bootstrap/bootstrap.service.js +0 -183
  214. package/dist/modules/bootstrap/bootstrap.service.js.map +0 -1
  215. package/dist/modules/bootstrap/install-locale.d.ts +0 -2
  216. package/dist/modules/bootstrap/install-locale.js +0 -11
  217. package/dist/modules/bootstrap/install-locale.js.map +0 -1
  218. package/dist/modules/extension/extension.module.d.ts +0 -9
  219. package/dist/modules/extension/extension.module.js +0 -50
  220. package/dist/modules/extension/extension.module.js.map +0 -1
  221. package/dist/modules/extension/plugin-loader.service.d.ts +0 -12
  222. package/dist/modules/extension/plugin-loader.service.js +0 -96
  223. package/dist/modules/extension/plugin-loader.service.js.map +0 -1
  224. package/dist/modules/extension/plugin-registry.bridge.d.ts +0 -3
  225. package/dist/modules/extension/plugin-registry.bridge.js +0 -44
  226. package/dist/modules/extension/plugin-registry.bridge.js.map +0 -1
  227. package/dist/modules/extension/plugin.controller.d.ts +0 -22
  228. package/dist/modules/extension/plugin.controller.js +0 -155
  229. package/dist/modules/extension/plugin.controller.js.map +0 -1
  230. package/dist/modules/extension/plugin.service.d.ts +0 -52
  231. package/dist/modules/extension/plugin.service.js +0 -391
  232. package/dist/modules/extension/plugin.service.js.map +0 -1
  233. package/dist/modules/extension/preview-draft.store.d.ts +0 -13
  234. package/dist/modules/extension/preview-draft.store.js +0 -41
  235. package/dist/modules/extension/preview-draft.store.js.map +0 -1
  236. package/dist/modules/extension/theme-registry.bridge.d.ts +0 -56
  237. package/dist/modules/extension/theme-registry.bridge.js +0 -46
  238. package/dist/modules/extension/theme-registry.bridge.js.map +0 -1
  239. package/dist/modules/extension/theme.controller.d.ts +0 -66
  240. package/dist/modules/extension/theme.controller.js +0 -301
  241. package/dist/modules/extension/theme.controller.js.map +0 -1
  242. package/dist/modules/extension/theme.service.d.ts +0 -140
  243. package/dist/modules/extension/theme.service.js +0 -1039
  244. package/dist/modules/extension/theme.service.js.map +0 -1
  245. package/dist/modules/file/file-optimization.controller.d.ts +0 -12
  246. package/dist/modules/file/file-optimization.controller.js +0 -79
  247. package/dist/modules/file/file-optimization.controller.js.map +0 -1
  248. package/dist/modules/file/file-optimization.service.d.ts +0 -36
  249. package/dist/modules/file/file-optimization.service.js +0 -385
  250. package/dist/modules/file/file-optimization.service.js.map +0 -1
  251. package/dist/modules/file/file-optimization.types.d.ts +0 -66
  252. package/dist/modules/file/file-optimization.types.js +0 -5
  253. package/dist/modules/file/file-optimization.types.js.map +0 -1
  254. package/dist/modules/file/image-optimizer-plugin.guard.d.ts +0 -7
  255. package/dist/modules/file/image-optimizer-plugin.guard.js +0 -33
  256. package/dist/modules/file/image-optimizer-plugin.guard.js.map +0 -1
  257. package/dist/modules/health/health.controller.d.ts +0 -11
  258. package/dist/modules/health/health.controller.js +0 -55
  259. package/dist/modules/health/health.controller.js.map +0 -1
  260. package/dist/modules/health/health.module.d.ts +0 -2
  261. package/dist/modules/health/health.module.js +0 -20
  262. package/dist/modules/health/health.module.js.map +0 -1
  263. package/dist/modules/hook/hook.module.d.ts +0 -2
  264. package/dist/modules/hook/hook.module.js +0 -22
  265. package/dist/modules/hook/hook.module.js.map +0 -1
  266. package/dist/modules/hook/hook.service.d.ts +0 -26
  267. package/dist/modules/hook/hook.service.js +0 -105
  268. package/dist/modules/hook/hook.service.js.map +0 -1
  269. package/dist/modules/webhook/webhook.controller.d.ts +0 -12
  270. package/dist/modules/webhook/webhook.controller.js +0 -63
  271. package/dist/modules/webhook/webhook.controller.js.map +0 -1
  272. package/dist/modules/webhook/webhook.entity.d.ts +0 -9
  273. package/dist/modules/webhook/webhook.entity.js +0 -54
  274. package/dist/modules/webhook/webhook.entity.js.map +0 -1
  275. package/dist/modules/webhook/webhook.module.d.ts +0 -2
  276. package/dist/modules/webhook/webhook.module.js +0 -27
  277. package/dist/modules/webhook/webhook.module.js.map +0 -1
  278. package/dist/modules/webhook/webhook.service.d.ts +0 -16
  279. package/dist/modules/webhook/webhook.service.js +0 -100
  280. package/dist/modules/webhook/webhook.service.js.map +0 -1
  281. package/dist/node-polyfills.d.ts +0 -18
  282. package/dist/node-polyfills.js +0 -24
  283. package/dist/node-polyfills.js.map +0 -1
  284. package/dist/public/apple-touch-icon.png +0 -0
  285. package/dist/public/favicon-16.png +0 -0
  286. package/dist/public/favicon-32.png +0 -0
  287. package/dist/public/favicon-48.png +0 -0
  288. package/dist/public/favicon.ico +0 -0
  289. package/dist/public/icon-192.png +0 -0
  290. package/dist/public/icon-512.png +0 -0
  291. package/dist/public/logo-200.png +0 -0
  292. package/dist/public/logo-400.png +0 -0
  293. package/dist/public/logo.png +0 -0
  294. package/dist/public/logo.svg +0 -7
  295. package/dist/public/uploads/2026-05-30/QR3X4UZQ93ZTUPGXCFA9II..png +0 -0
  296. package/dist/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8.webp +0 -0
  297. package/dist/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_medium.webp +0 -0
  298. package/dist/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_thumb.webp +0 -0
  299. package/dist/public/uploads/2026-05-31/I2SZC0ONA7CF31UM46MN56..jpg +0 -0
  300. package/dist/tsconfig.tsbuildinfo +0 -1
  301. package/dist/utils/html-sanitize.util.d.ts +0 -1
  302. package/dist/utils/html-sanitize.util.js +0 -33
  303. package/dist/utils/html-sanitize.util.js.map +0 -1
  304. package/dist/utils/image-processor.util.d.ts +0 -23
  305. package/dist/utils/image-processor.util.js +0 -88
  306. package/dist/utils/image-processor.util.js.map +0 -1
  307. package/dist/utils/local-api-quiet.util.d.ts +0 -1
  308. package/dist/utils/local-api-quiet.util.js +0 -8
  309. package/dist/utils/local-api-quiet.util.js.map +0 -1
  310. package/dist/utils/project-root.util.d.ts +0 -2
  311. package/dist/utils/project-root.util.js +0 -42
  312. package/dist/utils/project-root.util.js.map +0 -1
  313. package/dist/utils/query-whitelist.util.d.ts +0 -1
  314. package/dist/utils/query-whitelist.util.js +0 -100
  315. package/dist/utils/query-whitelist.util.js.map +0 -1
  316. package/dist/utils/theme-placeholder-cover.d.ts +0 -8
  317. package/dist/utils/theme-placeholder-cover.js +0 -94
  318. package/dist/utils/theme-placeholder-cover.js.map +0 -1
  319. package/public/apple-touch-icon.png +0 -0
  320. package/public/favicon-16.png +0 -0
  321. package/public/favicon-32.png +0 -0
  322. package/public/favicon-48.png +0 -0
  323. package/public/favicon.ico +0 -0
  324. package/public/icon-192.png +0 -0
  325. package/public/icon-512.png +0 -0
  326. package/public/logo-200.png +0 -0
  327. package/public/logo-400.png +0 -0
  328. package/public/logo.png +0 -0
  329. package/public/logo.svg +0 -7
  330. package/public/uploads/2026-05-30/QR3X4UZQ93ZTUPGXCFA9II..png +0 -0
  331. package/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8.webp +0 -0
  332. package/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_medium.webp +0 -0
  333. package/public/uploads/2026-05-31/BXQV3NX9ZVWHGNOSX9AXD8_thumb.webp +0 -0
  334. package/public/uploads/2026-05-31/I2SZC0ONA7CF31UM46MN56..jpg +0 -0
@@ -7,7 +7,7 @@ const dateFormat = (date = null, format = 'yyyy-MM-dd HH:mm:ss') => {
7
7
  date = new Date();
8
8
  }
9
9
  const t = date instanceof Date ? date : new Date(date);
10
- return (0, date_fns_1.format)(t, format);
10
+ return date_fns_1.format(t, format);
11
11
  };
12
12
  exports.dateFormat = dateFormat;
13
13
  //# sourceMappingURL=date.util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"date.util.js","sourceRoot":"","sources":["../../src/utils/date.util.ts"],"names":[],"mappings":";;;AAAA,uCAAkD;AAE3C,MAAM,UAAU,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,MAAM,GAAG,qBAAqB,EAAE,EAAE;IACxE,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;KACnB;IAED,MAAM,CAAC,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvD,OAAO,IAAA,iBAAY,EAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACjC,CAAC,CAAC;AARW,QAAA,UAAU,cAQrB"}
1
+ {"version":3,"file":"date.util.js","sourceRoot":"","sources":["../../src/utils/date.util.ts"],"names":[],"mappings":";;;AAAA,uCAAkD;AAE3C,MAAM,UAAU,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,MAAM,GAAG,qBAAqB,EAAE,EAAE;IACxE,IAAI,IAAI,KAAK,IAAI,IAAI,IAAI,KAAK,SAAS,EAAE;QACvC,IAAI,GAAG,IAAI,IAAI,EAAE,CAAC;KACnB;IAED,MAAM,CAAC,GAAG,IAAI,YAAY,IAAI,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IAEvD,OAAO,iBAAY,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC;AACjC,CAAC,CAAC;AARW,QAAA,UAAU,cAQrB"}
@@ -27,7 +27,7 @@ const marked = (content) => {
27
27
  const toc = [];
28
28
  renderer.heading = (text, level) => {
29
29
  const anchor = 'heading-' + toc.length;
30
- toc.push({ level, id: anchor, text });
30
+ toc.push([level, anchor, text]);
31
31
  return `<h${level} id="${anchor}">${text}</h${level}>`;
32
32
  };
33
33
  const marked = (text) => {
@@ -1 +1 @@
1
- {"version":3,"file":"markdown.util.js","sourceRoot":"","sources":["../../src/utils/markdown.util.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,iCAAiC;AAEjC,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEvC,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;IACjC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAE/D,OAAO;IACL,KAAK;aACI,WAAW,2BAA2B,WAAW;;;IAG1D,IAAI;KACH,KAAK,GAAG,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAC,UAAU,CAAC;IAChB,SAAS,CAAC,IAAY,EAAE,IAAY;QAClC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC;SACzC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;IACxC,CAAC;IACD,QAAQ;CACT,CAAC,CAAC;AAEI,MAAM,MAAM,GAAG,CAAC,OAAe,EAAiC,EAAE;IACvE,MAAM,GAAG,GAAuD,EAAE,CAAC;IAEnE,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;QACjD,MAAM,MAAM,GAAG,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC;QAEvC,GAAG,CAAC,IAAI,CAAC,EAAE,KAAK,EAAE,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC;QACtC,OAAO,KAAK,KAAK,QAAQ,MAAM,KAAK,IAAI,MAAM,KAAK,GAAG,CAAC;IACzD,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;QAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;AACrD,CAAC,CAAC;AAlBW,QAAA,MAAM,UAkBjB"}
1
+ {"version":3,"file":"markdown.util.js","sourceRoot":"","sources":["../../src/utils/markdown.util.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AACrC,iCAAiC;AAEjC,MAAM,QAAQ,GAAG,IAAI,MAAM,CAAC,QAAQ,EAAE,CAAC;AAEvC,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE;IACjC,MAAM,WAAW,GAAG,IAAI,CAAC,WAAW,EAAE,CAAC,OAAO,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC;IAE/D,OAAO;IACL,KAAK;aACI,WAAW,2BAA2B,WAAW;;;IAG1D,IAAI;KACH,KAAK,GAAG,CAAC;AACd,CAAC,CAAC;AAEF,MAAM,CAAC,UAAU,CAAC;IAChB,SAAS,CAAC,IAAY,EAAE,IAAY;QAClC,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,CAAC,CAAC,KAAK,CAAC;SACzC;QACD,OAAO,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,KAAK,CAAC;IACxC,CAAC;IACD,QAAQ;CACT,CAAC,CAAC;AAEI,MAAM,MAAM,GAAG,CAAC,OAAe,EAAiC,EAAE;IACvE,MAAM,GAAG,GAAG,EAAE,CAAC;IAEf,QAAQ,CAAC,OAAO,GAAG,CAAC,IAAY,EAAE,KAAa,EAAE,EAAE;QACjD,MAAM,MAAM,GAAG,UAAU,GAAG,GAAG,CAAC,MAAM,CAAC;QAEvC,GAAG,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,MAAM,EAAE,IAAI,CAAC,CAAC,CAAC;QAChC,OAAO,KAAK,KAAK,QAAQ,MAAM,KAAK,IAAI,MAAM,KAAK,GAAG,CAAC;IACzD,CAAC,CAAC;IAEF,MAAM,MAAM,GAAG,CAAC,IAAY,EAAE,EAAE;QAC9B,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC/B,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,OAAO,CAAC,SAAS,EAAE,oBAAoB,CAAC,CAAC;QACnE,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;IAEF,MAAM,IAAI,GAAG,MAAM,CAAC,OAAO,CAAC,CAAC;IAC7B,OAAO,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,CAAC,SAAS,CAAC,GAAG,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC;AACrD,CAAC,CAAC;AAlBW,QAAA,MAAM,UAkBjB"}
@@ -1,8 +1,6 @@
1
- /// <reference types="node" />
2
1
  import { OssClient } from './oss-client';
3
2
  export declare class AliyunOssClient extends OssClient {
4
3
  private buildClient;
5
- putFile(filepath: string, buffer: Buffer): Promise<any>;
6
- getFile(filepath: string): Promise<Buffer>;
4
+ putFile(filepath: string, buffer: ReadableStream): Promise<any>;
7
5
  deleteFile(url: string): Promise<void>;
8
6
  }
@@ -19,11 +19,6 @@ class AliyunOssClient extends oss_client_1.OssClient {
19
19
  const { url } = await client.put(filepath, buffer);
20
20
  return url;
21
21
  }
22
- async getFile(filepath) {
23
- const client = await this.buildClient();
24
- const result = await client.get(filepath);
25
- return result.content;
26
- }
27
22
  async deleteFile(url) {
28
23
  const client = await this.buildClient();
29
24
  await client.delete(url);
@@ -1 +1 @@
1
- {"version":3,"file":"aliyun-oss-client.js","sourceRoot":"","sources":["../../../src/utils/oss/aliyun-oss-client.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAErC,6CAAyC;AAEzC,MAAa,eAAgB,SAAQ,sBAAS;IACpC,KAAK,CAAC,WAAW;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,OAAO,IAAI,SAAS,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,KAAK;SACrB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,MAAc;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,MAAM,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC;QAC1C,OAAO,MAAM,CAAC,OAAiB,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAW;QAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF;AA5BD,0CA4BC"}
1
+ {"version":3,"file":"aliyun-oss-client.js","sourceRoot":"","sources":["../../../src/utils/oss/aliyun-oss-client.ts"],"names":[],"mappings":";;;AAAA,qCAAqC;AAErC,6CAAyC;AAEzC,MAAa,eAAgB,SAAQ,sBAAS;IACpC,KAAK,CAAC,WAAW;QACvB,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC;QAC3B,OAAO,IAAI,SAAS,CAAC;YACnB,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,WAAW,EAAE,MAAM,CAAC,WAAW;YAC/B,eAAe,EAAE,MAAM,CAAC,eAAe;YACvC,MAAM,EAAE,MAAM,CAAC,MAAM;YACrB,MAAM,EAAE,MAAM,CAAC,KAAK;SACrB,CAAC,CAAC;IACL,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,MAAsB;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,EAAE,GAAG,EAAE,GAAG,MAAM,MAAM,CAAC,GAAG,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAW;QAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,WAAW,EAAE,CAAC;QACxC,MAAM,MAAM,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC;IAC3B,CAAC;CACF;AAtBD,0CAsBC"}
@@ -1,8 +1,6 @@
1
- /// <reference types="node" />
2
1
  export declare abstract class OssClient {
3
2
  config: Record<string, unknown>;
4
3
  constructor(config: any);
5
- abstract putFile(filepath: string, buffer: Buffer): Promise<string>;
6
- abstract getFile(filepath: string): Promise<Buffer>;
4
+ abstract putFile(filepath: string, buffer: ReadableStream): Promise<string>;
7
5
  abstract deleteFile(url: string): Promise<void>;
8
6
  }
@@ -1 +1 @@
1
- {"version":3,"file":"oss-client.js","sourceRoot":"","sources":["../../../src/utils/oss/oss-client.ts"],"names":[],"mappings":";;;AAAA,MAAsB,SAAS;IAG7B,YAAY,MAAM;QAChB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CAKF;AAVD,8BAUC"}
1
+ {"version":3,"file":"oss-client.js","sourceRoot":"","sources":["../../../src/utils/oss/oss-client.ts"],"names":[],"mappings":";;;AAAA,MAAsB,SAAS;IAG7B,YAAY,MAAM;QAChB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;IACvB,CAAC;CAIF;AATD,8BASC"}
@@ -1,4 +1,3 @@
1
- /// <reference types="node" />
2
1
  import { SettingService } from '../modules/setting/setting.service';
3
2
  import { OssClient } from './oss/oss-client';
4
3
  export declare class Oss {
@@ -9,7 +8,6 @@ export declare class Oss {
9
8
  hasOssConfig(): Promise<boolean>;
10
9
  private getConfig;
11
10
  private getOssClient;
12
- putFile(filepath: string, buffer: Buffer): Promise<any>;
13
- getFile(filepath: string): Promise<Buffer>;
11
+ putFile(filepath: string, buffer: ReadableStream): Promise<any>;
14
12
  deleteFile(url: string): Promise<void>;
15
13
  }
@@ -2,7 +2,6 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.Oss = void 0;
4
4
  const common_1 = require("@nestjs/common");
5
- const api_messages_1 = require("../common/api-messages");
6
5
  const aliyun_oss_client_1 = require("./oss/aliyun-oss-client");
7
6
  class Oss {
8
7
  constructor(settingService) {
@@ -22,7 +21,7 @@ class Oss {
22
21
  const data = await this.settingService.findAll(true);
23
22
  const config = JSON.parse(data.oss);
24
23
  if (!config) {
25
- throw new common_1.HttpException(api_messages_1.ApiMsg.OSS_CONFIG_INCOMPLETE, common_1.HttpStatus.BAD_REQUEST);
24
+ throw new common_1.HttpException('OSS 配置不完善,无法进行操作', common_1.HttpStatus.BAD_REQUEST);
26
25
  }
27
26
  return config;
28
27
  }
@@ -40,10 +39,6 @@ class Oss {
40
39
  const url = await client.putFile(filepath, buffer);
41
40
  return url;
42
41
  }
43
- async getFile(filepath) {
44
- const client = await this.getOssClient();
45
- return client.getFile(filepath);
46
- }
47
42
  async deleteFile(url) {
48
43
  const client = await this.getOssClient();
49
44
  await client.deleteFile(url);
@@ -1 +1 @@
1
- {"version":3,"file":"oss.util.js","sourceRoot":"","sources":["../../src/utils/oss.util.ts"],"names":[],"mappings":";;;AAAA,2CAA2D;AAE3D,yDAAgD;AAEhD,+DAA0D;AAG1D,MAAa,GAAG;IAKd,YAAY,cAA8B;QACxC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAKM,KAAK,CAAC,YAAY;QACvB,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,OAAO,CAAC,CAAC,MAAM,CAAC;SACjB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAEO,KAAK,CAAC,SAAS;QACrB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,sBAAa,CAAC,qBAAM,CAAC,qBAAqB,EAAE,mBAAU,CAAC,WAAW,CAAC,CAAC;SAC/E;QACD,OAAO,MAAiC,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,YAAY;QACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAE/C,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC;YACd;gBACE,OAAO,IAAI,mCAAe,CAAC,MAAM,CAAC,CAAC;SACtC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,MAAc;QAC5C,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB;QAC5B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,OAAO,MAAM,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;IAClC,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAW;QAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;CACF;AAzDD,kBAyDC"}
1
+ {"version":3,"file":"oss.util.js","sourceRoot":"","sources":["../../src/utils/oss.util.ts"],"names":[],"mappings":";;;AAAA,2CAA2D;AAG3D,+DAA0D;AAG1D,MAAa,GAAG;IAKd,YAAY,cAA8B;QACxC,IAAI,CAAC,cAAc,GAAG,cAAc,CAAC;IACvC,CAAC;IAKM,KAAK,CAAC,YAAY;QACvB,IAAI;YACF,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;YACrD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YACpC,OAAO,CAAC,CAAC,MAAM,CAAC;SACjB;QAAC,OAAO,CAAC,EAAE;YACV,OAAO,KAAK,CAAC;SACd;IACH,CAAC;IAEO,KAAK,CAAC,SAAS;QACrB,MAAM,IAAI,GAAG,MAAM,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACrD,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACpC,IAAI,CAAC,MAAM,EAAE;YACX,MAAM,IAAI,sBAAa,CAAC,kBAAkB,EAAE,mBAAU,CAAC,WAAW,CAAC,CAAC;SACrE;QACD,OAAO,MAAiC,CAAC;IAC3C,CAAC;IAEO,KAAK,CAAC,YAAY;QACxB,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,SAAS,EAAE,CAAC;QACtC,MAAM,IAAI,GAAG,MAAM,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,WAAW,EAAE,CAAC;QAE/C,QAAQ,IAAI,EAAE;YACZ,KAAK,QAAQ,CAAC;YACd;gBACE,OAAO,IAAI,mCAAe,CAAC,MAAM,CAAC,CAAC;SACtC;IACH,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,MAAsB;QACpD,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,OAAO,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnD,OAAO,GAAG,CAAC;IACb,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,GAAW;QAC1B,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,YAAY,EAAE,CAAC;QACzC,MAAM,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC;IAC/B,CAAC;CACF;AApDD,kBAoDC"}
@@ -3,7 +3,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.uniqueid = void 0;
4
4
  const nuid_1 = require("nuid");
5
5
  function uniqueid() {
6
- return (0, nuid_1.next)();
6
+ return nuid_1.next();
7
7
  }
8
8
  exports.uniqueid = uniqueid;
9
9
  //# sourceMappingURL=uniqueid.util.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"uniqueid.util.js","sourceRoot":"","sources":["../../src/utils/uniqueid.util.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAE5B,SAAgB,QAAQ;IACtB,OAAO,IAAA,WAAI,GAAE,CAAC;AAChB,CAAC;AAFD,4BAEC"}
1
+ {"version":3,"file":"uniqueid.util.js","sourceRoot":"","sources":["../../src/utils/uniqueid.util.ts"],"names":[],"mappings":";;;AAAA,+BAA4B;AAE5B,SAAgB,QAAQ;IACtB,OAAO,WAAI,EAAE,CAAC;AAChB,CAAC;AAFD,4BAEC"}
@@ -1,9 +1,5 @@
1
- /// <reference types="node" />
2
1
  export declare class LocalUpload {
3
- private readonly uploadRoot;
4
- constructor();
5
2
  private mkdDirsSync;
6
- putFile(filename: string, buffer: Buffer): string;
7
- getFile(filename: string): Buffer;
8
- deleteFile(filename: string): void;
3
+ putFile(filename: any, buffer: ReadableStream): string;
4
+ deleteFile(filename: any): void;
9
5
  }
@@ -3,43 +3,28 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.LocalUpload = void 0;
4
4
  const fs = require("fs");
5
5
  const path = require("path");
6
- function resolveUploadRoot() {
7
- var _a;
8
- const fromEnv = (_a = process.env.REACTPRESS_UPLOAD_DIR) === null || _a === void 0 ? void 0 : _a.trim();
9
- if (fromEnv)
10
- return fromEnv;
11
- return path.join(__dirname, '../../public/uploads');
12
- }
13
6
  class LocalUpload {
14
- constructor() {
15
- this.uploadRoot = resolveUploadRoot();
16
- }
17
7
  mkdDirsSync(dirname) {
18
8
  if (fs.existsSync(dirname)) {
19
9
  return true;
20
10
  }
21
- if (this.mkdDirsSync(path.dirname(dirname))) {
22
- fs.mkdirSync(dirname);
23
- return true;
11
+ else {
12
+ if (this.mkdDirsSync(path.dirname(dirname))) {
13
+ fs.mkdirSync(dirname);
14
+ return true;
15
+ }
24
16
  }
25
- return false;
26
17
  }
27
18
  putFile(filename, buffer) {
28
- const saveFile = path.join(this.uploadRoot, filename);
19
+ const saveFile = path.join(__dirname, `../../public/uploads/${filename}`);
29
20
  const dirName = path.dirname(saveFile);
30
21
  this.mkdDirsSync(dirName);
31
22
  fs.writeFileSync(saveFile, buffer);
32
23
  return saveFile;
33
24
  }
34
- getFile(filename) {
35
- const filePath = path.join(this.uploadRoot, filename);
36
- if (!fs.existsSync(filePath)) {
37
- throw new Error(`File not found: ${filename}`);
38
- }
39
- return fs.readFileSync(filePath);
40
- }
41
25
  deleteFile(filename) {
42
- const filePath = path.join(this.uploadRoot, filename);
26
+ const saveFileFolder = path.join(__dirname, '../../public/uploads');
27
+ const filePath = `${saveFileFolder}/${filename}`;
43
28
  if (fs.existsSync(filePath)) {
44
29
  fs.unlinkSync(filePath);
45
30
  }
@@ -1 +1 @@
1
- {"version":3,"file":"upload.util.js","sourceRoot":"","sources":["../../src/utils/upload.util.ts"],"names":[],"mappings":";;;AAAA,yBAAyB;AACzB,6BAA6B;AAE7B,SAAS,iBAAiB;;IACxB,MAAM,OAAO,GAAG,MAAA,OAAO,CAAC,GAAG,CAAC,qBAAqB,0CAAE,IAAI,EAAE,CAAC;IAC1D,IAAI,OAAO;QAAE,OAAO,OAAO,CAAC;IAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;AACtD,CAAC;AAED,MAAa,WAAW;IAGtB;QACE,IAAI,CAAC,UAAU,GAAG,iBAAiB,EAAE,CAAC;IACxC,CAAC;IAGO,WAAW,CAAC,OAAe;QACjC,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC;SACb;QACD,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;YAC3C,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;YACtB,OAAO,IAAI,CAAC;SACb;QACD,OAAO,KAAK,CAAC;IACf,CAAC;IAEM,OAAO,CAAC,QAAgB,EAAE,MAAc;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACtD,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QACvC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAC1B,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,OAAO,CAAC,QAAgB;QAC7B,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACtD,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC5B,MAAM,IAAI,KAAK,CAAC,mBAAmB,QAAQ,EAAE,CAAC,CAAC;SAChD;QACD,OAAO,EAAE,CAAC,YAAY,CAAC,QAAQ,CAAC,CAAC;IACnC,CAAC;IAEM,UAAU,CAAC,QAAgB;QAChC,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;QACtD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC3B,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;SACzB;IACH,CAAC;CACF;AAzCD,kCAyCC"}
1
+ {"version":3,"file":"upload.util.js","sourceRoot":"","sources":["../../src/utils/upload.util.ts"],"names":[],"mappings":";;;AAAA,yBAAyB;AACzB,6BAA6B;AAE7B,MAAa,WAAW;IAEd,WAAW,CAAC,OAAO;QACzB,IAAI,EAAE,CAAC,UAAU,CAAC,OAAO,CAAC,EAAE;YAC1B,OAAO,IAAI,CAAC;SACb;aAAM;YACL,IAAI,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,EAAE;gBAC3C,EAAE,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC;gBACtB,OAAO,IAAI,CAAC;aACb;SACF;IACH,CAAC;IAEM,OAAO,CAAC,QAAQ,EAAE,MAAsB;QAC7C,MAAM,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,wBAAwB,QAAQ,EAAE,CAAC,CAAC;QAC1E,MAAM,OAAO,GAAG,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,CAAC;QAEvC,IAAI,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC;QAE1B,EAAE,CAAC,aAAa,CAAC,QAAQ,EAAE,MAAM,CAAC,CAAC;QACnC,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEM,UAAU,CAAC,QAAQ;QACxB,MAAM,cAAc,GAAG,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,sBAAsB,CAAC,CAAC;QACpE,MAAM,QAAQ,GAAG,GAAG,cAAc,IAAI,QAAQ,EAAE,CAAC;QACjD,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE;YAC3B,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC;SACzB;IACH,CAAC;CACF;AA9BD,kCA8BC"}
@@ -1,2 +1 @@
1
- export declare function isValidEmail(email: string): boolean;
2
1
  export declare function isValidUsername(username: any): boolean;
@@ -1,12 +1,8 @@
1
1
  "use strict";
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.isValidUsername = exports.isValidEmail = void 0;
4
- function isValidEmail(email) {
5
- return /^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(email);
6
- }
7
- exports.isValidEmail = isValidEmail;
3
+ exports.isValidUsername = void 0;
8
4
  function isValidUsername(username) {
9
- const reg = /^[a-zA-Z0-9_]+$/;
5
+ var reg = /^[a-zA-Z0-9_]+$/;
10
6
  if (!reg.test(username)) {
11
7
  return false;
12
8
  }
@@ -1 +1 @@
1
- {"version":3,"file":"user.util.js","sourceRoot":"","sources":["../../src/utils/user.util.ts"],"names":[],"mappings":";;;AAAA,SAAgB,YAAY,CAAC,KAAa;IACxC,OAAO,4BAA4B,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;AAClD,CAAC;AAFD,oCAEC;AAED,SAAgB,eAAe,CAAC,QAAQ;IAEtC,MAAM,GAAG,GAAG,iBAAiB,CAAC;IAC9B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QACnE,OAAO,KAAK,CAAC;KACd;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAfD,0CAeC"}
1
+ {"version":3,"file":"user.util.js","sourceRoot":"","sources":["../../src/utils/user.util.ts"],"names":[],"mappings":";;;AAAA,SAAgB,eAAe,CAAC,QAAQ;IAEtC,IAAI,GAAG,GAAG,iBAAiB,CAAC;IAC5B,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IAED,IAAI,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,EAAE;QACvB,OAAO,KAAK,CAAC;KACd;IAED,IAAI,QAAQ,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,IAAI,QAAQ,CAAC,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE;QACnE,OAAO,KAAK,CAAC;KACd;IACD,OAAO,IAAI,CAAC;AACd,CAAC;AAfD,0CAeC"}
package/package.json CHANGED
@@ -1,8 +1,7 @@
1
1
  {
2
2
  "name": "@fecommunity/reactpress-server",
3
- "version": "4.0.0-beta.9",
4
- "deprecated": "Use the built-in API in @fecommunity/reactpress (CLI). Standalone server publishing stopped from 3.1.",
5
- "description": "ReactPress NestJS CMS API — headless REST for the publishing platform (MySQL or SQLite)",
3
+ "version": "4.0.1",
4
+ "description": "ReactPress Server - NestJS-based backend API for ReactPress CMS",
6
5
  "author": "fecommunity",
7
6
  "license": "MIT",
8
7
  "main": "dist/main.js",
@@ -28,15 +27,21 @@
28
27
  ],
29
28
  "repository": {
30
29
  "type": "git",
31
- "url": "git+https://github.com/fecommunity/reactpress.git",
30
+ "url": "git+https://github.com/reactpressjs/reactpress.git",
32
31
  "directory": "server"
33
32
  },
34
33
  "engines": {
35
34
  "node": ">=16.5.0"
36
35
  },
36
+ "publishConfig": {
37
+ "access": "public"
38
+ },
37
39
  "dependencies": {
38
- "@fecommunity/reactpress-toolkit": "4.0.0-beta.9",
39
- "@nestjs/cli": "^6.9.0",
40
+ "@fecommunity/reactpress-config": "1.0.0-beta.34",
41
+ "commander": "^9.4.1",
42
+ "chalk": "^4.1.2",
43
+ "inquirer": "^8.2.4",
44
+ "cross-env": "^7.0.3",
40
45
  "@nestjs/common": "^6.7.2",
41
46
  "@nestjs/config": "^0.6.3",
42
47
  "@nestjs/core": "^6.7.2",
@@ -44,7 +49,7 @@
44
49
  "@nestjs/passport": "^6.1.1",
45
50
  "@nestjs/platform-express": "^6.11.5",
46
51
  "@nestjs/swagger": "^4.8.2",
47
- "@nestjs/typeorm": "^6.3.4",
52
+ "@nestjs/typeorm": "^6.2.0",
48
53
  "@types/express-serve-static-core": "^4.19.5",
49
54
  "ali-oss": "^6.5.1",
50
55
  "axios": "^0.23.0",
@@ -52,11 +57,9 @@
52
57
  "body-parser": "^1.19.0",
53
58
  "class-transformer": "^0.2.3",
54
59
  "compression": "^1.7.4",
55
- "cross-env": "^7.0.3",
56
60
  "date-fns": "^2.17.0",
57
61
  "deepmerge": "^4.2.2",
58
62
  "dotenv": "^8.2.0",
59
- "express": "^4.18.2",
60
63
  "express-rate-limit": "^5.0.0",
61
64
  "fs-extra": "^10.0.0",
62
65
  "helmet": "^3.21.2",
@@ -65,23 +68,23 @@
65
68
  "log4js": "^6.1.0",
66
69
  "marked": "^0.8.0",
67
70
  "mysql2": "^3.12.0",
68
- "sqlite3": "^5.1.7",
69
71
  "node-ip2region": "^1.0.2",
70
72
  "nodemailer": "^6.4.2",
71
73
  "nuid": "^1.1.0",
72
- "open": "^8.2.1",
73
74
  "passport": "^0.4.1",
74
75
  "passport-jwt": "^4.0.0",
75
- "pm2": "^5.2.0",
76
76
  "reflect-metadata": "^0.1.13",
77
77
  "rimraf": "^3.0.0",
78
78
  "rxjs": "^6.5.3",
79
79
  "segment": "^0.1.3",
80
- "sharp": "^0.34.5",
81
- "swagger-themes": "^1.4.3",
82
80
  "swagger-ui-express": "^4.1.6",
83
- "typeorm": "^0.2.45",
84
- "ua-parser-js": "^0.7.28"
81
+ "typeorm": "^0.2.22",
82
+ "ua-parser-js": "^0.7.28",
83
+ "open": "^8.2.1",
84
+ "express": "^4.18.2",
85
+ "@nestjs/cli": "^6.9.0",
86
+ "pm2": "^5.2.0",
87
+ "swagger-themes": "^1.4.3"
85
88
  },
86
89
  "devDependencies": {
87
90
  "@nestjs/schematics": "^6.7.0",
@@ -98,6 +101,7 @@
98
101
  "eslint-plugin-prettier": "^4.0.0",
99
102
  "eslint-plugin-simple-import-sort": "^7.0.0",
100
103
  "jest": "^24.9.0",
104
+ "next-transpile-modules": "^6.3.0",
101
105
  "prettier": "^1.18.2",
102
106
  "supertest": "^4.0.2",
103
107
  "ts-jest": "^24.1.0",
@@ -105,7 +109,7 @@
105
109
  "ts-node": "^8.4.1",
106
110
  "tsconfig-paths": "^3.9.0",
107
111
  "tslint": "^5.20.0",
108
- "typescript": "~4.9.5"
112
+ "typescript": "~4.1.6"
109
113
  },
110
114
  "jest": {
111
115
  "moduleFileExtensions": [
@@ -122,12 +126,11 @@
122
126
  "testEnvironment": "node"
123
127
  },
124
128
  "scripts": {
125
- "clean": "rimraf dist",
129
+ "prebuild": "rimraf dist",
126
130
  "build": "nest build && npm run copy-assets",
127
131
  "copy-assets": "cp -r public dist/ 2>/dev/null || true",
128
132
  "format": "prettier --write \"src/**/*.ts\" \"test/**/*.ts\"",
129
- "predev": "node scripts/ensure-dev-dist.js",
130
- "dev": "cross-env REACTPRESS_API_ENTRY=starter nest start --watch",
133
+ "dev": "nest start --watch",
131
134
  "debug": "nest start --debug --watch",
132
135
  "start": "cross-env NODE_ENV=production node dist/main",
133
136
  "pm2": "pm2 start npm --name @fecommunity/reactpress-server -- start",
@@ -144,5 +147,9 @@
144
147
  "pm2:logs": "pm2 logs reactpress-server",
145
148
  "pm2:status": "pm2 status reactpress-server",
146
149
  "generate:swagger": "ts-node src/generate-swagger.ts"
150
+ },
151
+ "homepage": "https://www.reactpress.cc/",
152
+ "bugs": {
153
+ "url": "https://github.com/reactpressjs/reactpress/issues"
147
154
  }
148
- }
155
+ }
Binary file
@@ -1,41 +0,0 @@
1
- export declare const ApiMsg: {
2
- readonly AUTH_FAILED: "Authentication failed";
3
- readonly MISSING_API_KEY: "Missing API Key";
4
- readonly INVALID_API_KEY: "Invalid API Key";
5
- readonly API_KEY_NOT_FOUND: "API Key not found";
6
- readonly API_KEY_MISSING_READ: "API Key missing read permission";
7
- readonly MISSING_PARAMS: "Missing required parameters";
8
- readonly EMAIL_SEND_FAILED: "Failed to send email";
9
- readonly EMAIL_CONFIG_INCOMPLETE: "SMTP configuration is incomplete";
10
- readonly EMAIL_TEST_SENT: "Test email sent successfully";
11
- readonly OSS_CONFIG_INCOMPLETE: "OSS configuration is incomplete";
12
- readonly WEBHOOK_NOT_FOUND: "Webhook not found";
13
- readonly USERNAME_PASSWORD_REQUIRED: "Username and password are required";
14
- readonly EMAIL_REQUIRED: "Email is required";
15
- readonly EMAIL_INVALID: "Please enter a valid email address";
16
- readonly ADMIN_CONSOLE_ACCESS_REQUIRED: "Please contact an administrator for access authorization";
17
- readonly USERNAME_INVALID: "Username cannot contain spaces or invalid characters";
18
- readonly USER_EXISTS: "User already exists";
19
- readonly INVALID_CREDENTIALS: "Invalid username or password";
20
- readonly USER_LOCKED: "User is locked and cannot sign in";
21
- readonly TOO_MANY_LOGIN_ATTEMPTS: "Too many login attempts, please try again later";
22
- readonly FORBIDDEN: "You do not have permission for this action";
23
- readonly UNAUTHORIZED: "Unauthorized";
24
- readonly FORBIDDEN_ACTION: "Forbidden";
25
- readonly ARTICLE_TITLE_EXISTS: "Article title already exists";
26
- readonly ARTICLE_SLUG_EXISTS: "Article slug already exists";
27
- readonly REVISION_NOT_FOUND: "Revision not found";
28
- readonly TAG_EXISTS: "Tag already exists";
29
- readonly CATEGORY_EXISTS: "Category already exists";
30
- readonly PAGE_EXISTS: "Page already exists";
31
- readonly KNOWLEDGE_EXISTS: "Knowledge base already exists";
32
- readonly INVALID_KNOWLEDGE_SECTION: "Invalid knowledge section";
33
- readonly DELETE_HAS_ARTICLES: "Delete failed: related articles may exist";
34
- readonly GITHUB_CODE_REQUIRED: "GitHub authorization code is required";
35
- readonly GITHUB_EMAIL_REQUIRED: "Public email is required for GitHub sign-in";
36
- readonly EMAIL_NEW_COMMENT: "New comment notification";
37
- readonly EMAIL_COMMENT_REPLY: "Comment reply notification";
38
- readonly EMAIL_GITHUB_LOGIN: "GitHub sign-in notification";
39
- readonly EMAIL_TEST_SUBJECT: "ReactPress SMTP test email";
40
- readonly EMAIL_TEST_HTML: "This is a test email from your ReactPress site. If you received this message, SMTP is configured correctly.";
41
- };
@@ -1,45 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.ApiMsg = void 0;
4
- exports.ApiMsg = {
5
- AUTH_FAILED: 'Authentication failed',
6
- MISSING_API_KEY: 'Missing API Key',
7
- INVALID_API_KEY: 'Invalid API Key',
8
- API_KEY_NOT_FOUND: 'API Key not found',
9
- API_KEY_MISSING_READ: 'API Key missing read permission',
10
- MISSING_PARAMS: 'Missing required parameters',
11
- EMAIL_SEND_FAILED: 'Failed to send email',
12
- EMAIL_CONFIG_INCOMPLETE: 'SMTP configuration is incomplete',
13
- EMAIL_TEST_SENT: 'Test email sent successfully',
14
- OSS_CONFIG_INCOMPLETE: 'OSS configuration is incomplete',
15
- WEBHOOK_NOT_FOUND: 'Webhook not found',
16
- USERNAME_PASSWORD_REQUIRED: 'Username and password are required',
17
- EMAIL_REQUIRED: 'Email is required',
18
- EMAIL_INVALID: 'Please enter a valid email address',
19
- ADMIN_CONSOLE_ACCESS_REQUIRED: 'Please contact an administrator for access authorization',
20
- USERNAME_INVALID: 'Username cannot contain spaces or invalid characters',
21
- USER_EXISTS: 'User already exists',
22
- INVALID_CREDENTIALS: 'Invalid username or password',
23
- USER_LOCKED: 'User is locked and cannot sign in',
24
- TOO_MANY_LOGIN_ATTEMPTS: 'Too many login attempts, please try again later',
25
- FORBIDDEN: 'You do not have permission for this action',
26
- UNAUTHORIZED: 'Unauthorized',
27
- FORBIDDEN_ACTION: 'Forbidden',
28
- ARTICLE_TITLE_EXISTS: 'Article title already exists',
29
- ARTICLE_SLUG_EXISTS: 'Article slug already exists',
30
- REVISION_NOT_FOUND: 'Revision not found',
31
- TAG_EXISTS: 'Tag already exists',
32
- CATEGORY_EXISTS: 'Category already exists',
33
- PAGE_EXISTS: 'Page already exists',
34
- KNOWLEDGE_EXISTS: 'Knowledge base already exists',
35
- INVALID_KNOWLEDGE_SECTION: 'Invalid knowledge section',
36
- DELETE_HAS_ARTICLES: 'Delete failed: related articles may exist',
37
- GITHUB_CODE_REQUIRED: 'GitHub authorization code is required',
38
- GITHUB_EMAIL_REQUIRED: 'Public email is required for GitHub sign-in',
39
- EMAIL_NEW_COMMENT: 'New comment notification',
40
- EMAIL_COMMENT_REPLY: 'Comment reply notification',
41
- EMAIL_GITHUB_LOGIN: 'GitHub sign-in notification',
42
- EMAIL_TEST_SUBJECT: 'ReactPress SMTP test email',
43
- EMAIL_TEST_HTML: 'This is a test email from your ReactPress site. If you received this message, SMTP is configured correctly.',
44
- };
45
- //# sourceMappingURL=api-messages.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"api-messages.js","sourceRoot":"","sources":["../../src/common/api-messages.ts"],"names":[],"mappings":";;;AACa,QAAA,MAAM,GAAG;IACpB,WAAW,EAAE,uBAAuB;IACpC,eAAe,EAAE,iBAAiB;IAClC,eAAe,EAAE,iBAAiB;IAClC,iBAAiB,EAAE,mBAAmB;IACtC,oBAAoB,EAAE,iCAAiC;IACvD,cAAc,EAAE,6BAA6B;IAC7C,iBAAiB,EAAE,sBAAsB;IACzC,uBAAuB,EAAE,kCAAkC;IAC3D,eAAe,EAAE,8BAA8B;IAC/C,qBAAqB,EAAE,iCAAiC;IACxD,iBAAiB,EAAE,mBAAmB;IAEtC,0BAA0B,EAAE,oCAAoC;IAChE,cAAc,EAAE,mBAAmB;IACnC,aAAa,EAAE,oCAAoC;IACnD,6BAA6B,EAAE,0DAA0D;IACzF,gBAAgB,EAAE,sDAAsD;IACxE,WAAW,EAAE,qBAAqB;IAClC,mBAAmB,EAAE,8BAA8B;IACnD,WAAW,EAAE,mCAAmC;IAChD,uBAAuB,EAAE,iDAAiD;IAC1E,SAAS,EAAE,4CAA4C;IACvD,YAAY,EAAE,cAAc;IAC5B,gBAAgB,EAAE,WAAW;IAE7B,oBAAoB,EAAE,8BAA8B;IACpD,mBAAmB,EAAE,6BAA6B;IAClD,kBAAkB,EAAE,oBAAoB;IAExC,UAAU,EAAE,oBAAoB;IAChC,eAAe,EAAE,yBAAyB;IAC1C,WAAW,EAAE,qBAAqB;IAClC,gBAAgB,EAAE,+BAA+B;IACjD,yBAAyB,EAAE,2BAA2B;IACtD,mBAAmB,EAAE,2CAA2C;IAEhE,oBAAoB,EAAE,uCAAuC;IAC7D,qBAAqB,EAAE,6CAA6C;IAEpE,iBAAiB,EAAE,0BAA0B;IAC7C,mBAAmB,EAAE,4BAA4B;IACjD,kBAAkB,EAAE,6BAA6B;IACjD,kBAAkB,EAAE,4BAA4B;IAChD,eAAe,EACb,6GAA6G;CACvG,CAAC"}
@@ -1,3 +0,0 @@
1
- import { ConfigService } from '@nestjs/config';
2
- import { TypeOrmModuleOptions } from '@nestjs/typeorm';
3
- export declare function createTypeOrmOptions(configService: ConfigService): TypeOrmModuleOptions;
@@ -1,60 +0,0 @@
1
- "use strict";
2
- Object.defineProperty(exports, "__esModule", { value: true });
3
- exports.createTypeOrmOptions = void 0;
4
- const api_key_entity_1 = require("../modules/api-key/api-key.entity");
5
- const article_entity_1 = require("../modules/article/article.entity");
6
- const article_revision_entity_1 = require("../modules/article/article-revision.entity");
7
- const category_entity_1 = require("../modules/category/category.entity");
8
- const comment_entity_1 = require("../modules/comment/comment.entity");
9
- const file_entity_1 = require("../modules/file/file.entity");
10
- const knowledge_entity_1 = require("../modules/knowledge/knowledge.entity");
11
- const page_entity_1 = require("../modules/page/page.entity");
12
- const search_entity_1 = require("../modules/search/search.entity");
13
- const setting_entity_1 = require("../modules/setting/setting.entity");
14
- const smtp_entity_1 = require("../modules/smtp/smtp.entity");
15
- const tag_entity_1 = require("../modules/tag/tag.entity");
16
- const user_entity_1 = require("../modules/user/user.entity");
17
- const view_entity_1 = require("../modules/view/view.entity");
18
- const webhook_entity_1 = require("../modules/webhook/webhook.entity");
19
- const ENTITIES = [
20
- user_entity_1.User,
21
- file_entity_1.File,
22
- knowledge_entity_1.Knowledge,
23
- article_entity_1.Article,
24
- article_revision_entity_1.ArticleRevision,
25
- category_entity_1.Category,
26
- tag_entity_1.Tag,
27
- comment_entity_1.Comment,
28
- setting_entity_1.Setting,
29
- smtp_entity_1.SMTP,
30
- page_entity_1.Page,
31
- view_entity_1.View,
32
- search_entity_1.Search,
33
- api_key_entity_1.ApiKey,
34
- webhook_entity_1.Webhook,
35
- ];
36
- function createTypeOrmOptions(configService) {
37
- const dbType = String(configService.get('DB_TYPE') || 'mysql').toLowerCase();
38
- if (dbType === 'sqlite') {
39
- return {
40
- type: 'sqlite',
41
- database: configService.get('DB_DATABASE') || 'reactpress.db',
42
- entities: ENTITIES,
43
- synchronize: true,
44
- };
45
- }
46
- return {
47
- type: 'mysql',
48
- entities: ENTITIES,
49
- host: configService.get('DB_HOST', '0.0.0.0'),
50
- port: configService.get('DB_PORT', 3306),
51
- username: configService.get('DB_USER', 'root'),
52
- password: configService.get('DB_PASSWD', 'root'),
53
- database: configService.get('DB_DATABASE', 'reactpress'),
54
- charset: 'utf8mb4',
55
- timezone: '+08:00',
56
- synchronize: true,
57
- };
58
- }
59
- exports.createTypeOrmOptions = createTypeOrmOptions;
60
- //# sourceMappingURL=typeorm-options.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"typeorm-options.js","sourceRoot":"","sources":["../../src/database/typeorm-options.ts"],"names":[],"mappings":";;;AAGA,sEAA2D;AAC3D,sEAA4D;AAC5D,wFAA6E;AAC7E,yEAA+D;AAC/D,sEAA4D;AAC5D,6DAAmD;AACnD,4EAAkE;AAClE,6DAAmD;AACnD,mEAAyD;AACzD,sEAA4D;AAC5D,6DAAmD;AACnD,0DAAgD;AAChD,6DAAmD;AACnD,6DAAmD;AACnD,sEAA4D;AAE5D,MAAM,QAAQ,GAAG;IACf,kBAAI;IACJ,kBAAI;IACJ,4BAAS;IACT,wBAAO;IACP,yCAAe;IACf,0BAAQ;IACR,gBAAG;IACH,wBAAO;IACP,wBAAO;IACP,kBAAI;IACJ,kBAAI;IACJ,kBAAI;IACJ,sBAAM;IACN,uBAAM;IACN,wBAAO;CACR,CAAC;AAEF,SAAgB,oBAAoB,CAAC,aAA4B;IAC/D,MAAM,MAAM,GAAG,MAAM,CAAC,aAAa,CAAC,GAAG,CAAC,SAAS,CAAC,IAAI,OAAO,CAAC,CAAC,WAAW,EAAE,CAAC;IAE7E,IAAI,MAAM,KAAK,QAAQ,EAAE;QACvB,OAAO;YACL,IAAI,EAAE,QAAQ;YACd,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,CAAC,IAAI,eAAe;YAC7D,QAAQ,EAAE,QAAQ;YAClB,WAAW,EAAE,IAAI;SAClB,CAAC;KACH;IAED,OAAO;QACL,IAAI,EAAE,OAAO;QACb,QAAQ,EAAE,QAAQ;QAClB,IAAI,EAAE,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,SAAS,CAAC;QAC7C,IAAI,EAAE,aAAa,CAAC,GAAG,CAAS,SAAS,EAAE,IAAI,CAAC;QAChD,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC;QAC9C,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC;QAChD,QAAQ,EAAE,aAAa,CAAC,GAAG,CAAC,aAAa,EAAE,YAAY,CAAC;QACxD,OAAO,EAAE,SAAS;QAClB,QAAQ,EAAE,QAAQ;QAClB,WAAW,EAAE,IAAI;KAClB,CAAC;AACJ,CAAC;AAxBD,oDAwBC"}
@@ -1,14 +0,0 @@
1
- import { ApiKeyService } from './api-key.service';
2
- export declare class ApiKeyController {
3
- private readonly apiKeyService;
4
- constructor(apiKeyService: ApiKeyService);
5
- list(): Promise<import("./api-key.entity").ApiKey[]>;
6
- create(body: {
7
- name: string;
8
- scopes?: string;
9
- }): Promise<{
10
- apiKey: import("./api-key.entity").ApiKey;
11
- rawKey: string;
12
- }>;
13
- revoke(id: string): Promise<import("./api-key.entity").ApiKey>;
14
- }
@@ -1,63 +0,0 @@
1
- "use strict";
2
- var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
3
- var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
4
- if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
5
- else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
6
- return c > 3 && r && Object.defineProperty(target, key, r), r;
7
- };
8
- var __metadata = (this && this.__metadata) || function (k, v) {
9
- if (typeof Reflect === "object" && typeof Reflect.metadata === "function") return Reflect.metadata(k, v);
10
- };
11
- var __param = (this && this.__param) || function (paramIndex, decorator) {
12
- return function (target, key) { decorator(target, key, paramIndex); }
13
- };
14
- Object.defineProperty(exports, "__esModule", { value: true });
15
- exports.ApiKeyController = void 0;
16
- const common_1 = require("@nestjs/common");
17
- const swagger_1 = require("@nestjs/swagger");
18
- const jwt_auth_guard_1 = require("../auth/jwt-auth.guard");
19
- const roles_guard_1 = require("../auth/roles.guard");
20
- const api_key_service_1 = require("./api-key.service");
21
- let ApiKeyController = class ApiKeyController {
22
- constructor(apiKeyService) {
23
- this.apiKeyService = apiKeyService;
24
- }
25
- list() {
26
- return this.apiKeyService.findAll();
27
- }
28
- create(body) {
29
- return this.apiKeyService.create(body.name, body.scopes || 'read');
30
- }
31
- revoke(id) {
32
- return this.apiKeyService.revoke(id);
33
- }
34
- };
35
- __decorate([
36
- (0, common_1.Get)(),
37
- __metadata("design:type", Function),
38
- __metadata("design:paramtypes", []),
39
- __metadata("design:returntype", void 0)
40
- ], ApiKeyController.prototype, "list", null);
41
- __decorate([
42
- (0, common_1.Post)(),
43
- __param(0, (0, common_1.Body)()),
44
- __metadata("design:type", Function),
45
- __metadata("design:paramtypes", [Object]),
46
- __metadata("design:returntype", void 0)
47
- ], ApiKeyController.prototype, "create", null);
48
- __decorate([
49
- (0, common_1.Delete)(':id'),
50
- __param(0, (0, common_1.Param)('id')),
51
- __metadata("design:type", Function),
52
- __metadata("design:paramtypes", [String]),
53
- __metadata("design:returntype", void 0)
54
- ], ApiKeyController.prototype, "revoke", null);
55
- ApiKeyController = __decorate([
56
- (0, swagger_1.ApiTags)('ApiKey'),
57
- (0, common_1.Controller)('api-key'),
58
- (0, common_1.UseGuards)(roles_guard_1.RolesGuard, jwt_auth_guard_1.JwtAuthGuard),
59
- (0, roles_guard_1.Roles)('admin'),
60
- __metadata("design:paramtypes", [api_key_service_1.ApiKeyService])
61
- ], ApiKeyController);
62
- exports.ApiKeyController = ApiKeyController;
63
- //# sourceMappingURL=api-key.controller.js.map