@volcanicminds/backend 0.2.2 → 0.2.3

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
@@ -1,6 +1,7 @@
1
1
  [![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg)](https://opensource.org/licenses/MIT)
2
2
  [![opensource](https://img.shields.io/badge/open-source-blue)](https://en.wikipedia.org/wiki/Open_source)
3
3
  [![volcanic-backend](https://img.shields.io/badge/volcanic-minds-orange)](https://github.com/volcanicminds/volcanic-backend)
4
+ [![npm](https://img.shields.io/badge/package-npm-white)](https://www.npmjs.com/package/@volcanicminds/backend)
4
5
 
5
6
  # volcanic-backend
6
7
 
@@ -12,6 +13,18 @@ Based on [Apollo Server](https://www.apollographql.com) ([GitHub](https://github
12
13
 
13
14
  And, what you see in [package.json](package.json).
14
15
 
16
+ ## How to install
17
+
18
+ ```js
19
+ yarn add @volcanicminds/backend
20
+ ```
21
+
22
+ ## How to upgrade packages
23
+
24
+ ```js
25
+ yarn upgrade-deps
26
+ ```
27
+
15
28
  ## Environment (example)
16
29
 
17
30
  ```ruby
@@ -41,12 +54,6 @@ SRV_COMPRESS=false
41
54
 
42
55
  For docker may be useful set HOST as 0.0.0.0 (instead 127.0.0.1).
43
56
 
44
- ## How to upgrade packages
45
-
46
- ```js
47
- yarn upgrade-deps
48
- ```
49
-
50
57
  ## How to run
51
58
 
52
59
  ```js
@@ -130,7 +137,7 @@ In the .env file you can change swagger settings in this way:
130
137
  ```ruby
131
138
  SWAGGER=true
132
139
  SWAGGER_HOST=localhost
133
- SWAGGER_TITLE=API Documentation
140
+ SWAGGER_TITLE=Volcanic API Documentation
134
141
  SWAGGER_DESCRIPTION=List of available APIs and schemes to use
135
142
  SWAGGER_VERSION=0.1.0
136
143
  SWAGGER_PREFIX_URL=/documentation
@@ -8,12 +8,10 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.hook = void 0;
13
11
  function hook(req, reply) {
14
12
  return __awaiter(this, void 0, void 0, function* () {
15
13
  log.debug('aaaaaaaaaa');
16
14
  });
17
15
  }
18
- exports.hook = hook;
16
+ module.exports = { hook };
19
17
  //# sourceMappingURL=onRequest.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"onRequest.js","sourceRoot":"","sources":["../../../lib/hooks/onRequest.ts"],"names":[],"mappings":";;;;;;;;;;;;AAAA,SAAe,IAAI,CAAC,GAAG,EAAE,KAAK;;QAC5B,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IACzB,CAAC;CAAA;AAEQ,oBAAI"}
1
+ {"version":3,"file":"onRequest.js","sourceRoot":"","sources":["../../../lib/hooks/onRequest.ts"],"names":[],"mappings":";;;;;;;;;;AAAA,SAAe,IAAI,CAAC,GAAG,EAAE,KAAK;;QAC5B,GAAG,CAAC,KAAK,CAAC,YAAY,CAAC,CAAA;IACzB,CAAC;CAAA;AAED,MAAM,CAAC,OAAO,GAAG,EAAE,IAAI,EAAE,CAAA"}
@@ -2,4 +2,4 @@ async function hook(req, reply) {
2
2
  log.debug('aaaaaaaaaa')
3
3
  }
4
4
 
5
- export { hook }
5
+ module.exports = { hook }
package/package.json CHANGED
@@ -1,10 +1,33 @@
1
1
  {
2
2
  "name": "@volcanicminds/backend",
3
- "version": "0.2.2",
3
+ "version": "0.2.3",
4
4
  "codename": "turin",
5
5
  "license": "MIT",
6
6
  "description": "The volcanic (minds) backend",
7
- "keywords": [],
7
+ "keywords": [
8
+ "volcanic",
9
+ "open source",
10
+ "api",
11
+ "framework",
12
+ "backend",
13
+ "http",
14
+ "https",
15
+ "fastify",
16
+ "apollo",
17
+ "swagger",
18
+ "graphql",
19
+ "helmet",
20
+ "json",
21
+ "typescript",
22
+ "javascript",
23
+ "rest",
24
+ "restful",
25
+ "postgresql",
26
+ "graphql",
27
+ "pino",
28
+ "rate limit",
29
+ "jest"
30
+ ],
8
31
  "main": "dist/index",
9
32
  "typings": "dist/index",
10
33
  "engines": {
@@ -1,39 +0,0 @@
1
- "use strict";
2
- var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
3
- function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
4
- return new (P || (P = Promise))(function (resolve, reject) {
5
- function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
6
- function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
7
- function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
8
- step((generator = generator.apply(thisArg, _arguments || [])).next());
9
- });
10
- };
11
- Object.defineProperty(exports, "__esModule", { value: true });
12
- exports.demo = exports.isAdmin = exports.user = void 0;
13
- function user(req, reply) {
14
- return __awaiter(this, void 0, void 0, function* () {
15
- reply.send(req.user || {});
16
- });
17
- }
18
- exports.user = user;
19
- function isAdmin(req, reply) {
20
- var _a;
21
- return __awaiter(this, void 0, void 0, function* () {
22
- reply.send({ isAdmin: (((_a = req.user) === null || _a === void 0 ? void 0 : _a.roles) || []).includes('admin') || false });
23
- });
24
- }
25
- exports.isAdmin = isAdmin;
26
- function demo(req, reply) {
27
- return __awaiter(this, void 0, void 0, function* () {
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
- });
36
- });
37
- }
38
- exports.demo = demo;
39
- //# sourceMappingURL=user.js.map
@@ -1 +0,0 @@
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,150 +0,0 @@
1
- "use strict";
2
- module.exports = {
3
- config: {
4
- title: 'User useful functions',
5
- description: 'User useful functions',
6
- controller: 'controller',
7
- tags: ['users'],
8
- enable: true,
9
- deprecated: false,
10
- version: false
11
- },
12
- routes: [
13
- {
14
- method: 'GET',
15
- path: '/',
16
- roles: [],
17
- handler: 'user.user',
18
- middlewares: ['global.isAuthenticated'],
19
- config: {
20
- enable: true,
21
- title: 'Get current user',
22
- description: 'Get current user',
23
- deprecated: false,
24
- version: false,
25
- response: {
26
- 403: {
27
- description: 'Successful response',
28
- type: 'object',
29
- properties: {
30
- hello: { type: 'string' }
31
- }
32
- },
33
- 200: {
34
- description: 'Default response',
35
- type: 'object',
36
- properties: {
37
- id: { type: 'number' }
38
- }
39
- }
40
- }
41
- }
42
- },
43
- {
44
- method: 'GET',
45
- path: '/is-admin',
46
- roles: [],
47
- handler: 'user.isAdmin',
48
- middlewares: ['global.isAuthenticated'],
49
- config: {
50
- title: 'Check if is an admin',
51
- description: 'Check if the current user is an admin',
52
- enable: true,
53
- deprecated: false,
54
- version: false
55
- }
56
- },
57
- {
58
- method: 'GET',
59
- path: '/demo',
60
- roles: [],
61
- handler: 'user.demo',
62
- middlewares: ['global.isAdmin'],
63
- config: {
64
- enable: false,
65
- title: 'Me title',
66
- description: 'Me description',
67
- deprecated: false,
68
- version: false,
69
- params: {
70
- type: 'object',
71
- properties: {
72
- id: {
73
- type: 'string',
74
- description: 'user id'
75
- }
76
- }
77
- },
78
- response: {
79
- 201: {
80
- description: 'Successful response',
81
- type: 'object',
82
- properties: {
83
- hello: { type: 'string' }
84
- }
85
- },
86
- 200: {
87
- description: 'Default response',
88
- type: 'object',
89
- properties: {
90
- id: { type: 'string' },
91
- demo: { type: 'boolean' },
92
- date: { type: 'string' },
93
- query: { type: 'object' },
94
- body: { type: 'object' }
95
- }
96
- }
97
- }
98
- }
99
- },
100
- {
101
- method: 'POST',
102
- path: '/demo',
103
- roles: [],
104
- handler: 'user.demo',
105
- middlewares: ['global.isAdmin'],
106
- config: {
107
- enable: false,
108
- title: 'Me title',
109
- description: 'Me description',
110
- deprecated: false,
111
- version: false,
112
- body: {
113
- type: 'object',
114
- properties: {
115
- id: {
116
- type: 'string',
117
- description: 'user id'
118
- }
119
- }
120
- },
121
- response: {
122
- 201: {
123
- description: 'Successful response',
124
- type: 'object',
125
- properties: {
126
- hello: { type: 'string' }
127
- }
128
- },
129
- 200: {
130
- description: 'Default response',
131
- type: 'object',
132
- properties: {
133
- id: { type: 'string' },
134
- demo: { type: 'boolean' },
135
- date: { type: 'string' },
136
- body: {
137
- type: 'object',
138
- properties: {
139
- id: { type: 'string' },
140
- role: { type: 'string' }
141
- }
142
- }
143
- }
144
- }
145
- }
146
- }
147
- }
148
- ]
149
- };
150
- //# sourceMappingURL=routes.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"routes.js","sourceRoot":"","sources":["../../../../lib/api/user/routes.ts"],"names":[],"mappings":"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"}