@volcanicminds/backend 0.1.8 → 0.1.9

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.
package/README.md CHANGED
@@ -132,6 +132,7 @@ SWAGGER=true
132
132
  SWAGGER_TITLE=API Documentation
133
133
  SWAGGER_DESCRIPTION=List of available APIs and schemes to use
134
134
  SWAGGER_VERSION=0.1.0
135
+ SWAGGER_PREFIX_URL=/documentation
135
136
  ```
136
137
 
137
138
  ## Fastify modules
@@ -215,6 +216,19 @@ module.exports = {
215
216
  }
216
217
  ```
217
218
 
219
+ ## Controllers
220
+
221
+ ```js
222
+ import { FastifyReply, FastifyRequest } from '@volcanicminds/backend'
223
+
224
+ export async function user(req: FastifyRequest, reply: FastifyReply) {
225
+ reply.send(req.user || {})
226
+ }
227
+ ```
228
+
229
+ An useful method is `req.data()` to grab **query** or **body** parameters.
230
+ An useful method is `req.pars()` to grab **params** data.
231
+
218
232
  ## Roles
219
233
 
220
234
  By default, there are some basic roles:
package/TODO.md CHANGED
@@ -6,11 +6,9 @@ https://github.com/fastify/fastify-swagger
6
6
  https://www.fastify.io/docs/latest/Reference/Validation-and-Serialization/
7
7
  https://json-schema.org/draft/2020-12/json-schema-validation.html#name-pattern
8
8
 
9
- - roles
10
9
  - database psql
11
10
  - hooks (esposti, es come middlewares ma per nome file specifico es onReady ecc)
12
11
  - models
13
12
  - validations
14
13
  - authentication
15
- - testare middlewares
16
14
  - metrics (plugin?)
@@ -25,8 +25,15 @@ function isAdmin(req, reply) {
25
25
  exports.isAdmin = isAdmin;
26
26
  function demo(req, reply) {
27
27
  return __awaiter(this, void 0, void 0, function* () {
28
- reply.send({ demo: true });
28
+ const data = req.data();
29
+ log.debug('data ' + data.id + ' ' + data.role);
30
+ reply.send({
31
+ id: data.id || 'notfound',
32
+ demo: true,
33
+ date: new Date(),
34
+ body: data
35
+ });
29
36
  });
30
37
  }
31
38
  exports.demo = demo;
32
- //# sourceMappingURL=me.js.map
39
+ //# sourceMappingURL=user.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"user.js","sourceRoot":"","sources":["../../../../lib/api/user/controller/user.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,SAAsB,IAAI,CAAC,GAAmB,EAAE,KAAmB;;QACjE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAC5B,CAAC;CAAA;AAFD,oBAEC;AAED,SAAsB,OAAO,CAAC,GAAmB,EAAE,KAAmB;;;QACpE,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA,MAAA,GAAG,CAAC,IAAI,0CAAE,KAAK,KAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,CAAA;;CAC5E;AAFD,0BAEC;AAED,SAAsB,IAAI,CAAC,GAAmB,EAAE,KAAmB;;QACjE,MAAM,IAAI,GAAG,GAAG,CAAC,IAAI,EAAE,CAAA;QAEvB,GAAG,CAAC,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,EAAE,GAAG,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,CAAA;QAE9C,KAAK,CAAC,IAAI,CAAC;YACT,EAAE,EAAE,IAAI,CAAC,EAAE,IAAI,UAAU;YACzB,IAAI,EAAE,IAAI;YACV,IAAI,EAAE,IAAI,IAAI,EAAE;YAChB,IAAI,EAAE,IAAI;SACX,CAAC,CAAA;IACJ,CAAC;CAAA;AAXD,oBAWC"}
@@ -1,10 +1,10 @@
1
1
  "use strict";
2
2
  module.exports = {
3
3
  config: {
4
- title: 'Useful functions',
5
- description: 'Useful functions',
4
+ title: 'User useful functions',
5
+ description: 'User useful functions',
6
6
  controller: 'controller',
7
- tags: ['user', 'code'],
7
+ tags: ['user'],
8
8
  enable: true,
9
9
  deprecated: false,
10
10
  version: false
@@ -14,13 +14,13 @@ module.exports = {
14
14
  method: 'GET',
15
15
  path: '/',
16
16
  roles: [],
17
- handler: 'me.user',
17
+ handler: 'user.user',
18
18
  middlewares: ['global.isAuthenticated'],
19
19
  config: {
20
20
  enable: true,
21
- title: 'Me title',
22
- description: 'Me description',
23
- tags: ['user', 'code'],
21
+ title: 'Get current user',
22
+ description: 'Get current user',
23
+ tags: ['user'],
24
24
  deprecated: false,
25
25
  version: false,
26
26
  response: {
@@ -45,11 +45,11 @@ module.exports = {
45
45
  method: 'GET',
46
46
  path: '/is-admin',
47
47
  roles: [],
48
- handler: 'me.isAdmin',
48
+ handler: 'user.isAdmin',
49
49
  middlewares: ['global.isAuthenticated'],
50
50
  config: {
51
- title: 'Admin',
52
- description: 'Admin',
51
+ title: 'Check if is an admin',
52
+ description: 'Check if the current user is an admin',
53
53
  enable: true,
54
54
  deprecated: false,
55
55
  version: false
@@ -59,10 +59,10 @@ module.exports = {
59
59
  method: 'GET',
60
60
  path: '/demo',
61
61
  roles: [],
62
- handler: 'me.demo',
62
+ handler: 'user.demo',
63
63
  middlewares: ['global.isAdmin'],
64
64
  config: {
65
- enable: true,
65
+ enable: false,
66
66
  title: 'Me title',
67
67
  description: 'Me description',
68
68
  tags: ['user', 'code'],
@@ -89,7 +89,60 @@ module.exports = {
89
89
  description: 'Default response',
90
90
  type: 'object',
91
91
  properties: {
92
- foo: { type: 'string' }
92
+ id: { type: 'string' },
93
+ demo: { type: 'boolean' },
94
+ date: { type: 'string' },
95
+ query: { type: 'object' },
96
+ body: { type: 'object' }
97
+ }
98
+ }
99
+ }
100
+ }
101
+ },
102
+ {
103
+ method: 'POST',
104
+ path: '/demo',
105
+ roles: [],
106
+ handler: 'user.demo',
107
+ middlewares: ['global.isAdmin'],
108
+ config: {
109
+ enable: false,
110
+ title: 'Me title',
111
+ description: 'Me description',
112
+ tags: ['user', 'code'],
113
+ deprecated: false,
114
+ version: false,
115
+ body: {
116
+ type: 'object',
117
+ properties: {
118
+ id: {
119
+ type: 'string',
120
+ description: 'user id'
121
+ }
122
+ }
123
+ },
124
+ response: {
125
+ 201: {
126
+ description: 'Successful response',
127
+ type: 'object',
128
+ properties: {
129
+ hello: { type: 'string' }
130
+ }
131
+ },
132
+ 200: {
133
+ description: 'Default response',
134
+ type: 'object',
135
+ properties: {
136
+ id: { type: 'string' },
137
+ demo: { type: 'boolean' },
138
+ date: { type: 'string' },
139
+ body: {
140
+ type: 'object',
141
+ properties: {
142
+ id: { type: 'string' },
143
+ role: { type: 'string' }
144
+ }
145
+ }
93
146
  }
94
147
  }
95
148
  }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../lib/api/user/routes.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -54,6 +54,7 @@ const fastify_2 = __importStar(require("@as-integrations/fastify"));
54
54
  const context_1 = require("./apollo/context");
55
55
  const resolvers_1 = __importDefault(require("./apollo/resolvers"));
56
56
  const type_defs_1 = __importDefault(require("./apollo/type-defs"));
57
+ const common_1 = require("./util/common");
57
58
  function attachApollo(fastify) {
58
59
  return __awaiter(this, void 0, void 0, function* () {
59
60
  log.info('Attach ApolloServer to Fastify');
@@ -79,39 +80,24 @@ function addApolloRouting(fastify, apollo) {
79
80
  function addFastifyRouting(fastify) {
80
81
  return __awaiter(this, void 0, void 0, function* () {
81
82
  log.trace('Add fastify routes');
82
- fastify.addHook('onSend', (req, reply) => __awaiter(this, void 0, void 0, function* () {
83
- log.debug('onSend');
84
- }));
85
83
  fastify.addHook('onResponse', (req, reply) => __awaiter(this, void 0, void 0, function* () {
86
- log.debug('onResponse');
87
- }));
88
- fastify.addHook('onTimeout', (req, reply) => __awaiter(this, void 0, void 0, function* () {
89
- log.debug('onTimeout');
90
- }));
91
- fastify.addHook('onReady', () => __awaiter(this, void 0, void 0, function* () {
92
- log.debug('onReady');
93
- }));
94
- fastify.addHook('onClose', (instance) => __awaiter(this, void 0, void 0, function* () {
95
- log.debug('onClose');
84
+ var _a;
85
+ const elapsed = new Date().getTime() - (((_a = req.start) === null || _a === void 0 ? void 0 : _a.getTime()) || 0);
86
+ const message = `Return ${reply.statusCode} - ${req.method} ${req.url} (${elapsed}ms)`;
87
+ reply.statusCode < 300 ? log.info(message) : reply.statusCode < 400 ? log.warn(message) : log.error(message);
96
88
  }));
97
89
  fastify.addHook('onError', (req, reply, error) => __awaiter(this, void 0, void 0, function* () {
98
90
  log.debug(`onError ${error}`);
99
91
  }));
100
92
  fastify.addHook('onRequest', (req, reply) => __awaiter(this, void 0, void 0, function* () {
101
- log.debug(`onRequest ${req.method} ${req.url}`);
93
+ req.start = new Date();
102
94
  req.user = {
103
95
  id: 306,
104
96
  name: 'Huseyin',
105
97
  roles: ['admin', 'public']
106
98
  };
107
- }));
108
- fastify.addHook('preParsing', (req) => __awaiter(this, void 0, void 0, function* () {
109
- log.debug(`preParsing ${req.method} ${req.url}`);
110
- req.user = {
111
- id: 42,
112
- name: 'Jane Doe',
113
- roles: ['admin', 'public']
114
- };
99
+ req.data = () => (0, common_1.getData)(req);
100
+ req.pars = () => (0, common_1.getParams)(req);
115
101
  }));
116
102
  const routes = loaderRouter.load();
117
103
  routes && loaderRouter.apply(fastify, routes);
@@ -119,7 +105,7 @@ function addFastifyRouting(fastify) {
119
105
  }
120
106
  function addFastifySwagger(fastify) {
121
107
  return __awaiter(this, void 0, void 0, function* () {
122
- const { NODE_ENV, SWAGGER, SWAGGER_TITLE, SWAGGER_DESCRIPTION, SWAGGER_VERSION } = process.env;
108
+ const { NODE_ENV, SWAGGER, SWAGGER_TITLE, SWAGGER_DESCRIPTION, SWAGGER_VERSION, SWAGGER_PREFIX_URL } = process.env;
123
109
  const loadSwagger = (0, yn_1.default)(SWAGGER, false);
124
110
  if (loadSwagger && NODE_ENV !== 'production') {
125
111
  log.trace('Add swagger plugin');
@@ -135,7 +121,7 @@ function addFastifySwagger(fastify) {
135
121
  }
136
122
  });
137
123
  yield fastify.register(swagger_ui_1.default, {
138
- routePrefix: '/documentation',
124
+ routePrefix: SWAGGER_PREFIX_URL || '/documentation',
139
125
  uiConfig: {
140
126
  docExpansion: 'list',
141
127
  deepLinking: true,
@@ -152,51 +138,6 @@ function addFastifySwagger(fastify) {
152
138
  staticCSP: true,
153
139
  transformStaticCSP: (header) => header
154
140
  });
155
- yield fastify.put('/some-route/:id', {
156
- schema: {
157
- description: 'post some data',
158
- tags: ['user', 'code'],
159
- deprecated: true,
160
- summary: 'qwerty',
161
- params: {
162
- type: 'object',
163
- properties: {
164
- id: {
165
- type: 'string',
166
- description: 'user id'
167
- }
168
- }
169
- },
170
- body: {
171
- type: 'object',
172
- properties: {
173
- hello: { type: 'string' },
174
- obj: {
175
- type: 'object',
176
- properties: {
177
- some: { type: 'string' }
178
- }
179
- }
180
- }
181
- },
182
- response: {
183
- 201: {
184
- description: 'Successful response',
185
- type: 'object',
186
- properties: {
187
- hello: { type: 'string' }
188
- }
189
- },
190
- default: {
191
- description: 'Default response',
192
- type: 'object',
193
- properties: {
194
- foo: { type: 'string' }
195
- }
196
- }
197
- }
198
- }
199
- }, (req, reply) => { });
200
141
  }
201
142
  });
202
143
  }
@@ -236,6 +177,8 @@ const start = () => __awaiter(void 0, void 0, void 0, function* () {
236
177
  const elapsed = (new Date().getTime() - begin) / 100;
237
178
  log.info(`All stuff loaded in ${elapsed} sec`);
238
179
  log.info(`🚀 Server ready at ${address}`);
180
+ const loadSwagger = (0, yn_1.default)(process.env.SWAGGER, false);
181
+ loadSwagger && log.info(`📄 Swagger ready at ${address}${process.env.SWAGGER_PREFIX_URL || '/documentation'}`);
239
182
  });
240
183
  return fastify;
241
184
  });
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../lib/index.ts"],"names":[],"mappings":"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"}
@@ -31,11 +31,10 @@ function load() {
31
31
  if (defaultConfig.controller == null)
32
32
  defaultConfig.controller = 'controller';
33
33
  log.i && log.info(`Routes loaded: ${file} with ${routes.length} routes defined`);
34
- log.d && log.debug(`Valid routes loaded from ${file}`);
35
34
  routes.forEach((route, index) => {
36
35
  const errors = [];
37
36
  const { method: methodCase, path: pathName = '/', handler, config, middlewares = [], roles = [] } = route;
38
- const { title = '', description = '', enable = defaultConfig.enable || true, deprecated = defaultConfig.deprecated || false, version = defaultConfig.version || '', params, body, response } = config || {};
37
+ const { title = '', description = '', enable = defaultConfig.enable || true, deprecated = defaultConfig.deprecated || false, tags = defaultConfig.tags || false, version = defaultConfig.version || '', query, params, body, response } = config || {};
39
38
  const endpoint = `${dir}${pathName.replace(/\/+$/, '')}`;
40
39
  const method = methodCase.toUpperCase();
41
40
  const num = index + 1;
@@ -77,7 +76,9 @@ function load() {
77
76
  summary: title,
78
77
  description,
79
78
  deprecated,
79
+ tags,
80
80
  version,
81
+ querystring: query,
81
82
  params,
82
83
  body,
83
84
  response
@@ -1 +1 @@
1
- {"version":3,"file":"router.js","sourceRoot":"","sources":["../../lib/loader/router.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"router.js","sourceRoot":"","sources":["../../lib/loader/router.ts"],"names":[],"mappings":";;;;;;;;;;;;AAGA,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,CAAC,CAAA;AAC5B,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,SAAS,CAAC,CAAA;AAE5E,SAAgB,IAAI;IAClB,MAAM,WAAW,GAAsB,EAAE,CAAA;IACzC,MAAM,QAAQ,GAAG,CAAC,GAAG,SAAS,2BAA2B,EAAE,GAAG,OAAO,CAAC,GAAG,EAAE,4BAA4B,CAAC,CAAA;IAExG,QAAQ,CAAC,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE;QAC3B,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,GAAG,OAAO,CAAC,CAAA;QAC5C,IAAI,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,OAAO,CAAC,CAAC,CAAS,EAAE,KAAa,EAAE,MAAgB,EAAE,EAAE;YACxE,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,CAAA;YAC5B,MAAM,GAAG,GAAG,IAAI,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAA;YAC/B,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,IAAI,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAA;YAG7C,MAAM,QAAQ,GAAG,OAAO,CAAC,CAAC,CAAC,CAAA;YAC3B,MAAM,EAAE,MAAM,GAAG,EAAE,EAAE,MAAM,EAAE,aAAa,GAAG,EAAE,EAAE,GAAG,QAAQ,IAAI,EAAE,CAAA;YAGlE,IAAI,CAAC,aAAa,CAAC,MAAM;gBAAE,aAAa,CAAC,MAAM,GAAG,IAAI,CAAA;YACtD,IAAI,aAAa,CAAC,UAAU,IAAI,IAAI;gBAAE,aAAa,CAAC,UAAU,GAAG,KAAK,CAAA;YACtE,IAAI,aAAa,CAAC,UAAU,IAAI,IAAI;gBAAE,aAAa,CAAC,UAAU,GAAG,YAAY,CAAA;YAE7E,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,kBAAkB,IAAI,SAAS,MAAM,CAAC,MAAM,iBAAiB,CAAC,CAAA;YAEhF,MAAM,CAAC,OAAO,CAAC,CAAC,KAAY,EAAE,KAAa,EAAE,EAAE;gBAC7C,MAAM,MAAM,GAAa,EAAE,CAAA;gBAC3B,MAAM,EAAE,MAAM,EAAE,UAAU,EAAE,IAAI,EAAE,QAAQ,GAAG,GAAG,EAAE,OAAO,EAAE,MAAM,EAAE,WAAW,GAAG,EAAE,EAAE,KAAK,GAAG,EAAE,EAAE,GAAG,KAAK,CAAA;gBAGzG,MAAM,EACJ,KAAK,GAAG,EAAE,EACV,WAAW,GAAG,EAAE,EAChB,MAAM,GAAG,aAAa,CAAC,MAAM,IAAI,IAAI,EACrC,UAAU,GAAG,aAAa,CAAC,UAAU,IAAI,KAAK,EAC9C,IAAI,GAAG,aAAa,CAAC,IAAI,IAAI,KAAK,EAClC,OAAO,GAAG,aAAa,CAAC,OAAO,IAAI,EAAE,EACrC,KAAK,EACL,MAAM,EACN,IAAI,EACJ,QAAQ,EACT,GAAG,MAAM,IAAI,EAAE,CAAA;gBAGhB,MAAM,QAAQ,GAAG,GAAG,GAAG,GAAG,QAAQ,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,EAAE,CAAA;gBACxD,MAAM,MAAM,GAAG,UAAU,CAAC,WAAW,EAAE,CAAA;gBACvC,MAAM,GAAG,GAAG,KAAK,GAAG,CAAC,CAAA;gBACrB,MAAM,YAAY,GAAG,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAA;gBAEvC,IAAI,MAAM,EAAE;oBACV,IAAI,CAAC,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE;wBAC7B,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,eAAe,QAAQ,iBAAiB,GAAG,EAAE,CAAC,CAAA;qBAC5E;oBAED,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,MAAM,CAAC,EAAE;wBAC7B,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,iBAAiB,MAAM,iBAAiB,GAAG,EAAE,CAAC,CAAA;qBAC5E;oBAED,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;wBAC7B,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,kBAAkB,OAAO,iBAAiB,GAAG,EAAE,CAAC,CAAA;qBAC9E;oBAED,MAAM,GAAG,GAAG,MAAM,GAAG,QAAQ,GAAG,OAAO,CAAA;oBACvC,IAAI,WAAW,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,WAAC,OAAA,GAAG,CAAC,CAAC,MAAM,GAAG,CAAC,CAAC,IAAI,GAAG,MAAA,CAAC,CAAC,GAAG,0CAAE,OAAO,EAAE,KAAK,GAAG,CAAA,EAAA,CAAC,EAAE;wBAC5E,MAAM,CAAC,IAAI,CAAC,aAAa,IAAI,sBAAsB,QAAQ,iBAAiB,GAAG,EAAE,CAAC,CAAA;qBACnF;oBAED,IAAI,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;wBACrB,GAAG,CAAC,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAA;qBACrD;iBACF;gBAED,IAAI,MAAM,CAAC,MAAM,IAAI,CAAC,EAAE;oBACtB,MAAM;wBACJ,CAAC,CAAC,GAAG,CAAC,CAAC;4BACL,GAAG,CAAC,KAAK,CACP,aAAa,MAAM,UAAU,QAAQ,YAAY,OAAO,iBACtD,CAAA,WAAW,aAAX,WAAW,uBAAX,WAAW,CAAE,MAAM,KAAI,CACzB,cAAc,CACf;wBACH,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,aAAa,MAAM,UAAU,QAAQ,YAAY,OAAO,kBAAkB,CAAC,CAAA;oBAEjG,WAAW,CAAC,IAAI,CAAC;wBACf,OAAO;wBACP,MAAM;wBACN,IAAI,EAAE,GAAG,GAAG,QAAQ;wBACpB,WAAW;wBACX,KAAK;wBACL,MAAM;wBACN,IAAI;wBACJ,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,aAAa,CAAC,UAAU,EAAE,YAAY,CAAC,CAAC,CAAC,CAAC;wBAChE,IAAI,EAAE,YAAY,CAAC,CAAC,CAAC;wBAErB,GAAG,EAAE;4BACH,OAAO,EAAE,KAAK;4BACd,WAAW;4BACX,UAAU;4BACV,IAAI;4BACJ,OAAO;4BACP,WAAW,EAAE,KAAK;4BAClB,MAAM;4BACN,IAAI;4BACJ,QAAQ;yBACT;qBACF,CAAC,CAAA;iBACH;YACH,CAAC,CAAC,CAAA;QACJ,CAAC,CAAC,CAAA;IACJ,CAAC,CAAC,CAAA;IAEF,OAAO,WAAW,CAAA;AACpB,CAAC;AA5GD,oBA4GC;AAED,SAAS,uBAAuB,CAAC,IAAY,EAAE,aAAqB,EAAE;IACpE,MAAM,GAAG,GAAG,SAAS,CAAA;IACrB,MAAM,GAAG,GAAG,UAAU,CAAC,OAAO,CAAC,GAAG,CAAC,CAAA;IACnC,OAAO,GAAG,IAAI,CAAC;QACb,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,SAAS,GAAG,iBAAiB,GAAG,UAAU,CAAC,SAAS,CAAC,GAAG,CAAC,MAAM,CAAC,CAAC;QAChF,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,GAAG,cAAc,GAAG,UAAU,CAAC,CAAA;AACtD,CAAC;AAED,SAAgB,KAAK,CAAC,MAAW,EAAE,MAAyB;IAC1D,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,SAAS,MAAM,CAAC,MAAM,8BAA8B,OAAO,CAAC,GAAG,EAAE,CAAC,CAAA;IAErF,MAAM,CAAC,OAAO,CAAC,CAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,GAAG,EAAE,EAAE,EAAE;QACpG,IAAI,MAAM,EAAE;YACV,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,cAAc,MAAM,IAAI,IAAI,cAAc,OAAO,EAAE,CAAC,CAAA;YAEvE,MAAM,cAAc,GAAG,CAAC,WAAW,IAAI,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,OAAO,CAAC,uBAAuB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC,CAAA;YAEhG,MAAM,CAAC,KAAK,CAAC;gBACX,MAAM,EAAE,MAAM;gBACd,IAAI,EAAE,IAAI;gBACV,MAAM,EAAE,GAAG;gBACX,UAAU,EAAE,cAAc;gBAC1B,OAAO,EAAE,CAAC,GAAmB,EAAE,KAAmB,EAAE,EAAE;;oBACpD,IAAI;wBACF,IAAI,CAAA,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,MAAM,IAAG,CAAC,EAAE;4BACrB,MAAM,SAAS,GAAG,CAAA,MAAA,GAAG,CAAC,IAAI,0CAAE,KAAK,KAAI,EAAE,CAAA;4BACvC,MAAM,YAAY,GAAG,KAAK,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,CAAA;4BAEpE,IAAI,CAAC,YAAY,IAAI,YAAY,CAAC,MAAM,KAAK,CAAC,EAAE;gCAC9C,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,IAAI,CAAC,uBAAuB,MAAM,CAAC,WAAW,EAAE,IAAI,IAAI,EAAE,CAAC,CAAA;gCACxE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,CAAA;6BAC9B;yBACF;wBAED,OAAO,OAAO,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,CAAA;qBACvC;oBAAC,OAAO,GAAG,EAAE;wBACZ,GAAG,CAAC,CAAC,IAAI,GAAG,CAAC,KAAK,CAAC,eAAe,IAAI,iBAAiB,IAAI,KAAK,GAAG,EAAE,CAAC,CAAA;wBACtE,OAAO,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,IAAI,CAAC,mBAAmB,OAAO,EAAE,CAAC,CAAA;qBAC1D;gBACH,CAAC;aACF,CAAC,CAAA;SACH;IACH,CAAC,CAAA,CAAC,CAAA;AACJ,CAAC;AAnCD,sBAmCC"}
package/dist/server.js CHANGED
@@ -1,5 +1,3 @@
1
1
  'use strict';
2
- const server = require('./index');
3
- server();
4
- console.log('As soon as possible');
2
+ require('./index')();
5
3
  //# sourceMappingURL=server.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"server.js","sourceRoot":"","sources":["../lib/server.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,MAAM,MAAM,GAAG,OAAO,CAAC,SAAS,CAAC,CAAA;AACjC,MAAM,EAAE,CAAA;AAGR,OAAO,CAAC,GAAG,CAAC,qBAAqB,CAAC,CAAA"}
1
+ {"version":3,"file":"server.js","sourceRoot":"","sources":["../lib/server.ts"],"names":[],"mappings":"AAAA,YAAY,CAAA;AAEZ,OAAO,CAAC,SAAS,CAAC,EAAE,CAAA"}
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.getParams = exports.getData = void 0;
4
+ function getData(req) {
5
+ if (!req)
6
+ return {};
7
+ const hasValues = (obj) => Object.values(obj || {}).some((v) => v !== null && typeof v !== 'undefined');
8
+ const data = hasValues(req.query) ? req.query : hasValues(req.body) ? req.body : null;
9
+ return !data ? {} : Object.assign({}, data);
10
+ }
11
+ exports.getData = getData;
12
+ function getParams(req) {
13
+ if (!req)
14
+ return {};
15
+ const data = req.params || {};
16
+ return !data ? {} : Object.assign({}, data);
17
+ }
18
+ exports.getParams = getParams;
19
+ //# sourceMappingURL=common.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"common.js","sourceRoot":"","sources":["../../lib/util/common.ts"],"names":[],"mappings":";;;AAGA,SAAgB,OAAO,CAAC,GAAmB;IACzC,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IAEnB,MAAM,SAAS,GAAG,CAAC,GAAG,EAAE,EAAE,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,KAAK,IAAI,IAAI,OAAO,CAAC,KAAK,WAAW,CAAC,CAAA;IACvG,MAAM,IAAI,GAAQ,SAAS,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,SAAS,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,IAAI,CAAA;IAC1F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,EAAW,CAAC,CAAC,mBAAM,IAAI,CAAE,CAAA;AAC3C,CAAC;AAND,0BAMC;AAED,SAAgB,SAAS,CAAC,GAAmB;IAC3C,IAAI,CAAC,GAAG;QAAE,OAAO,EAAE,CAAA;IACnB,MAAM,IAAI,GAAQ,GAAG,CAAC,MAAM,IAAI,EAAE,CAAA;IAClC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAE,EAAW,CAAC,CAAC,mBAAM,IAAI,CAAE,CAAA;AAC3C,CAAC;AAJD,8BAIC"}
package/index.d.ts CHANGED
@@ -4,8 +4,11 @@ export {
4
4
  FastifyRequest,
5
5
  AuthenticatedUser,
6
6
  Role,
7
+ Data,
7
8
  Roles,
8
9
  Route,
9
10
  RouteConfig,
10
11
  ConfiguredRoute
11
12
  } from './types/global'
13
+
14
+ export { getData } from './lib/util/common'
@@ -9,5 +9,14 @@ export async function isAdmin(req: FastifyRequest, reply: FastifyReply) {
9
9
  }
10
10
 
11
11
  export async function demo(req: FastifyRequest, reply: FastifyReply) {
12
- reply.send({ demo: true })
12
+ const data = req.data() // query or body
13
+
14
+ log.debug('data ' + data.id + ' ' + data.role)
15
+
16
+ reply.send({
17
+ id: data.id || 'notfound',
18
+ demo: true,
19
+ date: new Date(),
20
+ body: data
21
+ })
13
22
  }
@@ -1,9 +1,9 @@
1
1
  module.exports = {
2
2
  config: {
3
- title: 'Useful functions',
4
- description: 'Useful functions',
3
+ title: 'User useful functions',
4
+ description: 'User useful functions',
5
5
  controller: 'controller',
6
- tags: ['user', 'code'], // swagger
6
+ tags: ['user'], // swagger
7
7
  enable: true,
8
8
  deprecated: false, // swagger
9
9
  version: false // swagger
@@ -13,13 +13,13 @@ module.exports = {
13
13
  method: 'GET',
14
14
  path: '/',
15
15
  roles: [],
16
- handler: 'me.user',
16
+ handler: 'user.user',
17
17
  middlewares: ['global.isAuthenticated'],
18
18
  config: {
19
19
  enable: true,
20
- title: 'Me title', // swagger summary
21
- description: 'Me description', // swagger
22
- tags: ['user', 'code'], // swagger
20
+ title: 'Get current user', // swagger summary
21
+ description: 'Get current user', // swagger
22
+ tags: ['user'], // swagger
23
23
  deprecated: false, // swagger
24
24
  version: false, // swagger
25
25
  response: {
@@ -44,11 +44,11 @@ module.exports = {
44
44
  method: 'GET',
45
45
  path: '/is-admin',
46
46
  roles: [],
47
- handler: 'me.isAdmin',
47
+ handler: 'user.isAdmin',
48
48
  middlewares: ['global.isAuthenticated'],
49
49
  config: {
50
- title: 'Admin',
51
- description: 'Admin',
50
+ title: 'Check if is an admin',
51
+ description: 'Check if the current user is an admin',
52
52
  enable: true,
53
53
  deprecated: false,
54
54
  version: false
@@ -58,10 +58,10 @@ module.exports = {
58
58
  method: 'GET',
59
59
  path: '/demo',
60
60
  roles: [],
61
- handler: 'me.demo',
61
+ handler: 'user.demo',
62
62
  middlewares: ['global.isAdmin'],
63
63
  config: {
64
- enable: true,
64
+ enable: false,
65
65
  title: 'Me title', // swagger summary
66
66
  description: 'Me description', // swagger
67
67
  tags: ['user', 'code'], // swagger
@@ -88,7 +88,60 @@ module.exports = {
88
88
  description: 'Default response',
89
89
  type: 'object',
90
90
  properties: {
91
- foo: { type: 'string' }
91
+ id: { type: 'string' },
92
+ demo: { type: 'boolean' },
93
+ date: { type: 'string' },
94
+ query: { type: 'object' },
95
+ body: { type: 'object' }
96
+ }
97
+ }
98
+ } // swagger
99
+ }
100
+ },
101
+ {
102
+ method: 'POST',
103
+ path: '/demo',
104
+ roles: [],
105
+ handler: 'user.demo',
106
+ middlewares: ['global.isAdmin'],
107
+ config: {
108
+ enable: false,
109
+ title: 'Me title', // swagger summary
110
+ description: 'Me description', // swagger
111
+ tags: ['user', 'code'], // swagger
112
+ deprecated: false, // swagger
113
+ version: false, // swagger
114
+ body: {
115
+ type: 'object',
116
+ properties: {
117
+ id: {
118
+ type: 'string',
119
+ description: 'user id'
120
+ }
121
+ }
122
+ }, // swagger
123
+ response: {
124
+ 201: {
125
+ description: 'Successful response',
126
+ type: 'object',
127
+ properties: {
128
+ hello: { type: 'string' }
129
+ }
130
+ },
131
+ 200: {
132
+ description: 'Default response',
133
+ type: 'object',
134
+ properties: {
135
+ id: { type: 'string' },
136
+ demo: { type: 'boolean' },
137
+ date: { type: 'string' },
138
+ body: {
139
+ type: 'object',
140
+ properties: {
141
+ id: { type: 'string' },
142
+ role: { type: 'string' }
143
+ }
144
+ }
92
145
  }
93
146
  }
94
147
  } // swagger
package/lib/index.ts CHANGED
@@ -23,6 +23,8 @@ import fastifyApollo, { fastifyApolloHandler, fastifyApolloDrainPlugin } from '@
23
23
  import { myContextFunction, MyContext } from './apollo/context'
24
24
  import resolvers from './apollo/resolvers'
25
25
  import typeDefs from './apollo/type-defs'
26
+ import { getParams, getData } from './util/common'
27
+ // import { FastifyRequest } from './../types/global'
26
28
 
27
29
  async function attachApollo(fastify: FastifyInstance) {
28
30
  log.info('Attach ApolloServer to Fastify')
@@ -57,56 +59,62 @@ async function addApolloRouting(fastify: FastifyInstance, apollo: ApolloServer<M
57
59
  async function addFastifyRouting(fastify: FastifyInstance) {
58
60
  log.trace('Add fastify routes')
59
61
 
60
- fastify.addHook('onSend', async (req, reply) => {
61
- log.debug('onSend')
62
- })
62
+ // fastify.addHook('onSend', async (req, reply) => {
63
+ // log.debug('onSend')
64
+ // })
63
65
 
64
66
  fastify.addHook('onResponse', async (req, reply) => {
65
- log.debug('onResponse')
67
+ const elapsed: number = new Date().getTime() - (req.start?.getTime() || 0)
68
+ const message: string = `Return ${reply.statusCode} - ${req.method} ${req.url} (${elapsed}ms)`
69
+ reply.statusCode < 300 ? log.info(message) : reply.statusCode < 400 ? log.warn(message) : log.error(message)
70
+ // log.debug(req)
71
+ // log.debug('onResponse')
66
72
  })
67
73
 
68
- fastify.addHook('onTimeout', async (req, reply) => {
69
- log.debug('onTimeout')
70
- })
74
+ // fastify.addHook('onTimeout', async (req, reply) => {
75
+ // log.debug('onTimeout')
76
+ // })
71
77
 
72
- fastify.addHook('onReady', async () => {
73
- log.debug('onReady')
74
- })
78
+ // fastify.addHook('onReady', async () => {
79
+ // log.debug('onReady')
80
+ // })
75
81
 
76
- fastify.addHook('onClose', async (instance) => {
77
- log.debug('onClose')
78
- })
82
+ // fastify.addHook('onClose', async (instance) => {
83
+ // log.debug('onClose')
84
+ // })
79
85
 
80
86
  fastify.addHook('onError', async (req, reply, error) => {
81
87
  log.debug(`onError ${error}`)
82
88
  })
83
89
 
84
90
  fastify.addHook('onRequest', async (req, reply) => {
85
- log.debug(`onRequest ${req.method} ${req.url}`)
91
+ req.start = new Date()
86
92
  req.user = {
87
93
  id: 306,
88
94
  name: 'Huseyin',
89
95
  roles: ['admin', 'public']
90
96
  }
97
+ req.data = () => getData(req)
98
+ req.pars = () => getParams(req)
91
99
  })
92
100
 
93
- fastify.addHook('preParsing', async (req) => {
94
- log.debug(`preParsing ${req.method} ${req.url}`)
95
- req.user = {
96
- id: 42,
97
- name: 'Jane Doe',
98
- roles: ['admin', 'public']
99
- }
100
- })
101
+ // fastify.addHook('preParsing', async (req) => {
102
+ // log.debug(`preParsing ${req.method} ${req.url}`)
103
+ // req.user = {
104
+ // id: 42,
105
+ // name: 'Jane Doe',
106
+ // roles: ['admin', 'public']
107
+ // }
108
+ // })
101
109
 
102
110
  const routes = loaderRouter.load()
103
111
  routes && loaderRouter.apply(fastify, routes)
104
112
  }
105
113
 
106
114
  async function addFastifySwagger(fastify: FastifyInstance) {
107
- const { NODE_ENV, SWAGGER, SWAGGER_TITLE, SWAGGER_DESCRIPTION, SWAGGER_VERSION } = process.env
108
- const loadSwagger = yn(SWAGGER, false)
115
+ const { NODE_ENV, SWAGGER, SWAGGER_TITLE, SWAGGER_DESCRIPTION, SWAGGER_VERSION, SWAGGER_PREFIX_URL } = process.env
109
116
 
117
+ const loadSwagger = yn(SWAGGER, false)
110
118
  if (loadSwagger && NODE_ENV !== 'production') {
111
119
  log.trace('Add swagger plugin')
112
120
 
@@ -123,7 +131,7 @@ async function addFastifySwagger(fastify: FastifyInstance) {
123
131
  })
124
132
 
125
133
  await fastify.register(swaggerUI, {
126
- routePrefix: '/documentation',
134
+ routePrefix: SWAGGER_PREFIX_URL || '/documentation',
127
135
  uiConfig: {
128
136
  docExpansion: 'list',
129
137
  deepLinking: true,
@@ -141,55 +149,55 @@ async function addFastifySwagger(fastify: FastifyInstance) {
141
149
  transformStaticCSP: (header) => header
142
150
  })
143
151
 
144
- await fastify.put(
145
- '/some-route/:id',
146
- {
147
- schema: {
148
- description: 'post some data',
149
- tags: ['user', 'code'],
150
- deprecated: true,
151
- summary: 'qwerty',
152
- params: {
153
- type: 'object',
154
- properties: {
155
- id: {
156
- type: 'string',
157
- description: 'user id'
158
- }
159
- }
160
- },
161
- body: {
162
- type: 'object',
163
- properties: {
164
- hello: { type: 'string' },
165
- obj: {
166
- type: 'object',
167
- properties: {
168
- some: { type: 'string' }
169
- }
170
- }
171
- }
172
- },
173
- response: {
174
- 201: {
175
- description: 'Successful response',
176
- type: 'object',
177
- properties: {
178
- hello: { type: 'string' }
179
- }
180
- },
181
- default: {
182
- description: 'Default response',
183
- type: 'object',
184
- properties: {
185
- foo: { type: 'string' }
186
- }
187
- }
188
- }
189
- }
190
- },
191
- (req, reply) => {}
192
- )
152
+ // await fastify.put(
153
+ // '/some-route/:id',
154
+ // {
155
+ // schema: {
156
+ // description: 'post some data',
157
+ // tags: ['user', 'code'],
158
+ // deprecated: true,
159
+ // summary: 'qwerty',
160
+ // params: {
161
+ // type: 'object',
162
+ // properties: {
163
+ // id: {
164
+ // type: 'string',
165
+ // description: 'user id'
166
+ // }
167
+ // }
168
+ // },
169
+ // body: {
170
+ // type: 'object',
171
+ // properties: {
172
+ // hello: { type: 'string' },
173
+ // obj: {
174
+ // type: 'object',
175
+ // properties: {
176
+ // some: { type: 'string' }
177
+ // }
178
+ // }
179
+ // }
180
+ // },
181
+ // response: {
182
+ // 201: {
183
+ // description: 'Successful response',
184
+ // type: 'object',
185
+ // properties: {
186
+ // hello: { type: 'string' }
187
+ // }
188
+ // },
189
+ // default: {
190
+ // description: 'Default response',
191
+ // type: 'object',
192
+ // properties: {
193
+ // foo: { type: 'string' }
194
+ // }
195
+ // }
196
+ // }
197
+ // }
198
+ // },
199
+ // (req, reply) => {}
200
+ // )
193
201
  }
194
202
  }
195
203
 
@@ -240,6 +248,9 @@ const start = async () => {
240
248
  const elapsed = (new Date().getTime() - begin) / 100
241
249
  log.info(`All stuff loaded in ${elapsed} sec`)
242
250
  log.info(`🚀 Server ready at ${address}`)
251
+
252
+ const loadSwagger = yn(process.env.SWAGGER, false)
253
+ loadSwagger && log.info(`📄 Swagger ready at ${address}${process.env.SWAGGER_PREFIX_URL || '/documentation'}`)
243
254
  })
244
255
 
245
256
  return fastify
@@ -26,7 +26,6 @@ export function load(): ConfiguredRoute[] {
26
26
  if (defaultConfig.controller == null) defaultConfig.controller = 'controller'
27
27
 
28
28
  log.i && log.info(`Routes loaded: ${file} with ${routes.length} routes defined`)
29
- log.d && log.debug(`Valid routes loaded from ${file}`)
30
29
 
31
30
  routes.forEach((route: Route, index: number) => {
32
31
  const errors: string[] = []
@@ -38,7 +37,9 @@ export function load(): ConfiguredRoute[] {
38
37
  description = '',
39
38
  enable = defaultConfig.enable || true,
40
39
  deprecated = defaultConfig.deprecated || false,
40
+ tags = defaultConfig.tags || false,
41
41
  version = defaultConfig.version || '',
42
+ query,
42
43
  params,
43
44
  body,
44
45
  response
@@ -98,7 +99,9 @@ export function load(): ConfiguredRoute[] {
98
99
  summary: title,
99
100
  description,
100
101
  deprecated,
102
+ tags,
101
103
  version,
104
+ querystring: query,
102
105
  params,
103
106
  body,
104
107
  response
package/lib/server.ts CHANGED
@@ -1,7 +1,3 @@
1
1
  'use strict'
2
2
 
3
- const server = require('./index')
4
- server()
5
-
6
- // as soon as possible
7
- console.log('As soon as possible')
3
+ require('./index')()
@@ -0,0 +1,16 @@
1
+ import { FastifyRequest } from 'fastify'
2
+ import { Data } from '../../types/global'
3
+
4
+ export function getData(req: FastifyRequest): Data {
5
+ if (!req) return {}
6
+
7
+ const hasValues = (obj) => Object.values(obj || {}).some((v) => v !== null && typeof v !== 'undefined')
8
+ const data: any = hasValues(req.query) ? req.query : hasValues(req.body) ? req.body : null
9
+ return !data ? ({} as Data) : { ...data }
10
+ }
11
+
12
+ export function getParams(req: FastifyRequest): Data {
13
+ if (!req) return {}
14
+ const data: any = req.params || {}
15
+ return !data ? ({} as Data) : { ...data }
16
+ }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@volcanicminds/backend",
3
- "version": "0.1.8",
3
+ "version": "0.1.9",
4
4
  "codename": "turin",
5
5
  "license": "MIT",
6
6
  "description": "The volcanic (minds) backend",
package/types/global.d.ts CHANGED
@@ -16,14 +16,20 @@ export interface Roles {
16
16
  [option: string]: Role
17
17
  }
18
18
 
19
+ export interface Data {
20
+ [option: string]: any
21
+ }
22
+
19
23
  export interface RouteConfig {
20
24
  title: string
21
25
  description: string
22
26
  enable: boolean
23
27
  deprecated: boolean
28
+ tags?: string[]
24
29
  version: string
25
- params?: any
26
- body?: any
30
+ params?: Data
31
+ query?: Data
32
+ body?: Data
27
33
  response?: any
28
34
  }
29
35
 
@@ -50,8 +56,10 @@ export interface ConfiguredRoute {
50
56
  summary?: string
51
57
  description?: string
52
58
  deprecated?: boolean
59
+ tags?: string[]
53
60
  version?: string
54
61
  params?: any
62
+ querystring?: any
55
63
  body?: any
56
64
  response?: any
57
65
  }
@@ -61,11 +69,17 @@ declare module 'fastify' {
61
69
  import { FastifyRequest } from 'fastify'
62
70
  export interface FastifyRequest {
63
71
  user?: AuthenticatedUser
72
+ start?: Date
73
+ data(): Data
74
+ pars(): Data
64
75
  }
65
76
  }
66
77
 
67
78
  export interface FastifyRequest extends FastifyRequest {
68
79
  user?: AuthenticatedUser
80
+ start?: Date
81
+ data(): Data
82
+ pars(): Data
69
83
  }
70
84
 
71
85
  export interface FastifyReply extends FastifyReply {}
@@ -1 +0,0 @@
1
- {"version":3,"file":"me.js","sourceRoot":"","sources":["../../../../lib/api/me/controller/me.ts"],"names":[],"mappings":";;;;;;;;;;;;AAEA,SAAsB,IAAI,CAAC,GAAmB,EAAE,KAAmB;;QACjE,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,IAAI,EAAE,CAAC,CAAA;IAC5B,CAAC;CAAA;AAFD,oBAEC;AAED,SAAsB,OAAO,CAAC,GAAmB,EAAE,KAAmB;;;QACpE,KAAK,CAAC,IAAI,CAAC,EAAE,OAAO,EAAE,CAAC,CAAA,MAAA,GAAG,CAAC,IAAI,0CAAE,KAAK,KAAI,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,KAAK,EAAE,CAAC,CAAA;;CAC5E;AAFD,0BAEC;AAED,SAAsB,IAAI,CAAC,GAAmB,EAAE,KAAmB;;QACjE,KAAK,CAAC,IAAI,CAAC,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IAC5B,CAAC;CAAA;AAFD,oBAEC"}
@@ -1 +0,0 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../lib/api/me/routes.ts"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,GAAG;IACf,MAAM,EAAE;QACN,KAAK,EAAE,kBAAkB;QACzB,WAAW,EAAE,kBAAkB;QAC/B,UAAU,EAAE,YAAY;QACxB,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;QACtB,MAAM,EAAE,IAAI;QACZ,UAAU,EAAE,KAAK;QACjB,OAAO,EAAE,KAAK;KACf;IACD,MAAM,EAAE;QACN;YACE,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,GAAG;YACT,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,CAAC,wBAAwB,CAAC;YACvC,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;gBACtB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,KAAK;gBACd,QAAQ,EAAE;oBACR,GAAG,EAAE;wBACH,WAAW,EAAE,qBAAqB;wBAClC,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC1B;qBACF;oBACD,GAAG,EAAE;wBACH,WAAW,EAAE,kBAAkB;wBAC/B,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,EAAE,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBACvB;qBACF;iBACF;aACF;SACF;QACD;YACE,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,WAAW;YACjB,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,YAAY;YACrB,WAAW,EAAE,CAAC,wBAAwB,CAAC;YACvC,MAAM,EAAE;gBACN,KAAK,EAAE,OAAO;gBACd,WAAW,EAAE,OAAO;gBACpB,MAAM,EAAE,IAAI;gBACZ,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,KAAK;aACf;SACF;QACD;YACE,MAAM,EAAE,KAAK;YACb,IAAI,EAAE,OAAO;YACb,KAAK,EAAE,EAAE;YACT,OAAO,EAAE,SAAS;YAClB,WAAW,EAAE,CAAC,gBAAgB,CAAC;YAC/B,MAAM,EAAE;gBACN,MAAM,EAAE,IAAI;gBACZ,KAAK,EAAE,UAAU;gBACjB,WAAW,EAAE,gBAAgB;gBAC7B,IAAI,EAAE,CAAC,MAAM,EAAE,MAAM,CAAC;gBACtB,UAAU,EAAE,KAAK;gBACjB,OAAO,EAAE,KAAK;gBACd,MAAM,EAAE;oBACN,IAAI,EAAE,QAAQ;oBACd,UAAU,EAAE;wBACV,EAAE,EAAE;4BACF,IAAI,EAAE,QAAQ;4BACd,WAAW,EAAE,SAAS;yBACvB;qBACF;iBACF;gBACD,QAAQ,EAAE;oBACR,GAAG,EAAE;wBACH,WAAW,EAAE,qBAAqB;wBAClC,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBAC1B;qBACF;oBACD,GAAG,EAAE;wBACH,WAAW,EAAE,kBAAkB;wBAC/B,IAAI,EAAE,QAAQ;wBACd,UAAU,EAAE;4BACV,GAAG,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;yBACxB;qBACF;iBACF;aACF;SACF;KACF;CACF,CAAA"}