isite 2024.9.2 → 2024.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.
- package/apps/client-side/site_files/js/site.js +1 -1
- package/apps/client-side/site_files/js/site.min.js +1 -1
- package/index.js +14 -2
- package/lib/collection.js +266 -344
- package/lib/dashboard.js +1 -1
- package/lib/mongodb.js +145 -204
- package/lib/routing.js +16 -2
- package/lib/security.js +7 -6
- package/lib/session.js +7 -6
- package/lib/sessions.js +49 -97
- package/lib/ws.js +11 -4
- package/object-options/index.js +2 -0
- package/object-options/lib/fn.js +28 -5
- package/package.json +1 -1
package/lib/routing.js
CHANGED
|
@@ -192,7 +192,7 @@ module.exports = function init(____0) {
|
|
|
192
192
|
if ((response = ____0.sharedList.find((s) => s.host == req.host && s.filePath == route.path && s.url == req.url))) {
|
|
193
193
|
res.headers = response.headers;
|
|
194
194
|
res.code = response.code;
|
|
195
|
-
res.set('x-shared','-
|
|
195
|
+
res.set('x-shared', '-host=' + req.host + ' -port=' + ____0.options.port + ' -index=' + ____0.sharedList.length + ' -count=' + route.count);
|
|
196
196
|
return res.end(response.content, response.encode);
|
|
197
197
|
}
|
|
198
198
|
|
|
@@ -593,6 +593,7 @@ module.exports = function init(____0) {
|
|
|
593
593
|
};
|
|
594
594
|
|
|
595
595
|
_0xrrxo.handleRoute = async function (req, res, route) {
|
|
596
|
+
|
|
596
597
|
if (route.lang) {
|
|
597
598
|
req.session.language = { id: route.lang };
|
|
598
599
|
}
|
|
@@ -689,12 +690,15 @@ module.exports = function init(____0) {
|
|
|
689
690
|
res.end(503);
|
|
690
691
|
}
|
|
691
692
|
});
|
|
693
|
+
|
|
692
694
|
req.addFeature = function (name) {
|
|
693
695
|
req.features.push(name);
|
|
694
696
|
};
|
|
697
|
+
|
|
695
698
|
req.hasFeature = function (name) {
|
|
696
699
|
return req.features.some((f) => f.like(name));
|
|
697
700
|
};
|
|
701
|
+
|
|
698
702
|
req.removeFeature = function (name) {
|
|
699
703
|
req.features.forEach((f, i) => {
|
|
700
704
|
if (f.like(name)) {
|
|
@@ -724,6 +728,7 @@ module.exports = function init(____0) {
|
|
|
724
728
|
|
|
725
729
|
return userFinger;
|
|
726
730
|
};
|
|
731
|
+
|
|
727
732
|
req.word = function (name) {
|
|
728
733
|
let w = ____0.word(name);
|
|
729
734
|
if (!w.hostList) {
|
|
@@ -764,9 +769,11 @@ module.exports = function init(____0) {
|
|
|
764
769
|
res.setHeader(a, b, c);
|
|
765
770
|
return res;
|
|
766
771
|
};
|
|
772
|
+
|
|
767
773
|
res.delete = res.remove = res.removeHeader;
|
|
768
774
|
res.writeHead0 = res.writeHead;
|
|
769
775
|
res.writeHeadEnabled = !0;
|
|
776
|
+
|
|
770
777
|
res.writeHead = (code, obj) => {
|
|
771
778
|
if (res.writeHeadEnabled === !1 || res.finished === !0) {
|
|
772
779
|
return res;
|
|
@@ -931,7 +938,7 @@ module.exports = function init(____0) {
|
|
|
931
938
|
if ((response = ____0.sharedList.find((s) => s.host == req.host && s.filePath == filePath && s.url == req.url))) {
|
|
932
939
|
res.headers = response.headers;
|
|
933
940
|
res.code = response.code;
|
|
934
|
-
res.set('x-shared','-
|
|
941
|
+
res.set('x-shared', '-host=' + req.host + ' -port=' + ____0.options.port + ' -index=' + ____0.sharedList.length+ ' -count=' + req.route.count);
|
|
935
942
|
return res.end(response.content, response.encode);
|
|
936
943
|
}
|
|
937
944
|
____0.fsm.getContent(filePath, (content) => {
|
|
@@ -1224,6 +1231,7 @@ module.exports = function init(____0) {
|
|
|
1224
1231
|
|
|
1225
1232
|
let findRouteIndex = _0xrrxo.list.findIndex((r) => req.method.toLowerCase().like(r.method.toLowerCase()) && req.urlParser.pathname.like(r.name));
|
|
1226
1233
|
if (findRouteIndex !== -1) {
|
|
1234
|
+
|
|
1227
1235
|
if (!_0xrrxo.list[findRouteIndex].count) {
|
|
1228
1236
|
_0xrrxo.list[findRouteIndex].count = 0;
|
|
1229
1237
|
}
|
|
@@ -1248,6 +1256,12 @@ module.exports = function init(____0) {
|
|
|
1248
1256
|
req.paramsRaw[map.name] = req.urlParserRaw.arr[map.index];
|
|
1249
1257
|
}
|
|
1250
1258
|
}
|
|
1259
|
+
req.session = {
|
|
1260
|
+
$save: () => {},
|
|
1261
|
+
accessToken: 'SHARED',
|
|
1262
|
+
language: ____0.options.language || { id: 'en', dir: 'ltr' },
|
|
1263
|
+
lang: ____0.options.language?.id || ____0.options.lang || 'en',
|
|
1264
|
+
};
|
|
1251
1265
|
|
|
1252
1266
|
req.query = req.urlParser.query;
|
|
1253
1267
|
req.queryRaw = req.urlParserRaw.query;
|
package/lib/security.js
CHANGED
|
@@ -490,7 +490,8 @@ module.exports = function init(____0) {
|
|
|
490
490
|
if ($req) {
|
|
491
491
|
$req.session.user = _user;
|
|
492
492
|
$req.session.user_id = _user.id;
|
|
493
|
-
|
|
493
|
+
$req.session.$save();
|
|
494
|
+
|
|
494
495
|
}
|
|
495
496
|
callback(null, _user);
|
|
496
497
|
____0.call('user login', {
|
|
@@ -518,7 +519,8 @@ module.exports = function init(____0) {
|
|
|
518
519
|
if ($req) {
|
|
519
520
|
$req.session.user = doc;
|
|
520
521
|
$req.session.user_id = doc.id;
|
|
521
|
-
|
|
522
|
+
$req.session.$save();
|
|
523
|
+
|
|
522
524
|
}
|
|
523
525
|
|
|
524
526
|
callback(null, doc);
|
|
@@ -583,7 +585,8 @@ module.exports = function init(____0) {
|
|
|
583
585
|
if ($req) {
|
|
584
586
|
$req.session.user = doc;
|
|
585
587
|
$req.session.user_id = doc.id;
|
|
586
|
-
|
|
588
|
+
$req.session.$save();
|
|
589
|
+
|
|
587
590
|
}
|
|
588
591
|
____0.call('user register', {
|
|
589
592
|
db: ____0.$users.db,
|
|
@@ -607,9 +610,7 @@ module.exports = function init(____0) {
|
|
|
607
610
|
|
|
608
611
|
if (security.isUserLogin(req, res)) {
|
|
609
612
|
let _user = req.session.user;
|
|
610
|
-
|
|
611
|
-
accessToken: req.session.accessToken,
|
|
612
|
-
});
|
|
613
|
+
|
|
613
614
|
|
|
614
615
|
____0.call('user logout', {
|
|
615
616
|
db: ____0.$users.db,
|
package/lib/session.js
CHANGED
|
@@ -1,18 +1,17 @@
|
|
|
1
1
|
module.exports = function init(req, res, ____0, callback) {
|
|
2
|
-
____0.getSession(
|
|
2
|
+
____0.getSession(req, (session) => {
|
|
3
3
|
session.$save = function () {
|
|
4
4
|
____0.saveSession(session);
|
|
5
5
|
};
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
session
|
|
6
|
+
|
|
7
|
+
if (session.$new) {
|
|
8
|
+
session.$new = !1;
|
|
9
9
|
res.cookie('access_token', session.accessToken);
|
|
10
10
|
res.set('Access-Token', session.accessToken);
|
|
11
11
|
}
|
|
12
12
|
|
|
13
13
|
session.ip = req.ip;
|
|
14
14
|
session.modifiedTime = new Date().getTime();
|
|
15
|
-
____0.saveSession(session);
|
|
16
15
|
|
|
17
16
|
function AssignFeatures() {
|
|
18
17
|
____0.options.defaults.features.forEach((f) => {
|
|
@@ -135,13 +134,15 @@ module.exports = function init(req, res, ____0, callback) {
|
|
|
135
134
|
if (session.user) {
|
|
136
135
|
req.features.push('login');
|
|
137
136
|
}
|
|
138
|
-
|
|
137
|
+
|
|
139
138
|
callback(session);
|
|
139
|
+
session.$save();
|
|
140
140
|
}
|
|
141
141
|
}
|
|
142
142
|
);
|
|
143
143
|
} else {
|
|
144
144
|
callback(session);
|
|
145
|
+
session.$save();
|
|
145
146
|
}
|
|
146
147
|
});
|
|
147
148
|
};
|
package/lib/sessions.js
CHANGED
|
@@ -22,7 +22,7 @@ module.exports = function init(____0) {
|
|
|
22
22
|
try {
|
|
23
23
|
ss = JSON.parse(ss);
|
|
24
24
|
callback(null, ss);
|
|
25
|
-
console.log('
|
|
25
|
+
console.log(' /// sessions Loaded From /// ' + sessions.path);
|
|
26
26
|
} catch (err) {
|
|
27
27
|
console.log(err.message);
|
|
28
28
|
}
|
|
@@ -32,6 +32,16 @@ module.exports = function init(____0) {
|
|
|
32
32
|
return;
|
|
33
33
|
};
|
|
34
34
|
|
|
35
|
+
sessions.handleSessions = function () {
|
|
36
|
+
sessions.list = sessions.list.filter((s) => s && new Date().getTime() - s.createdTime < 1000 * 60 * ____0.options.session.timeout);
|
|
37
|
+
sessions.list = sessions.list.filter((s) => s && new Date().getTime() - s.$time < 1000 * 60 * ____0.options.session.memoryTimeout);
|
|
38
|
+
|
|
39
|
+
if (____0.options.session.storage === 'mongodb') {
|
|
40
|
+
sessions.$collection.deleteAll({ createdTime: { $lt: new Date().getTime() - 1000 * 60 * ____0.options.session.timeout } });
|
|
41
|
+
sessions.$collection.deleteAll({ where: { createdTime: { $exists: false } } });
|
|
42
|
+
}
|
|
43
|
+
};
|
|
44
|
+
|
|
35
45
|
sessions.saveAll = function (callback) {
|
|
36
46
|
callback =
|
|
37
47
|
callback ||
|
|
@@ -47,63 +57,45 @@ module.exports = function init(____0) {
|
|
|
47
57
|
});
|
|
48
58
|
return;
|
|
49
59
|
}
|
|
60
|
+
sessions.handleSessions();
|
|
50
61
|
|
|
51
62
|
if (____0.options.session.storage === 'mongodb') {
|
|
52
63
|
sessions.list.forEach((s, i) => {
|
|
53
|
-
if (
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
64
|
+
if (s.id) {
|
|
65
|
+
sessions.$collection.update(s, (err, result) => {
|
|
66
|
+
if (!err && result && result.doc) {
|
|
67
|
+
sessions.list[i] = result.doc;
|
|
68
|
+
}
|
|
69
|
+
});
|
|
59
70
|
} else {
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
});
|
|
66
|
-
} else {
|
|
67
|
-
sessions.$collection.insert(s, (err, doc) => {
|
|
68
|
-
if (!err && doc) {
|
|
69
|
-
sessions.list[i] = doc;
|
|
70
|
-
}
|
|
71
|
-
});
|
|
72
|
-
}
|
|
71
|
+
sessions.$collection.insert(s, (err, doc) => {
|
|
72
|
+
if (!err && doc) {
|
|
73
|
+
sessions.list[i] = doc;
|
|
74
|
+
}
|
|
75
|
+
});
|
|
73
76
|
}
|
|
74
77
|
});
|
|
75
78
|
} else {
|
|
76
|
-
sessions.list.forEach((s, i) => {
|
|
77
|
-
if (!s) {
|
|
78
|
-
return false;
|
|
79
|
-
}
|
|
80
|
-
let online = new Date().getTime() - s.createdTime;
|
|
81
|
-
let timeout = 1000 * 60 * ____0.options.session.timeout;
|
|
82
|
-
if (online > timeout) {
|
|
83
|
-
sessions.list.splice(i, 1);
|
|
84
|
-
}
|
|
85
|
-
});
|
|
86
|
-
|
|
87
79
|
____0.writeFile(sessions.path, JSON.stringify(sessions.list), () => {
|
|
88
80
|
callback(null, sessions.list);
|
|
89
|
-
console.log('
|
|
81
|
+
console.log(' /// sessions Saved to ///' + sessions.path);
|
|
90
82
|
});
|
|
91
83
|
}
|
|
92
84
|
|
|
93
85
|
return;
|
|
94
86
|
};
|
|
95
87
|
|
|
96
|
-
____0.getSession = sessions.attach = function (
|
|
88
|
+
____0.getSession = sessions.attach = function (req, callback) {
|
|
89
|
+
let session = { accessToken: req.headers['Access-Token'] || req.headers['access-token'] || req.query['access-token'] || req.cookie('access_token') };
|
|
90
|
+
|
|
97
91
|
callback = callback || function () {};
|
|
98
|
-
session.$exists = !1;
|
|
99
92
|
|
|
100
93
|
if (session.accessToken) {
|
|
101
94
|
let index = sessions.list.findIndex((s) => s && s.accessToken && s.accessToken === session.accessToken);
|
|
102
|
-
if (index
|
|
95
|
+
if (index !== -1) {
|
|
96
|
+
sessions.list[index].$time = new Date().getTime();
|
|
103
97
|
sessions.list[index].requestesCount++;
|
|
104
98
|
sessions.list[index].language = sessions.list[index].language || ____0.options.language;
|
|
105
|
-
session.$exists = !0;
|
|
106
|
-
session.$index = index;
|
|
107
99
|
callback(sessions.list[index]);
|
|
108
100
|
} else {
|
|
109
101
|
if (____0.options.session.storage === 'mongodb') {
|
|
@@ -111,14 +103,11 @@ module.exports = function init(____0) {
|
|
|
111
103
|
{ accessToken: session.accessToken },
|
|
112
104
|
(err, doc) => {
|
|
113
105
|
if (!err && doc) {
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
sessions.list.push(session);
|
|
121
|
-
callback(sessions.list[session.$index]);
|
|
106
|
+
doc.$time = new Date().getTime();
|
|
107
|
+
doc.requestesCount++;
|
|
108
|
+
doc.language = doc.language || ____0.options.language;
|
|
109
|
+
sessions.list.push(doc);
|
|
110
|
+
callback(sessions.list[sessions.list.findIndex((s) => s.accessToken == session.accessToken)]);
|
|
122
111
|
} else {
|
|
123
112
|
session.$new = !0;
|
|
124
113
|
session.language = ____0.options.language;
|
|
@@ -127,9 +116,9 @@ module.exports = function init(____0) {
|
|
|
127
116
|
session.data = [];
|
|
128
117
|
session.requestesCount = 1;
|
|
129
118
|
session.createdTime = new Date().getTime();
|
|
130
|
-
session.$
|
|
119
|
+
session.$time = new Date().getTime();
|
|
131
120
|
sessions.list.push(session);
|
|
132
|
-
callback(sessions.list[session
|
|
121
|
+
callback(sessions.list[sessions.list.findIndex((s) => s.accessToken == session.accessToken)]);
|
|
133
122
|
}
|
|
134
123
|
},
|
|
135
124
|
true
|
|
@@ -142,9 +131,9 @@ module.exports = function init(____0) {
|
|
|
142
131
|
session.data = [];
|
|
143
132
|
session.requestesCount = 1;
|
|
144
133
|
session.createdTime = new Date().getTime();
|
|
145
|
-
session.$
|
|
134
|
+
session.$time = new Date().getTime();
|
|
135
|
+
callback(session);
|
|
146
136
|
sessions.list.push(session);
|
|
147
|
-
callback(sessions.list[session.$index]);
|
|
148
137
|
}
|
|
149
138
|
}
|
|
150
139
|
} else {
|
|
@@ -155,60 +144,21 @@ module.exports = function init(____0) {
|
|
|
155
144
|
session.data = [];
|
|
156
145
|
session.requestesCount = 1;
|
|
157
146
|
session.createdTime = new Date().getTime();
|
|
158
|
-
session.$
|
|
147
|
+
session.$time = new Date().getTime();
|
|
148
|
+
session.accessToken = req.host + req.ip + new Date().getTime().toString() + '_' + Math.random();
|
|
149
|
+
session.accessToken = ____0.x0md50x(session.accessToken);
|
|
159
150
|
sessions.list.push(session);
|
|
160
|
-
callback(sessions.list[session
|
|
151
|
+
callback(sessions.list[sessions.list.findIndex((s) => s && s.accessToken == session.accessToken)]);
|
|
161
152
|
}
|
|
162
153
|
};
|
|
163
154
|
|
|
164
|
-
____0.saveSession = sessions.save = function (session
|
|
165
|
-
|
|
166
|
-
session.$exists = !1;
|
|
167
|
-
let index = sessions.list.findIndex((s) => s.accessToken && s.accessToken == session.accessToken);
|
|
155
|
+
____0.saveSession = sessions.save = function (session) {
|
|
156
|
+
let index = sessions.list.findIndex((s) => s && s.accessToken && s.accessToken == session.accessToken);
|
|
168
157
|
if (index !== -1) {
|
|
169
|
-
sessions.list[index] =
|
|
170
|
-
callback(sessions.list[index]);
|
|
171
|
-
return sessions.list[index];
|
|
158
|
+
sessions.list[index] = session;
|
|
172
159
|
}
|
|
173
160
|
};
|
|
174
161
|
|
|
175
|
-
____0.on('[session][update]', (session) => {
|
|
176
|
-
sessions.list.forEach((s) => {
|
|
177
|
-
if (s.accessToken == session.accessToken) {
|
|
178
|
-
for (let key in session) {
|
|
179
|
-
if (session.hasOwnProperty(key) && key !== 'accessToken') {
|
|
180
|
-
key = key.toLowerCase();
|
|
181
|
-
for (let i = 0; i < s.data.length; i++) {
|
|
182
|
-
let obj = s.data[i];
|
|
183
|
-
if (obj.key === key) {
|
|
184
|
-
s.data[i] = {
|
|
185
|
-
key: key,
|
|
186
|
-
value: session[key],
|
|
187
|
-
};
|
|
188
|
-
}
|
|
189
|
-
}
|
|
190
|
-
s.data.push({
|
|
191
|
-
key: key,
|
|
192
|
-
value: session[key],
|
|
193
|
-
});
|
|
194
|
-
}
|
|
195
|
-
}
|
|
196
|
-
}
|
|
197
|
-
});
|
|
198
|
-
});
|
|
199
|
-
____0.on('[session][delete]', (session) => {
|
|
200
|
-
let index = sessions.list.findIndex((s) => s.accessToken && s.accessToken == session.accessToken);
|
|
201
|
-
if (index !== -1) {
|
|
202
|
-
sessions.list.splice(index, 1);
|
|
203
|
-
}
|
|
204
|
-
});
|
|
205
|
-
____0.on('[session][user][update]', (user) => {
|
|
206
|
-
let index = sessions.list.findIndex((s) => s.user && s.user == session.user);
|
|
207
|
-
if (index !== -1) {
|
|
208
|
-
sessions.list[index].user = user;
|
|
209
|
-
}
|
|
210
|
-
});
|
|
211
|
-
|
|
212
162
|
____0.on('[any][saving data]', function () {
|
|
213
163
|
sessions.saveAll();
|
|
214
164
|
});
|
|
@@ -217,8 +167,7 @@ module.exports = function init(____0) {
|
|
|
217
167
|
req.session.language = req.data;
|
|
218
168
|
req.session.lang = req.session.language?.id || req.data.name;
|
|
219
169
|
req.session.langDir = req.session.language?.dir;
|
|
220
|
-
|
|
221
|
-
____0.saveSession(req.session);
|
|
170
|
+
req.session.$save();
|
|
222
171
|
res.json({
|
|
223
172
|
done: true,
|
|
224
173
|
lang: req.data.name,
|
|
@@ -259,5 +208,8 @@ module.exports = function init(____0) {
|
|
|
259
208
|
if (!____0.options.session.storage === 'mongodb') {
|
|
260
209
|
sessions.loadAll();
|
|
261
210
|
}
|
|
211
|
+
|
|
212
|
+
sessions.handleSessions();
|
|
213
|
+
|
|
262
214
|
return sessions;
|
|
263
215
|
};
|
package/lib/ws.js
CHANGED
|
@@ -107,6 +107,9 @@ module.exports = function init(____0) {
|
|
|
107
107
|
onData: function (data) {
|
|
108
108
|
console.log('client.onData Not Implement ...', data);
|
|
109
109
|
},
|
|
110
|
+
onText: function (data) {
|
|
111
|
+
console.log('client.onText Not Implement ...', data);
|
|
112
|
+
},
|
|
110
113
|
onError: function (e) {
|
|
111
114
|
console.log('client.onError Not Implement ...', e);
|
|
112
115
|
},
|
|
@@ -140,6 +143,8 @@ module.exports = function init(____0) {
|
|
|
140
143
|
let index = ____0.ws.clientList.findIndex((_client) => _client.uuid == client.uuid);
|
|
141
144
|
if (index !== -1) {
|
|
142
145
|
____0.ws.clientList.splice(index, 1);
|
|
146
|
+
____0.call('[ws-clientList-remove-client]');
|
|
147
|
+
____0.call('[ws-clientList-changed]');
|
|
143
148
|
}
|
|
144
149
|
let index2 = ____0.ws.supportedClientList.findIndex((_client) => _client.uuid == client.uuid);
|
|
145
150
|
if (index2 !== -1) {
|
|
@@ -148,21 +153,23 @@ module.exports = function init(____0) {
|
|
|
148
153
|
client.onClose();
|
|
149
154
|
});
|
|
150
155
|
|
|
151
|
-
ws.on('message', (data, isBinary) => {
|
|
156
|
+
client.ws.on('message', (data, isBinary) => {
|
|
152
157
|
client.lastTime = new Date().getTime();
|
|
153
158
|
if (isBinary) {
|
|
154
159
|
client.onData(data);
|
|
155
160
|
} else {
|
|
156
161
|
let obj = ____0.fromJson(Buffer.from(data).toString('utf8'));
|
|
157
|
-
if (obj.
|
|
158
|
-
client.lastTime = new Date().getTime();
|
|
159
|
-
} else {
|
|
162
|
+
if (Object.keys(obj).length) {
|
|
160
163
|
client.onMessage(obj);
|
|
164
|
+
} else {
|
|
165
|
+
client.onText(Buffer.from(data).toString('utf8'));
|
|
161
166
|
}
|
|
162
167
|
}
|
|
163
168
|
});
|
|
164
169
|
|
|
165
170
|
____0.ws.clientList.push(client);
|
|
171
|
+
____0.call('[ws-clientList-add-client]');
|
|
172
|
+
____0.call('[ws-clientList-changed]');
|
|
166
173
|
____0.ws.routeList[index].callback(client);
|
|
167
174
|
|
|
168
175
|
client.onMessage({ type: 'connected' });
|
package/object-options/index.js
CHANGED
|
@@ -94,6 +94,7 @@ function setOptions(_options, ____0) {
|
|
|
94
94
|
},
|
|
95
95
|
session: {
|
|
96
96
|
timeout: 60 * 24 * 30,
|
|
97
|
+
memoryTimeout : 60,
|
|
97
98
|
enabled: !0,
|
|
98
99
|
storage: 'mongodb',
|
|
99
100
|
db: null,
|
|
@@ -265,6 +266,7 @@ function setOptions(_options, ____0) {
|
|
|
265
266
|
_x0oo.session = _x0oo.session || template.session;
|
|
266
267
|
_x0oo.session.enabled = _x0oo.session.enabled ?? template.session.enabled;
|
|
267
268
|
_x0oo.session.timeout = _x0oo.session.timeout ?? template.session.timeout;
|
|
269
|
+
_x0oo.session.memoryTimeout = _x0oo.session.memoryTimeout ?? template.session.memoryTimeout;
|
|
268
270
|
_x0oo.session.storage = _x0oo.session.storage || template.session.storage;
|
|
269
271
|
_x0oo.session.db = _x0oo.session.db || _x0oo.mongodb.db;
|
|
270
272
|
_x0oo.session.collection = _x0oo.session.collection || template.session.collection;
|
package/object-options/lib/fn.js
CHANGED
|
@@ -191,7 +191,7 @@ exports = module.exports = function init(____0) {
|
|
|
191
191
|
};
|
|
192
192
|
|
|
193
193
|
fn.getDateTime = fn.toDateTime = function (_any) {
|
|
194
|
-
let d =
|
|
194
|
+
let d = _any ? new Date(_any) : new Date();
|
|
195
195
|
return new Date(Date.UTC(d.getFullYear(), d.getMonth(), d.getDate(), d.getHours(), d.getMinutes(), d.getSeconds()));
|
|
196
196
|
};
|
|
197
197
|
|
|
@@ -366,7 +366,7 @@ exports = module.exports = function init(____0) {
|
|
|
366
366
|
if (obj === undefined || obj === null) {
|
|
367
367
|
return '';
|
|
368
368
|
}
|
|
369
|
-
return JSON.stringify(obj);
|
|
369
|
+
return JSON.stringify(____0.removeRefObject(obj));
|
|
370
370
|
};
|
|
371
371
|
|
|
372
372
|
fn._0xpttxo = function () {
|
|
@@ -429,14 +429,37 @@ exports = module.exports = function init(____0) {
|
|
|
429
429
|
return newData;
|
|
430
430
|
};
|
|
431
431
|
|
|
432
|
-
____0.hide = (data) => {
|
|
432
|
+
____0.hide = ____0.hideObject = (data) => {
|
|
433
433
|
if (data === undefined) {
|
|
434
434
|
return '';
|
|
435
435
|
}
|
|
436
436
|
return fn.to123(data);
|
|
437
437
|
};
|
|
438
|
-
____0.ul =
|
|
439
|
-
|
|
438
|
+
____0.ul =
|
|
439
|
+
____0.show =
|
|
440
|
+
____0.showObject =
|
|
441
|
+
(data) => {
|
|
442
|
+
return fn.fromJson(fn.from123(data));
|
|
443
|
+
};
|
|
444
|
+
|
|
445
|
+
____0.removeRefObject = function (obj) {
|
|
446
|
+
const seen = new Set();
|
|
447
|
+
const recurse = (obj) => {
|
|
448
|
+
seen.add(obj, true);
|
|
449
|
+
for (let [k, v] of Object.entries(obj)) {
|
|
450
|
+
if (k !== '_id') {
|
|
451
|
+
if (v && typeof v == 'object') {
|
|
452
|
+
if (seen.has(v)) {
|
|
453
|
+
delete obj[k];
|
|
454
|
+
} else {
|
|
455
|
+
recurse(v);
|
|
456
|
+
}
|
|
457
|
+
}
|
|
458
|
+
}
|
|
459
|
+
}
|
|
460
|
+
return obj;
|
|
461
|
+
};
|
|
462
|
+
return recurse(obj);
|
|
440
463
|
};
|
|
441
464
|
|
|
442
465
|
____0.fn = fn;
|