ee-core 2.9.2 → 2.10.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (103) hide show
  1. package/LICENSE +21 -21
  2. package/README.md +65 -65
  3. package/addon/index.js +34 -34
  4. package/addon/window/index.js +98 -98
  5. package/bin/tools.js +8 -8
  6. package/config/cache.js +41 -38
  7. package/config/config.default.js +331 -330
  8. package/config/index.js +86 -73
  9. package/const/channel.js +17 -17
  10. package/const/index.js +8 -8
  11. package/controller/baseContextClass.js +34 -34
  12. package/controller/index.js +34 -34
  13. package/core/index.js +10 -10
  14. package/core/lib/ee.js +216 -216
  15. package/core/lib/loader/context_loader.js +106 -106
  16. package/core/lib/loader/ee_loader.js +435 -435
  17. package/core/lib/loader/file_loader.js +326 -326
  18. package/core/lib/loader/mixin/addon.js +32 -32
  19. package/core/lib/loader/mixin/config.js +130 -130
  20. package/core/lib/loader/mixin/controller.js +125 -125
  21. package/core/lib/loader/mixin/service.js +28 -28
  22. package/core/lib/utils/base_context_class.js +34 -34
  23. package/core/lib/utils/function.js +30 -30
  24. package/core/lib/utils/index.js +133 -133
  25. package/core/lib/utils/sequencify.js +59 -59
  26. package/core/lib/utils/timing.js +77 -77
  27. package/cross/index.js +183 -183
  28. package/cross/spawnProcess.js +183 -183
  29. package/ee/appLoader.js +48 -48
  30. package/ee/application.js +99 -99
  31. package/ee/baseApp.js +103 -102
  32. package/ee/eeApp.js +408 -408
  33. package/ee/index.js +57 -57
  34. package/electron/app/index.js +64 -58
  35. package/electron/index.js +19 -19
  36. package/electron/window/index.js +73 -73
  37. package/electron/window/winState.js +186 -186
  38. package/exception/index.js +112 -112
  39. package/html/boot.html +98 -98
  40. package/html/cross-failure.html +28 -28
  41. package/html/failure.html +28 -28
  42. package/html/index.js +13 -13
  43. package/httpclient/index.js +161 -161
  44. package/index.js +54 -54
  45. package/jobs/baseJobClass.js +16 -16
  46. package/jobs/child/app.js +58 -65
  47. package/jobs/child/forkProcess.js +145 -145
  48. package/jobs/child/index.js +82 -82
  49. package/jobs/child-pool/index.js +213 -213
  50. package/jobs/index.js +8 -8
  51. package/jobs/load-balancer/algorithm/index.js +11 -11
  52. package/jobs/load-balancer/algorithm/minimumConnection.js +18 -18
  53. package/jobs/load-balancer/algorithm/polling.js +11 -11
  54. package/jobs/load-balancer/algorithm/random.js +9 -9
  55. package/jobs/load-balancer/algorithm/specify.js +14 -14
  56. package/jobs/load-balancer/algorithm/weights.js +21 -21
  57. package/jobs/load-balancer/algorithm/weightsMinimumConnection.js +29 -29
  58. package/jobs/load-balancer/algorithm/weightsPolling.js +22 -22
  59. package/jobs/load-balancer/algorithm/weightsRandom.js +16 -16
  60. package/jobs/load-balancer/consts.js +9 -9
  61. package/jobs/load-balancer/index.js +201 -201
  62. package/jobs/load-balancer/scheduler.js +31 -31
  63. package/jobs/renderer/index.js +141 -141
  64. package/jobs/renderer/loadView.js +40 -40
  65. package/jobs/unification.js +63 -63
  66. package/loader/index.js +172 -172
  67. package/log/index.js +68 -68
  68. package/log/logger.js +86 -80
  69. package/main/index.js +56 -56
  70. package/message/childMessage.js +54 -54
  71. package/message/index.js +18 -18
  72. package/old-utils/index.js +91 -91
  73. package/package.json +38 -38
  74. package/ps/index.js +371 -371
  75. package/services/baseContextClass.js +34 -34
  76. package/services/index.js +40 -40
  77. package/socket/httpServer.js +147 -147
  78. package/socket/index.js +81 -81
  79. package/socket/io.js +27 -27
  80. package/socket/ipcServer.js +112 -112
  81. package/socket/socketServer.js +69 -67
  82. package/storage/index.js +38 -38
  83. package/storage/jsondb/adapters/Base.js +23 -23
  84. package/storage/jsondb/adapters/FileSync.js +64 -52
  85. package/storage/jsondb/main.js +55 -42
  86. package/storage/jsondbStorage.js +195 -195
  87. package/storage/sqliteStorage.js +123 -123
  88. package/utils/co.js +237 -237
  89. package/utils/copyto.js +160 -160
  90. package/utils/depd/index.js +538 -538
  91. package/utils/depd/lib/browser/index.js +77 -77
  92. package/utils/extend.js +73 -73
  93. package/utils/get-port/index.d.ts +64 -64
  94. package/utils/get-port/index.js +148 -148
  95. package/utils/helper.js +220 -220
  96. package/utils/index.js +160 -160
  97. package/utils/ip.js +261 -261
  98. package/utils/is.js +145 -145
  99. package/utils/json.js +72 -72
  100. package/utils/pargv.js +263 -263
  101. package/utils/time/index.js +19 -19
  102. package/utils/time/ms.js +162 -162
  103. package/utils/wrap.js +35 -35
@@ -1,124 +1,124 @@
1
- 'use strict';
2
-
3
- const assert = require('assert');
4
- const fs = require('fs');
5
- const path = require('path');
6
- const Database = require('better-sqlite3');
7
- const Helper = require('../utils/helper');
8
- const Ps = require('../ps');
9
-
10
- class SqliteStorage {
11
- constructor (name, opt = {}) {
12
- assert(name, `db name ${name} Cannot be empty`);
13
-
14
- this.name = name;
15
- this.mode = this.getMode(name);
16
- this.storageDir = this._createStorageDir();
17
- this.fileName = this._formatFileName(name);
18
- this.db = this._initDB(opt);
19
- }
20
-
21
- /**
22
- * 初始化db
23
- */
24
- _initDB (opt = {}) {
25
- let options = Object.assign({
26
- timeout: 5000,
27
- }, opt);
28
-
29
- // 存储类型:db文件、内存(:memory:)
30
- let dbPath = this.name;
31
- if (this.mode != 'memory') {
32
- dbPath = this.getFilePath();
33
- }
34
-
35
- const db = new Database(dbPath, options);
36
-
37
- // 如果是文件类型,判断文件是否创建成功
38
- if (this.mode != 'memory') {
39
- assert(fs.existsSync(dbPath), `error: storage ${dbPath} not exists`);
40
- }
41
-
42
- return db;
43
- }
44
-
45
- /**
46
- * 获取文件名
47
- */
48
- _formatFileName (name) {
49
- let fileName = name;
50
- if (this.mode != 'memory') {
51
- fileName = path.basename(name);
52
- }
53
-
54
- return fileName;
55
- }
56
-
57
- /**
58
- * 创建storage目录
59
- */
60
- _createStorageDir () {
61
- let storageDir = Ps.getStorageDir();
62
-
63
- if (this.mode == 'absolute') {
64
- storageDir = path.dirname(this.name);
65
- }
66
-
67
- if (!fs.existsSync(storageDir)) {
68
- Helper.mkdir(storageDir);
69
- Helper.chmodPath(storageDir, '777');
70
- }
71
-
72
- return storageDir;
73
- }
74
-
75
- /**
76
- * 获取file path 模式
77
- */
78
- getMode (name) {
79
- let mode = '';
80
-
81
- // 内存模式
82
- if (name == ':memory:') {
83
- mode = 'memory';
84
- return mode;
85
- }
86
-
87
- assert(path.extname(name) == '.db', `error: storage ${name} file ext name must be .db`);
88
-
89
- // 路径模式
90
- name = name.replace(/[/\\]/g, '/');
91
- if (name.indexOf('/') !== -1) {
92
- const isAbsolute = path.isAbsolute(name);
93
- if (isAbsolute) {
94
- mode = 'absolute';
95
- } else {
96
- mode = 'relative';
97
- }
98
- return mode;
99
- }
100
-
101
- // 仅文件名
102
- mode = 'onlyName';
103
-
104
- return mode;
105
- }
106
-
107
- /**
108
- * 获取storage目录
109
- */
110
- getStorageDir () {
111
- return this.storageDir;
112
- }
113
-
114
- /**
115
- * 获取文件绝对路径
116
- */
117
- getFilePath () {
118
- const dbFile = path.join(this.storageDir, this.fileName);
119
-
120
- return dbFile;
121
- }
122
- }
123
-
1
+ 'use strict';
2
+
3
+ const assert = require('assert');
4
+ const fs = require('fs');
5
+ const path = require('path');
6
+ const Database = require('better-sqlite3');
7
+ const Helper = require('../utils/helper');
8
+ const Ps = require('../ps');
9
+
10
+ class SqliteStorage {
11
+ constructor (name, opt = {}) {
12
+ assert(name, `db name ${name} Cannot be empty`);
13
+
14
+ this.name = name;
15
+ this.mode = this.getMode(name);
16
+ this.storageDir = this._createStorageDir();
17
+ this.fileName = this._formatFileName(name);
18
+ this.db = this._initDB(opt);
19
+ }
20
+
21
+ /**
22
+ * 初始化db
23
+ */
24
+ _initDB (opt = {}) {
25
+ let options = Object.assign({
26
+ timeout: 5000,
27
+ }, opt);
28
+
29
+ // 存储类型:db文件、内存(:memory:)
30
+ let dbPath = this.name;
31
+ if (this.mode != 'memory') {
32
+ dbPath = this.getFilePath();
33
+ }
34
+
35
+ const db = new Database(dbPath, options);
36
+
37
+ // 如果是文件类型,判断文件是否创建成功
38
+ if (this.mode != 'memory') {
39
+ assert(fs.existsSync(dbPath), `error: storage ${dbPath} not exists`);
40
+ }
41
+
42
+ return db;
43
+ }
44
+
45
+ /**
46
+ * 获取文件名
47
+ */
48
+ _formatFileName (name) {
49
+ let fileName = name;
50
+ if (this.mode != 'memory') {
51
+ fileName = path.basename(name);
52
+ }
53
+
54
+ return fileName;
55
+ }
56
+
57
+ /**
58
+ * 创建storage目录
59
+ */
60
+ _createStorageDir () {
61
+ let storageDir = Ps.getStorageDir();
62
+
63
+ if (this.mode == 'absolute') {
64
+ storageDir = path.dirname(this.name);
65
+ }
66
+
67
+ if (!fs.existsSync(storageDir)) {
68
+ Helper.mkdir(storageDir);
69
+ Helper.chmodPath(storageDir, '777');
70
+ }
71
+
72
+ return storageDir;
73
+ }
74
+
75
+ /**
76
+ * 获取file path 模式
77
+ */
78
+ getMode (name) {
79
+ let mode = '';
80
+
81
+ // 内存模式
82
+ if (name == ':memory:') {
83
+ mode = 'memory';
84
+ return mode;
85
+ }
86
+
87
+ assert(path.extname(name) == '.db', `error: storage ${name} file ext name must be .db`);
88
+
89
+ // 路径模式
90
+ name = name.replace(/[/\\]/g, '/');
91
+ if (name.indexOf('/') !== -1) {
92
+ const isAbsolute = path.isAbsolute(name);
93
+ if (isAbsolute) {
94
+ mode = 'absolute';
95
+ } else {
96
+ mode = 'relative';
97
+ }
98
+ return mode;
99
+ }
100
+
101
+ // 仅文件名
102
+ mode = 'onlyName';
103
+
104
+ return mode;
105
+ }
106
+
107
+ /**
108
+ * 获取storage目录
109
+ */
110
+ getStorageDir () {
111
+ return this.storageDir;
112
+ }
113
+
114
+ /**
115
+ * 获取文件绝对路径
116
+ */
117
+ getFilePath () {
118
+ const dbFile = path.join(this.storageDir, this.fileName);
119
+
120
+ return dbFile;
121
+ }
122
+ }
123
+
124
124
  module.exports = SqliteStorage;