@jayfong/x-server 2.119.0 → 3.1.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 (288) hide show
  1. package/lib/_virtual/_rolldown/runtime.mjs +4 -0
  2. package/lib/cli/api_generator.d.mts +75 -0
  3. package/lib/cli/api_generator.mjs +334 -0
  4. package/lib/cli/build_util.d.mts +15 -0
  5. package/lib/cli/build_util.mjs +101 -0
  6. package/lib/cli/cli.d.mts +1 -0
  7. package/lib/cli/cli.mjs +345 -0
  8. package/lib/cli/css_register.d.mts +1 -0
  9. package/lib/cli/css_register.mjs +7 -0
  10. package/lib/cli/deploy_util.d.mts +23 -0
  11. package/lib/cli/deploy_util.mjs +70 -0
  12. package/lib/cli/dev_util.d.mts +9 -0
  13. package/lib/cli/dev_util.mjs +25 -0
  14. package/lib/cli/env_util.d.mts +45 -0
  15. package/lib/cli/env_util.mjs +207 -0
  16. package/lib/cli/template_util.d.mts +18 -0
  17. package/lib/cli/template_util.mjs +85 -0
  18. package/lib/cli/templates/crons.ts +1 -1
  19. package/lib/cli/templates/handlers.ts +1 -1
  20. package/lib/cli/templates/hooks.ts +1 -1
  21. package/lib/cli/templates/models.ts +7 -7
  22. package/lib/cli/templates/package.json +11 -1
  23. package/lib/cli/templates/routes.ts +2 -2
  24. package/lib/core/ctx_storage.d.mts +3 -0
  25. package/lib/core/ctx_storage.mjs +4 -0
  26. package/lib/core/define_bus.d.mts +37 -0
  27. package/lib/core/define_bus.mjs +12 -0
  28. package/lib/core/{define_cron.d.ts → define_cron.d.mts} +2 -2
  29. package/lib/core/define_cron.mjs +11 -0
  30. package/lib/core/{define_handler.d.ts → define_handler.d.mts} +19 -19
  31. package/lib/core/define_handler.mjs +44 -0
  32. package/lib/core/define_hook.d.mts +2 -0
  33. package/lib/core/define_hook.mjs +6 -0
  34. package/lib/core/define_server.d.mts +3 -0
  35. package/lib/core/define_server.mjs +8 -0
  36. package/lib/core/{define_task.d.ts → define_task.d.mts} +2 -2
  37. package/lib/core/define_task.mjs +106 -0
  38. package/lib/core/get_handler_url.d.mts +2 -0
  39. package/lib/core/get_handler_url.mjs +7 -0
  40. package/lib/core/handler.d.mts +16 -0
  41. package/lib/core/handler.mjs +132 -0
  42. package/lib/core/http_error.d.mts +2 -0
  43. package/lib/core/http_error.mjs +1 -0
  44. package/lib/core/http_header.d.mts +856 -0
  45. package/lib/core/http_header.mjs +860 -0
  46. package/lib/core/http_method.d.mts +3 -0
  47. package/lib/core/http_method.mjs +10 -0
  48. package/lib/core/http_redirect.d.mts +5 -0
  49. package/lib/core/http_redirect.mjs +10 -0
  50. package/lib/core/server.d.mts +20 -0
  51. package/lib/core/server.mjs +186 -0
  52. package/lib/core/types.d.mts +256 -0
  53. package/lib/exports.d.mts +46 -0
  54. package/lib/exports.mjs +46 -0
  55. package/lib/index.d.mts +48 -0
  56. package/lib/index.mjs +45 -0
  57. package/lib/plugins/base.d.mts +4 -0
  58. package/lib/plugins/compress.d.mts +12 -0
  59. package/lib/plugins/compress.mjs +15 -0
  60. package/lib/plugins/cookie.d.mts +12 -0
  61. package/lib/plugins/cookie.mjs +15 -0
  62. package/lib/plugins/cors.d.mts +22 -0
  63. package/lib/plugins/cors.mjs +34 -0
  64. package/lib/plugins/file_parser.d.mts +15 -0
  65. package/lib/plugins/file_parser.mjs +24 -0
  66. package/lib/plugins/form_body_parser.d.mts +12 -0
  67. package/lib/plugins/form_body_parser.mjs +15 -0
  68. package/lib/plugins/ws_parser.d.mts +12 -0
  69. package/lib/plugins/ws_parser.mjs +15 -0
  70. package/lib/plugins/xml_parser.d.mts +19 -0
  71. package/lib/plugins/xml_parser.mjs +40 -0
  72. package/lib/services/ai.d.mts +31 -0
  73. package/lib/services/ai.mjs +44 -0
  74. package/lib/services/base.d.mts +4 -0
  75. package/lib/services/base.mjs +1 -0
  76. package/lib/services/cache.d.mts +165 -0
  77. package/lib/services/cache.mjs +323 -0
  78. package/lib/services/captcha.d.mts +65 -0
  79. package/lib/services/captcha.mjs +61 -0
  80. package/lib/services/{crypto.js → crypto.d.mts} +19 -78
  81. package/lib/services/crypto.mjs +141 -0
  82. package/lib/services/db_value.d.mts +60 -0
  83. package/lib/services/db_value.mjs +64 -0
  84. package/lib/services/dingtalk.d.mts +39 -0
  85. package/lib/services/dingtalk.mjs +44 -0
  86. package/lib/services/dispose.d.mts +17 -0
  87. package/lib/services/dispose.mjs +18 -0
  88. package/lib/services/emoji.d.mts +10 -0
  89. package/lib/services/emoji.mjs +2025 -0
  90. package/lib/services/file_store.d.mts +49 -0
  91. package/lib/services/file_store.mjs +58 -0
  92. package/lib/services/html.d.mts +11 -0
  93. package/lib/services/html.mjs +12 -0
  94. package/lib/services/jwt.d.mts +33 -0
  95. package/lib/services/jwt.mjs +42 -0
  96. package/lib/services/log.d.mts +37 -0
  97. package/lib/services/log.mjs +99 -0
  98. package/lib/services/mail.d.mts +22 -0
  99. package/lib/services/mail.mjs +28 -0
  100. package/lib/services/pay.d.mts +123 -0
  101. package/lib/services/pay.mjs +157 -0
  102. package/lib/services/random.d.mts +27 -0
  103. package/lib/services/random.mjs +42 -0
  104. package/lib/services/rate_limit.d.mts +37 -0
  105. package/lib/services/rate_limit.mjs +40 -0
  106. package/lib/services/redis.d.mts +11 -0
  107. package/lib/services/redis.mjs +6 -0
  108. package/lib/services/sensitive_words.d.mts +29 -0
  109. package/lib/services/sensitive_words.mjs +37 -0
  110. package/lib/services/sms.d.mts +40 -0
  111. package/lib/services/sms.mjs +30238 -0
  112. package/lib/types/dto.d.mts +30 -0
  113. package/lib/types/dto.mjs +1 -0
  114. package/lib/x.d.mts +11 -0
  115. package/lib/x.mjs +21 -0
  116. package/lib/x_init.d.mts +1 -0
  117. package/lib/x_init.mjs +10 -0
  118. package/package.json +82 -32
  119. package/lib/_cjs/cli/api_generator.js +0 -458
  120. package/lib/_cjs/cli/build_util.js +0 -243
  121. package/lib/_cjs/cli/cli.js +0 -378
  122. package/lib/_cjs/cli/css_register.js +0 -7
  123. package/lib/_cjs/cli/deploy_util.js +0 -76
  124. package/lib/_cjs/cli/dev_util.js +0 -26
  125. package/lib/_cjs/cli/env_util.js +0 -252
  126. package/lib/_cjs/cli/esbuild_register.js +0 -7
  127. package/lib/_cjs/cli/template_util.js +0 -101
  128. package/lib/_cjs/cli/templates/crons.ts +0 -2
  129. package/lib/_cjs/cli/templates/handlers.ts +0 -3
  130. package/lib/_cjs/cli/templates/hooks.ts +0 -2
  131. package/lib/_cjs/cli/templates/models.ts +0 -123
  132. package/lib/_cjs/cli/templates/package.json +0 -3
  133. package/lib/_cjs/cli/templates/routes.ts +0 -68
  134. package/lib/_cjs/core/ctx_storage.js +0 -6
  135. package/lib/_cjs/core/define_bus.js +0 -31
  136. package/lib/_cjs/core/define_cron.js +0 -13
  137. package/lib/_cjs/core/define_handler.js +0 -56
  138. package/lib/_cjs/core/define_hook.js +0 -8
  139. package/lib/_cjs/core/define_server.js +0 -10
  140. package/lib/_cjs/core/define_task.js +0 -113
  141. package/lib/_cjs/core/get_handler_url.js +0 -11
  142. package/lib/_cjs/core/handler.js +0 -216
  143. package/lib/_cjs/core/http_error.js +0 -6
  144. package/lib/_cjs/core/http_header.js +0 -142
  145. package/lib/_cjs/core/http_method.js +0 -12
  146. package/lib/_cjs/core/http_redirect.js +0 -11
  147. package/lib/_cjs/core/server.js +0 -219
  148. package/lib/_cjs/core/types.js +0 -8
  149. package/lib/_cjs/exports.js +0 -273
  150. package/lib/_cjs/index.js +0 -15
  151. package/lib/_cjs/plugins/base.js +0 -3
  152. package/lib/_cjs/plugins/compress.js +0 -18
  153. package/lib/_cjs/plugins/cookie.js +0 -18
  154. package/lib/_cjs/plugins/cors.js +0 -38
  155. package/lib/_cjs/plugins/file_parser.js +0 -28
  156. package/lib/_cjs/plugins/form_body_parser.js +0 -18
  157. package/lib/_cjs/plugins/ws_parser.js +0 -18
  158. package/lib/_cjs/plugins/xml_parser.js +0 -48
  159. package/lib/_cjs/services/ai.js +0 -48
  160. package/lib/_cjs/services/base.js +0 -3
  161. package/lib/_cjs/services/cache.js +0 -400
  162. package/lib/_cjs/services/captcha.js +0 -78
  163. package/lib/_cjs/services/crypto.js +0 -175
  164. package/lib/_cjs/services/db_value.js +0 -77
  165. package/lib/_cjs/services/dingtalk.js +0 -51
  166. package/lib/_cjs/services/dispose.js +0 -23
  167. package/lib/_cjs/services/emoji.js +0 -2034
  168. package/lib/_cjs/services/file_store.js +0 -67
  169. package/lib/_cjs/services/html.js +0 -17
  170. package/lib/_cjs/services/jwt.js +0 -65
  171. package/lib/_cjs/services/log.js +0 -108
  172. package/lib/_cjs/services/mail.js +0 -31
  173. package/lib/_cjs/services/pay.js +0 -191
  174. package/lib/_cjs/services/random.js +0 -51
  175. package/lib/_cjs/services/rate_limit.js +0 -54
  176. package/lib/_cjs/services/redis.js +0 -12
  177. package/lib/_cjs/services/sensitive_words.js +0 -61
  178. package/lib/_cjs/services/sms.js +0 -84
  179. package/lib/_cjs/types/dto.js +0 -3
  180. package/lib/_cjs/x.js +0 -35
  181. package/lib/cli/api_generator.d.ts +0 -74
  182. package/lib/cli/api_generator.js +0 -452
  183. package/lib/cli/build_util.d.ts +0 -17
  184. package/lib/cli/build_util.js +0 -236
  185. package/lib/cli/cli.d.ts +0 -2
  186. package/lib/cli/cli.js +0 -374
  187. package/lib/cli/css_register.js +0 -5
  188. package/lib/cli/deploy_util.d.ts +0 -23
  189. package/lib/cli/deploy_util.js +0 -70
  190. package/lib/cli/dev_util.d.ts +0 -8
  191. package/lib/cli/dev_util.js +0 -20
  192. package/lib/cli/env_util.d.ts +0 -45
  193. package/lib/cli/env_util.js +0 -246
  194. package/lib/cli/esbuild_register.js +0 -5
  195. package/lib/cli/template_util.d.ts +0 -18
  196. package/lib/cli/template_util.js +0 -95
  197. package/lib/core/ctx_storage.d.ts +0 -3
  198. package/lib/core/ctx_storage.js +0 -2
  199. package/lib/core/define_bus.d.ts +0 -37
  200. package/lib/core/define_bus.js +0 -27
  201. package/lib/core/define_cron.js +0 -9
  202. package/lib/core/define_handler.js +0 -48
  203. package/lib/core/define_hook.d.ts +0 -2
  204. package/lib/core/define_hook.js +0 -4
  205. package/lib/core/define_server.d.ts +0 -3
  206. package/lib/core/define_server.js +0 -6
  207. package/lib/core/define_task.js +0 -107
  208. package/lib/core/get_handler_url.d.ts +0 -2
  209. package/lib/core/get_handler_url.js +0 -7
  210. package/lib/core/handler.d.ts +0 -16
  211. package/lib/core/handler.js +0 -209
  212. package/lib/core/http_error.d.ts +0 -2
  213. package/lib/core/http_error.js +0 -2
  214. package/lib/core/http_header.d.ts +0 -856
  215. package/lib/core/http_header.js +0 -139
  216. package/lib/core/http_method.d.ts +0 -3
  217. package/lib/core/http_method.js +0 -8
  218. package/lib/core/http_redirect.d.ts +0 -5
  219. package/lib/core/http_redirect.js +0 -6
  220. package/lib/core/server.d.ts +0 -20
  221. package/lib/core/server.js +0 -213
  222. package/lib/core/types.d.ts +0 -265
  223. package/lib/core/types.js +0 -4
  224. package/lib/exports.d.ts +0 -45
  225. package/lib/exports.js +0 -47
  226. package/lib/index.d.ts +0 -2
  227. package/lib/index.js +0 -3
  228. package/lib/plugins/base.d.ts +0 -4
  229. package/lib/plugins/base.js +0 -1
  230. package/lib/plugins/compress.d.ts +0 -13
  231. package/lib/plugins/compress.js +0 -12
  232. package/lib/plugins/cookie.d.ts +0 -13
  233. package/lib/plugins/cookie.js +0 -12
  234. package/lib/plugins/cors.d.ts +0 -22
  235. package/lib/plugins/cors.js +0 -32
  236. package/lib/plugins/file_parser.d.ts +0 -16
  237. package/lib/plugins/file_parser.js +0 -22
  238. package/lib/plugins/form_body_parser.d.ts +0 -13
  239. package/lib/plugins/form_body_parser.js +0 -12
  240. package/lib/plugins/ws_parser.d.ts +0 -13
  241. package/lib/plugins/ws_parser.js +0 -12
  242. package/lib/plugins/xml_parser.d.ts +0 -19
  243. package/lib/plugins/xml_parser.js +0 -43
  244. package/lib/services/ai.d.ts +0 -31
  245. package/lib/services/ai.js +0 -43
  246. package/lib/services/base.d.ts +0 -4
  247. package/lib/services/base.js +0 -1
  248. package/lib/services/cache.d.ts +0 -173
  249. package/lib/services/cache.js +0 -394
  250. package/lib/services/captcha.d.ts +0 -65
  251. package/lib/services/captcha.js +0 -72
  252. package/lib/services/crypto.d.ts +0 -110
  253. package/lib/services/db_value.d.ts +0 -60
  254. package/lib/services/db_value.js +0 -72
  255. package/lib/services/dingtalk.d.ts +0 -39
  256. package/lib/services/dingtalk.js +0 -45
  257. package/lib/services/dispose.d.ts +0 -17
  258. package/lib/services/dispose.js +0 -17
  259. package/lib/services/emoji.d.ts +0 -10
  260. package/lib/services/emoji.js +0 -2029
  261. package/lib/services/file_store.d.ts +0 -49
  262. package/lib/services/file_store.js +0 -61
  263. package/lib/services/html.d.ts +0 -11
  264. package/lib/services/html.js +0 -12
  265. package/lib/services/jwt.d.ts +0 -34
  266. package/lib/services/jwt.js +0 -59
  267. package/lib/services/log.d.ts +0 -37
  268. package/lib/services/log.js +0 -102
  269. package/lib/services/mail.d.ts +0 -23
  270. package/lib/services/mail.js +0 -25
  271. package/lib/services/pay.d.ts +0 -123
  272. package/lib/services/pay.js +0 -185
  273. package/lib/services/random.d.ts +0 -27
  274. package/lib/services/random.js +0 -45
  275. package/lib/services/rate_limit.d.ts +0 -37
  276. package/lib/services/rate_limit.js +0 -49
  277. package/lib/services/redis.d.ts +0 -12
  278. package/lib/services/redis.js +0 -7
  279. package/lib/services/sensitive_words.d.ts +0 -29
  280. package/lib/services/sensitive_words.js +0 -56
  281. package/lib/services/sms.d.ts +0 -40
  282. package/lib/services/sms.js +0 -78
  283. package/lib/types/dto.d.ts +0 -86
  284. package/lib/types/dto.js +0 -1
  285. package/lib/x.d.ts +0 -17
  286. package/lib/x.js +0 -30
  287. /package/lib/{cli/css_register.d.ts → core/types.mjs} +0 -0
  288. /package/lib/{cli/esbuild_register.d.ts → plugins/base.mjs} +0 -0
@@ -1,219 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- exports.__esModule = true;
5
- exports.Server = void 0;
6
- var _nodeProcess = _interopRequireDefault(require("node:process"));
7
- var _fastify = _interopRequireDefault(require("fastify"));
8
- var _vtils = require("vtils");
9
- var _x = require("vtils/x");
10
- var _x2 = require("../x");
11
- var _http_error = require("./http_error");
12
- var _http_method = require("./http_method");
13
- class Server {
14
- constructor(options) {
15
- this.options = options;
16
- this.fastify = void 0;
17
- this.routes = [];
18
- Server.options = options;
19
- _nodeProcess.default.on('unhandledRejection', (reason, promise) => {
20
- console.error('未捕获的错误', reason, promise);
21
- });
22
- }
23
- async start() {
24
- this.applyServices();
25
- await this.prepareFastify();
26
- this.applyPlugins();
27
- await this.prepareRoutes();
28
- await this.applyRoutes();
29
- await this.applyHooks();
30
- await this.startFastify();
31
- await this.startCrons();
32
- await this.applyAutoClose();
33
- }
34
- async close() {
35
- await this.fastify?.close();
36
- }
37
- async prepareFastify() {
38
- this.fastify = await (0, _fastify.default)({
39
- logger: _nodeProcess.default.env.NODE_ENV === 'development' ? {
40
- transport: {
41
- target: 'pino-pretty'
42
- }
43
- } : false,
44
- // 信任 X-Forwarded-For 头以获取正确的 IP,
45
- // 否则通过 nginx 代理后 remoteAddr 将始终为 127.0.0.1
46
- trustProxy: true,
47
- ...this.options.fastifyOptions
48
- });
49
- }
50
- async startFastify() {
51
- await this.fastify.listen({
52
- host: this.options.host || '0.0.0.0',
53
- port: this.options.port
54
- });
55
- }
56
- async prepareRoutes() {
57
- // @ts-ignore
58
- const {
59
- routes
60
- } = await require('.x/routes');
61
- this.routes = routes;
62
- }
63
- async applyHooks() {
64
- // @ts-ignore
65
- await require('.x/hooks');
66
- }
67
- applyServices() {
68
- _x2.x.register(...(this.options.services || []));
69
- }
70
- applyPlugins() {
71
- const plugins = this.options.plugins || [];
72
- for (const plugin of plugins) {
73
- plugin.register(this.fastify);
74
- }
75
- }
76
- async applyRoutes() {
77
- await this.fastify.register(async fastify => {
78
- const appUrl = _x2.x.env.APP_URL.replace(/\/+$/, '');
79
- const routeMap = (0, _vtils.keyBy)(this.routes, item => item.path);
80
- const handleRoute = async (item, req, res, path) => {
81
- const handlerOptions = item.handler.options;
82
- const handlerMethod = handlerOptions.requestMethod || 'POST';
83
- const isWS = handlerMethod === 'WS';
84
- const url = `${appUrl}${
85
- // 结构:/test/sss?x=2
86
- path ?? (isWS ? res.url : req.url)}`;
87
- if (isWS) {
88
- await item.handler.handle(undefined, {
89
- traceId: (0, _x.cuid2)(),
90
- url: url,
91
- headers: res.headers,
92
- setHeader: _vtils.noop,
93
- redirect: _vtils.noop,
94
- ws: req,
95
- req: res,
96
- res: {}
97
- });
98
- return;
99
- }
100
- let files = {};
101
- if (handlerMethod === 'FILE') {
102
- const part = await req.file();
103
- files = Object.keys(part.fields).reduce((res, name) => {
104
- res[name] = (0, _vtils.castArray)(part.fields[name]).map(item => item.file ? item : item.value)[0];
105
- return res;
106
- }, {});
107
- }
108
- const data = await item.handler.handle(handlerMethod === 'ANY' ? {} : {
109
- // @ts-ignore
110
- ...req.params,
111
- // @ts-ignore
112
- ...req.query,
113
- // @ts-ignore
114
- ...req.body,
115
- ...files
116
- }, {
117
- traceId: (0, _x.cuid2)(),
118
- url,
119
- headers: req.headers,
120
- setHeader: (k, v) => res.header(k, v),
121
- redirect: (url, permanently) => res.redirect(url, permanently ? 301 : 302),
122
- ws: undefined,
123
- req: req,
124
- res: res
125
- });
126
- return data;
127
- };
128
- for (const item of this.routes) {
129
- const handlerOptions = item.handler.options;
130
- const handlerMethod = handlerOptions.requestMethod || 'POST';
131
- const isWS = handlerMethod === 'WS';
132
- const serverMethod = isWS ? 'GET' : _http_method.HandlerMethodToHttpMethod[handlerMethod];
133
- fastify.route({
134
- method: handlerMethod === 'ANY' ? ['GET', 'HEAD', 'TRACE', 'DELETE', 'OPTIONS', 'PATCH', 'PUT', 'POST'] : serverMethod,
135
- url: item.path,
136
- constraints: handlerOptions.requestHost ? {
137
- host: handlerOptions.requestHost
138
- } : undefined,
139
- websocket: isWS,
140
- handler: (req, res) => handleRoute(item, req, res)
141
- });
142
- }
143
-
144
- // 静态文件服务
145
- this.applyStatic();
146
-
147
- // 接口统一入口
148
- fastify.route({
149
- method: 'POST',
150
- url: '/@',
151
- handler: async (req, res) => {
152
- let requestPath = req.headers['x-path'] || '';
153
- if (!requestPath.startsWith('/')) {
154
- const [_requestPath, _time] = (0, _vtils.base64UrlDecode)((0, _vtils.rot13)(requestPath)).split('#');
155
- if (!_time || Date.now() / 1000 - Number(_time) > 5 * 60) {
156
- throw new _http_error.HttpError.Forbidden();
157
- }
158
- requestPath = _requestPath;
159
- }
160
- if (!requestPath || !routeMap[requestPath]) {
161
- throw new _http_error.HttpError.NotFound();
162
- }
163
- return handleRoute(routeMap[requestPath], req, res, requestPath);
164
- }
165
- });
166
-
167
- // 开发管理入口
168
- fastify.route({
169
- method: 'POST',
170
- url: '/$',
171
- handler: async req => {
172
- const payload = req.body;
173
- if (payload && typeof payload === 'object' && _x2.x.env.APP_TOKEN && payload.token === _x2.x.env.APP_TOKEN) {
174
- if (payload.type === 'ping') {
175
- return 'ping:success';
176
- } else if (payload.type === 'updateEnv') {
177
- Object.assign(_x2.x.env, payload.data);
178
-
179
- // 更新静态文件服务
180
- this.applyStatic();
181
- }
182
- }
183
- }
184
- });
185
- });
186
- }
187
- async applyStatic() {
188
- if (Array.isArray(_x2.x.env.APP_STATIC_CONTENT)) {
189
- const staticContent = _x2.x.env.APP_STATIC_CONTENT;
190
- for (const item of staticContent) {
191
- const methods = (0, _vtils.castArray)(item.method);
192
- if (!methods.some(method => this.fastify.hasRoute({
193
- method,
194
- url: item.path
195
- }))) {
196
- this.fastify.route({
197
- method: methods,
198
- url: item.path,
199
- handler: async (_req, res) => {
200
- if (!item.contentType && typeof item.content === 'string') {
201
- res.header('Content-Type', 'plain/text');
202
- }
203
- return item.content;
204
- }
205
- });
206
- }
207
- }
208
- }
209
- }
210
- async startCrons() {
211
- // @ts-ignore
212
- await require('.x/crons');
213
- }
214
- async applyAutoClose() {
215
- _x2.x.dispose.add(() => this.close());
216
- }
217
- }
218
- exports.Server = Server;
219
- Server.options = {};
@@ -1,8 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- exports.XTask = exports.XServer = exports.XHandler = exports.XCron = void 0;
5
- let XServer = exports.XServer = void 0;
6
- let XHandler = exports.XHandler = void 0;
7
- let XTask = exports.XTask = void 0;
8
- let XCron = exports.XCron = void 0;
@@ -1,273 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- var _ctx_storage = require("./core/ctx_storage");
5
- Object.keys(_ctx_storage).forEach(function (key) {
6
- if (key === "default" || key === "__esModule") return;
7
- if (key in exports && exports[key] === _ctx_storage[key]) return;
8
- exports[key] = _ctx_storage[key];
9
- });
10
- var _define_bus = require("./core/define_bus");
11
- Object.keys(_define_bus).forEach(function (key) {
12
- if (key === "default" || key === "__esModule") return;
13
- if (key in exports && exports[key] === _define_bus[key]) return;
14
- exports[key] = _define_bus[key];
15
- });
16
- var _define_cron = require("./core/define_cron");
17
- Object.keys(_define_cron).forEach(function (key) {
18
- if (key === "default" || key === "__esModule") return;
19
- if (key in exports && exports[key] === _define_cron[key]) return;
20
- exports[key] = _define_cron[key];
21
- });
22
- var _define_handler = require("./core/define_handler");
23
- Object.keys(_define_handler).forEach(function (key) {
24
- if (key === "default" || key === "__esModule") return;
25
- if (key in exports && exports[key] === _define_handler[key]) return;
26
- exports[key] = _define_handler[key];
27
- });
28
- var _define_hook = require("./core/define_hook");
29
- Object.keys(_define_hook).forEach(function (key) {
30
- if (key === "default" || key === "__esModule") return;
31
- if (key in exports && exports[key] === _define_hook[key]) return;
32
- exports[key] = _define_hook[key];
33
- });
34
- var _define_server = require("./core/define_server");
35
- Object.keys(_define_server).forEach(function (key) {
36
- if (key === "default" || key === "__esModule") return;
37
- if (key in exports && exports[key] === _define_server[key]) return;
38
- exports[key] = _define_server[key];
39
- });
40
- var _define_task = require("./core/define_task");
41
- Object.keys(_define_task).forEach(function (key) {
42
- if (key === "default" || key === "__esModule") return;
43
- if (key in exports && exports[key] === _define_task[key]) return;
44
- exports[key] = _define_task[key];
45
- });
46
- var _get_handler_url = require("./core/get_handler_url");
47
- Object.keys(_get_handler_url).forEach(function (key) {
48
- if (key === "default" || key === "__esModule") return;
49
- if (key in exports && exports[key] === _get_handler_url[key]) return;
50
- exports[key] = _get_handler_url[key];
51
- });
52
- var _handler = require("./core/handler");
53
- Object.keys(_handler).forEach(function (key) {
54
- if (key === "default" || key === "__esModule") return;
55
- if (key in exports && exports[key] === _handler[key]) return;
56
- exports[key] = _handler[key];
57
- });
58
- var _http_error = require("./core/http_error");
59
- Object.keys(_http_error).forEach(function (key) {
60
- if (key === "default" || key === "__esModule") return;
61
- if (key in exports && exports[key] === _http_error[key]) return;
62
- exports[key] = _http_error[key];
63
- });
64
- var _http_header = require("./core/http_header");
65
- Object.keys(_http_header).forEach(function (key) {
66
- if (key === "default" || key === "__esModule") return;
67
- if (key in exports && exports[key] === _http_header[key]) return;
68
- exports[key] = _http_header[key];
69
- });
70
- var _http_method = require("./core/http_method");
71
- Object.keys(_http_method).forEach(function (key) {
72
- if (key === "default" || key === "__esModule") return;
73
- if (key in exports && exports[key] === _http_method[key]) return;
74
- exports[key] = _http_method[key];
75
- });
76
- var _http_redirect = require("./core/http_redirect");
77
- Object.keys(_http_redirect).forEach(function (key) {
78
- if (key === "default" || key === "__esModule") return;
79
- if (key in exports && exports[key] === _http_redirect[key]) return;
80
- exports[key] = _http_redirect[key];
81
- });
82
- var _server = require("./core/server");
83
- Object.keys(_server).forEach(function (key) {
84
- if (key === "default" || key === "__esModule") return;
85
- if (key in exports && exports[key] === _server[key]) return;
86
- exports[key] = _server[key];
87
- });
88
- var _types = require("./core/types");
89
- Object.keys(_types).forEach(function (key) {
90
- if (key === "default" || key === "__esModule") return;
91
- if (key in exports && exports[key] === _types[key]) return;
92
- exports[key] = _types[key];
93
- });
94
- var _base = require("./plugins/base");
95
- Object.keys(_base).forEach(function (key) {
96
- if (key === "default" || key === "__esModule") return;
97
- if (key in exports && exports[key] === _base[key]) return;
98
- exports[key] = _base[key];
99
- });
100
- var _compress = require("./plugins/compress");
101
- Object.keys(_compress).forEach(function (key) {
102
- if (key === "default" || key === "__esModule") return;
103
- if (key in exports && exports[key] === _compress[key]) return;
104
- exports[key] = _compress[key];
105
- });
106
- var _cookie = require("./plugins/cookie");
107
- Object.keys(_cookie).forEach(function (key) {
108
- if (key === "default" || key === "__esModule") return;
109
- if (key in exports && exports[key] === _cookie[key]) return;
110
- exports[key] = _cookie[key];
111
- });
112
- var _cors = require("./plugins/cors");
113
- Object.keys(_cors).forEach(function (key) {
114
- if (key === "default" || key === "__esModule") return;
115
- if (key in exports && exports[key] === _cors[key]) return;
116
- exports[key] = _cors[key];
117
- });
118
- var _file_parser = require("./plugins/file_parser");
119
- Object.keys(_file_parser).forEach(function (key) {
120
- if (key === "default" || key === "__esModule") return;
121
- if (key in exports && exports[key] === _file_parser[key]) return;
122
- exports[key] = _file_parser[key];
123
- });
124
- var _form_body_parser = require("./plugins/form_body_parser");
125
- Object.keys(_form_body_parser).forEach(function (key) {
126
- if (key === "default" || key === "__esModule") return;
127
- if (key in exports && exports[key] === _form_body_parser[key]) return;
128
- exports[key] = _form_body_parser[key];
129
- });
130
- var _ws_parser = require("./plugins/ws_parser");
131
- Object.keys(_ws_parser).forEach(function (key) {
132
- if (key === "default" || key === "__esModule") return;
133
- if (key in exports && exports[key] === _ws_parser[key]) return;
134
- exports[key] = _ws_parser[key];
135
- });
136
- var _xml_parser = require("./plugins/xml_parser");
137
- Object.keys(_xml_parser).forEach(function (key) {
138
- if (key === "default" || key === "__esModule") return;
139
- if (key in exports && exports[key] === _xml_parser[key]) return;
140
- exports[key] = _xml_parser[key];
141
- });
142
- var _ai = require("./services/ai");
143
- Object.keys(_ai).forEach(function (key) {
144
- if (key === "default" || key === "__esModule") return;
145
- if (key in exports && exports[key] === _ai[key]) return;
146
- exports[key] = _ai[key];
147
- });
148
- var _base2 = require("./services/base");
149
- Object.keys(_base2).forEach(function (key) {
150
- if (key === "default" || key === "__esModule") return;
151
- if (key in exports && exports[key] === _base2[key]) return;
152
- exports[key] = _base2[key];
153
- });
154
- var _cache = require("./services/cache");
155
- Object.keys(_cache).forEach(function (key) {
156
- if (key === "default" || key === "__esModule") return;
157
- if (key in exports && exports[key] === _cache[key]) return;
158
- exports[key] = _cache[key];
159
- });
160
- var _captcha = require("./services/captcha");
161
- Object.keys(_captcha).forEach(function (key) {
162
- if (key === "default" || key === "__esModule") return;
163
- if (key in exports && exports[key] === _captcha[key]) return;
164
- exports[key] = _captcha[key];
165
- });
166
- var _crypto = require("./services/crypto");
167
- Object.keys(_crypto).forEach(function (key) {
168
- if (key === "default" || key === "__esModule") return;
169
- if (key in exports && exports[key] === _crypto[key]) return;
170
- exports[key] = _crypto[key];
171
- });
172
- var _db_value = require("./services/db_value");
173
- Object.keys(_db_value).forEach(function (key) {
174
- if (key === "default" || key === "__esModule") return;
175
- if (key in exports && exports[key] === _db_value[key]) return;
176
- exports[key] = _db_value[key];
177
- });
178
- var _dingtalk = require("./services/dingtalk");
179
- Object.keys(_dingtalk).forEach(function (key) {
180
- if (key === "default" || key === "__esModule") return;
181
- if (key in exports && exports[key] === _dingtalk[key]) return;
182
- exports[key] = _dingtalk[key];
183
- });
184
- var _dispose = require("./services/dispose");
185
- Object.keys(_dispose).forEach(function (key) {
186
- if (key === "default" || key === "__esModule") return;
187
- if (key in exports && exports[key] === _dispose[key]) return;
188
- exports[key] = _dispose[key];
189
- });
190
- var _emoji = require("./services/emoji");
191
- Object.keys(_emoji).forEach(function (key) {
192
- if (key === "default" || key === "__esModule") return;
193
- if (key in exports && exports[key] === _emoji[key]) return;
194
- exports[key] = _emoji[key];
195
- });
196
- var _file_store = require("./services/file_store");
197
- Object.keys(_file_store).forEach(function (key) {
198
- if (key === "default" || key === "__esModule") return;
199
- if (key in exports && exports[key] === _file_store[key]) return;
200
- exports[key] = _file_store[key];
201
- });
202
- var _html = require("./services/html");
203
- Object.keys(_html).forEach(function (key) {
204
- if (key === "default" || key === "__esModule") return;
205
- if (key in exports && exports[key] === _html[key]) return;
206
- exports[key] = _html[key];
207
- });
208
- var _jwt = require("./services/jwt");
209
- Object.keys(_jwt).forEach(function (key) {
210
- if (key === "default" || key === "__esModule") return;
211
- if (key in exports && exports[key] === _jwt[key]) return;
212
- exports[key] = _jwt[key];
213
- });
214
- var _log = require("./services/log");
215
- Object.keys(_log).forEach(function (key) {
216
- if (key === "default" || key === "__esModule") return;
217
- if (key in exports && exports[key] === _log[key]) return;
218
- exports[key] = _log[key];
219
- });
220
- var _mail = require("./services/mail");
221
- Object.keys(_mail).forEach(function (key) {
222
- if (key === "default" || key === "__esModule") return;
223
- if (key in exports && exports[key] === _mail[key]) return;
224
- exports[key] = _mail[key];
225
- });
226
- var _pay = require("./services/pay");
227
- Object.keys(_pay).forEach(function (key) {
228
- if (key === "default" || key === "__esModule") return;
229
- if (key in exports && exports[key] === _pay[key]) return;
230
- exports[key] = _pay[key];
231
- });
232
- var _random = require("./services/random");
233
- Object.keys(_random).forEach(function (key) {
234
- if (key === "default" || key === "__esModule") return;
235
- if (key in exports && exports[key] === _random[key]) return;
236
- exports[key] = _random[key];
237
- });
238
- var _rate_limit = require("./services/rate_limit");
239
- Object.keys(_rate_limit).forEach(function (key) {
240
- if (key === "default" || key === "__esModule") return;
241
- if (key in exports && exports[key] === _rate_limit[key]) return;
242
- exports[key] = _rate_limit[key];
243
- });
244
- var _redis = require("./services/redis");
245
- Object.keys(_redis).forEach(function (key) {
246
- if (key === "default" || key === "__esModule") return;
247
- if (key in exports && exports[key] === _redis[key]) return;
248
- exports[key] = _redis[key];
249
- });
250
- var _sensitive_words = require("./services/sensitive_words");
251
- Object.keys(_sensitive_words).forEach(function (key) {
252
- if (key === "default" || key === "__esModule") return;
253
- if (key in exports && exports[key] === _sensitive_words[key]) return;
254
- exports[key] = _sensitive_words[key];
255
- });
256
- var _sms = require("./services/sms");
257
- Object.keys(_sms).forEach(function (key) {
258
- if (key === "default" || key === "__esModule") return;
259
- if (key in exports && exports[key] === _sms[key]) return;
260
- exports[key] = _sms[key];
261
- });
262
- var _dto = require("./types/dto");
263
- Object.keys(_dto).forEach(function (key) {
264
- if (key === "default" || key === "__esModule") return;
265
- if (key in exports && exports[key] === _dto[key]) return;
266
- exports[key] = _dto[key];
267
- });
268
- var _x = require("./x");
269
- Object.keys(_x).forEach(function (key) {
270
- if (key === "default" || key === "__esModule") return;
271
- if (key in exports && exports[key] === _x[key]) return;
272
- exports[key] = _x[key];
273
- });
package/lib/_cjs/index.js DELETED
@@ -1,15 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
4
- var _exports = require("./exports");
5
- Object.keys(_exports).forEach(function (key) {
6
- if (key === "default" || key === "__esModule") return;
7
- if (key in exports && exports[key] === _exports[key]) return;
8
- exports[key] = _exports[key];
9
- });
10
- var _models = require(".x/models");
11
- Object.keys(_models).forEach(function (key) {
12
- if (key === "default" || key === "__esModule") return;
13
- if (key in exports && exports[key] === _models[key]) return;
14
- exports[key] = _models[key];
15
- });
@@ -1,3 +0,0 @@
1
- "use strict";
2
-
3
- exports.__esModule = true;
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- exports.__esModule = true;
5
- exports.CompressPlugin = void 0;
6
- var _compress = _interopRequireDefault(require("@fastify/compress"));
7
- /**
8
- * 响应压缩插件
9
- */
10
- class CompressPlugin {
11
- constructor(options) {
12
- this.options = options;
13
- }
14
- register(fastify) {
15
- fastify.register(_compress.default, this.options ?? {});
16
- }
17
- }
18
- exports.CompressPlugin = CompressPlugin;
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- exports.__esModule = true;
5
- exports.CookiePlugin = void 0;
6
- var _cookie = _interopRequireDefault(require("@fastify/cookie"));
7
- /**
8
- * Cookie 支持插件
9
- */
10
- class CookiePlugin {
11
- constructor(options) {
12
- this.options = options;
13
- }
14
- register(fastify) {
15
- fastify.register(_cookie.default, this.options ?? {});
16
- }
17
- }
18
- exports.CookiePlugin = CookiePlugin;
@@ -1,38 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- exports.__esModule = true;
5
- exports.CorsPlugin = void 0;
6
- var _cors = _interopRequireDefault(require("@fastify/cors"));
7
- var _vtils = require("vtils");
8
- /**
9
- * CORS 支持插件
10
- */
11
- class CorsPlugin {
12
- constructor(options) {
13
- this.options = options;
14
- }
15
- register(fastify) {
16
- const allows = this.options.allow.map(item => ({
17
- type: item === '*' ? 'all' : item.startsWith('*.') ? 'endsWith' : 'equal',
18
- domain: item.startsWith('*.') ? item.replace('*.', '.') : item
19
- }));
20
- const allowAll = allows.length === 1 && allows[0].type === 'all';
21
- const check = (0, _vtils.memoize)(origin => {
22
- let i = origin.indexOf(':');
23
- let j = origin.indexOf(':', i + 1);
24
- i += 3;
25
- j = j === -1 ? origin.length : j;
26
- const domain = origin.substring(i, j);
27
- const pass = allows.some(item => item.type === 'equal' ? domain === item.domain : domain.endsWith(item.domain));
28
- return pass;
29
- });
30
- fastify.register(_cors.default, {
31
- origin: (origin, cb) => allowAll ? cb(null, true) : cb(null, origin ? check(origin) : true),
32
- maxAge: (0, _vtils.ms)(this.options.ttl, true),
33
- exposedHeaders: ['x-trace-id'],
34
- ...(0, _vtils.omitStrict)(this.options, ['allow', 'ttl'])
35
- });
36
- }
37
- }
38
- exports.CorsPlugin = CorsPlugin;
@@ -1,28 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireWildcard = require("@babel/runtime/helpers/interopRequireWildcard").default;
4
- exports.__esModule = true;
5
- exports.MultipartFile = exports.FileParserPlugin = void 0;
6
- var _multipart = _interopRequireWildcard(require("@fastify/multipart"));
7
- exports.MultipartFile = _multipart.MultipartFile;
8
- var _vtils = require("vtils");
9
- /**
10
- * file 解析器插件
11
- *
12
- * 注意:默认文件大小限制 1MB
13
- */
14
- class FileParserPlugin {
15
- constructor(options) {
16
- this.options = options;
17
- }
18
- register(fastify) {
19
- fastify.register(_multipart.default, {
20
- ...this.options,
21
- limits: {
22
- fileSize: (0, _vtils.bytes)(1, 'MB'),
23
- ...this.options?.limits
24
- }
25
- });
26
- }
27
- }
28
- exports.FileParserPlugin = FileParserPlugin;
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- exports.__esModule = true;
5
- exports.FormBodyParserPlugin = void 0;
6
- var _formbody = _interopRequireDefault(require("@fastify/formbody"));
7
- /**
8
- * POST application/x-www-form-urlencoded 解析器插件
9
- */
10
- class FormBodyParserPlugin {
11
- constructor(options) {
12
- this.options = options;
13
- }
14
- register(fastify) {
15
- fastify.register(_formbody.default, this.options || {});
16
- }
17
- }
18
- exports.FormBodyParserPlugin = FormBodyParserPlugin;
@@ -1,18 +0,0 @@
1
- "use strict";
2
-
3
- var _interopRequireDefault = require("@babel/runtime/helpers/interopRequireDefault").default;
4
- exports.__esModule = true;
5
- exports.WsParserPlugin = void 0;
6
- var _websocket = _interopRequireDefault(require("@fastify/websocket"));
7
- /**
8
- * websocket 解析器插件
9
- */
10
- class WsParserPlugin {
11
- constructor(options) {
12
- this.options = options;
13
- }
14
- register(fastify) {
15
- fastify.register(_websocket.default, this.options ?? {});
16
- }
17
- }
18
- exports.WsParserPlugin = WsParserPlugin;