phecda-server 5.1.0 → 5.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 (153) hide show
  1. package/README.md +10 -10
  2. package/bin/cli.mjs +189 -189
  3. package/bin/schema.json +55 -55
  4. package/dist/{chunk-OTHER3YM.mjs → chunk-2HKQPZDT.mjs} +1 -2
  5. package/dist/{chunk-GHOKWS5V.js → chunk-3BV2GRS7.js} +38 -39
  6. package/dist/{chunk-BZP6GKM6.mjs → chunk-665MB62T.mjs} +1 -2
  7. package/dist/{chunk-QG4X6H5Y.js → chunk-FSBD5R22.js} +65 -66
  8. package/dist/{chunk-423JPSEB.js → chunk-HMPTPTFL.js} +17 -18
  9. package/dist/{chunk-6MQP6OHU.mjs → chunk-UU6RHGRF.mjs} +2 -3
  10. package/dist/{chunk-4YVAW3L4.mjs → chunk-VLV3AO3H.mjs} +0 -1
  11. package/dist/{chunk-Z4YJHEXT.js → chunk-ZP7HNASU.js} +0 -1
  12. package/dist/index.js +39 -40
  13. package/dist/index.mjs +4 -5
  14. package/dist/rpc/bullmq/index.js +12 -13
  15. package/dist/rpc/bullmq/index.mjs +2 -3
  16. package/dist/rpc/kafka/index.js +10 -11
  17. package/dist/rpc/kafka/index.mjs +2 -3
  18. package/dist/rpc/nats/index.js +11 -12
  19. package/dist/rpc/nats/index.mjs +2 -3
  20. package/dist/rpc/rabbitmq/index.js +13 -14
  21. package/dist/rpc/rabbitmq/index.mjs +2 -3
  22. package/dist/rpc/redis/index.js +11 -12
  23. package/dist/rpc/redis/index.mjs +2 -3
  24. package/dist/server/elysia/index.js +20 -21
  25. package/dist/server/elysia/index.mjs +3 -4
  26. package/dist/server/express/index.js +18 -19
  27. package/dist/server/express/index.mjs +2 -3
  28. package/dist/server/fastify/index.js +19 -20
  29. package/dist/server/fastify/index.mjs +3 -4
  30. package/dist/server/h3/index.js +16 -17
  31. package/dist/server/h3/index.mjs +2 -3
  32. package/dist/server/hono/index.js +17 -18
  33. package/dist/server/hono/index.mjs +2 -3
  34. package/dist/server/hyper-express/index.js +17 -18
  35. package/dist/server/hyper-express/index.mjs +2 -3
  36. package/dist/server/koa/index.js +18 -19
  37. package/dist/server/koa/index.mjs +2 -3
  38. package/dist/test.js +6 -7
  39. package/dist/test.mjs +2 -3
  40. package/package.json +2 -2
  41. package/register/index.mjs +40 -40
  42. package/register/loader.mjs +354 -341
  43. package/register/utils.mjs +81 -81
  44. package/dist/chunk-423JPSEB.js.map +0 -1
  45. package/dist/chunk-4R55T3HG.js +0 -253
  46. package/dist/chunk-4R55T3HG.js.map +0 -1
  47. package/dist/chunk-4YVAW3L4.mjs.map +0 -1
  48. package/dist/chunk-5DOVDDO7.mjs +0 -295
  49. package/dist/chunk-5DOVDDO7.mjs.map +0 -1
  50. package/dist/chunk-5WQ2SMIK.js +0 -295
  51. package/dist/chunk-5WQ2SMIK.js.map +0 -1
  52. package/dist/chunk-6MQP6OHU.mjs.map +0 -1
  53. package/dist/chunk-6Q2PCC3A.mjs +0 -295
  54. package/dist/chunk-6Q2PCC3A.mjs.map +0 -1
  55. package/dist/chunk-6UQYEBAN.js +0 -253
  56. package/dist/chunk-6UQYEBAN.js.map +0 -1
  57. package/dist/chunk-6W7CGOZC.mjs +0 -565
  58. package/dist/chunk-6W7CGOZC.mjs.map +0 -1
  59. package/dist/chunk-7Y37NSBM.js +0 -88
  60. package/dist/chunk-7Y37NSBM.js.map +0 -1
  61. package/dist/chunk-BQBSVGMG.mjs +0 -253
  62. package/dist/chunk-BQBSVGMG.mjs.map +0 -1
  63. package/dist/chunk-BZP6GKM6.mjs.map +0 -1
  64. package/dist/chunk-C5JAHCS2.mjs +0 -88
  65. package/dist/chunk-C5JAHCS2.mjs.map +0 -1
  66. package/dist/chunk-DTBKDALR.mjs +0 -295
  67. package/dist/chunk-DTBKDALR.mjs.map +0 -1
  68. package/dist/chunk-GHOKWS5V.js.map +0 -1
  69. package/dist/chunk-H4N6SHNG.mjs +0 -76
  70. package/dist/chunk-H4N6SHNG.mjs.map +0 -1
  71. package/dist/chunk-ICYHM4UM.js +0 -565
  72. package/dist/chunk-ICYHM4UM.js.map +0 -1
  73. package/dist/chunk-LOLXPM4J.mjs +0 -529
  74. package/dist/chunk-LOLXPM4J.mjs.map +0 -1
  75. package/dist/chunk-MSS6A2TU.js +0 -585
  76. package/dist/chunk-MSS6A2TU.js.map +0 -1
  77. package/dist/chunk-NEM3FY7C.mjs +0 -537
  78. package/dist/chunk-NEM3FY7C.mjs.map +0 -1
  79. package/dist/chunk-OTHER3YM.mjs.map +0 -1
  80. package/dist/chunk-Q2FYFIEY.js +0 -295
  81. package/dist/chunk-Q2FYFIEY.js.map +0 -1
  82. package/dist/chunk-QG4X6H5Y.js.map +0 -1
  83. package/dist/chunk-QIEZ6YTG.mjs +0 -295
  84. package/dist/chunk-QIEZ6YTG.mjs.map +0 -1
  85. package/dist/chunk-QOAKHCM7.js +0 -295
  86. package/dist/chunk-QOAKHCM7.js.map +0 -1
  87. package/dist/chunk-QVUD6L5X.js +0 -565
  88. package/dist/chunk-QVUD6L5X.js.map +0 -1
  89. package/dist/chunk-RGLTGKAU.js +0 -537
  90. package/dist/chunk-RGLTGKAU.js.map +0 -1
  91. package/dist/chunk-SHRK3TVB.js +0 -295
  92. package/dist/chunk-SHRK3TVB.js.map +0 -1
  93. package/dist/chunk-TCH6S42Z.js +0 -529
  94. package/dist/chunk-TCH6S42Z.js.map +0 -1
  95. package/dist/chunk-UCGRFVHC.mjs +0 -253
  96. package/dist/chunk-UCGRFVHC.mjs.map +0 -1
  97. package/dist/chunk-VOISXWVF.mjs +0 -295
  98. package/dist/chunk-VOISXWVF.mjs.map +0 -1
  99. package/dist/chunk-W6BC5INO.mjs +0 -295
  100. package/dist/chunk-W6BC5INO.mjs.map +0 -1
  101. package/dist/chunk-X5WQRO4R.js +0 -295
  102. package/dist/chunk-X5WQRO4R.js.map +0 -1
  103. package/dist/chunk-XDMCVVD3.mjs +0 -585
  104. package/dist/chunk-XDMCVVD3.mjs.map +0 -1
  105. package/dist/chunk-XNTMYLK6.js +0 -76
  106. package/dist/chunk-XNTMYLK6.js.map +0 -1
  107. package/dist/chunk-Y6LI4FDO.js +0 -537
  108. package/dist/chunk-Y6LI4FDO.js.map +0 -1
  109. package/dist/chunk-YZ2AQ6IL.mjs +0 -537
  110. package/dist/chunk-YZ2AQ6IL.mjs.map +0 -1
  111. package/dist/chunk-Z4YJHEXT.js.map +0 -1
  112. package/dist/chunk-ZE336SKZ.js +0 -295
  113. package/dist/chunk-ZE336SKZ.js.map +0 -1
  114. package/dist/chunk-ZJD235TO.mjs +0 -565
  115. package/dist/chunk-ZJD235TO.mjs.map +0 -1
  116. package/dist/core-930ea883.d.ts +0 -131
  117. package/dist/core-eb646fe5.d.ts +0 -139
  118. package/dist/core-fd134ffa.d.ts +0 -130
  119. package/dist/helper-06d25b37.d.ts +0 -19
  120. package/dist/helper-48454c0b.d.ts +0 -20
  121. package/dist/helper-73e8d2f0.d.ts +0 -18
  122. package/dist/helper-867a598d.d.ts +0 -18
  123. package/dist/helper-88b19c66.d.ts +0 -12
  124. package/dist/helper-9e206c66.d.ts +0 -12
  125. package/dist/helper-f29f082f.d.ts +0 -19
  126. package/dist/index.js.map +0 -1
  127. package/dist/index.mjs.map +0 -1
  128. package/dist/rpc/bullmq/index.js.map +0 -1
  129. package/dist/rpc/bullmq/index.mjs.map +0 -1
  130. package/dist/rpc/kafka/index.js.map +0 -1
  131. package/dist/rpc/kafka/index.mjs.map +0 -1
  132. package/dist/rpc/nats/index.js.map +0 -1
  133. package/dist/rpc/nats/index.mjs.map +0 -1
  134. package/dist/rpc/rabbitmq/index.js.map +0 -1
  135. package/dist/rpc/rabbitmq/index.mjs.map +0 -1
  136. package/dist/rpc/redis/index.js.map +0 -1
  137. package/dist/rpc/redis/index.mjs.map +0 -1
  138. package/dist/server/elysia/index.js.map +0 -1
  139. package/dist/server/elysia/index.mjs.map +0 -1
  140. package/dist/server/express/index.js.map +0 -1
  141. package/dist/server/express/index.mjs.map +0 -1
  142. package/dist/server/fastify/index.js.map +0 -1
  143. package/dist/server/fastify/index.mjs.map +0 -1
  144. package/dist/server/h3/index.js.map +0 -1
  145. package/dist/server/h3/index.mjs.map +0 -1
  146. package/dist/server/hono/index.js.map +0 -1
  147. package/dist/server/hono/index.mjs.map +0 -1
  148. package/dist/server/hyper-express/index.js.map +0 -1
  149. package/dist/server/hyper-express/index.mjs.map +0 -1
  150. package/dist/server/koa/index.js.map +0 -1
  151. package/dist/server/koa/index.mjs.map +0 -1
  152. package/dist/test.js.map +0 -1
  153. package/dist/test.mjs.map +0 -1
@@ -1,295 +0,0 @@
1
- import {
2
- mergeObject,
3
- shallowClone
4
- } from "./chunk-6W7CGOZC.mjs";
5
- import {
6
- __name
7
- } from "./chunk-H4N6SHNG.mjs";
8
-
9
- // src/decorators/param.ts
10
- import { getState, setPropertyState } from "phecda-core";
11
- function BaseParam(data) {
12
- return (target, k, index) => {
13
- if (!k)
14
- return;
15
- setPropertyState(target, k, (state) => {
16
- if (!state.params)
17
- state.params = [
18
- ...getState(target, k)?.params || []
19
- ].map(shallowClone);
20
- const existItem = state.params.find((item) => item.index === index);
21
- if (existItem)
22
- Object.assign(existItem, data);
23
- else
24
- state.params.push({
25
- ...data,
26
- index
27
- });
28
- });
29
- };
30
- }
31
- __name(BaseParam, "BaseParam");
32
- function Body(key = "") {
33
- return BaseParam({
34
- type: "body",
35
- key
36
- });
37
- }
38
- __name(Body, "Body");
39
- function Head(key) {
40
- return BaseParam({
41
- type: "headers",
42
- key: key.toLowerCase()
43
- });
44
- }
45
- __name(Head, "Head");
46
- function Query(key = "") {
47
- return BaseParam({
48
- type: "query",
49
- key
50
- });
51
- }
52
- __name(Query, "Query");
53
- function Param(key) {
54
- return BaseParam({
55
- type: "params",
56
- key
57
- });
58
- }
59
- __name(Param, "Param");
60
- function Arg(target, k, index) {
61
- BaseParam({
62
- type: "args",
63
- key: `${index}`
64
- })(target, k, index);
65
- }
66
- __name(Arg, "Arg");
67
-
68
- // src/decorators/aop.ts
69
- import { getState as getState2, setPropertyState as setPropertyState2 } from "phecda-core";
70
- function Guard(...guards) {
71
- return (target, k) => {
72
- setPropertyState2(target, k, (state) => {
73
- if (!state.guards)
74
- state.guards = /* @__PURE__ */ new Set([
75
- ...getState2(target, k)?.guards || []
76
- ]);
77
- guards.forEach((guard) => {
78
- if (state.guards.has(guard))
79
- state.guards.delete(guard);
80
- state.guards.add(guard);
81
- });
82
- });
83
- };
84
- }
85
- __name(Guard, "Guard");
86
- function Plugin(...plugins) {
87
- return (target, k) => {
88
- setPropertyState2(target, k, (state) => {
89
- if (!state.plugins)
90
- state.plugins = /* @__PURE__ */ new Set([
91
- ...getState2(target, k)?.plugins || []
92
- ]);
93
- plugins.forEach((plugin) => {
94
- if (state.plugins.has(plugin))
95
- state.plugins.delete(plugin);
96
- state.plugins.add(plugin);
97
- });
98
- });
99
- };
100
- }
101
- __name(Plugin, "Plugin");
102
- function Interceptor(...interceptors) {
103
- return (target, k) => {
104
- setPropertyState2(target, k, (state) => {
105
- if (!state.interceptors)
106
- state.interceptors = /* @__PURE__ */ new Set([
107
- ...getState2(target, k)?.interceptors || []
108
- ]);
109
- interceptors.forEach((interceptor) => {
110
- if (state.interceptors.has(interceptor))
111
- state.interceptors.delete(interceptor);
112
- state.interceptors.add(interceptor);
113
- });
114
- });
115
- };
116
- }
117
- __name(Interceptor, "Interceptor");
118
- function Filter(filter) {
119
- return (target, k) => {
120
- setPropertyState2(target, k, (state) => state.filter = filter);
121
- };
122
- }
123
- __name(Filter, "Filter");
124
- function Pipe(pipe) {
125
- return (target, k, index) => {
126
- if (typeof index === "number") {
127
- BaseParam({
128
- pipe
129
- })(target, k, index);
130
- return;
131
- }
132
- setPropertyState2(target, k, (state) => state.pipe = pipe);
133
- };
134
- }
135
- __name(Pipe, "Pipe");
136
-
137
- // src/decorators/http.ts
138
- import { getState as getState3, setPropertyState as setPropertyState3 } from "phecda-core";
139
- function Route(route, type) {
140
- return (target, k) => {
141
- setPropertyState3(target, k, (state) => {
142
- state.http = mergeObject(state.http || getState3(target, k)?.http, {
143
- route,
144
- type
145
- });
146
- });
147
- };
148
- }
149
- __name(Route, "Route");
150
- function Header(headers) {
151
- return (target, k) => {
152
- setPropertyState3(target, k, (state) => {
153
- if (!state.http)
154
- state.http = mergeObject(getState3(target, k)?.http);
155
- state.http = mergeObject(state.http, {
156
- headers: mergeObject(state.http?.headers, headers)
157
- });
158
- });
159
- };
160
- }
161
- __name(Header, "Header");
162
- function Get(route = "") {
163
- return Route(route, "get");
164
- }
165
- __name(Get, "Get");
166
- function Post(route = "") {
167
- return Route(route, "post");
168
- }
169
- __name(Post, "Post");
170
- function Put(route = "") {
171
- return Route(route, "put");
172
- }
173
- __name(Put, "Put");
174
- function Patch(route = "") {
175
- return Route(route, "patch");
176
- }
177
- __name(Patch, "Patch");
178
- function Delete(route = "") {
179
- return Route(route, "delete");
180
- }
181
- __name(Delete, "Delete");
182
- function Controller(prefix = "") {
183
- return (target) => {
184
- setPropertyState3(target, void 0, (state) => {
185
- state.controller = "http";
186
- state.http = mergeObject(state.http || getState3(target)?.http, {
187
- prefix
188
- });
189
- });
190
- };
191
- }
192
- __name(Controller, "Controller");
193
-
194
- // src/decorators/rpc.ts
195
- import { getState as getState4, setPropertyState as setPropertyState4 } from "phecda-core";
196
- function Event(isEvent = true) {
197
- return (target, k) => {
198
- setPropertyState4(target, k, (state) => {
199
- state.rpc = mergeObject(state.rpc || getState4(target, k)?.rpc, {
200
- isEvent
201
- });
202
- });
203
- };
204
- }
205
- __name(Event, "Event");
206
- function Queue(queue = "") {
207
- return (target, k) => {
208
- setPropertyState4(target, k, (state) => {
209
- state.rpc = mergeObject(state.rpc || getState4(target, k)?.rpc, {
210
- queue
211
- });
212
- });
213
- };
214
- }
215
- __name(Queue, "Queue");
216
- function Rpc() {
217
- return (target) => {
218
- setPropertyState4(target, void 0, (state) => {
219
- state.controller = "rpc";
220
- });
221
- };
222
- }
223
- __name(Rpc, "Rpc");
224
-
225
- // src/decorators/index.ts
226
- import { Empty, getState as getState5, set, setPropertyState as setPropertyState5 } from "phecda-core";
227
- function Injectable() {
228
- return (target) => Empty(target);
229
- }
230
- __name(Injectable, "Injectable");
231
- var Ctx = /* @__PURE__ */ __name((target, key) => {
232
- set(target, "context", key);
233
- }, "Ctx");
234
- function Define(key, value) {
235
- return (target, k, index) => {
236
- if (typeof index === "number") {
237
- setPropertyState5(target, k, (state) => {
238
- const parentState = getState5(target, k)?.params || [];
239
- if (!state.params)
240
- state.params = [
241
- ...parentState
242
- ].map(shallowClone);
243
- const existItem = state.params.find((item) => item.index === index);
244
- if (existItem)
245
- existItem.define = mergeObject(existItem.define, {
246
- [key]: value
247
- });
248
- else
249
- state.params.push({
250
- define: {
251
- [key]: value
252
- },
253
- index
254
- });
255
- });
256
- return;
257
- }
258
- setPropertyState5(target, k, (state) => {
259
- const parentState = getState5(target, k)?.define;
260
- if (!state.define)
261
- state.define = mergeObject(parentState);
262
- state.define[key] = value;
263
- });
264
- };
265
- }
266
- __name(Define, "Define");
267
-
268
- export {
269
- BaseParam,
270
- Body,
271
- Head,
272
- Query,
273
- Param,
274
- Arg,
275
- Guard,
276
- Plugin,
277
- Interceptor,
278
- Filter,
279
- Pipe,
280
- Route,
281
- Header,
282
- Get,
283
- Post,
284
- Put,
285
- Patch,
286
- Delete,
287
- Controller,
288
- Event,
289
- Queue,
290
- Rpc,
291
- Injectable,
292
- Ctx,
293
- Define
294
- };
295
- //# sourceMappingURL=chunk-DTBKDALR.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/decorators/param.ts","../src/decorators/aop.ts","../src/decorators/http.ts","../src/decorators/rpc.ts","../src/decorators/index.ts"],"sourcesContent":["import { getState, setPropertyState } from 'phecda-core'\r\nimport { shallowClone } from './helper'\r\n\r\nexport function BaseParam(data: Record<string, any>): ParameterDecorator {\r\n return (target: any, k: PropertyKey | undefined, index: number) => {\r\n if (!k)\r\n return\r\n setPropertyState(target, k, (state) => {\r\n if (!state.params)\r\n state.params = [...(getState(target, k)?.params || [])].map(shallowClone)\r\n\r\n const existItem = state.params.find((item: any) => item.index === index)\r\n\r\n if (existItem)\r\n Object.assign(existItem, data)\r\n\r\n else\r\n state.params.push({ ...data, index })\r\n })\r\n }\r\n}\r\n\r\nexport function Body(key = '') {\r\n return BaseParam({\r\n type: 'body',\r\n key,\r\n })\r\n}\r\n// req.headers\r\nexport function Head(key: string) {\r\n return BaseParam({\r\n type: 'headers', key: key.toLowerCase(),\r\n })\r\n}\r\n\r\nexport function Query(key = '') {\r\n return BaseParam({ type: 'query', key })\r\n}\r\nexport function Param(key: string) {\r\n return BaseParam({\r\n type: 'params', key,\r\n })\r\n}\r\n\r\n// work for micro service\r\nexport function Arg(target: any, k: string, index: number) {\r\n BaseParam({\r\n type: 'args', key: `${index}`,\r\n })(target, k, index)\r\n}\r\n","import { getState, setPropertyState } from 'phecda-core'\r\nimport { BaseParam } from './param'\r\nexport function Guard(...guards: string[]) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.guards)\r\n state.guards = new Set([...(getState(target, k)?.guards || [])])\r\n\r\n guards.forEach((guard) => {\r\n if (state.guards.has(guard))\r\n state.guards.delete(guard)\r\n\r\n state.guards.add(guard)\r\n })\r\n })\r\n }\r\n}\r\n\r\nexport function Plugin(...plugins: string[]) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.plugins)\r\n state.plugins = new Set([...(getState(target, k)?.plugins || [])])\r\n\r\n plugins.forEach((plugin) => {\r\n if (state.plugins.has(plugin))\r\n state.plugins.delete(plugin)\r\n\r\n state.plugins.add(plugin)\r\n })\r\n })\r\n }\r\n}\r\n\r\nexport function Interceptor(...interceptors: string[]) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.interceptors)\r\n state.interceptors = new Set([...(getState(target, k)?.interceptors || [])])\r\n\r\n interceptors.forEach((interceptor) => {\r\n if (state.interceptors.has(interceptor))\r\n state.interceptors.delete(interceptor)\r\n\r\n state.interceptors.add(interceptor)\r\n })\r\n })\r\n }\r\n}\r\nexport function Filter(filter: string) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, state => state.filter = filter)\r\n }\r\n}\r\nexport function Pipe(pipe?: string) {\r\n return (target: any, k?: any, index?: any) => {\r\n if (typeof index === 'number') {\r\n BaseParam({ pipe })(target, k, index)\r\n\r\n return\r\n }\r\n setPropertyState(target, k, state => state.pipe = pipe)\r\n }\r\n}\r\n","import { getState, setPropertyState } from 'phecda-core'\r\nimport { mergeObject } from './helper'\r\n\r\nexport function Route(route: string, type: string): MethodDecorator {\r\n return (target: any, k: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n state.http = mergeObject((state.http || getState(target, k)?.http),\r\n {\r\n route,\r\n type,\r\n })\r\n })\r\n }\r\n}\r\nexport function Header(headers: Record<string, string>): MethodDecorator {\r\n return (target: any, k: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.http)\r\n state.http = mergeObject(getState(target, k)?.http)\r\n\r\n state.http = mergeObject(state.http, {\r\n headers: mergeObject(state.http?.headers, headers),\r\n\r\n })\r\n })\r\n }\r\n}\r\n\r\nexport function Get(route = '') {\r\n return Route(route, 'get')\r\n}\r\n\r\nexport function Post(route = '') {\r\n return Route(route, 'post')\r\n}\r\nexport function Put(route = '') {\r\n return Route(route, 'put')\r\n}\r\n\r\nexport function Patch(route = '') {\r\n return Route(route, 'patch')\r\n}\r\nexport function Delete(route = '') {\r\n return Route(route, 'delete')\r\n}\r\n\r\nexport function Controller(prefix = '') {\r\n return (target: any) => {\r\n setPropertyState(target, undefined, (state) => {\r\n state.controller = 'http'\r\n state.http = mergeObject(state.http || getState(target)?.http, { prefix })\r\n })\r\n }\r\n}\r\n","import { getState, setPropertyState } from 'phecda-core'\r\nimport { mergeObject } from './helper'\r\n\r\nexport function Event(isEvent = true) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n state.rpc = mergeObject(state.rpc || getState(target, k)?.rpc, { isEvent })\r\n })\r\n }\r\n}\r\nexport function Queue(queue = '') {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n state.rpc = mergeObject(state.rpc || getState(target, k)?.rpc, { queue })\r\n })\r\n }\r\n}\r\n\r\nexport function Rpc(): ClassDecorator {\r\n return (target: any) => {\r\n setPropertyState(target, undefined, (state) => {\r\n state.controller = 'rpc'\r\n })\r\n }\r\n}\r\n","import { Empty, getState, set, setPropertyState } from 'phecda-core'\r\nimport { mergeObject, shallowClone } from './helper'\r\n\r\nexport function Injectable() {\r\n return (target: any) => Empty(target)\r\n}\r\n\r\nexport const Ctx: PropertyDecorator = (target: any, key: PropertyKey) => {\r\n set(target, 'context', key)\r\n}\r\n\r\nexport function Define(key: string, value: any): any {\r\n return (target: any, k?: any, index?: number) => {\r\n if (typeof index === 'number') {\r\n setPropertyState(target, k, (state) => {\r\n const parentState = getState(target, k)?.params || []\r\n\r\n if (!state.params)\r\n state.params = [...parentState].map(shallowClone)\r\n const existItem = state.params.find((item: any) => item.index === index)\r\n if (existItem)\r\n existItem.define = mergeObject(existItem.define, { [key]: value })\r\n\r\n else\r\n state.params.push({ define: { [key]: value }, index })\r\n })\r\n return\r\n }\r\n setPropertyState(target, k, (state) => {\r\n const parentState = getState(target, k)?.define\r\n if (!state.define)\r\n state.define = mergeObject(parentState)\r\n\r\n state.define[key] = value\r\n })\r\n }\r\n}\r\n\r\nexport * from './param'\r\nexport * from './aop'\r\nexport * from './http'\r\nexport * from './rpc'\r\n"],"mappings":"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","names":["getState","setPropertyState","BaseParam","data","target","k","index","setPropertyState","state","params","getState","map","shallowClone","existItem","find","item","Object","assign","push","Body","key","type","Head","toLowerCase","Query","Param","Arg","getState","setPropertyState","Guard","guards","target","k","setPropertyState","state","Set","getState","forEach","guard","has","delete","add","Plugin","plugins","plugin","Interceptor","interceptors","interceptor","Filter","filter","Pipe","pipe","index","BaseParam","getState","setPropertyState","Route","route","type","target","k","setPropertyState","state","http","mergeObject","getState","Header","headers","Get","Post","Put","Patch","Delete","Controller","prefix","undefined","controller","getState","setPropertyState","Event","isEvent","target","k","setPropertyState","state","rpc","mergeObject","getState","Queue","queue","Rpc","undefined","controller","Empty","getState","set","setPropertyState","Injectable","target","Empty","Ctx","key","set","Define","value","k","index","setPropertyState","state","parentState","getState","params","map","shallowClone","existItem","find","item","define","mergeObject","push"]}
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/decorators/param.ts","../src/decorators/aop.ts","../src/decorators/http.ts","../src/decorators/rpc.ts","../src/decorators/index.ts"],"names":["getState","setPropertyState","BaseParam","data","target","k","index","state","params","map","shallowClone","existItem","find","item","Object","assign","push","Body","key","type","Head","toLowerCase","Query","Param","Arg","Guard","guards","Set","forEach","guard","has","delete","add","Plugin","plugins","plugin","Interceptor","interceptors","interceptor","Filter","filter","Pipe","pipe","Route","route","http","mergeObject","Header","headers","Get","Post","Put","Patch","Delete","Controller","prefix","undefined","controller","Event","isEvent","rpc","Queue","queue","Rpc","Empty","set","Injectable","Ctx","Define","value","parentState","define"],"mappings":";;;;;;;;;AAAA,SAASA,UAAUC,wBAAwB;AAGpC,SAASC,UAAUC,MAA+C;AACvE,SAAO,CAACC,QAAaC,GAA4BC,UAAkB;AACjE,QAAI,CAACD;AACH;AACFJ,qBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrC,UAAI,CAACA,MAAMC;AACTD,cAAMC,SAAS;aAAKR,SAASI,QAAQC,CAAAA,GAAIG,UAAU,CAAA;UAAKC,IAAIC,YAAAA;AAE9D,YAAMC,YAAYJ,MAAMC,OAAOI,KAAK,CAACC,SAAcA,KAAKP,UAAUA,KAAAA;AAElE,UAAIK;AACFG,eAAOC,OAAOJ,WAAWR,IAAAA;;AAGzBI,cAAMC,OAAOQ,KAAK;UAAE,GAAGb;UAAMG;QAAM,CAAA;IACvC,CAAA;EACF;AACF;AAjBgBJ;AAmBT,SAASe,KAAKC,MAAM,IAAI;AAC7B,SAAOhB,UAAU;IACfiB,MAAM;IACND;EACF,CAAA;AACF;AALgBD;AAOT,SAASG,KAAKF,KAAa;AAChC,SAAOhB,UAAU;IACfiB,MAAM;IAAWD,KAAKA,IAAIG,YAAW;EACvC,CAAA;AACF;AAJgBD;AAMT,SAASE,MAAMJ,MAAM,IAAI;AAC9B,SAAOhB,UAAU;IAAEiB,MAAM;IAASD;EAAI,CAAA;AACxC;AAFgBI;AAGT,SAASC,MAAML,KAAa;AACjC,SAAOhB,UAAU;IACfiB,MAAM;IAAUD;EAClB,CAAA;AACF;AAJgBK;AAOT,SAASC,IAAIpB,QAAaC,GAAWC,OAAe;AACzDJ,YAAU;IACRiB,MAAM;IAAQD,KAAK,GAAGZ;EACxB,CAAA,EAAGF,QAAQC,GAAGC,KAAAA;AAChB;AAJgBkB;;;AC7ChB,SAASxB,YAAAA,WAAUC,oBAAAA,yBAAwB;AAEpC,SAASwB,SAASC,QAAkB;AACzC,SAAO,CAACtB,QAAaC,MAAoB;AACvCJ,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrC,UAAI,CAACA,MAAMmB;AACTnB,cAAMmB,SAAS,oBAAIC,IAAI;aAAK3B,UAASI,QAAQC,CAAAA,GAAIqB,UAAU,CAAA;SAAI;AAEjEA,aAAOE,QAAQ,CAACC,UAAU;AACxB,YAAItB,MAAMmB,OAAOI,IAAID,KAAAA;AACnBtB,gBAAMmB,OAAOK,OAAOF,KAAAA;AAEtBtB,cAAMmB,OAAOM,IAAIH,KAAAA;MACnB,CAAA;IACF,CAAA;EACF;AACF;AAdgBJ;AAgBT,SAASQ,UAAUC,SAAmB;AAC3C,SAAO,CAAC9B,QAAaC,MAAoB;AACvCJ,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrC,UAAI,CAACA,MAAM2B;AACT3B,cAAM2B,UAAU,oBAAIP,IAAI;aAAK3B,UAASI,QAAQC,CAAAA,GAAI6B,WAAW,CAAA;SAAI;AAEnEA,cAAQN,QAAQ,CAACO,WAAW;AAC1B,YAAI5B,MAAM2B,QAAQJ,IAAIK,MAAAA;AACpB5B,gBAAM2B,QAAQH,OAAOI,MAAAA;AAEvB5B,cAAM2B,QAAQF,IAAIG,MAAAA;MACpB,CAAA;IACF,CAAA;EACF;AACF;AAdgBF;AAgBT,SAASG,eAAeC,cAAwB;AACrD,SAAO,CAACjC,QAAaC,MAAoB;AACvCJ,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrC,UAAI,CAACA,MAAM8B;AACT9B,cAAM8B,eAAe,oBAAIV,IAAI;aAAK3B,UAASI,QAAQC,CAAAA,GAAIgC,gBAAgB,CAAA;SAAI;AAE7EA,mBAAaT,QAAQ,CAACU,gBAAgB;AACpC,YAAI/B,MAAM8B,aAAaP,IAAIQ,WAAAA;AACzB/B,gBAAM8B,aAAaN,OAAOO,WAAAA;AAE5B/B,cAAM8B,aAAaL,IAAIM,WAAAA;MACzB,CAAA;IACF,CAAA;EACF;AACF;AAdgBF;AAeT,SAASG,OAAOC,QAAgB;AACrC,SAAO,CAACpC,QAAaC,MAAoB;AACvCJ,IAAAA,kBAAiBG,QAAQC,GAAGE,CAAAA,UAASA,MAAMiC,SAASA,MAAAA;EACtD;AACF;AAJgBD;AAKT,SAASE,KAAKC,MAAe;AAClC,SAAO,CAACtC,QAAaC,GAASC,UAAgB;AAC5C,QAAI,OAAOA,UAAU,UAAU;AAC7BJ,gBAAU;QAAEwC;MAAK,CAAA,EAAGtC,QAAQC,GAAGC,KAAAA;AAE/B;IACF;AACAL,IAAAA,kBAAiBG,QAAQC,GAAGE,CAAAA,UAASA,MAAMmC,OAAOA,IAAAA;EACpD;AACF;AATgBD;;;ACtDhB,SAASzC,YAAAA,WAAUC,oBAAAA,yBAAwB;AAGpC,SAAS0C,MAAMC,OAAezB,MAA+B;AAClE,SAAO,CAACf,QAAaC,MAAmB;AACtCJ,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrCA,YAAMsC,OAAOC,YAAavC,MAAMsC,QAAQ7C,UAASI,QAAQC,CAAAA,GAAIwC,MAC3D;QACED;QACAzB;MACF,CAAA;IACJ,CAAA;EACF;AACF;AAVgBwB;AAWT,SAASI,OAAOC,SAAkD;AACvE,SAAO,CAAC5C,QAAaC,MAAmB;AACtCJ,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrC,UAAI,CAACA,MAAMsC;AACTtC,cAAMsC,OAAOC,YAAY9C,UAASI,QAAQC,CAAAA,GAAIwC,IAAAA;AAEhDtC,YAAMsC,OAAOC,YAAYvC,MAAMsC,MAAM;QACnCG,SAASF,YAAYvC,MAAMsC,MAAMG,SAASA,OAAAA;MAE5C,CAAA;IACF,CAAA;EACF;AACF;AAZgBD;AAcT,SAASE,IAAIL,QAAQ,IAAI;AAC9B,SAAOD,MAAMC,OAAO,KAAA;AACtB;AAFgBK;AAIT,SAASC,KAAKN,QAAQ,IAAI;AAC/B,SAAOD,MAAMC,OAAO,MAAA;AACtB;AAFgBM;AAGT,SAASC,IAAIP,QAAQ,IAAI;AAC9B,SAAOD,MAAMC,OAAO,KAAA;AACtB;AAFgBO;AAIT,SAASC,MAAMR,QAAQ,IAAI;AAChC,SAAOD,MAAMC,OAAO,OAAA;AACtB;AAFgBQ;AAGT,SAASC,OAAOT,QAAQ,IAAI;AACjC,SAAOD,MAAMC,OAAO,QAAA;AACtB;AAFgBS;AAIT,SAASC,WAAWC,SAAS,IAAI;AACtC,SAAO,CAACnD,WAAgB;AACtBH,IAAAA,kBAAiBG,QAAQoD,QAAW,CAACjD,UAAU;AAC7CA,YAAMkD,aAAa;AACnBlD,YAAMsC,OAAOC,YAAYvC,MAAMsC,QAAQ7C,UAASI,MAAAA,GAASyC,MAAM;QAAEU;MAAO,CAAA;IAC1E,CAAA;EACF;AACF;AAPgBD;;;AC9ChB,SAAStD,YAAAA,WAAUC,oBAAAA,yBAAwB;AAGpC,SAASyD,MAAMC,UAAU,MAAM;AACpC,SAAO,CAACvD,QAAaC,MAAoB;AACvCJ,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrCA,YAAMqD,MAAMd,YAAYvC,MAAMqD,OAAO5D,UAASI,QAAQC,CAAAA,GAAIuD,KAAK;QAAED;MAAQ,CAAA;IAC3E,CAAA;EACF;AACF;AANgBD;AAOT,SAASG,MAAMC,QAAQ,IAAI;AAChC,SAAO,CAAC1D,QAAaC,MAAoB;AACvCJ,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrCA,YAAMqD,MAAMd,YAAYvC,MAAMqD,OAAO5D,UAASI,QAAQC,CAAAA,GAAIuD,KAAK;QAAEE;MAAM,CAAA;IACzE,CAAA;EACF;AACF;AANgBD;AAQT,SAASE,MAAsB;AACpC,SAAO,CAAC3D,WAAgB;AACtBH,IAAAA,kBAAiBG,QAAQoD,QAAW,CAACjD,UAAU;AAC7CA,YAAMkD,aAAa;IACrB,CAAA;EACF;AACF;AANgBM;;;AClBhB,SAASC,OAAOhE,YAAAA,WAAUiE,KAAKhE,oBAAAA,yBAAwB;AAGhD,SAASiE,aAAa;AAC3B,SAAO,CAAC9D,WAAgB4D,MAAM5D,MAAAA;AAChC;AAFgB8D;AAIT,IAAMC,MAAyB,wBAAC/D,QAAac,QAAqB;AACvE+C,MAAI7D,QAAQ,WAAWc,GAAAA;AACzB,GAFsC;AAI/B,SAASkD,OAAOlD,KAAamD,OAAiB;AACnD,SAAO,CAACjE,QAAaC,GAASC,UAAmB;AAC/C,QAAI,OAAOA,UAAU,UAAU;AAC7BL,MAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrC,cAAM+D,cAActE,UAASI,QAAQC,CAAAA,GAAIG,UAAU,CAAA;AAEnD,YAAI,CAACD,MAAMC;AACTD,gBAAMC,SAAS;eAAI8D;YAAa7D,IAAIC,YAAAA;AACtC,cAAMC,YAAYJ,MAAMC,OAAOI,KAAK,CAACC,SAAcA,KAAKP,UAAUA,KAAAA;AAClE,YAAIK;AACFA,oBAAU4D,SAASzB,YAAYnC,UAAU4D,QAAQ;YAAE,CAACrD,MAAMmD;UAAM,CAAA;;AAGhE9D,gBAAMC,OAAOQ,KAAK;YAAEuD,QAAQ;cAAE,CAACrD,MAAMmD;YAAM;YAAG/D;UAAM,CAAA;MACxD,CAAA;AACA;IACF;AACAL,IAAAA,kBAAiBG,QAAQC,GAAG,CAACE,UAAU;AACrC,YAAM+D,cAActE,UAASI,QAAQC,CAAAA,GAAIkE;AACzC,UAAI,CAAChE,MAAMgE;AACThE,cAAMgE,SAASzB,YAAYwB,WAAAA;AAE7B/D,YAAMgE,OAAOrD,OAAOmD;IACtB,CAAA;EACF;AACF;AAzBgBD","sourcesContent":["import { getState, setPropertyState } from 'phecda-core'\r\nimport { shallowClone } from './helper'\r\n\r\nexport function BaseParam(data: Record<string, any>): ParameterDecorator {\r\n return (target: any, k: PropertyKey | undefined, index: number) => {\r\n if (!k)\r\n return\r\n setPropertyState(target, k, (state) => {\r\n if (!state.params)\r\n state.params = [...(getState(target, k)?.params || [])].map(shallowClone)\r\n\r\n const existItem = state.params.find((item: any) => item.index === index)\r\n\r\n if (existItem)\r\n Object.assign(existItem, data)\r\n\r\n else\r\n state.params.push({ ...data, index })\r\n })\r\n }\r\n}\r\n\r\nexport function Body(key = '') {\r\n return BaseParam({\r\n type: 'body',\r\n key,\r\n })\r\n}\r\n// req.headers\r\nexport function Head(key: string) {\r\n return BaseParam({\r\n type: 'headers', key: key.toLowerCase(),\r\n })\r\n}\r\n\r\nexport function Query(key = '') {\r\n return BaseParam({ type: 'query', key })\r\n}\r\nexport function Param(key: string) {\r\n return BaseParam({\r\n type: 'params', key,\r\n })\r\n}\r\n\r\n// work for micro service\r\nexport function Arg(target: any, k: string, index: number) {\r\n BaseParam({\r\n type: 'args', key: `${index}`,\r\n })(target, k, index)\r\n}\r\n","import { getState, setPropertyState } from 'phecda-core'\r\nimport { BaseParam } from './param'\r\nexport function Guard(...guards: string[]) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.guards)\r\n state.guards = new Set([...(getState(target, k)?.guards || [])])\r\n\r\n guards.forEach((guard) => {\r\n if (state.guards.has(guard))\r\n state.guards.delete(guard)\r\n\r\n state.guards.add(guard)\r\n })\r\n })\r\n }\r\n}\r\n\r\nexport function Plugin(...plugins: string[]) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.plugins)\r\n state.plugins = new Set([...(getState(target, k)?.plugins || [])])\r\n\r\n plugins.forEach((plugin) => {\r\n if (state.plugins.has(plugin))\r\n state.plugins.delete(plugin)\r\n\r\n state.plugins.add(plugin)\r\n })\r\n })\r\n }\r\n}\r\n\r\nexport function Interceptor(...interceptors: string[]) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.interceptors)\r\n state.interceptors = new Set([...(getState(target, k)?.interceptors || [])])\r\n\r\n interceptors.forEach((interceptor) => {\r\n if (state.interceptors.has(interceptor))\r\n state.interceptors.delete(interceptor)\r\n\r\n state.interceptors.add(interceptor)\r\n })\r\n })\r\n }\r\n}\r\nexport function Filter(filter: string) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, state => state.filter = filter)\r\n }\r\n}\r\nexport function Pipe(pipe?: string) {\r\n return (target: any, k?: any, index?: any) => {\r\n if (typeof index === 'number') {\r\n BaseParam({ pipe })(target, k, index)\r\n\r\n return\r\n }\r\n setPropertyState(target, k, state => state.pipe = pipe)\r\n }\r\n}\r\n","import { getState, setPropertyState } from 'phecda-core'\r\nimport { mergeObject } from './helper'\r\n\r\nexport function Route(route: string, type: string): MethodDecorator {\r\n return (target: any, k: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n state.http = mergeObject((state.http || getState(target, k)?.http),\r\n {\r\n route,\r\n type,\r\n })\r\n })\r\n }\r\n}\r\nexport function Header(headers: Record<string, string>): MethodDecorator {\r\n return (target: any, k: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n if (!state.http)\r\n state.http = mergeObject(getState(target, k)?.http)\r\n\r\n state.http = mergeObject(state.http, {\r\n headers: mergeObject(state.http?.headers, headers),\r\n\r\n })\r\n })\r\n }\r\n}\r\n\r\nexport function Get(route = '') {\r\n return Route(route, 'get')\r\n}\r\n\r\nexport function Post(route = '') {\r\n return Route(route, 'post')\r\n}\r\nexport function Put(route = '') {\r\n return Route(route, 'put')\r\n}\r\n\r\nexport function Patch(route = '') {\r\n return Route(route, 'patch')\r\n}\r\nexport function Delete(route = '') {\r\n return Route(route, 'delete')\r\n}\r\n\r\nexport function Controller(prefix = '') {\r\n return (target: any) => {\r\n setPropertyState(target, undefined, (state) => {\r\n state.controller = 'http'\r\n state.http = mergeObject(state.http || getState(target)?.http, { prefix })\r\n })\r\n }\r\n}\r\n","import { getState, setPropertyState } from 'phecda-core'\r\nimport { mergeObject } from './helper'\r\n\r\nexport function Event(isEvent = true) {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n state.rpc = mergeObject(state.rpc || getState(target, k)?.rpc, { isEvent })\r\n })\r\n }\r\n}\r\nexport function Queue(queue = '') {\r\n return (target: any, k?: PropertyKey) => {\r\n setPropertyState(target, k, (state) => {\r\n state.rpc = mergeObject(state.rpc || getState(target, k)?.rpc, { queue })\r\n })\r\n }\r\n}\r\n\r\nexport function Rpc(): ClassDecorator {\r\n return (target: any) => {\r\n setPropertyState(target, undefined, (state) => {\r\n state.controller = 'rpc'\r\n })\r\n }\r\n}\r\n","import { Empty, getState, set, setPropertyState } from 'phecda-core'\r\nimport { mergeObject, shallowClone } from './helper'\r\n\r\nexport function Injectable() {\r\n return (target: any) => Empty(target)\r\n}\r\n\r\nexport const Ctx: PropertyDecorator = (target: any, key: PropertyKey) => {\r\n set(target, 'context', key)\r\n}\r\n\r\nexport function Define(key: string, value: any): any {\r\n return (target: any, k?: any, index?: number) => {\r\n if (typeof index === 'number') {\r\n setPropertyState(target, k, (state) => {\r\n const parentState = getState(target, k)?.params || []\r\n\r\n if (!state.params)\r\n state.params = [...parentState].map(shallowClone)\r\n const existItem = state.params.find((item: any) => item.index === index)\r\n if (existItem)\r\n existItem.define = mergeObject(existItem.define, { [key]: value })\r\n\r\n else\r\n state.params.push({ define: { [key]: value }, index })\r\n })\r\n return\r\n }\r\n setPropertyState(target, k, (state) => {\r\n const parentState = getState(target, k)?.define\r\n if (!state.define)\r\n state.define = mergeObject(parentState)\r\n\r\n state.define[key] = value\r\n })\r\n }\r\n}\r\n\r\nexport * from './param'\r\nexport * from './aop'\r\nexport * from './http'\r\nexport * from './rpc'\r\n"]}
@@ -1,76 +0,0 @@
1
- var __defProp = Object.defineProperty;
2
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
3
- var __name = (target, value) => __defProp(target, "name", { value, configurable: true });
4
- var __publicField = (obj, key, value) => {
5
- __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
6
- return value;
7
- };
8
-
9
- // src/common.ts
10
- var UNMOUNT_SYMBOL = "__PS_UNMOUNT__";
11
- var ERROR_SYMBOL = "__PS_ERROR__";
12
- var IS_HMR = process.env.NODE_ENV === "development";
13
- var IS_ONLY_GENERATE = !!process.env.PS_GENERATE;
14
- var IS_STRICT = !!process.env.PS_STRICT;
15
- var LOG_LEVEL = Number(process.env.PS_LOG_LEVEL || 0);
16
- var PS_EXIT_CODE;
17
- (function(PS_EXIT_CODE2) {
18
- PS_EXIT_CODE2[PS_EXIT_CODE2["RELAUNCH"] = 2] = "RELAUNCH";
19
- PS_EXIT_CODE2[PS_EXIT_CODE2["CODE"] = 4] = "CODE";
20
- })(PS_EXIT_CODE || (PS_EXIT_CODE = {}));
21
-
22
- // src/utils.ts
23
- import pc from "picocolors";
24
- var time;
25
- var internalLogger = console;
26
- function setLogger(logger) {
27
- internalLogger = logger;
28
- }
29
- __name(setLogger, "setLogger");
30
- function log(msg, level = "log") {
31
- const logLevel = {
32
- info: 0,
33
- log: 1,
34
- warn: 2,
35
- error: 3
36
- }[level];
37
- if (logLevel < LOG_LEVEL)
38
- return;
39
- const color = {
40
- error: "red",
41
- info: "gray",
42
- warn: "yellow",
43
- log: "green"
44
- }[level];
45
- const date = new Date();
46
- const current = Date.now();
47
- const interval = time && current - time ? `+${current - time}` : "";
48
- time = current;
49
- internalLogger[level](`${pc.magenta("[phecda-server]")} ${pc.gray(`${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`)} ${pc[color](msg)} ${pc.gray(interval)}`);
50
- }
51
- __name(log, "log");
52
- function Mix(InternalClass, ExtendClass) {
53
- return class extends InternalClass {
54
- constructor(...args) {
55
- super();
56
- Object.assign(this, new ExtendClass(...args));
57
- }
58
- };
59
- }
60
- __name(Mix, "Mix");
61
-
62
- export {
63
- __name,
64
- __publicField,
65
- UNMOUNT_SYMBOL,
66
- ERROR_SYMBOL,
67
- IS_HMR,
68
- IS_ONLY_GENERATE,
69
- IS_STRICT,
70
- LOG_LEVEL,
71
- PS_EXIT_CODE,
72
- setLogger,
73
- log,
74
- Mix
75
- };
76
- //# sourceMappingURL=chunk-H4N6SHNG.mjs.map
@@ -1 +0,0 @@
1
- {"version":3,"sources":["../src/common.ts","../src/utils.ts"],"sourcesContent":["// export const MERGE_SYMBOL = '__PS_MERGE__'// is parallel request in http\r\nexport const UNMOUNT_SYMBOL = '__PS_UNMOUNT__'// property that include unmount callbacks\r\n// export const MODULE_SYMBOL = '__PS_MODULE__'// req[MODULE_SYMBOL]=modulemap\r\n// export const META_SYMBOL = '__PS_META__'// req[META_SYMBOL]=meta\r\n// export const PS_SYMBOL = '__PS__'// (app/router)[PS_SYMBOL]=Factory(...)\r\nexport const ERROR_SYMBOL = '__PS_ERROR__'// only use in paralle request\r\n\r\nexport const IS_HMR = process.env.NODE_ENV === 'development'\r\nexport const IS_ONLY_GENERATE = !!process.env.PS_GENERATE// work for ci; only generate code\r\nexport const IS_STRICT = !!process.env.PS_STRICT// throw error if depends on an aop module which is not imported\r\nexport const LOG_LEVEL = Number(process.env.PS_LOG_LEVEL || 0)// internal logger\r\n\r\nexport enum PS_EXIT_CODE {\r\n RELAUNCH = 2,\r\n CODE = 4,\r\n}\r\n","import pc from 'picocolors'\r\nimport type { AbConstruct, Construct } from 'phecda-core'\r\nimport { LOG_LEVEL } from './common'\r\n\r\nlet time: number\r\n\r\nlet internalLogger: Record<LogLevel, (msg: string) => void> = console\r\n\r\ntype LogLevel = 'error' | 'info' | 'warn' | 'log'\r\n\r\nexport function setLogger(logger: Record<LogLevel, (msg: string) => void>) {\r\n internalLogger = logger\r\n}\r\n\r\nexport function log(msg: string, level: LogLevel = 'log') {\r\n const logLevel = {\r\n info: 0,\r\n log: 1,\r\n warn: 2,\r\n error: 3,\r\n }[level]\r\n\r\n if (logLevel < LOG_LEVEL)\r\n return\r\n\r\n const color = ({ error: 'red', info: 'gray', warn: 'yellow', log: 'green' } as const)[level]\r\n const date = new Date()\r\n const current = Date.now()\r\n const interval = (time && current - time) ? `+${current - time}` : ''\r\n time = current\r\n\r\n internalLogger[level](`${pc.magenta('[phecda-server]')} ${pc.gray(`${date.getHours()}:${date.getMinutes()}:${date.getSeconds()}`)} ${pc[color](msg)} ${pc.gray(interval)}`)\r\n}\r\n\r\nexport function Mix<C1 extends Construct | AbConstruct, C2 extends Construct>(InternalClass: C1, ExtendClass: C2) {\r\n return class extends InternalClass {\r\n constructor(...args: any) {\r\n super()\r\n Object.assign(this, new ExtendClass(...args))\r\n }\r\n } as new (...args: ConstructorParameters<C2>) => InstanceType<C1> & InstanceType<C2>\r\n}\r\n"],"mappings":";;;;;;;;;AACO,IAAMA,iBAAiB;AAIvB,IAAMC,eAAe;AAErB,IAAMC,SAASC,QAAQC,IAAIC,aAAa;AACxC,IAAMC,mBAAmB,CAAC,CAACH,QAAQC,IAAIG;AACvC,IAAMC,YAAY,CAAC,CAACL,QAAQC,IAAIK;AAChC,IAAMC,YAAYC,OAAOR,QAAQC,IAAIQ,gBAAgB,CAAA;IAErD;UAAKC,eAAY;AAAZA,EAAAA,cAAAA,cACVC,cAAW,KAAXA;AADUD,EAAAA,cAAAA,cAEVE,UAAO,KAAPA;GAFUF,iBAAAA,eAAAA,CAAAA,EAAAA;;;ACZZ,OAAOG,QAAQ;AAIf,IAAIC;AAEJ,IAAIC,iBAA0DC;AAIvD,SAASC,UAAUC,QAAiD;AACzEH,mBAAiBG;AACnB;AAFgBD;AAIT,SAASE,IAAIC,KAAaC,QAAkB,OAAO;AACxD,QAAMC,WAAW;IACfC,MAAM;IACNJ,KAAK;IACLK,MAAM;IACNC,OAAO;EACT,EAAEJ;AAEF,MAAIC,WAAWI;AACb;AAEF,QAAMC,QAAS;IAAEF,OAAO;IAAOF,MAAM;IAAQC,MAAM;IAAUL,KAAK;EAAQ,EAAYE;AACtF,QAAMO,OAAO,IAAIC,KAAAA;AACjB,QAAMC,UAAUD,KAAKE,IAAG;AACxB,QAAMC,WAAYlB,QAAQgB,UAAUhB,OAAQ,IAAIgB,UAAUhB,SAAS;AACnEA,SAAOgB;AAEPf,iBAAeM,OAAO,GAAGY,GAAGC,QAAQ,iBAAA,KAAsBD,GAAGE,KAAK,GAAGP,KAAKQ,SAAQ,KAAMR,KAAKS,WAAU,KAAMT,KAAKU,WAAU,GAAI,KAAKL,GAAGN,OAAOP,GAAAA,KAAQa,GAAGE,KAAKH,QAAAA,GAAW;AAC5K;AAlBgBb;AAoBT,SAASoB,IAA8DC,eAAmBC,aAAiB;AAChH,SAAO,cAAcD,cAAAA;IACnBE,eAAeC,MAAW;AACxB,YAAK;AACLC,aAAOC,OAAO,MAAM,IAAIJ,YAAAA,GAAeE,IAAAA,CAAAA;IACzC;EACF;AACF;AAPgBJ;","names":["UNMOUNT_SYMBOL","ERROR_SYMBOL","IS_HMR","process","env","NODE_ENV","IS_ONLY_GENERATE","PS_GENERATE","IS_STRICT","PS_STRICT","LOG_LEVEL","Number","PS_LOG_LEVEL","PS_EXIT_CODE","RELAUNCH","CODE","pc","time","internalLogger","console","setLogger","logger","log","msg","level","logLevel","info","warn","error","LOG_LEVEL","color","date","Date","current","now","interval","pc","magenta","gray","getHours","getMinutes","getSeconds","Mix","InternalClass","ExtendClass","constructor","args","Object","assign"]}