nodefony 7.0.0-beta.13 → 7.0.0-beta.15

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 (113) hide show
  1. package/CHANGELOG.md +40 -1
  2. package/README.md +9 -9
  3. package/autoloader.es6 +44 -46
  4. package/builder.es6 +66 -76
  5. package/cli/builder/bundles/bundle.js +57 -63
  6. package/cli/builder/bundles/controller.js +34 -38
  7. package/cli/builder/bundles/users-bundle/Command/fixtureTask.js +11 -12
  8. package/cli/builder/bundles/users-bundle/Command/usersCommand.js +23 -24
  9. package/cli/builder/bundles/users-bundle/Entity/mongoose/userEntity.js +24 -25
  10. package/cli/builder/bundles/users-bundle/Entity/sequelize/userEntity.js +40 -32
  11. package/cli/builder/bundles/users-bundle/Fixtures/users.js +24 -26
  12. package/cli/builder/bundles/users-bundle/Fixtures/usersFixtures.js +28 -29
  13. package/cli/builder/bundles/users-bundle/Resources/config/config.js +4 -3
  14. package/cli/builder/bundles/users-bundle/Resources/config/routing.js +2 -2
  15. package/cli/builder/bundles/users-bundle/Resources/config/security.js +9 -8
  16. package/cli/builder/bundles/users-bundle/Resources/config/webpack/webpack.dev.config.js +3 -3
  17. package/cli/builder/bundles/users-bundle/Resources/config/webpack/webpack.prod.config.js +4 -3
  18. package/cli/builder/bundles/users-bundle/Resources/config/webpack.config.js +74 -75
  19. package/cli/builder/bundles/users-bundle/Resources/scss/awesome/font-awesome.config.js +9 -9
  20. package/cli/builder/bundles/users-bundle/Resources/swagger/openapi/login.js +13 -13
  21. package/cli/builder/bundles/users-bundle/Resources/swagger/openapi/users.js +14 -14
  22. package/cli/builder/bundles/users-bundle/controller/api/graphql/graphqlController.js +12 -14
  23. package/cli/builder/bundles/users-bundle/controller/api/graphql/userResolver.js +29 -29
  24. package/cli/builder/bundles/users-bundle/controller/api/graphql/usertype.js +2 -2
  25. package/cli/builder/bundles/users-bundle/controller/api/openapi/loginApiController.js +34 -35
  26. package/cli/builder/bundles/users-bundle/controller/api/openapi/restUserController.js +32 -36
  27. package/cli/builder/bundles/users-bundle/controller/loginController.js +30 -34
  28. package/cli/builder/bundles/users-bundle/controller/usersController.js +54 -60
  29. package/cli/builder/bundles/users-bundle/package.json +5 -5
  30. package/cli/builder/bundles/users-bundle/readme.md +7 -7
  31. package/cli/builder/bundles/users-bundle/services/usersService.js +287 -291
  32. package/cli/builder/bundles/users-bundle/src/providers/mongoose/userProvider.js +6 -8
  33. package/cli/builder/bundles/users-bundle/src/providers/sequelize/userProvider.js +9 -10
  34. package/cli/builder/bundles/users-bundle/tests/loginTest.js +71 -74
  35. package/cli/builder/bundles/users-bundle/usersBundle.js +2 -3
  36. package/cli/builder/microService/microService.js +139 -141
  37. package/cli/builder/project/project.js +187 -187
  38. package/cli/builder/project/skeletons/README.md +9 -9
  39. package/cli/builder/project/skeletons/eslintignore.skeleton +15 -0
  40. package/cli/builder/project/skeletons/eslintrc.js.skeleton +97 -0
  41. package/cli/builder/project/skeletons/{package.json.skeleton → package.json.twig} +12 -3
  42. package/cli/builder/react/reactBuilder.js +59 -65
  43. package/cli/builder/sandbox/sandBoxBuilder.js +131 -133
  44. package/cli/builder/skeletons/{package.json → package.json.twig} +3 -4
  45. package/cli/builder/vue/vueBuilder.js +136 -141
  46. package/cli/generate/generate.es6 +38 -39
  47. package/cli/install/install.js +42 -59
  48. package/cli/sequelize/sequelize.js +50 -39
  49. package/cli/start.js +348 -371
  50. package/cli/tools/pm2.es6 +55 -57
  51. package/cli/tools/tools.es6 +36 -37
  52. package/cli.es6 +277 -276
  53. package/container.es6 +51 -59
  54. package/error.es6 +25 -27
  55. package/fileClass.es6 +53 -55
  56. package/finder/file.es6 +5 -4
  57. package/finder/fileResult.es6 +23 -22
  58. package/finder/finder2.es6 +46 -54
  59. package/finder.es6 +88 -97
  60. package/kernel/annotations/annotations.es6 +44 -46
  61. package/kernel/api/api.es6 +6 -8
  62. package/kernel/api/graphqlApi.es6 +21 -21
  63. package/kernel/api/jsonApi.es6 +40 -45
  64. package/kernel/api/openApi.es6 +9 -11
  65. package/kernel/api/schemas/openApiSchema.js +49 -51
  66. package/kernel/babylon.es6 +31 -38
  67. package/kernel/bundle.es6 +314 -318
  68. package/kernel/cliKernel.es6 +196 -217
  69. package/kernel/command.es6 +17 -20
  70. package/kernel/commands/nodefonyCommand.es6 +67 -66
  71. package/kernel/commands/tasks/bundlesTask.es6 +14 -19
  72. package/kernel/controllers/controller.es6 +166 -179
  73. package/kernel/fixture.es6 +4 -7
  74. package/kernel/injections/injections.es6 +155 -159
  75. package/kernel/kernel.es6 +396 -402
  76. package/kernel/kernelWatcher.es6 +278 -278
  77. package/kernel/orm/entity.es6 +10 -12
  78. package/kernel/orm/orm.es6 +48 -58
  79. package/kernel/reader.es6 +45 -47
  80. package/kernel/security/encoder.es6 +8 -6
  81. package/kernel/security/factories/factory.es6 +34 -37
  82. package/kernel/security/factories/passeportFactory.es6 +13 -14
  83. package/kernel/security/provider.es6 +11 -13
  84. package/kernel/security/providers/chainProvider.es6 +13 -28
  85. package/kernel/security/providers/memoryProvider.es6 +7 -11
  86. package/kernel/security/providers/providerManager.es6 +11 -14
  87. package/kernel/security/providers/userEntityProvider.es6 +7 -8
  88. package/kernel/security/role.es6 +3 -3
  89. package/kernel/security/secureArea.es6 +143 -152
  90. package/kernel/security/tokens/token.es6 +30 -32
  91. package/kernel/security/user.es6 +19 -19
  92. package/kernel/serviceRealTime.es6 +5 -7
  93. package/kernel/services/connectionsService.es6 +20 -22
  94. package/kernel/services/cron/cronService.es6 +14 -16
  95. package/kernel/task.es6 +20 -26
  96. package/kernel/templates.es6 +4 -5
  97. package/kernel/templating/twig.es6 +56 -48
  98. package/kernel/tests/cliTest.js +7 -11
  99. package/kernel/tests/containerTest.js +25 -37
  100. package/kernel/tests/kernelTest.js +9 -16
  101. package/nodefony.es6 +426 -430
  102. package/notificationsCenter.es6 +28 -20
  103. package/package.json +24 -23
  104. package/protocol.es6 +19 -21
  105. package/protocols/bayeux.es6 +35 -38
  106. package/protocols/jsonRpc/jsonrpc.es6 +12 -14
  107. package/result.es6 +11 -12
  108. package/service.es6 +62 -62
  109. package/syslog/pdu.es6 +99 -91
  110. package/syslog/syslog.es6 +101 -102
  111. package/watcher.es6 +21 -20
  112. package/cli/builder/project/skeletons/jshintignore.skeleton +0 -1
  113. package/cli/builder/project/skeletons/jshintrc.skeleton +0 -60
package/CHANGELOG.md CHANGED
@@ -1,4 +1,43 @@
1
- ## [7.0.0-beta.12](https://github.com/nodefony/nodefony/compare/v7.0.0-beta.13...v7.0.0-beta.12) (2023-01-03)
1
+ ## [7.0.0-beta.14](https://github.com/nodefony/nodefony/compare/v7.0.0-beta.15...v7.0.0-beta.14) (2023-03-07)
2
+
3
+ ## [7.0.0-beta.15](https://github.com/nodefony/nodefony/compare/v7.0.0-beta.14...v7.0.0-beta.15) (2023-03-07)
4
+
5
+
6
+ ### Bug Fixes
7
+
8
+ * **builder:** rename skeleton package.json ([d7f047a](https://github.com/nodefony/nodefony/commit/d7f047a3735efd1c7ea77e65eb2a40a6c1b4886a))
9
+ * **datatable:** monitoring add datatable vuetify lab ([5de67f3](https://github.com/nodefony/nodefony/commit/5de67f369d7207a624ba4c9c87fd5b35d21114d0))
10
+ * **datatable:** offset null ([3788257](https://github.com/nodefony/nodefony/commit/3788257d39336621a1ecb911aea2af75109d39a1))
11
+ * **eslint:** add config eslint and rules ([f782f45](https://github.com/nodefony/nodefony/commit/f782f456a1fbd83377287f8a9e10f2e0a815944e))
12
+ * **eslint:** add rules ([27b3912](https://github.com/nodefony/nodefony/commit/27b39122bee0c9e4f08ddbf1744099fa5fab57d5))
13
+ * **eslint:** add rules ([32f28ff](https://github.com/nodefony/nodefony/commit/32f28ff3193b9e9448f854befdde4b9ad067ea8c))
14
+ * **eslint:** add rules ([7c20f34](https://github.com/nodefony/nodefony/commit/7c20f34ea5468a1639baba889dca60f5317611e0))
15
+ * **eslint:** change config | add rules ([091c81e](https://github.com/nodefony/nodefony/commit/091c81ee74d0f1ef742314aa1578f079047e5267))
16
+ * **eslint:** fix rules ([b9ea975](https://github.com/nodefony/nodefony/commit/b9ea975da67481f09f79357a10270487500c8516))
17
+ * **eslint:** upgrade rules ([ba0d412](https://github.com/nodefony/nodefony/commit/ba0d41247dd007c95431d6638ef862ba658054e6))
18
+ * **security:** clean session and security management ([5e47b05](https://github.com/nodefony/nodefony/commit/5e47b05815382d8db689a1dce77ed355e84ef2a9))
19
+ * **sequelize:** create database on install ([48215da](https://github.com/nodefony/nodefony/commit/48215dac1a0284ad3d84a99975d059d5d1011189))
20
+ * **sequelize:** reformat config ([676b062](https://github.com/nodefony/nodefony/commit/676b062a12cb8617f647f083faef7f192d4bac0c))
21
+
22
+
23
+ ### Performance Improvements
24
+
25
+ * **extend:** nodefony.extend ([2c0e3ef](https://github.com/nodefony/nodefony/commit/2c0e3ef26f7fd6f0318910ecd574dca5f6b62815))
26
+
27
+ ## [7.0.0-beta.14](https://github.com/nodefony/nodefony/compare/v7.0.0-beta.13...v7.0.0-beta.14) (2023-01-06)
28
+
29
+
30
+ ### Features
31
+
32
+ * **sequelize:** add sync alter on cli || manage response prompt ([e4ce684](https://github.com/nodefony/nodefony/commit/e4ce684e2625d788c3d97d6088b37b2dabb3fdc1))
33
+
34
+
35
+ ### Bug Fixes
36
+
37
+ * **build:** changelog ([c6f3db9](https://github.com/nodefony/nodefony/commit/c6f3db9965572bef6b4e0c557cf4ef871fa29d3a))
38
+ * **sequelize:** add users seeder ([ab36609](https://github.com/nodefony/nodefony/commit/ab3660978c6700cd90a9ea0cd98e5815dc616667))
39
+ * **sequelize:** hash user password on seed ([765e1c9](https://github.com/nodefony/nodefony/commit/765e1c9483a1ae3740fdd6720395ad453035dba7))
40
+ * **sequelize:** sync and seed on install ([7a8cd21](https://github.com/nodefony/nodefony/commit/7a8cd21a233d7af59b4b5cddecb07f298633c11e))
2
41
 
3
42
  ## [7.0.0-beta.13](https://github.com/nodefony/nodefony/compare/v7.0.0-beta.12...v7.0.0-beta.13) (2023-01-03)
4
43
 
package/README.md CHANGED
@@ -7,7 +7,7 @@
7
7
 
8
8
  [![Issues Status](https://img.shields.io/github/issues/nodefony/nodefony.svg)](https://github.com/nodefony/nodefony/issues) [![Build Status](https://github.com/nodefony/nodefony/workflows/nodefony/badge.svg)](https://github.com/nodefony/nodefony/actions) [![CII Best Practices](https://bestpractices.coreinfrastructure.org/projects/495/badge)](https://bestpractices.coreinfrastructure.org/projects/495)
9
9
 
10
- Nodefony is Node.js full-stack web framework.
10
+ 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
 
@@ -127,7 +127,7 @@ The development framework will not be ported to typescript, but will wait for th
127
127
 
128
128
  - ~~[ELECTRON](https://github.com/nodefony/nodefony-electron) Experimental Nodefony Electron ( Now an Electron Context can be use in Nodefony Project )~~
129
129
 
130
- - EMBEDDED SYSTEM ( Very difficult : large memory footprint )
130
+ - EMBEDDED SYSTEM ( Very difficult : large memory footprint )
131
131
 
132
132
  ## <a name="install"></a> Linux or OSX Installation
133
133
 
@@ -141,7 +141,7 @@ curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
141
141
  wget -qO- https://raw.githubusercontent.com/nvm-sh/nvm/v0.39.1/install.sh | bash
142
142
 
143
143
  $ source ~/.bashrc # or source ~/.bash_profile
144
- $ nvm ls-remote # show all remote versions
144
+ $ nvm ls-remote # show all remote versions
145
145
  $ nvm ls # show local versions
146
146
  ```
147
147
 
@@ -254,8 +254,8 @@ $ cd myproject
254
254
  ```bash
255
255
  $ npx nodefony -h
256
256
 
257
- nodefony
258
- create [-i] name [path] Create New Nodefony Project
257
+ nodefony
258
+ create [-i] name [path] Create New Nodefony Project
259
259
  ```
260
260
 
261
261
  ## <a name="buildstarter"></a> Build Project with Github Starter :
@@ -326,14 +326,14 @@ OR YOU CAN USE CLI INTERACTIVE MODE (nodefony without args)
326
326
  _ _ ___ ____ _____ _____ ___ _ _ __ __
327
327
  | \ | | / _ \ | _ \ | ____| | ___| / _ \ | \ | | \ \ / /
328
328
  | \| | | | | | | | | | | _| | |_ | | | | | \| | \ V /
329
- | |\ | | |_| | | |_| | | |___ | _| | |_| | | |\ | | |
330
- |_| \_| \___/ |____/ |_____| |_| \___/ |_| \_| |_|
329
+ | |\ | | |_| | | |_| | | |___ | _| | |_| | | |\ | | |
330
+ |_| \_| \___/ |____/ |_____| |_| \___/ |_| \_| |_|
331
331
 
332
332
  Version : 4.0.0 Platform : linux Process : nodefony PID : 31635
333
333
 
334
334
  Fri Jul 27 2018 17:01:11 INFO nodefony : WELCOME PROJECT : myproject 1.0.0
335
335
 
336
- ? Nodefony CLI :
336
+ ? Nodefony CLI :
337
337
  ❯ Start Servers Development
338
338
  Start Servers Pre-Production
339
339
  Start Servers Production
@@ -594,7 +594,7 @@ class defaultController extends nodefony.Controller {
594
594
  indexAction() {
595
595
  return this.render("hello-bundle::index.html.twig", {
596
596
  name: this.bundle.name,
597
- description: this.bundle.package.description
597
+ description: this.bundle.package.description
598
598
  });
599
599
  }
600
600
  }
package/autoloader.es6 CHANGED
@@ -1,39 +1,39 @@
1
1
  const vm = require("vm");
2
2
  const path = require("path");
3
3
  const Module = require("module");
4
- const fs = require('fs');
5
- const pm2 = require('pm2');
6
- //console.log(require.resolve("pm2"))
4
+ const fs = require("fs");
5
+ const pm2 = require("pm2");
6
+ // console.log(require.resolve("pm2"))
7
7
  const Nodefony = require(path.resolve(__dirname, "nodefony.es6"));
8
8
 
9
- module.exports = function () {
9
+ module.exports = (function () {
10
10
  // Create Context copy library in context see load runInThisContext
11
11
  const context = vm.createContext(this);
12
12
 
13
- //context.require = require;
14
- //context.module = module;
15
- //context.exports = exports;
16
- //context.__dirname = __dirname;
17
- //context.__filename = __filename;
13
+ // context.require = require;
14
+ // context.module = module;
15
+ // context.exports = exports;
16
+ // context.__dirname = __dirname;
17
+ // context.__filename = __filename;
18
18
  context.path = require("path");
19
19
  context.fs = require("fs");
20
20
  context.yaml = require("js-yaml");
21
- context.util = require('util');
22
- context.cluster = require('cluster');
21
+ context.util = require("util");
22
+ context.cluster = require("cluster");
23
23
  context.url = require("url");
24
- context.xmlParser = require('xml2js').Parser;
25
- context.dns = require('dns');
26
- //context.async = require('async');
27
- //context.nodedomain = require('domain');
28
- context.Promise = require('promise');
29
- //context.inquirer = require('inquirer');
30
- context.clc = require('cli-color');
24
+ context.xmlParser = require("xml2js").Parser;
25
+ context.dns = require("dns");
26
+ // context.async = require('async');
27
+ // context.nodedomain = require('domain');
28
+ context.Promise = require("promise");
29
+ // context.inquirer = require('inquirer');
30
+ context.clc = require("cli-color");
31
31
  context.shell = require("shelljs");
32
32
  context.twig = require("twig");
33
- //context.crypto = crypto;
33
+ // context.crypto = crypto;
34
34
  context.BlueBird = require("bluebird");
35
35
  context.pm2 = pm2;
36
- //context.Rx = require("rxjs");
36
+ // context.Rx = require("rxjs");
37
37
  const nodefony = new Nodefony(context);
38
38
 
39
39
  /**
@@ -47,8 +47,7 @@ module.exports = function () {
47
47
  const regJs = /.*\.js$|.*\.es6$|.*\.es7$|.*\.(mjs)$/;
48
48
 
49
49
  class Autoload {
50
-
51
- constructor() {
50
+ constructor () {
52
51
  this.versions = this.getVersion();
53
52
  this.timeout = 20000;
54
53
  this.displayError = true;
@@ -59,7 +58,7 @@ module.exports = function () {
59
58
 
60
59
  try {
61
60
  nodefony.Error = require(path.resolve(__dirname, "error.es6"));
62
- //this.load(path.resolve(__dirname, "error.es6"));
61
+ // this.load(path.resolve(__dirname, "error.es6"));
63
62
  nodefony.Container = require(path.resolve(__dirname, "container.es6"));
64
63
  require(path.resolve(__dirname, "notificationsCenter.es6"));
65
64
  nodefony.PDU = require(path.resolve(__dirname, "syslog", "pdu.es6"));
@@ -75,7 +74,7 @@ module.exports = function () {
75
74
  nodefony.Watcher = require(path.resolve(__dirname, "watcher.es6"));
76
75
  nodefony.cli = require(path.resolve(__dirname, "cli.es6"));
77
76
 
78
- //builders
77
+ // builders
79
78
  nodefony.Builder = require(path.resolve(__dirname, "builder.es6"));
80
79
  require(path.resolve(__dirname, "cli", "builder", "bundles", "bundle.js"));
81
80
  require(path.resolve(__dirname, "cli", "builder", "microService", "microService.js"));
@@ -90,7 +89,7 @@ module.exports = function () {
90
89
  context.nodefony.cliStart = require(path.resolve(__dirname, "cli", "start.js"));
91
90
  context.nodefony.appKernel = this.loadAppKernel(undefined, true);
92
91
 
93
- //services
92
+ // services
94
93
  } catch (e) {
95
94
  throw e;
96
95
  }
@@ -98,11 +97,11 @@ module.exports = function () {
98
97
  this.setEnv();
99
98
  }
100
99
 
101
- getVersion() {
100
+ getVersion () {
102
101
  return process.versions;
103
102
  }
104
103
 
105
- fileExist(file) {
104
+ fileExist (file) {
106
105
  try {
107
106
  fs.statSync(file);
108
107
  } catch (e) {
@@ -110,11 +109,11 @@ module.exports = function () {
110
109
  }
111
110
  }
112
111
 
113
- isElectron() {
112
+ isElectron () {
114
113
  return this.versions.electron || null;
115
114
  }
116
115
 
117
- loadAppKernel() {
116
+ loadAppKernel () {
118
117
  try {
119
118
  return require(path.resolve("app", "appKernel.js"));
120
119
  } catch (e) {
@@ -122,11 +121,11 @@ module.exports = function () {
122
121
  }
123
122
  }
124
123
 
125
- createContext(sandbox) {
124
+ createContext (sandbox) {
126
125
  return vm.createContext(sandbox);
127
126
  }
128
127
 
129
- setEnv(environment) {
128
+ setEnv (environment) {
130
129
  this.environment = environment;
131
130
  switch (this.environment) {
132
131
  case "production":
@@ -153,18 +152,18 @@ module.exports = function () {
153
152
  * @param {String} file Path to load
154
153
  *
155
154
  */
156
- load(file, force) {
155
+ load (file, force) {
157
156
  let filename = null;
158
157
  try {
159
158
  filename = Module._resolveFilename(file, module, false);
160
- let cachedModule = Module._cache[filename];
159
+ const cachedModule = Module._cache[filename];
161
160
  if (cachedModule && !force) {
162
161
  return cachedModule.exports;
163
162
  }
164
163
  if (cachedModule && force) {
165
164
  delete Module._cache[filename];
166
165
  }
167
- let myModule = new Module(filename, module);
166
+ const myModule = new Module(filename, module);
168
167
  Module._cache[filename] = myModule;
169
168
  myModule.load(filename);
170
169
  return myModule.exports;
@@ -172,8 +171,8 @@ module.exports = function () {
172
171
  if (Module._cache[filename]) {
173
172
  delete Module._cache[filename];
174
173
  }
175
- //console.error(e);
176
- /*if (this.kernel) {
174
+ // console.error(e);
175
+ /* if (this.kernel) {
177
176
  this.kernel.terminate(1);
178
177
  }*/
179
178
  throw e;
@@ -188,14 +187,14 @@ module.exports = function () {
188
187
  * @param {String} msgid informations for message. example(Name of function for debug)
189
188
  * @param {String} msg message to add in log. example (I18N)
190
189
  */
191
- log(pci, severity, msgid, msg) {
190
+ log (pci, severity, msgid, msg) {
192
191
  if (this.syslog) {
193
192
  if (!msgid) {
194
193
  msgid = "AUTOLOADER ";
195
194
  }
196
195
  return this.syslog.log(pci, severity, msgid, msg);
197
196
  }
198
- //console.log(pci);
197
+ // console.log(pci);
199
198
  }
200
199
 
201
200
  /**
@@ -204,10 +203,10 @@ module.exports = function () {
204
203
  * @param {String} path Path to directory to autoload
205
204
  *
206
205
  */
207
- loadDirectory(path, exclude) {
206
+ loadDirectory (path, exclude) {
208
207
  let finder = null;
209
- let settings = {
210
- path: path,
208
+ const settings = {
209
+ path,
211
210
  onFinish: (error, res) => {
212
211
  if (error) {
213
212
  throw error;
@@ -233,9 +232,9 @@ module.exports = function () {
233
232
  throw new Error("AUTOLOADER finder not found Load nodefony finder ");
234
233
  }
235
234
 
236
- autoloadEach(ele) {
235
+ autoloadEach (ele) {
237
236
  if (!ele.isDirectory()) {
238
- let res = regJs.exec(ele.path)
237
+ const res = regJs.exec(ele.path);
239
238
  if (res) {
240
239
  this.load.call(this, ele.path);
241
240
  this.log(ele.path, "DEBUG");
@@ -243,13 +242,12 @@ module.exports = function () {
243
242
  }
244
243
  }
245
244
 
246
- setKernel(kernel) {
245
+ setKernel (kernel) {
247
246
  context.kernel = kernel;
248
247
  this.syslog = kernel.syslog;
249
248
  }
250
-
251
249
  }
252
250
 
253
251
  nodefony.autoloader = new Autoload();
254
252
  return nodefony;
255
- }();
253
+ }());
package/builder.es6 CHANGED
@@ -1,6 +1,5 @@
1
1
  class Builder extends nodefony.Service {
2
-
3
- constructor(cli, cmd, args) {
2
+ constructor (cli, cmd, args) {
4
3
  super("BUILDER", cli.container, cli.notificationsCenter);
5
4
  this.cli = cli;
6
5
  this.twig = twig;
@@ -11,7 +10,7 @@ class Builder extends nodefony.Service {
11
10
  this.force = false;
12
11
  this.twigOptions = {
13
12
  views: process.cwd(),
14
- 'twig options': {
13
+ "twig options": {
15
14
  async: false,
16
15
  cache: false
17
16
  }
@@ -19,62 +18,55 @@ class Builder extends nodefony.Service {
19
18
  this.response = nodefony.extend(true, {}, this.cli.response);
20
19
  }
21
20
 
22
- setLocation(location) {
21
+ setLocation (location) {
23
22
  if (location instanceof nodefony.fileClass) {
24
23
  return this.location = location.path;
25
24
  }
26
25
  return this.location = path.resolve(location);
27
26
  }
28
27
 
29
- setEnv(env) {
28
+ setEnv (env) {
30
29
  process.env.NODE_ENV = env || "development";
31
30
  }
32
31
 
33
- async run(interactive) {
32
+ async run (interactive) {
34
33
  if (interactive) {
35
34
  this.interactive = interactive;
36
35
  return this.interaction()
37
36
  .then((response) => {
38
- //this.log(this.response, "WARNING")
37
+ // this.log(this.response, "WARNING")
39
38
  nodefony.extend(true, this.response, response);
40
- //this.log(this.response)
39
+ // this.log(this.response)
41
40
  nodefony.extend(true, this.cli.response, this.response);
42
- //this.log(this.cli.response,"CRITIC")
41
+ // this.log(this.cli.response,"CRITIC")
43
42
  return this.generate(response, this.force)
44
- .then((response) => {
45
- return {
46
- response: response,
47
- builder: this
48
- };
49
- })
50
- .catch(e => {
43
+ .then((response) => ({
44
+ response,
45
+ builder: this
46
+ }))
47
+ .catch((e) => {
51
48
  throw e;
52
49
  });
53
50
  })
54
- .catch(e => {
55
- throw e;
56
- });
57
- } else {
58
- return this.generate(null, this.force)
59
- .then((response) => {
60
- return {
61
- response: response,
62
- builder: this
63
- };
64
- })
65
- .catch(e => {
51
+ .catch((e) => {
66
52
  throw e;
67
53
  });
68
54
  }
55
+ return this.generate(null, this.force)
56
+ .then((response) => ({
57
+ response,
58
+ builder: this
59
+ }))
60
+ .catch((e) => {
61
+ throw e;
62
+ });
69
63
  }
70
64
 
71
- interaction() {
72
- return new Promise(resolve => {
73
- return resolve(this.cli.response);
74
- });
65
+ interaction () {
66
+ return new Promise((resolve) => resolve(this.cli.response));
75
67
  }
76
68
 
77
- generate(response, force = false) {
69
+ generate (response, force = false) {
78
70
  return new Promise((resolve, reject) => {
79
71
  try {
80
72
  if (this.createBuilder) {
@@ -88,7 +80,7 @@ class Builder extends nodefony.Service {
88
80
  });
89
81
  }
90
82
 
91
- buildFront(response, Path) {
83
+ buildFront (response, Path) {
92
84
  this.Front = null;
93
85
  switch (response.front) {
94
86
  case "vue":
@@ -97,13 +89,13 @@ class Builder extends nodefony.Service {
97
89
  case "react":
98
90
  this.Front = new nodefony.builders.react(this.cli, this.cmd, this.args, response);
99
91
  break;
100
- case 'electron':
92
+ case "electron":
101
93
  this.Front = null;
102
94
  break;
103
- case 'api':
95
+ case "api":
104
96
  this.Front = null;
105
97
  break;
106
- case 'sandbox':
98
+ case "sandbox":
107
99
  default:
108
100
  this.Front = new nodefony.builders.sandbox(this.cli, this.cmd, this.args, response);
109
101
  break;
@@ -112,12 +104,12 @@ class Builder extends nodefony.Service {
112
104
  return this.Front;
113
105
  }
114
106
 
115
- async removeInteractivePath(file) {
107
+ async removeInteractivePath (file) {
116
108
  return this.cli.prompt([{
117
- type: 'confirm',
118
- name: 'remove',
119
- message: `Do You Want Remove : ${file}?`,
120
- default: false
109
+ type: "confirm",
110
+ name: "remove",
111
+ message: `Do You Want Remove : ${file}?`,
112
+ default: false
121
113
  }])
122
114
  .then((response) => {
123
115
  if (response.remove) {
@@ -133,12 +125,13 @@ class Builder extends nodefony.Service {
133
125
  } else {
134
126
  return response;
135
127
  }
136
- }).catch(e => {
128
+ })
129
+ .catch((e) => {
137
130
  throw e;
138
131
  });
139
132
  }
140
133
 
141
- buildSkeleton(skeleton, parse = true, obj = {}, callback = null) {
134
+ buildSkeleton (skeleton, parse = true, obj = {}, callback = null) {
142
135
  let skelete = null;
143
136
  if (!callback) {
144
137
  return new Promise((resolve, reject) => {
@@ -159,7 +152,7 @@ class Builder extends nodefony.Service {
159
152
  });
160
153
  } else {
161
154
  fs.readFile(skelete.path, {
162
- encoding: 'utf8'
155
+ encoding: "utf8"
163
156
  }, (error, result) => {
164
157
  if (error) {
165
158
  return reject(error);
@@ -168,7 +161,7 @@ class Builder extends nodefony.Service {
168
161
  });
169
162
  }
170
163
  } else {
171
- let error = new Error(" skeleton must be file !!! : " + skelete.path);
164
+ const error = new Error(` skeleton must be file !!! : ${skelete.path}`);
172
165
  return reject(error);
173
166
  }
174
167
  } catch (e) {
@@ -188,11 +181,11 @@ class Builder extends nodefony.Service {
188
181
  this.twig.renderFile(skelete.path, obj, callback);
189
182
  } else {
190
183
  callback(null, fs.readFileSync(skelete.path, {
191
- encoding: 'utf8'
184
+ encoding: "utf8"
192
185
  }));
193
186
  }
194
187
  } else {
195
- throw new Error(" skeleton must be file !!! : " + skelete.path);
188
+ throw new Error(` skeleton must be file !!! : ${skelete.path}`);
196
189
  }
197
190
  } catch (e) {
198
191
  this.log(e, "ERROR");
@@ -200,7 +193,7 @@ class Builder extends nodefony.Service {
200
193
  return skelete;
201
194
  }
202
195
 
203
- build(obj, parent, force) {
196
+ build (obj, parent, force) {
204
197
  let child = null;
205
198
  try {
206
199
  if (!(parent instanceof nodefony.fileClass)) {
@@ -220,8 +213,8 @@ class Builder extends nodefony.Service {
220
213
  break;
221
214
  case "object":
222
215
  let name = null;
223
- for (let ele in obj) {
224
- let value = obj[ele];
216
+ for (const ele in obj) {
217
+ const value = obj[ele];
225
218
  switch (ele) {
226
219
  case "name":
227
220
  name = value;
@@ -230,12 +223,12 @@ class Builder extends nodefony.Service {
230
223
  switch (value) {
231
224
  case "directory":
232
225
  try {
233
- let directory = path.resolve(parent.path, name);
226
+ const directory = path.resolve(parent.path, name);
234
227
  child = this.cli.createDirectory(directory, 0o755, (ele) => {
235
228
  if (force) {
236
- this.log("Force Create Directory :" + ele.name);
229
+ this.log(`Force Create Directory :${ele.name}`);
237
230
  } else {
238
- this.log("Create Directory :" + ele.name);
231
+ this.log(`Create Directory :${ele.name}`);
239
232
  }
240
233
  if (obj.chmod) {
241
234
  this.cli.chmod(obj.chmod, directory);
@@ -248,9 +241,9 @@ class Builder extends nodefony.Service {
248
241
  break;
249
242
  case "file":
250
243
  try {
251
- let file = path.resolve(parent.path, name);
244
+ const file = path.resolve(parent.path, name);
252
245
  this.createFile(file, obj.skeleton, obj.parse, obj.params, (ele) => {
253
- this.log("Create File :" + ele.name);
246
+ this.log(`Create File :${ele.name}`);
254
247
  });
255
248
  if (obj.chmod) {
256
249
  this.cli.chmod(obj.chmod, file);
@@ -263,11 +256,11 @@ class Builder extends nodefony.Service {
263
256
  case "symlink":
264
257
  try {
265
258
  if (force) {
266
- this.cli.ln('-sf', path.resolve(parent.path, obj.params.source), path.resolve(parent.path, obj.params.dest));
259
+ this.cli.ln("-sf", path.resolve(parent.path, obj.params.source), path.resolve(parent.path, obj.params.dest));
267
260
  } else {
268
- this.cli.ln('-s', path.resolve(parent.path, obj.params.source), path.resolve(parent.path, obj.params.dest));
261
+ this.cli.ln("-s", path.resolve(parent.path, obj.params.source), path.resolve(parent.path, obj.params.dest));
269
262
  }
270
- this.log("Create symbolic link :" + obj.name);
263
+ this.log(`Create symbolic link :${obj.name}`);
271
264
  } catch (e) {
272
265
  this.log(e, "ERROR");
273
266
  throw e;
@@ -275,13 +268,13 @@ class Builder extends nodefony.Service {
275
268
  break;
276
269
  case "copy":
277
270
  try {
278
- let file = path.resolve(parent.path, name);
271
+ const file = path.resolve(parent.path, name);
279
272
  if (obj.params && obj.params.recurse) {
280
273
  this.cli.cp("-R", obj.path, file);
281
274
  } else {
282
275
  this.cli.cp("-f", obj.path, file);
283
276
  }
284
- this.log("Copy :" + obj.name);
277
+ this.log(`Copy :${obj.name}`);
285
278
  if (obj.chmod) {
286
279
  this.cli.chmod(obj.chmod, file);
287
280
  }
@@ -313,7 +306,7 @@ class Builder extends nodefony.Service {
313
306
  return child;
314
307
  }
315
308
 
316
- createFile(myPath, skeleton, parse = true, params = {}, callback = null) {
309
+ createFile (myPath, skeleton, parse = true, params = {}, callback = null) {
317
310
  if (!callback) {
318
311
  return new Promise((resolve, reject) => {
319
312
  if (skeleton) {
@@ -328,20 +321,17 @@ class Builder extends nodefony.Service {
328
321
  return resolve(new nodefony.fileClass(myPath));
329
322
  });
330
323
  })
331
- .catch((e) => {
332
- return reject(e);
333
- });
334
- } else {
335
- let data = " ";
336
- fs.writeFile(myPath, data, {
337
- mode: params.mode || "644"
338
- }, (err) => {
339
- if (err) {
340
- return reject(err);
341
- }
342
- return resolve(new nodefony.fileClass(myPath));
343
- });
324
+ .catch((e) => reject(e));
344
325
  }
326
+ const data = " ";
327
+ fs.writeFile(myPath, data, {
328
+ mode: params.mode || "644"
329
+ }, (err) => {
330
+ if (err) {
331
+ return reject(err);
332
+ }
333
+ return resolve(new nodefony.fileClass(myPath));
334
+ });
345
335
  });
346
336
  }
347
337
  if (skeleton) {
@@ -360,7 +350,7 @@ class Builder extends nodefony.Service {
360
350
  }
361
351
  });
362
352
  } else {
363
- let data = " ";
353
+ const data = " ";
364
354
  try {
365
355
  fs.writeFileSync(myPath, data, {
366
356
  mode: params.mode || "644"