nodefony 6.5.7 → 6.10.0

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 (62) hide show
  1. package/CHANGELOG.md +436 -0
  2. package/README.md +2 -5
  3. package/autoloader.es6 +7 -2
  4. package/cli/builder/bundles/users-bundle/Command/usersCommand.js +1 -1
  5. package/cli/builder/bundles/users-bundle/Entity/sequelize/userEntity.js +5 -1
  6. package/cli/builder/bundles/users-bundle/Resources/config/webpack/webpack.prod.config.js +3 -3
  7. package/cli/builder/bundles/users-bundle/Resources/config/webpack.config.js +4 -0
  8. package/cli/builder/bundles/users-bundle/Resources/graphiql/graphiql.jsx +40 -4
  9. package/cli/builder/bundles/users-bundle/Resources/scss/users.scss +9 -10
  10. package/cli/builder/bundles/users-bundle/Resources/swagger/swagger.js +3 -2
  11. package/cli/builder/bundles/users-bundle/Resources/translations/login.en_en.yml +3 -1
  12. package/cli/builder/bundles/users-bundle/Resources/translations/login.fr_fr.yml +2 -0
  13. package/cli/builder/bundles/users-bundle/Resources/views/documentation/base.html.twig +1 -2
  14. package/cli/builder/bundles/users-bundle/Resources/views/footer.html.twig +2 -4
  15. package/cli/builder/bundles/users-bundle/Resources/views/graphiql/index.html.twig +4 -9
  16. package/cli/builder/bundles/users-bundle/Resources/views/header.html.twig +63 -66
  17. package/cli/builder/bundles/users-bundle/Resources/views/swagger/index.html.twig +4 -12
  18. package/cli/builder/bundles/users-bundle/controller/api/graphql/graphqlController.js +2 -0
  19. package/cli/builder/bundles/users-bundle/controller/usersController.js +1 -1
  20. package/cli/builder/bundles/users-bundle/package.json +29 -29
  21. package/cli/builder/bundles/users-bundle/src/providers/mongoose/userProvider.js +3 -3
  22. package/cli/builder/microService/skeletons/config/pm2.config.js +1 -1
  23. package/cli/builder/microService/skeletons/config/webpack/webpack.config.dev.js +1 -6
  24. package/cli/builder/microService/skeletons/config/webpack/webpack.config.prod.js +1 -6
  25. package/cli/builder/microService/skeletons/config/webpack.config.js +40 -34
  26. package/cli/builder/microService/skeletons/package.json +27 -22
  27. package/cli/builder/microService/skeletons/src/browser/index.css +1 -1
  28. package/cli/builder/microService/skeletons/src/browser/index.js +1 -3
  29. package/cli/builder/microService/skeletons/src/browser/socketio.js +46 -0
  30. package/cli/builder/microService/skeletons/src/node/examples/index.js +12 -52
  31. package/cli/builder/microService/skeletons/src/node/index.js +18 -18
  32. package/cli/builder/microService/skeletons/src/node/services/servers/http.js +9 -1
  33. package/cli/builder/microService/skeletons/src/node/services/servers/https.js +9 -1
  34. package/cli/builder/microService/skeletons/src/node/services/socketio/socketio.js +15 -12
  35. package/cli/builder/microService/skeletons/src/templates/base.html +12 -0
  36. package/cli/builder/microService/skeletons/src/templates/socket.html +23 -0
  37. package/cli/builder/project/skeletons/README.md +2 -5
  38. package/cli/builder/project/skeletons/config/config.js.skeleton +2 -4
  39. package/cli/builder/project/skeletons/package.json.skeleton +7 -7
  40. package/cli/builder/sandbox/skeletons/Resources/js/entry.js +2 -2
  41. package/cli/builder/skeletons/config/nodefony/framework-bundle.js +2 -3
  42. package/cli/builder/skeletons/config/nodefony/http-bundle.js +5 -3
  43. package/cli/builder/skeletons/config/nodefony/mongoose-bundle.js +2 -6
  44. package/cli/builder/skeletons/config/nodefony/redis-bundle.js +16 -11
  45. package/cli/builder/skeletons/config/webpack/webpack.prod.config.js +1 -11
  46. package/cli/builder/skeletons/config/webpack.config.js +5 -5
  47. package/cli/builder/skeletons/package.json +25 -20
  48. package/cli/builder/vue/skeletons/vue.config.js +4 -4
  49. package/cli/builder/vue/vueBuilder.js +1 -1
  50. package/cli/install/install.js +2 -1
  51. package/cli.es6 +6 -12
  52. package/error.es6 +2 -1
  53. package/kernel/api/graphqlApi.es6 +17 -7
  54. package/kernel/bundle.es6 +1 -1
  55. package/kernel/cliKernel.es6 +2 -2
  56. package/kernel/controllers/controller.es6 +4 -0
  57. package/kernel/kernel.es6 +1 -1
  58. package/kernel/reader.es6 +1 -0
  59. package/kernel/security/secureArea.es6 +3 -1
  60. package/nodefony.es6 +1 -1
  61. package/package.json +37 -38
  62. package/cli/builder/bundles/users-bundle/Resources/views/index.html.twig +0 -19
@@ -1,9 +1,8 @@
1
1
  const webpack = require('webpack');
2
2
  const path = require('path');
3
3
  const MiniCssExtractPlugin = require("mini-css-extract-plugin");
4
+ const htmlPlugin = require('html-webpack-plugin');
4
5
  const { merge } = require('webpack-merge');
5
- const precss = require('precss');
6
- const autoprefixer = require('autoprefixer');
7
6
 
8
7
  let conf = null;
9
8
  if (process.env.NODE_ENV === "development") {
@@ -19,7 +18,8 @@ module.exports = merge(conf, {
19
18
  * See: http://webpack.github.io/docs/configuration.html#entry
20
19
  */
21
20
  entry: {
22
- App: path.resolve(__dirname, "..", "src", "browser", "index.js")
21
+ app: path.resolve(__dirname, "..", "src", "browser", "index.js"),
22
+ socket: path.resolve(__dirname, "..", "src", "browser", "socketio.js")
23
23
  },
24
24
  target: 'web',
25
25
  //watch: true,
@@ -39,7 +39,7 @@ module.exports = merge(conf, {
39
39
  *
40
40
  * See: http://webpack.github.io/docs/configuration.html#resolve-extensions
41
41
  */
42
- extensions: ['.js', '.es6'],
42
+ extensions: ['.js'],
43
43
 
44
44
  // An array of directory names to be resolved to the current directory
45
45
  modules: ["node_modules"]
@@ -52,52 +52,58 @@ module.exports = merge(conf, {
52
52
  module: {
53
53
  rules: [{
54
54
  // BABEL TRANSCODE
55
- test: new RegExp("\\.es6$|\\.js$|\\.es7$"),
55
+ test: new RegExp("\.js$"),
56
56
  exclude: new RegExp("node_modules"),
57
57
  use: [{
58
58
  loader: 'babel-loader',
59
59
  options: {
60
60
  presets: ['@babel/preset-env']
61
61
  }
62
- }]
62
+ }]
63
63
  }, {
64
- test: /\.(sa|sc|c)ss$/,
65
- use: [
64
+ test: /\.(sa|sc|c)ss$/,
65
+ use: [
66
+ //'css-hot-loader',
66
67
  MiniCssExtractPlugin.loader,
67
- {
68
- loader: "css-loader",
69
- options: {
70
- sourceMap: true
71
- }
72
- }, {
73
- loader: 'resolve-url-loader',
74
- options: {}
75
- }, {
76
- loader: 'postcss-loader', // Run post css actions
68
+ {
69
+ loader: "css-loader",
77
70
  options: {
78
- postcssOptions: {
79
- plugins: [autoprefixer({}), precss({})]
80
- }
71
+ sourceMap: true
81
72
  }
82
73
  }, {
83
- loader: "sass-loader",
84
- options: {
85
- sourceMap: true
86
- }
74
+ loader: "sass-loader",
75
+ options: {
76
+ sourceMap: true
77
+ }
87
78
  }
88
79
  ]
89
80
  }, {
90
- test: /.(ttf|otf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/,
91
- use: [{
92
- loader: 'file-loader',
93
- options: {
94
- name: '[name].[ext]',
95
- outputPath: 'fonts/', // where the fonts will go
96
- }
97
- }]
98
- }]
81
+ test: /.(ttf|otf|eot|svg|woff(2)?)(\?[a-z0-9]+)?$/,
82
+ type: 'asset/inline'
83
+ },{
84
+ test: /\.html$/,
85
+ loader: 'html-loader'
86
+ }]
99
87
  },
100
88
  plugins: [
89
+ new MiniCssExtractPlugin({
90
+ filename: "./css/[name].css"
91
+ }),
92
+ new htmlPlugin({
93
+ filename: path.resolve("dist", "index.ejs"),
94
+ template: path.resolve("src", "templates", "base.html"),
95
+ title: conf.name,
96
+ //cache: !dev,
97
+ chunks: ['app'],
98
+ templateParameters: conf
99
+ }),
100
+ new htmlPlugin({
101
+ filename: path.resolve("dist", "socketio.ejs"),
102
+ template: path.resolve("src", "templates", "socket.html"),
103
+ title: conf.name,
104
+ chunks: ['socket'],
105
+ templateParameters: conf
106
+ }),
101
107
  new webpack.DefinePlugin({
102
108
  'process.env': {
103
109
  'NODE_ENV': JSON.stringify(process.env.NODE_ENV),
@@ -15,11 +15,11 @@
15
15
  "scripts": {
16
16
  "nodefony": "nodefony",
17
17
  "pm2": "pm2",
18
- "install": "env-cmd -e webpack_prod webpack --env production --config config/webpack.config.js; env-cmd -e webpack_dev webpack --env development --config config/webpack.config.js",
18
+ "install": "env-cmd -e webpack_prod webpack --env production --config config/webpack.config.js",
19
19
  "start": "node ./bin/cli",
20
20
  "dev": "env-cmd -e development pm2 start config/pm2.config.js --only {{name}} --env development --no-daemon",
21
21
  "dev_debug": "env-cmd -e development_debug pm2 start config/pm2.config.js --only {{name}} --env development --no-daemon",
22
- "prod": "env-cmd -e production pm2 start config/pm2.config.js --env production",
22
+ "prod": "env-cmd -e webpack_prod webpack --env production --config config/webpack.config.js;env-cmd -e production pm2 start config/pm2.config.js --env production",
23
23
  "examples": "env-cmd -e development pm2 start config/pm2.config.js --only examples --env development --no-daemon",
24
24
  "stop": "pm2 stop {{name}}",
25
25
  "restart": "pm2 restart {{name}}",
@@ -28,7 +28,7 @@
28
28
  "monit": "pm2 monit",
29
29
  "status": "pm2 status",
30
30
  "kill": "pm2 kill",
31
- "webpack": "env-cmd -e webpack_prod webpack --env.production --config config/webpack.config.js; env-cmd -e webpack_dev webpack --env.development --verbose --config config/webpack.config.js",
31
+ "webpack": "env-cmd -e webpack_prod webpack --env production --stats verbose --config config/webpack.config.js",
32
32
  "ssl": "./bin/generateCertificates.sh",
33
33
  "test": "env-cmd -e test mocha --require @babel/register --recursive ./tests"
34
34
  },
@@ -39,32 +39,37 @@
39
39
  "microservice"
40
40
  ],
41
41
  "dependencies": {
42
+ "ejs": "^3.1.6",
42
43
  "env-cmd": "^10.1.0",
43
44
  "hello_world": "./src/n-api",
44
- "markdown-it": "^12.0.2",
45
+ "markdown-it": "^12.2.0",
45
46
  "nodefony": "^{{version}}",
46
- "pm2": "^4.5.0",
47
+ "nodefony-client": "^6.0.0-beta.18",
48
+ "pm2": "^5.1.2",
47
49
  "pm2-logrotate": "^2.7.0",
48
- "socket.io": "^2.3.0",
49
- "socket.io-client": "^2.3.1"
50
+ "serve-static": "^1.14.1",
51
+ "socket.io": "^4.3.1",
52
+ "socket.io-client": "^4.3.2 "
50
53
  },
51
54
  "devDependencies": {
52
- "@babel/cli": "^7.12.1",
53
- "@babel/core": "^7.12.3",
54
- "@babel/preset-env": "^7.12.1",
55
- "@babel/register": "^7.12.1",
56
- "babel-loader": "^8.1.0",
57
- "chai": "^4.2.0",
58
- "mini-css-extract-plugin": "^1.2.1",
59
- "mocha": "^8.2.0",
60
- "node-gyp": "^7.1.2",
61
- "node-pre-gyp": "^0.15.0",
62
- "open": "^7.3.0",
63
- "sass-loader": "^10.0.4",
55
+ "@babel/cli": "^7.15.7",
56
+ "@babel/core": "^7.15.8",
57
+ "@babel/preset-env": "^7.15.8",
58
+ "@babel/register": "^7.15.3",
59
+ "@mapbox/node-pre-gyp": "^1.0.6",
60
+ "babel-loader": "^8.2.3",
61
+ "chai": "^4.3.4",
62
+ "html-loader": "^3.0.0",
63
+ "html-webpack-plugin": "^5.5.0",
64
+ "mini-css-extract-plugin": "^2.4.3",
65
+ "mocha": "^9.1.3",
66
+ "node-gyp": "^8.3.0",
67
+ "open": "^8.4.0",
68
+ "sass-loader": "^12.2.0",
64
69
  "terser-webpack-plugin": "^5.0.3",
65
- "webpack": "^5.3.1",
66
- "webpack-cli": "^4.1.0",
67
- "webpack-merge": "^5.2.0"
70
+ "webpack": "^5.60.0",
71
+ "webpack-cli": "^4.9.1",
72
+ "webpack-merge": "^5.8.0"
68
73
  },
69
74
  "license": "ISC"
70
75
  }
@@ -1,3 +1,3 @@
1
1
  body {
2
- background-color: blue;
2
+ background-color: white;
3
3
  }
@@ -1,5 +1,4 @@
1
- const nodefony = require("nodefony");
2
- const io = require('socket.io-client');
1
+ const nodefony = require("nodefony-client");
3
2
 
4
3
  import "./index.css";
5
4
  /*
@@ -11,7 +10,6 @@ class App extends nodefony.Service {
11
10
  this.initSyslog();
12
11
  this.log("INIT APP CLIENT");
13
12
  this.log(`Nodefony Client version : ${nodefony.version}`);
14
- this.io = io();
15
13
  }
16
14
  }
17
15
 
@@ -0,0 +1,46 @@
1
+ const nodefony = require("nodefony-client");
2
+ import { io } from "socket.io-client";
3
+
4
+ import "./index.css";
5
+ /*
6
+ * Class
7
+ */
8
+ class App extends nodefony.Service {
9
+ constructor() {
10
+ super("App");
11
+ this.initSyslog();
12
+ this.log("INIT APP CLIENT");
13
+ this.log(`Nodefony Client version : ${nodefony.version}`);
14
+ this.init()
15
+ }
16
+
17
+ init(){
18
+ const socket = io('/',{
19
+ transports: [ 'websocket' ],
20
+ forceNew: true
21
+ });
22
+
23
+ socket.on("connect_error", function(e){
24
+ console.error(e);
25
+ });
26
+
27
+ socket.on('connect', function(){
28
+ console.log("connect", socket.connected);
29
+ setTimeout(()=>{
30
+ socket.emit("microservice", "send after 5 s");
31
+ }, 5000);
32
+
33
+ });
34
+
35
+ socket.on('microservice', function(data){
36
+ console.log(data);
37
+ });
38
+
39
+ socket.on('disconnect', function(){
40
+ console.log("disconnect");
41
+ });
42
+ }
43
+
44
+ }
45
+
46
+ export default new App();
@@ -1,6 +1,7 @@
1
1
  const nodefony = require("nodefony");
2
2
  const path = require("path");
3
3
  const config = require(path.resolve("config", "config.js"));
4
+ const ejs = require('ejs');
4
5
 
5
6
  // examples services
6
7
  const Server = require(path.resolve("src", "node", "services", "servers", "http.js"));
@@ -46,8 +47,11 @@ class Service extends nodefony.Service {
46
47
  // add in service container
47
48
  this.set("http", http);
48
49
  http.on("request", async (request, response) => {
49
- response.statusCode = 200;
50
- response.setHeader('Content-Type', 'text/html');
50
+ //response.statusCode = 200;
51
+ //response.setHeader('Content-Type', 'text/html');
52
+ response.writeHead(200, {
53
+ 'Content-Type': 'text/html;charset=utf-8'
54
+ })
51
55
  http.log(` ${response.statusCode} url : http://${http.settings.hostname}:${http.settings.port}/`);
52
56
  response.end(await this.renderHtml());
53
57
  });
@@ -83,57 +87,13 @@ class Service extends nodefony.Service {
83
87
  }
84
88
 
85
89
  async renderHtml() {
86
- return `<!DOCTYPE html>
87
- <html lang="fr">
88
- <head>
89
- <meta charset="utf-8">
90
- <title>Nodefony Microservice</title>
91
- <style>
92
- body { font: 13px Helvetica, Arial; }
93
- </style>
94
- </head>
95
- <body>
96
- <p align="center">
97
- <img src="https://github.com/nodefony/nodefony-core/raw/master/src/nodefony/bundles/framework-bundle/Resources/public/images/nodefony-logo.png"><br>
98
- </p>
99
- <h1 align="center">NODEFONY V6 Micro Service</h1>
100
- <h2 align="center">Socket Io <h2>
101
-
102
- <script src="https://cdnjs.cloudflare.com/ajax/libs/socket.io/2.3.0/socket.io.dev.js"></script>
103
- <script
104
- src="https://code.jquery.com/jquery-3.4.1.min.js"
105
- integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo="
106
- crossorigin="anonymous"></script>
107
-
108
- <script>
109
- var socket = io('/',{
110
- transports: [ 'websocket' ],
111
- forceNew: true
112
- });
113
-
114
- socket.on("connect_error", function(e){
115
- console.error(e);
116
- });
117
-
118
- socket.on('connect', function(){
119
- console.log("connect", socket.connected);
120
- setTimeout(()=>{
121
- socket.emit("microservice", "send after 5 s");
122
- }, 5000);
123
-
124
- });
125
-
126
- socket.on('microservice', function(data){
127
- console.log(data);
128
- });
129
-
130
- socket.on('disconnect', function(){
131
- console.log("disconnect");
90
+ const filename = path.resolve("dist", "socketio.ejs")
91
+ const res = await ejs.renderFile(filename, {
92
+ body: ""
93
+ }, {
94
+ async: true
132
95
  });
133
- </script>
134
- </body>
135
- </html>
136
- `;
96
+ return res;
137
97
  }
138
98
 
139
99
  terminate(code){
@@ -3,6 +3,7 @@ const path = require("path");
3
3
  const Server = require(path.resolve("src", "node", "services", "servers", "http.js"));
4
4
  const ServerSecure = require(path.resolve("src", "node", "services", "servers", "https.js"));
5
5
  const Markdown = require(path.resolve("src", "node", "services", "markdown", "markdown.js"));
6
+ const ejs = require('ejs');
6
7
 
7
8
  class Service extends nodefony.Service {
8
9
 
@@ -31,8 +32,11 @@ class Service extends nodefony.Service {
31
32
  this.set("http", http);
32
33
  await http.start();
33
34
  http.on("request", async (request, response) => {
34
- response.statusCode = 200;
35
- response.setHeader('Content-Type', 'text/html');
35
+ //response.statusCode = 200;
36
+ //response.setHeader('Content-Type', 'text/html');
37
+ response.writeHead(200, {
38
+ 'Content-Type': 'text/html;charset=utf-8'
39
+ })
36
40
  http.log(` ${response.statusCode} url : http://${http.settings.hostname}:${http.settings.port}/`);
37
41
  response.end(await this.renderHtml());
38
42
  });
@@ -45,8 +49,11 @@ class Service extends nodefony.Service {
45
49
  this.set("https", https);
46
50
  await https.start();
47
51
  https.on("request", async (request, response) => {
48
- response.statusCode = 200;
49
- response.setHeader('Content-Type', 'text/html');
52
+ //response.statusCode = 200;
53
+ //response.setHeader('Content-Type', 'text/html');
54
+ response.writeHead(200, {
55
+ 'Content-Type': 'text/html;charset=utf-8'
56
+ })
50
57
  https.log(` ${response.statusCode} url : https://${https.settings.hostname}:${https.settings.port}/`);
51
58
  response.end(await this.renderHtml());
52
59
  });
@@ -56,20 +63,13 @@ class Service extends nodefony.Service {
56
63
  async renderHtml() {
57
64
  const readme = path.resolve("README.md");
58
65
  const md = await this.markdown.fileToMarkdown(readme);
59
- return `<!DOCTYPE html>
60
- <html lang="fr">
61
- <head>
62
- <meta charset="utf-8">
63
- <title>Nodefony Microservice</title>
64
- <style>
65
- body { font: 13px Helvetica, Arial; }
66
- </style>
67
- </head>
68
- <body>
69
- ${md}
70
- </body>
71
- </html>
72
- `;
66
+ const filename = path.resolve("dist", "index.ejs")
67
+ const res = await ejs.renderFile(filename, {
68
+ body: md
69
+ }, {
70
+ async: true
71
+ });
72
+ return res;
73
73
  }
74
74
 
75
75
  getMarkdown() {
@@ -2,6 +2,12 @@ const nodefony = require("nodefony");
2
2
  const http = require('http');
3
3
  const path = require("path");
4
4
 
5
+ const serveStatic = require('serve-static');
6
+ const dist = path.resolve("dist");
7
+ const serve = serveStatic(dist, {
8
+ index: false
9
+ });
10
+
5
11
  class Server extends nodefony.Service {
6
12
  constructor(service) {
7
13
  super("HTTP Server", service.container);
@@ -17,7 +23,9 @@ class Server extends nodefony.Service {
17
23
  return new Promise((resolve, reject) => {
18
24
  this.log("Starting Server HTTP", "INFO");
19
25
  this.server = http.createServer((req, res) => {
20
- return this.fire("request", req, res);
26
+ return serve(req, res, () => {
27
+ return this.fire("request", req, res);
28
+ });
21
29
  });
22
30
 
23
31
  this.server.listen(this.settings.port, this.settings.hostname, () => {
@@ -1,5 +1,11 @@
1
1
  const nodefony = require("nodefony");
2
2
  const https = require('https');
3
+ const serveStatic = require('serve-static');
4
+ const dist = path.resolve("dist");
5
+ const serve = serveStatic(dist, {
6
+ index: false
7
+ });
8
+
3
9
 
4
10
  class Server extends nodefony.Service {
5
11
  constructor(service){
@@ -16,7 +22,9 @@ class Server extends nodefony.Service {
16
22
  return new Promise((resolve, reject) => {
17
23
  this.log("Starting Server HTTPS", "INFO");
18
24
  this.server = https.createServer(this.settings.certificates, (req, res) => {
19
- return this.fire("request", req, res);
25
+ return serve(req, res, () => {
26
+ return this.fire("request", req, res);
27
+ });
20
28
  });
21
29
 
22
30
  this.server.listen(this.settings.port, this.settings.hostname, () => {
@@ -1,26 +1,29 @@
1
1
  const nodefony = require("nodefony");
2
- const socketio = require('socket.io');
2
+ const Server = require("socket.io");
3
3
 
4
4
  class SocketIo extends nodefony.Service {
5
- constructor(service){
5
+ constructor(service) {
6
6
  super("socket-io", service.container);
7
- this.service = service ;
7
+ this.service = service;
8
8
  this.http = this.getHttp();
9
9
  }
10
10
 
11
- getHttp(){
11
+ getHttp() {
12
12
  let http = this.get("http");
13
- if (! http){
13
+ if (!http) {
14
14
  this.service.createHttpServer();
15
15
  http = this.get("http");
16
16
  }
17
17
  return http;
18
18
  }
19
19
 
20
- start(){
21
- return new Promise((resolve, reject)=>{
22
- try{
23
- this.io = socketio(this.http.server, this.service.settings.socketio);
20
+ start() {
21
+ return new Promise((resolve, reject) => {
22
+ try {
23
+ this.io = Server(this.service.settings.socketio);
24
+ this.io.serveClient(true);
25
+ this.io.attach(this.http.server);
26
+
24
27
  this.log(`Server ${this.name} running at ws://${this.http.settings.hostname}:${this.http.settings.port}/`);
25
28
  this.io.on('connection', client => {
26
29
  this.log(`connection : ${client.id}`);
@@ -32,12 +35,12 @@ class SocketIo extends nodefony.Service {
32
35
  });
33
36
  this.io.emit("microservice", 'DEMO SOCKET IO MICROSERVICE');
34
37
  });
35
- return resolve(this.io) ;
36
- }catch(e){
38
+ return resolve(this.io);
39
+ } catch (e) {
37
40
  return reject(e);
38
41
  }
39
42
  });
40
43
  }
41
44
  }
42
45
 
43
- module.exports = SocketIo ;
46
+ module.exports = SocketIo;
@@ -0,0 +1,12 @@
1
+ <html lang="fr">
2
+ <head>
3
+ <meta charset="utf-8">
4
+ <title>Nodefony Microservice</title>
5
+ <style>
6
+ body { font: 13px Helvetica, Arial; }
7
+ </style>
8
+ </head>
9
+ <body>
10
+ <%- body %>
11
+ </body>
12
+ </html>
@@ -0,0 +1,23 @@
1
+ <!DOCTYPE html>
2
+ <html lang="fr">
3
+
4
+ <head>
5
+ <meta charset="utf-8">
6
+ <title>Nodefony Microservice</title>
7
+ <style>
8
+ body {
9
+ font: 13px Helvetica, Arial;
10
+ }
11
+ </style>
12
+ </head>
13
+
14
+ <body>
15
+ <p align="center">
16
+ <img src="https://github.com/nodefony/nodefony-core/raw/master/src/nodefony/bundles/framework-bundle/Resources/public/images/nodefony-logo.png"><br>
17
+ </p>
18
+ <h1 align="center">NODEFONY V6 Micro Service</h1>
19
+ <h2 align="center">Socket Io <h2>
20
+ <%- body %>
21
+ </body>
22
+
23
+ </html>
@@ -11,9 +11,6 @@ Nodefony is Node.js full-stack web framework.
11
11
 
12
12
  Nodefony can be used to develop a complete solution to create a Fullstack Web Application, Secure Api, or Microservices.
13
13
 
14
- The Nodefony project is inspired by the PHP Symfony framework, a developer can find most of the concepts, configurations and patterns of Symfony framework.
15
-
16
- Nodefony is not an exhaustive port of symfony !
17
14
 
18
15
  ## Table of content
19
16
 
@@ -137,9 +134,9 @@ You can follow Nodefony build with github actions at **<https://github.com/nodef
137
134
 
138
135
  To install or update nvm, you can use the install script:
139
136
  ```sh
140
- curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash
137
+ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
141
138
  # or
142
- wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.35.2/install.sh | bash
139
+ wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.0/install.sh | bash
143
140
 
144
141
  $ source ~/.bashrc # or source ~/.bash_profile
145
142
  $ nvm ls-remote # show all remote versions
@@ -90,11 +90,9 @@ module.exports = {
90
90
  * DEV SERVER
91
91
  */
92
92
  devServer: {
93
- inline: true,
94
- hot: false,
95
- hotOnly: false,
93
+ hot: false, // true || only || false
96
94
  overlay: true,
97
- logLevel: "info", // none, error, warning or info
95
+ logging: "info", // none, error, warning or info
98
96
  progress: false,
99
97
  protocol: "https",
100
98
  websocket: true
@@ -34,17 +34,17 @@
34
34
  "node": ">=10"
35
35
  },
36
36
  "dependencies": {
37
- "mongoose": "^5.13.3",
37
+ "mongoose": "^6.1.4",
38
38
  "nodefony": "^{{version}}",
39
- "pm2": "^5.1.0",
39
+ "pm2": "^5.1.2",
40
40
  "pm2-logrotate": "^2.7.0",
41
- "sequelize": "^6.6.5",
42
- "webpack": "^5.45.1",
43
- "webpack-dev-server": "^3.11.2"
41
+ "sequelize": "^6.12.4",
42
+ "webpack": "^5.65.0",
43
+ "webpack-dev-server": "^4.7.2"
44
44
  },
45
45
  "devDependencies": {
46
- "@mapbox/node-pre-gyp": "^1.0.5",
47
- "node-gyp": "^8.1.0"
46
+ "@mapbox/node-pre-gyp": "^1.0.8",
47
+ "node-gyp": "^8.4.1"
48
48
  },
49
49
  "author": "{{authorFullName}} <{{authorMail}}>",
50
50
  "readmeFilename": "README.md",
@@ -29,8 +29,8 @@ class {{shortName | capitalize }} {
29
29
  .then(registration => {
30
30
  if (registration) {
31
31
  console.log(`Service Worker registered! Scope: ${registration.scope}`);
32
- if (window.nodefony) {
33
- window.nodefony.monitoringWorkbox(registration);
32
+ if (window.debugbar) {
33
+ window.debugbar.monitoringWorkbox(registration);
34
34
  }
35
35
  }
36
36
  return registration;
@@ -10,8 +10,7 @@ module.exports = {
10
10
  outputFileSystem: "file-system", // memory-fs not implemented yet
11
11
  stats: {
12
12
  colors: true,
13
- verbose: true,
14
- maxModules: 16 // Infinity
13
+ preset: 'normal' // normal || minimal || verbose || detailed || summary
15
14
  }
16
15
  }
17
- };
16
+ };
@@ -16,13 +16,15 @@
16
16
  * sockjs dev server ( webpack dev server like WDS)
17
17
  *
18
18
  */
19
+ const tmpDir = kernel.tmpDir.path || "/tmp"
19
20
  module.exports = {
20
21
  // For more options request parser formidable @see : https://github.com/felixge/node-formidable
21
22
  request: {
22
- uploadDir: "/tmp", // temporing file upload system
23
- maxFileSize: 2097152, // In Bytes
24
- maxFieldsSize: 2097152, // 2MB
23
+ uploadDir: tmpDir, // temporing file upload system
24
+ maxFileSize: 524288000, // In Bytes 500 MB
25
+ maxFieldsSize: 2097152, // 2 MB
25
26
  maxFields: 1000, // 0 for unlimited
27
+ encoding: 'utf-8'
26
28
  },
27
29
  //For more options queryString parser QS @see : https://github.com/ljharb/qs
28
30
  queryString: {