@fecommunity/reactpress 2.0.0-beta.0 → 3.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 (421) hide show
  1. package/LICENSE +6 -6
  2. package/README.md +28 -176
  3. package/bin/reactpress-cli-shim.js +28 -0
  4. package/bin/reactpress.js +245 -61
  5. package/dist/cli.d.ts +4 -0
  6. package/dist/cli.d.ts.map +1 -0
  7. package/dist/cli.js +102 -0
  8. package/dist/cli.js.map +1 -0
  9. package/dist/commands/config.d.ts +8 -0
  10. package/dist/commands/config.d.ts.map +1 -0
  11. package/dist/commands/config.js +54 -0
  12. package/dist/commands/config.js.map +1 -0
  13. package/dist/commands/init.d.ts +6 -0
  14. package/dist/commands/init.d.ts.map +1 -0
  15. package/dist/commands/init.js +33 -0
  16. package/dist/commands/init.js.map +1 -0
  17. package/dist/commands/restart.d.ts +2 -0
  18. package/dist/commands/restart.d.ts.map +1 -0
  19. package/dist/commands/restart.js +29 -0
  20. package/dist/commands/restart.js.map +1 -0
  21. package/dist/commands/start.d.ts +2 -0
  22. package/dist/commands/start.d.ts.map +1 -0
  23. package/dist/commands/start.js +31 -0
  24. package/dist/commands/start.js.map +1 -0
  25. package/dist/commands/status.d.ts +2 -0
  26. package/dist/commands/status.d.ts.map +1 -0
  27. package/dist/commands/status.js +20 -0
  28. package/dist/commands/status.js.map +1 -0
  29. package/dist/commands/stop.d.ts +5 -0
  30. package/dist/commands/stop.d.ts.map +1 -0
  31. package/dist/commands/stop.js +29 -0
  32. package/dist/commands/stop.js.map +1 -0
  33. package/dist/i18n.js +8 -0
  34. package/dist/index.d.ts +3 -0
  35. package/dist/index.d.ts.map +1 -0
  36. package/dist/index.js +7 -0
  37. package/dist/index.js.map +1 -0
  38. package/dist/package.json +3 -0
  39. package/dist/services/config.d.ts +11 -0
  40. package/dist/services/config.d.ts.map +1 -0
  41. package/dist/services/config.js +102 -0
  42. package/dist/services/config.js.map +1 -0
  43. package/dist/services/database.d.ts +43 -0
  44. package/dist/services/database.d.ts.map +1 -0
  45. package/dist/services/database.js +252 -0
  46. package/dist/services/database.js.map +1 -0
  47. package/dist/services/exec.d.ts +22 -0
  48. package/dist/services/exec.d.ts.map +1 -0
  49. package/dist/services/exec.js +46 -0
  50. package/dist/services/exec.js.map +1 -0
  51. package/dist/services/init.d.ts +10 -0
  52. package/dist/services/init.d.ts.map +1 -0
  53. package/dist/services/init.js +50 -0
  54. package/dist/services/init.js.map +1 -0
  55. package/dist/services/process.d.ts +9 -0
  56. package/dist/services/process.d.ts.map +1 -0
  57. package/dist/services/process.js +98 -0
  58. package/dist/services/process.js.map +1 -0
  59. package/dist/services/server-health.d.ts +4 -0
  60. package/dist/services/server-health.d.ts.map +1 -0
  61. package/dist/services/server-health.js +27 -0
  62. package/dist/services/server-health.js.map +1 -0
  63. package/dist/services/server.d.ts +19 -0
  64. package/dist/services/server.d.ts.map +1 -0
  65. package/dist/services/server.js +133 -0
  66. package/dist/services/server.js.map +1 -0
  67. package/dist/templates/config.default.json +12 -0
  68. package/dist/templates/docker-compose.yml +27 -0
  69. package/dist/templates/env.default +11 -0
  70. package/dist/templates/package.json +10 -0
  71. package/dist/types/config.d.ts +30 -0
  72. package/dist/types/config.d.ts.map +1 -0
  73. package/dist/types/config.js +2 -0
  74. package/dist/types/config.js.map +1 -0
  75. package/dist/utils/cli-context.d.ts +4 -0
  76. package/dist/utils/cli-context.d.ts.map +1 -0
  77. package/dist/utils/cli-context.js +10 -0
  78. package/dist/utils/cli-context.js.map +1 -0
  79. package/dist/utils/logger.d.ts +10 -0
  80. package/dist/utils/logger.d.ts.map +1 -0
  81. package/dist/utils/logger.js +32 -0
  82. package/dist/utils/logger.js.map +1 -0
  83. package/dist/utils/paths.d.ts +17 -0
  84. package/dist/utils/paths.d.ts.map +1 -0
  85. package/dist/utils/paths.js +27 -0
  86. package/dist/utils/paths.js.map +1 -0
  87. package/dist/utils/platform.d.ts +8 -0
  88. package/dist/utils/platform.d.ts.map +1 -0
  89. package/dist/utils/platform.js +21 -0
  90. package/dist/utils/platform.js.map +1 -0
  91. package/dist/utils/port.d.ts +5 -0
  92. package/dist/utils/port.d.ts.map +1 -0
  93. package/dist/utils/port.js +25 -0
  94. package/dist/utils/port.js.map +1 -0
  95. package/dist/utils/server-bundle.d.ts +11 -0
  96. package/dist/utils/server-bundle.d.ts.map +1 -0
  97. package/dist/utils/server-bundle.js +71 -0
  98. package/dist/utils/server-bundle.js.map +1 -0
  99. package/lib/api-dev-runner.js +6 -0
  100. package/lib/api-dev.js +85 -0
  101. package/lib/bootstrap.js +114 -0
  102. package/lib/build.js +75 -0
  103. package/lib/db-backup.js +46 -0
  104. package/lib/dev-banner.js +40 -0
  105. package/lib/dev.js +122 -0
  106. package/lib/docker.js +157 -0
  107. package/lib/doctor.js +210 -0
  108. package/lib/http.js +147 -0
  109. package/lib/i18n/index.js +32 -0
  110. package/lib/i18n/strings.js +587 -0
  111. package/lib/lifecycle.js +160 -0
  112. package/lib/paths.js +75 -0
  113. package/lib/pm2.js +32 -0
  114. package/lib/process.js +45 -0
  115. package/{scripts/publish-packages.js → lib/publish.js} +255 -58
  116. package/lib/root.js +39 -0
  117. package/lib/spawn.js +92 -0
  118. package/lib/status.js +108 -0
  119. package/package.json +38 -73
  120. package/scripts/install-bundled-runtime.mjs +46 -0
  121. package/server/bin/reactpress-server.js +4 -4
  122. package/server/dist/app.module.d.ts +2 -0
  123. package/server/dist/app.module.js +80 -0
  124. package/server/dist/app.module.js.map +1 -0
  125. package/server/dist/common/api-messages.d.ts +32 -0
  126. package/server/dist/common/api-messages.js +36 -0
  127. package/server/dist/common/api-messages.js.map +1 -0
  128. package/server/dist/filters/http-exception.filter.d.ts +4 -0
  129. package/server/dist/filters/http-exception.filter.js +36 -0
  130. package/server/dist/filters/http-exception.filter.js.map +1 -0
  131. package/server/dist/generate-swagger.d.ts +1 -0
  132. package/server/dist/generate-swagger.js +73 -0
  133. package/server/dist/generate-swagger.js.map +1 -0
  134. package/server/dist/interceptors/transform.interceptor.d.ts +9 -0
  135. package/server/dist/interceptors/transform.interceptor.js +36 -0
  136. package/server/dist/interceptors/transform.interceptor.js.map +1 -0
  137. package/server/dist/logger/index.d.ts +4 -0
  138. package/server/dist/logger/index.js +33 -0
  139. package/server/dist/logger/index.js.map +1 -0
  140. package/server/dist/main.d.ts +6 -0
  141. package/server/dist/main.js +263 -0
  142. package/server/dist/main.js.map +1 -0
  143. package/server/dist/modules/api-key/api-key.controller.d.ts +14 -0
  144. package/server/dist/modules/api-key/api-key.controller.js +63 -0
  145. package/server/dist/modules/api-key/api-key.controller.js.map +1 -0
  146. package/server/dist/modules/api-key/api-key.entity.d.ts +11 -0
  147. package/server/dist/modules/api-key/api-key.entity.js +63 -0
  148. package/server/dist/modules/api-key/api-key.entity.js.map +1 -0
  149. package/server/dist/modules/api-key/api-key.guard.d.ts +7 -0
  150. package/server/dist/modules/api-key/api-key.guard.js +40 -0
  151. package/server/dist/modules/api-key/api-key.guard.js.map +1 -0
  152. package/server/dist/modules/api-key/api-key.module.d.ts +2 -0
  153. package/server/dist/modules/api-key/api-key.module.js +28 -0
  154. package/server/dist/modules/api-key/api-key.module.js.map +1 -0
  155. package/server/dist/modules/api-key/api-key.service.d.ts +15 -0
  156. package/server/dist/modules/api-key/api-key.service.js +81 -0
  157. package/server/dist/modules/api-key/api-key.service.js.map +1 -0
  158. package/server/dist/modules/article/article-revision.entity.d.ts +11 -0
  159. package/server/dist/modules/article/article-revision.entity.js +53 -0
  160. package/server/dist/modules/article/article-revision.entity.js.map +1 -0
  161. package/server/dist/modules/article/article.controller.d.ts +27 -0
  162. package/server/dist/modules/article/article.controller.js +198 -0
  163. package/server/dist/modules/article/article.controller.js.map +1 -0
  164. package/server/dist/modules/article/article.entity.d.ts +23 -0
  165. package/server/dist/modules/article/article.entity.js +128 -0
  166. package/server/dist/modules/article/article.entity.js.map +1 -0
  167. package/server/dist/modules/article/article.module.d.ts +2 -0
  168. package/server/dist/modules/article/article.module.js +30 -0
  169. package/server/dist/modules/article/article.module.js.map +1 -0
  170. package/server/dist/modules/article/article.service.d.ts +30 -0
  171. package/server/dist/modules/article/article.service.js +303 -0
  172. package/server/dist/modules/article/article.service.js.map +1 -0
  173. package/server/dist/modules/article/article.util.d.ts +1 -0
  174. package/server/dist/modules/article/article.util.js +9 -0
  175. package/server/dist/modules/article/article.util.js.map +1 -0
  176. package/server/dist/modules/article/scheduled-publish.service.d.ts +13 -0
  177. package/server/dist/modules/article/scheduled-publish.service.js +65 -0
  178. package/server/dist/modules/article/scheduled-publish.service.js.map +1 -0
  179. package/server/dist/modules/auth/auth.controller.d.ts +12 -0
  180. package/server/dist/modules/auth/auth.controller.js +66 -0
  181. package/server/dist/modules/auth/auth.controller.js.map +1 -0
  182. package/server/dist/modules/auth/auth.module.d.ts +2 -0
  183. package/server/dist/modules/auth/auth.module.js +41 -0
  184. package/server/dist/modules/auth/auth.module.js.map +1 -0
  185. package/server/dist/modules/auth/auth.service.d.ts +26 -0
  186. package/server/dist/modules/auth/auth.service.js +127 -0
  187. package/server/dist/modules/auth/auth.service.js.map +1 -0
  188. package/server/dist/modules/auth/jwt-auth.guard.d.ts +7 -0
  189. package/server/dist/modules/auth/jwt-auth.guard.js +29 -0
  190. package/server/dist/modules/auth/jwt-auth.guard.js.map +1 -0
  191. package/server/dist/modules/auth/jwt.strategy.d.ts +9 -0
  192. package/server/dist/modules/auth/jwt.strategy.js +38 -0
  193. package/server/dist/modules/auth/jwt.strategy.js.map +1 -0
  194. package/server/dist/modules/auth/roles.guard.d.ts +10 -0
  195. package/server/dist/modules/auth/roles.guard.js +46 -0
  196. package/server/dist/modules/auth/roles.guard.js.map +1 -0
  197. package/server/dist/modules/category/category.controller.d.ts +11 -0
  198. package/server/dist/modules/category/category.controller.js +91 -0
  199. package/server/dist/modules/category/category.controller.js.map +1 -0
  200. package/server/dist/modules/category/category.entity.d.ts +9 -0
  201. package/server/dist/modules/category/category.entity.js +60 -0
  202. package/server/dist/modules/category/category.entity.js.map +1 -0
  203. package/server/dist/modules/category/category.module.d.ts +2 -0
  204. package/server/dist/modules/category/category.module.js +27 -0
  205. package/server/dist/modules/category/category.module.js.map +1 -0
  206. package/server/dist/modules/category/category.service.d.ts +12 -0
  207. package/server/dist/modules/category/category.service.js +89 -0
  208. package/server/dist/modules/category/category.service.js.map +1 -0
  209. package/server/dist/modules/comment/comment.controller.d.ts +12 -0
  210. package/server/dist/modules/comment/comment.controller.js +100 -0
  211. package/server/dist/modules/comment/comment.controller.js.map +1 -0
  212. package/server/dist/modules/comment/comment.entity.d.ts +17 -0
  213. package/server/dist/modules/comment/comment.entity.js +104 -0
  214. package/server/dist/modules/comment/comment.entity.js.map +1 -0
  215. package/server/dist/modules/comment/comment.module.d.ts +2 -0
  216. package/server/dist/modules/comment/comment.module.js +30 -0
  217. package/server/dist/modules/comment/comment.module.js.map +1 -0
  218. package/server/dist/modules/comment/comment.service.d.ts +24 -0
  219. package/server/dist/modules/comment/comment.service.js +172 -0
  220. package/server/dist/modules/comment/comment.service.js.map +1 -0
  221. package/server/dist/modules/comment/html.d.ts +15 -0
  222. package/server/dist/modules/comment/html.js +632 -0
  223. package/server/dist/modules/comment/html.js.map +1 -0
  224. package/server/dist/modules/file/file.controller.d.ts +10 -0
  225. package/server/dist/modules/file/file.controller.js +84 -0
  226. package/server/dist/modules/file/file.controller.js.map +1 -0
  227. package/server/dist/modules/file/file.entity.d.ts +9 -0
  228. package/server/dist/modules/file/file.entity.js +60 -0
  229. package/server/dist/modules/file/file.entity.js.map +1 -0
  230. package/server/dist/modules/file/file.module.d.ts +2 -0
  231. package/server/dist/modules/file/file.module.js +27 -0
  232. package/server/dist/modules/file/file.module.js.map +1 -0
  233. package/server/dist/modules/file/file.service.d.ts +17 -0
  234. package/server/dist/modules/file/file.service.js +111 -0
  235. package/server/dist/modules/file/file.service.js.map +1 -0
  236. package/server/dist/modules/health/health.controller.d.ts +11 -0
  237. package/server/dist/modules/health/health.controller.js +57 -0
  238. package/server/dist/modules/health/health.controller.js.map +1 -0
  239. package/server/dist/modules/health/health.module.d.ts +2 -0
  240. package/server/dist/modules/health/health.module.js +20 -0
  241. package/server/dist/modules/health/health.module.js.map +1 -0
  242. package/server/dist/modules/install/install.controller.d.ts +11 -0
  243. package/server/dist/modules/install/install.controller.js +49 -0
  244. package/server/dist/modules/install/install.controller.js.map +1 -0
  245. package/server/dist/modules/install/install.module.d.ts +2 -0
  246. package/server/dist/modules/install/install.module.js +26 -0
  247. package/server/dist/modules/install/install.module.js.map +1 -0
  248. package/server/dist/modules/install/install.service.d.ts +12 -0
  249. package/server/dist/modules/install/install.service.js +63 -0
  250. package/server/dist/modules/install/install.service.js.map +1 -0
  251. package/server/dist/modules/knowledge/knowledge.controller.d.ts +14 -0
  252. package/server/dist/modules/knowledge/knowledge.controller.js +128 -0
  253. package/server/dist/modules/knowledge/knowledge.controller.js.map +1 -0
  254. package/server/dist/modules/knowledge/knowledge.entity.d.ts +18 -0
  255. package/server/dist/modules/knowledge/knowledge.entity.js +109 -0
  256. package/server/dist/modules/knowledge/knowledge.entity.js.map +1 -0
  257. package/server/dist/modules/knowledge/knowledge.module.d.ts +2 -0
  258. package/server/dist/modules/knowledge/knowledge.module.js +27 -0
  259. package/server/dist/modules/knowledge/knowledge.module.js.map +1 -0
  260. package/server/dist/modules/knowledge/knowledge.service.d.ts +14 -0
  261. package/server/dist/modules/knowledge/knowledge.service.js +143 -0
  262. package/server/dist/modules/knowledge/knowledge.service.js.map +1 -0
  263. package/server/dist/modules/page/page.controller.d.ts +12 -0
  264. package/server/dist/modules/page/page.controller.js +102 -0
  265. package/server/dist/modules/page/page.controller.js.map +1 -0
  266. package/server/dist/modules/page/page.entity.d.ts +15 -0
  267. package/server/dist/modules/page/page.entity.js +94 -0
  268. package/server/dist/modules/page/page.entity.js.map +1 -0
  269. package/server/dist/modules/page/page.module.d.ts +2 -0
  270. package/server/dist/modules/page/page.module.js +27 -0
  271. package/server/dist/modules/page/page.module.js.map +1 -0
  272. package/server/dist/modules/page/page.service.d.ts +12 -0
  273. package/server/dist/modules/page/page.service.js +97 -0
  274. package/server/dist/modules/page/page.service.js.map +1 -0
  275. package/server/dist/modules/search/search.controller.d.ts +8 -0
  276. package/server/dist/modules/search/search.controller.js +67 -0
  277. package/server/dist/modules/search/search.controller.js.map +1 -0
  278. package/server/dist/modules/search/search.entity.d.ts +8 -0
  279. package/server/dist/modules/search/search.entity.js +59 -0
  280. package/server/dist/modules/search/search.entity.js.map +1 -0
  281. package/server/dist/modules/search/search.module.d.ts +2 -0
  282. package/server/dist/modules/search/search.module.js +27 -0
  283. package/server/dist/modules/search/search.module.js.map +1 -0
  284. package/server/dist/modules/search/search.service.d.ts +12 -0
  285. package/server/dist/modules/search/search.service.js +84 -0
  286. package/server/dist/modules/search/search.service.js.map +1 -0
  287. package/server/dist/modules/setting/setting.constant.d.ts +3 -0
  288. package/server/dist/modules/setting/setting.constant.js +25 -0
  289. package/server/dist/modules/setting/setting.constant.js.map +1 -0
  290. package/server/dist/modules/setting/setting.controller.d.ts +12 -0
  291. package/server/dist/modules/setting/setting.controller.js +77 -0
  292. package/server/dist/modules/setting/setting.controller.js.map +1 -0
  293. package/server/dist/modules/setting/setting.entity.d.ts +26 -0
  294. package/server/dist/modules/setting/setting.entity.js +149 -0
  295. package/server/dist/modules/setting/setting.entity.js.map +1 -0
  296. package/server/dist/modules/setting/setting.module.d.ts +2 -0
  297. package/server/dist/modules/setting/setting.module.js +28 -0
  298. package/server/dist/modules/setting/setting.module.js.map +1 -0
  299. package/server/dist/modules/setting/setting.service.d.ts +10 -0
  300. package/server/dist/modules/setting/setting.service.js +106 -0
  301. package/server/dist/modules/setting/setting.service.js.map +1 -0
  302. package/server/dist/modules/smtp/mail.util.d.ts +6 -0
  303. package/server/dist/modules/smtp/mail.util.js +33 -0
  304. package/server/dist/modules/smtp/mail.util.js.map +1 -0
  305. package/server/dist/modules/smtp/smtp.controller.d.ts +9 -0
  306. package/server/dist/modules/smtp/smtp.controller.js +69 -0
  307. package/server/dist/modules/smtp/smtp.controller.js.map +1 -0
  308. package/server/dist/modules/smtp/smtp.entity.d.ts +9 -0
  309. package/server/dist/modules/smtp/smtp.entity.js +60 -0
  310. package/server/dist/modules/smtp/smtp.entity.js.map +1 -0
  311. package/server/dist/modules/smtp/smtp.module.d.ts +2 -0
  312. package/server/dist/modules/smtp/smtp.module.js +28 -0
  313. package/server/dist/modules/smtp/smtp.module.js.map +1 -0
  314. package/server/dist/modules/smtp/smtp.service.d.ts +11 -0
  315. package/server/dist/modules/smtp/smtp.service.js +82 -0
  316. package/server/dist/modules/smtp/smtp.service.js.map +1 -0
  317. package/server/dist/modules/tag/tag.controller.d.ts +12 -0
  318. package/server/dist/modules/tag/tag.controller.js +101 -0
  319. package/server/dist/modules/tag/tag.controller.js.map +1 -0
  320. package/server/dist/modules/tag/tag.entity.d.ts +9 -0
  321. package/server/dist/modules/tag/tag.entity.js +59 -0
  322. package/server/dist/modules/tag/tag.entity.js.map +1 -0
  323. package/server/dist/modules/tag/tag.module.d.ts +2 -0
  324. package/server/dist/modules/tag/tag.module.js +27 -0
  325. package/server/dist/modules/tag/tag.module.js.map +1 -0
  326. package/server/dist/modules/tag/tag.service.d.ts +13 -0
  327. package/server/dist/modules/tag/tag.service.js +103 -0
  328. package/server/dist/modules/tag/tag.service.js.map +1 -0
  329. package/server/dist/modules/user/user.controller.d.ts +13 -0
  330. package/server/dist/modules/user/user.controller.js +114 -0
  331. package/server/dist/modules/user/user.controller.js.map +1 -0
  332. package/server/dist/modules/user/user.entity.d.ts +15 -0
  333. package/server/dist/modules/user/user.entity.js +96 -0
  334. package/server/dist/modules/user/user.entity.js.map +1 -0
  335. package/server/dist/modules/user/user.module.d.ts +2 -0
  336. package/server/dist/modules/user/user.module.js +28 -0
  337. package/server/dist/modules/user/user.module.js.map +1 -0
  338. package/server/dist/modules/user/user.service.d.ts +16 -0
  339. package/server/dist/modules/user/user.service.js +151 -0
  340. package/server/dist/modules/user/user.service.js.map +1 -0
  341. package/server/dist/modules/view/view.controller.d.ts +11 -0
  342. package/server/dist/modules/view/view.controller.js +92 -0
  343. package/server/dist/modules/view/view.controller.js.map +1 -0
  344. package/server/dist/modules/view/view.entity.d.ts +14 -0
  345. package/server/dist/modules/view/view.entity.js +88 -0
  346. package/server/dist/modules/view/view.entity.js.map +1 -0
  347. package/server/dist/modules/view/view.module.d.ts +2 -0
  348. package/server/dist/modules/view/view.module.js +27 -0
  349. package/server/dist/modules/view/view.module.js.map +1 -0
  350. package/server/dist/modules/view/view.service.d.ts +11 -0
  351. package/server/dist/modules/view/view.service.js +89 -0
  352. package/server/dist/modules/view/view.service.js.map +1 -0
  353. package/server/dist/modules/webhook/webhook.controller.d.ts +12 -0
  354. package/server/dist/modules/webhook/webhook.controller.js +63 -0
  355. package/server/dist/modules/webhook/webhook.controller.js.map +1 -0
  356. package/server/dist/modules/webhook/webhook.entity.d.ts +9 -0
  357. package/server/dist/modules/webhook/webhook.entity.js +54 -0
  358. package/server/dist/modules/webhook/webhook.entity.js.map +1 -0
  359. package/server/dist/modules/webhook/webhook.module.d.ts +2 -0
  360. package/server/dist/modules/webhook/webhook.module.js +27 -0
  361. package/server/dist/modules/webhook/webhook.module.js.map +1 -0
  362. package/server/dist/modules/webhook/webhook.service.d.ts +16 -0
  363. package/server/dist/modules/webhook/webhook.service.js +97 -0
  364. package/server/dist/modules/webhook/webhook.service.js.map +1 -0
  365. package/server/dist/public/favicon.png +0 -0
  366. package/server/dist/public/index.html +439 -0
  367. package/server/dist/public/swagger/custom.css +11 -0
  368. package/server/dist/starter.d.ts +1 -0
  369. package/server/dist/starter.js +84 -0
  370. package/server/dist/starter.js.map +1 -0
  371. package/server/dist/tsconfig.build.tsbuildinfo +16764 -0
  372. package/server/dist/utils/date.util.d.ts +1 -0
  373. package/server/dist/utils/date.util.js +13 -0
  374. package/server/dist/utils/date.util.js.map +1 -0
  375. package/server/dist/utils/ip.util.d.ts +2 -0
  376. package/server/dist/utils/ip.util.js +27 -0
  377. package/server/dist/utils/ip.util.js.map +1 -0
  378. package/server/dist/utils/markdown.util.d.ts +4 -0
  379. package/server/dist/utils/markdown.util.js +42 -0
  380. package/server/dist/utils/markdown.util.js.map +1 -0
  381. package/server/dist/utils/oss/aliyun-oss-client.d.ts +6 -0
  382. package/server/dist/utils/oss/aliyun-oss-client.js +28 -0
  383. package/server/dist/utils/oss/aliyun-oss-client.js.map +1 -0
  384. package/server/dist/utils/oss/oss-client.d.ts +6 -0
  385. package/server/dist/utils/oss/oss-client.js +10 -0
  386. package/server/dist/utils/oss/oss-client.js.map +1 -0
  387. package/server/dist/utils/oss.util.d.ts +13 -0
  388. package/server/dist/utils/oss.util.js +48 -0
  389. package/server/dist/utils/oss.util.js.map +1 -0
  390. package/server/dist/utils/ua.util.d.ts +9 -0
  391. package/server/dist/utils/ua.util.js +36 -0
  392. package/server/dist/utils/ua.util.js.map +1 -0
  393. package/server/dist/utils/uniqueid.util.d.ts +1 -0
  394. package/server/dist/utils/uniqueid.util.js +9 -0
  395. package/server/dist/utils/uniqueid.util.js.map +1 -0
  396. package/server/dist/utils/upload.util.d.ts +5 -0
  397. package/server/dist/utils/upload.util.js +34 -0
  398. package/server/dist/utils/upload.util.js.map +1 -0
  399. package/server/dist/utils/user.util.d.ts +1 -0
  400. package/server/dist/utils/user.util.js +18 -0
  401. package/server/dist/utils/user.util.js.map +1 -0
  402. package/server/ecosystem.config.js +18 -0
  403. package/server/package.json +146 -0
  404. package/server/public/favicon.png +0 -0
  405. package/server/public/index.html +439 -0
  406. package/server/public/swagger/custom.css +11 -0
  407. package/templates/config.default.json +12 -0
  408. package/templates/docker-compose.prod.yml +56 -0
  409. package/templates/docker-compose.yml +27 -0
  410. package/templates/env.default +11 -0
  411. package/templates/package.json +10 -0
  412. package/ui/banner.js +22 -0
  413. package/ui/interactive.js +184 -0
  414. package/ui/theme.js +25 -0
  415. package/CONTRIBUTING.md +0 -122
  416. package/client/bin/reactpress-client.js +0 -190
  417. package/scripts/build-packages.js +0 -271
  418. package/scripts/deploy.sh +0 -25
  419. package/scripts/dev.js +0 -39
  420. package/scripts/reactpress-server-old.js +0 -130
  421. package/scripts/reactpress-server.js +0 -666
@@ -1,271 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- const { execSync } = require('child_process');
4
- const fs = require('fs');
5
- const path = require('path');
6
- const chalk = require('chalk');
7
- const crypto = require('crypto');
8
-
9
- // Package build order (dependencies first)
10
- const packages = [
11
- {
12
- name: '@fecommunity/reactpress-config',
13
- path: 'config',
14
- description: 'Configuration management package'
15
- },
16
- {
17
- name: '@fecommunity/reactpress-server',
18
- path: 'server',
19
- description: 'Backend API server package'
20
- },
21
- {
22
- name: '@fecommunity/reactpress-client',
23
- path: 'client',
24
- description: 'Frontend application package'
25
- }
26
- ];
27
-
28
- // Generate a hash for a file or directory
29
- function generateHash(filePath) {
30
- try {
31
- if (fs.statSync(filePath).isDirectory()) {
32
- const files = fs.readdirSync(filePath);
33
- const hashes = files
34
- .filter(file => !file.startsWith('.') && file !== 'node_modules' && file !== 'dist' && file !== '.next') // Ignore hidden files and build directories
35
- .map(file => generateHash(path.join(filePath, file)))
36
- .sort();
37
- return crypto.createHash('md5').update(hashes.join('')).digest('hex');
38
- } else {
39
- const content = fs.readFileSync(filePath);
40
- return crypto.createHash('md5').update(content).digest('hex');
41
- }
42
- } catch (error) {
43
- return '';
44
- }
45
- }
46
-
47
- // Get package content hash
48
- function getPackageHash(packagePath) {
49
- const fullPath = path.join(process.cwd(), packagePath);
50
- return generateHash(fullPath);
51
- }
52
-
53
- // Check if package has meaningful changes
54
- function hasMeaningfulChanges(packagePath, packageName) {
55
- try {
56
- // Create a hash file path to store previous hash in node_modules
57
- const hashFilePath = path.join(process.cwd(), 'node_modules', '.build-cache', `${packageName.replace('/', '_')}.hash`);
58
-
59
- // Generate current hash
60
- const currentHash = getPackageHash(packagePath);
61
-
62
- // Check if we have a previous hash
63
- if (fs.existsSync(hashFilePath)) {
64
- const previousHash = fs.readFileSync(hashFilePath, 'utf8').trim();
65
- return currentHash !== previousHash;
66
- }
67
-
68
- // If no previous hash, consider it as having changes
69
- return true;
70
- } catch (error) {
71
- console.log(chalk.yellow(`⚠️ Could not check changes for ${packageName}, assuming changes exist`));
72
- return true;
73
- }
74
- }
75
-
76
- // Save package hash
77
- function savePackageHash(packagePath, packageName) {
78
- try {
79
- const hashFilePath = path.join(process.cwd(), 'node_modules', '.build-cache', `${packageName.replace('/', '_')}.hash`);
80
-
81
- // Ensure cache directory exists
82
- const cacheDir = path.dirname(hashFilePath);
83
- if (!fs.existsSync(cacheDir)) {
84
- fs.mkdirSync(cacheDir, { recursive: true });
85
- }
86
-
87
- // Generate and save current hash
88
- const currentHash = getPackageHash(packagePath);
89
- fs.writeFileSync(hashFilePath, currentHash);
90
- } catch (error) {
91
- console.log(chalk.yellow(`⚠️ Could not save hash for ${packageName}`));
92
- }
93
- }
94
-
95
- // Get current versions
96
- function getCurrentVersion(packagePath) {
97
- try {
98
- const pkgPath = path.join(process.cwd(), packagePath, 'package.json');
99
- const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
100
- return pkg.version;
101
- } catch (error) {
102
- return 'unknown';
103
- }
104
- }
105
-
106
- // Fix workspace dependencies for build
107
- function fixWorkspaceDependenciesForBuild(packagePath) {
108
- console.log(chalk.blue(`🔧 Fixing workspace dependencies for build: ${packagePath}...`));
109
-
110
- const pkgPath = path.join(process.cwd(), packagePath, 'package.json');
111
- const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
112
-
113
- // Fix dependencies
114
- const depTypes = ['dependencies', 'devDependencies', 'peerDependencies'];
115
-
116
- depTypes.forEach(depType => {
117
- if (pkg[depType]) {
118
- Object.keys(pkg[depType]).forEach(depName => {
119
- // Check if it's a workspace dependency
120
- if (pkg[depType][depName] === 'workspace:*' || pkg[depType][depName].startsWith('workspace:')) {
121
- // For build purposes, we'll use the file: protocol to reference local packages
122
- const depPackage = packages.find(p => p.name === depName);
123
- if (depPackage) {
124
- console.log(chalk.gray(` Replacing ${depName} workspace dependency with file reference`));
125
- pkg[depType][depName] = `file:../${depPackage.path}`;
126
- }
127
- }
128
- });
129
- }
130
- });
131
-
132
- // Write the updated package.json
133
- fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n');
134
- console.log(chalk.green(`✅ Workspace dependencies fixed for build: ${packagePath}`));
135
- }
136
-
137
- // Restore workspace dependencies after build
138
- function restoreWorkspaceDependenciesAfterBuild(packagePath) {
139
- console.log(chalk.blue(`🔄 Restoring workspace dependencies after build: ${packagePath}...`));
140
-
141
- const pkgPath = path.join(process.cwd(), packagePath, 'package.json');
142
- const pkg = JSON.parse(fs.readFileSync(pkgPath, 'utf8'));
143
-
144
- // Restore dependencies
145
- const depTypes = ['dependencies', 'devDependencies', 'peerDependencies'];
146
-
147
- depTypes.forEach(depType => {
148
- if (pkg[depType]) {
149
- Object.keys(pkg[depType]).forEach(depName => {
150
- // Check if this is one of our internal packages referenced with file:
151
- const depPackage = packages.find(p => p.name === depName);
152
- if (depPackage && pkg[depType][depName].startsWith('file:')) {
153
- console.log(chalk.gray(` Restoring ${depName} to workspace dependency`));
154
- pkg[depType][depName] = 'workspace:*';
155
- }
156
- });
157
- }
158
- });
159
-
160
- // Write the updated package.json
161
- fs.writeFileSync(pkgPath, JSON.stringify(pkg, null, 2) + '\n');
162
- console.log(chalk.green(`✅ Workspace dependencies restored after build: ${packagePath}`));
163
- }
164
-
165
- // Build package
166
- function buildPackage(pkg) {
167
- console.log(chalk.blue(`\n🔨 Building ${pkg.name} (${pkg.description})...`));
168
-
169
- try {
170
- // Fix workspace dependencies for build
171
- fixWorkspaceDependenciesForBuild(pkg.path);
172
-
173
- try {
174
- if (pkg.path === 'config') {
175
- execSync('pnpm run build', { cwd: path.join(process.cwd(), pkg.path), stdio: 'inherit' });
176
- } else if (pkg.path === 'server') {
177
- execSync('pnpm run prebuild && pnpm run build', { cwd: path.join(process.cwd(), pkg.path), stdio: 'inherit' });
178
- } else if (pkg.path === 'client') {
179
- execSync('pnpm run prebuild && pnpm run build', { cwd: path.join(process.cwd(), pkg.path), stdio: 'inherit' });
180
- }
181
- console.log(chalk.green(`✅ ${pkg.name} built successfully`));
182
- } finally {
183
- // Always restore workspace dependencies
184
- restoreWorkspaceDependenciesAfterBuild(pkg.path);
185
- }
186
- } catch (error) {
187
- console.log(chalk.red(`❌ Failed to build ${pkg.name}`));
188
- throw error;
189
- }
190
- }
191
-
192
- // Main function
193
- async function main() {
194
- console.log(chalk.blue('🏗️ ReactPress Package Builder\n'));
195
-
196
- // Show current versions
197
- console.log(chalk.cyan('📋 Current package versions:'));
198
- packages.forEach(pkg => {
199
- const version = getCurrentVersion(pkg.path);
200
- console.log(chalk.gray(` ${pkg.name}: ${version}`));
201
- });
202
- console.log();
203
-
204
- try {
205
- // Track which packages actually need to be built
206
- const packagesToBuild = [];
207
-
208
- // Check for meaningful changes in each package
209
- for (const pkg of packages) {
210
- if (fs.existsSync(path.join(process.cwd(), pkg.path))) {
211
- if (hasMeaningfulChanges(pkg.path, pkg.name)) {
212
- packagesToBuild.push(pkg);
213
- console.log(chalk.blue(`\n📦 ${pkg.name} has changes, will be built`));
214
- } else {
215
- console.log(chalk.gray(`\n⏭️ ${pkg.name} has no meaningful changes, skipping...`));
216
- }
217
- } else {
218
- console.log(chalk.yellow(`⚠️ Package ${pkg.name} directory not found, skipping...`));
219
- }
220
- }
221
-
222
- if (packagesToBuild.length === 0) {
223
- console.log(chalk.green('\n✅ No packages have meaningful changes. Nothing to build!'));
224
- return;
225
- }
226
-
227
- // Build packages that have changes
228
- for (const pkg of packagesToBuild) {
229
- await buildPackage(pkg);
230
- // Save the hash after successful build
231
- savePackageHash(pkg.path, pkg.name);
232
- }
233
-
234
- console.log(chalk.green(`\n🎉 ${packagesToBuild.length} package(s) built successfully!`));
235
- } catch (error) {
236
- console.error(chalk.red('❌ Build failed:'), error);
237
- process.exit(1);
238
- }
239
- }
240
-
241
- // Check if called with --publish flag
242
- if (process.argv.includes('--publish')) {
243
- // When called with --publish, we only show the header and versions but don't build
244
- // The publish script will handle building as needed
245
- console.log(chalk.blue('🏗️ ReactPress Package Builder\n'));
246
-
247
- // Show current versions
248
- console.log(chalk.cyan('📋 Current package versions:'));
249
- packages.forEach(pkg => {
250
- const version = getCurrentVersion(pkg.path);
251
- console.log(chalk.gray(` ${pkg.name}: ${version}`));
252
- });
253
- console.log();
254
-
255
- // Don't build packages here, just start the publish process
256
- console.log(chalk.blue('\n🚀 Starting publish process...'));
257
- // Execute publish script
258
- const { spawn } = require('child_process');
259
- const publishProcess = spawn('node', ['scripts/publish-packages.js', '--release'], { stdio: 'inherit' });
260
-
261
- publishProcess.on('close', (code) => {
262
- if (code === 0) {
263
- console.log(chalk.green('\n✅ Build and publish completed successfully!'));
264
- } else {
265
- console.log(chalk.red('\n❌ Publish process failed!'));
266
- process.exit(code);
267
- }
268
- });
269
- } else {
270
- main();
271
- }
package/scripts/deploy.sh DELETED
@@ -1,25 +0,0 @@
1
- # 更新代码
2
- git checkout master
3
- git pull
4
-
5
- # 安装依赖&构建
6
- pnpm install
7
-
8
- # 构建本地配置
9
- pnpm run build:config
10
-
11
- # 构建服务器
12
- pnpm run build:server
13
-
14
- # 结束进程
15
- pm2 kill
16
-
17
- # 构建本地client
18
- pnpm run build:client
19
-
20
- # 启动
21
- pnpm run pm2
22
-
23
- # 开机启动
24
- pm2 startup
25
- pm2 save
package/scripts/dev.js DELETED
@@ -1,39 +0,0 @@
1
- // scripts/dev.js
2
- const { spawn } = require('child_process');
3
- const path = require('path');
4
-
5
- // 获取当前工作目录
6
- const currentWorkingDir = process.cwd();
7
-
8
- // 设置环境变量
9
- process.env.REACTPRESS_ORIGINAL_CWD = currentWorkingDir;
10
-
11
- console.log(`设置 REACTPRESS_ORIGINAL_CWD: ${currentWorkingDir}`);
12
-
13
- // 执行构建命令
14
- const build = spawn('pnpm', ['build:toolkit'], {
15
- stdio: 'inherit',
16
- shell: true
17
- });
18
-
19
- build.on('close', (code) => {
20
- if (code !== 0) {
21
- console.error(`构建失败,退出码: ${code}`);
22
- process.exit(code);
23
- }
24
-
25
- // 执行并发命令
26
- const concurrently = spawn('npx', [
27
- 'concurrently',
28
- 'pnpm:dev:server',
29
- 'pnpm:dev:client'
30
- ], {
31
- stdio: 'inherit',
32
- shell: true,
33
- cwd: currentWorkingDir
34
- });
35
-
36
- concurrently.on('close', (code) => {
37
- process.exit(code);
38
- });
39
- });
@@ -1,130 +0,0 @@
1
- #!/usr/bin/env node
2
-
3
- const express = require('express');
4
- const mysql = require('mysql2/promise');
5
- const chalk = require('chalk');
6
- const open = require('open');
7
- const fs = require('fs');
8
- const path = require('path');
9
- const crypto = require('crypto');
10
-
11
- const PORT = 3003;
12
- const envPath = path.join(process.cwd(), '.env');
13
-
14
- // WordPress-style 5-minute installation
15
- async function install() {
16
- console.log(chalk.blue('🚀 ReactPress 5-Minute Installation'));
17
- console.log(chalk.cyan('🌍 Starting installation wizard...'));
18
-
19
- const app = express();
20
- app.use(express.json());
21
- app.get('/', (req, res) => res.send(getHTML()));
22
-
23
- app.post('/test-db', async (req, res) => {
24
- const { host, port, user, password, database } = req.body;
25
- try {
26
- const conn = await mysql.createConnection({ host, port: parseInt(port), user, password });
27
- await conn.execute(`CREATE DATABASE IF NOT EXISTS \`${database}\` CHARACTER SET utf8mb4`);
28
- await conn.end();
29
- res.json({ success: true, message: 'Database connection successful!' });
30
- } catch (error) {
31
- res.json({ success: false, message: error.message });
32
- }
33
- });
34
-
35
- app.post('/install', async (req, res) => {
36
- const { db, site } = req.body;
37
- const env = `DB_HOST=${db.host}\nDB_PORT=${db.port}\nDB_USER=${db.user}\nDB_PASSWD=${db.password}\nDB_DATABASE=${db.database}\nCLIENT_SITE_URL=${site.clientUrl}\nSERVER_SITE_URL=${site.serverUrl}\nJWT_SECRET=${crypto.randomBytes(32).toString('hex')}\n`;
38
- fs.writeFileSync(envPath, env);
39
- res.json({ success: true, message: 'ReactPress installed successfully!' });
40
- setTimeout(() => {
41
- console.log(chalk.green('\n🎉 Installation completed!'));
42
- console.log(chalk.cyan('Run: npx reactpress-server start'));
43
- process.exit(0);
44
- }, 2000);
45
- });
46
-
47
- const server = app.listen(PORT, () => {
48
- const url = `http://localhost:${PORT}`;
49
- console.log(chalk.green(`✅ Installation wizard: ${url}`));
50
- open(url);
51
- console.log(chalk.gray('Press Ctrl+C to cancel\n'));
52
- });
53
-
54
- process.on('SIGINT', () => {
55
- console.log(chalk.yellow('\n⚠️ Installation cancelled'));
56
- server.close();
57
- process.exit(0);
58
- });
59
- }
60
-
61
- function start() {
62
- if (!fs.existsSync(envPath)) {
63
- console.log(chalk.red('❌ No configuration found!'));
64
- console.log(chalk.yellow('Run: npx reactpress-server install'));
65
- return;
66
- }
67
- console.log(chalk.blue('🚀 Starting ReactPress Server...'));
68
- const { spawn } = require('child_process');
69
- spawn('npm', ['run', 'start:dev'], { cwd: path.resolve(__dirname, '../server'), stdio: 'inherit' });
70
- }
71
-
72
- if (!clientUrl || !serverUrl) {
73
- showNotice('Please fill in all site URLs.', 'error', 'installResult');
74
- return;
75
- }
76
-
77
- const installBtn = document.getElementById('installBtn');
78
- const originalText = installBtn.innerHTML;
79
-
80
- installBtn.disabled = true;
81
- installBtn.innerHTML = '<span class="wp-loader"></span>Installing ReactPress...';
82
-
83
- try {
84
- const response = await fetch('/install', {
85
- method: 'POST',
86
- headers: {
87
- 'Content-Type': 'application/json'
88
- },
89
- body: JSON.stringify({
90
- db: dbData,
91
- site: { clientUrl, serverUrl }
92
- })
93
- });
94
-
95
- const result = await response.json();
96
-
97
- if (result.success) {
98
- showStep(3);
99
- } else {
100
- showNotice(result.message, 'error', 'installResult');
101
- }
102
- } catch (error) {
103
- showNotice('Installation failed. Please try again.', 'error', 'installResult');
104
- } finally {
105
- installBtn.disabled = false;
106
- installBtn.innerHTML = originalText;
107
- }
108
- }
109
-
110
- // Initialize progress bar
111
- updateProgress();
112
-
113
- // Auto-focus first input
114
- document.getElementById('dbHost').focus();
115
- </script>
116
- </body>
117
- </html>`;
118
- }
119
-
120
- // Main entry point
121
- const args = process.argv.slice(2);
122
- if (args.length === 0 || args[0] === 'install') {
123
- install();
124
- } else if (args[0] === 'start') {
125
- start();
126
- } else {
127
- console.log(chalk.blue('ReactPress Server CLI'));
128
- console.log(chalk.gray('npx reactpress-server # Install'));
129
- console.log(chalk.gray('npx reactpress-server start # Start server'));
130
- }